4 votes

Pourquoi certains fichiers sous /proc sont universellement lisibles ?

Pourquoi certains fichiers sont sous /proc sont universellement lisibles par toute personne utilisant adb ? Par exemple

/proc/<pid>/statm
/proc/<pid>/maps
/proc/<pid>/smaps

Nous pouvons même attraper le contenu de ces fichiers, ce qui est dangereux pour la fuite des informations sys.

Est-ce parce que d'autres composants du système utilisent/lisent/écrivent également ces fichiers dans le cadre de l'activité de l'entreprise ? /proc de sorte que ces fichiers sous /proc sont universellement lisibles par tous ?

7voto

Milner Points 533

Il y a de très bonnes raisons pour lesquelles ces informations sont lisible et il n'y a rien de dangereux ( écrire mais le serait). Ceci est hérité du système Linux sur lequel Android est construit - et je vais vous donner quelques courts exemples pour vous en montrer les avantages :

Si vous répertoriez le contenu du /proc (virtuel), vous trouverez des choses comme par exemple :

  • /proc/meminfo : C'est l'endroit où toutes les applications peuvent obtenir des informations sur la RAM totale/utilisée/disponible -- ainsi, les moniteurs système peuvent présenter ces détails.
  • /proc/devices : Affiche tous les périphériques disponibles sur le système, de sorte que, par exemple, une application de caméra peut savoir si (et où) il y a une caméra à utiliser -- ou sortir autrement.
  • /proc/uptime : pour vous montrer combien de temps l'appareil est déjà en fonctionnement

Et plus encore. Rien de dangereux dans connaître c'est tout le contraire : pour de nombreuses applications, ce sont des informations essentielles pour qu'elles puissent faire leur travail.

Maintenant, à votre spécial /proc/<pid> sous-arbre : Là encore, ce sont les moniteurs système (et les tueurs de tâches) qui dépendent de ces informations. Ici, ils peuvent obtenir une liste des processus en cours d'exécution. Tous les détails sur ces applications (depuis combien de temps elles tournent, combien de mémoire elles utilisent, etc. Aucun moniteur système ne pourrait s'en passer. Et encore une fois, il n'y a rien de nuisible à ce que lecture ici. L'aspect le plus "négatif" de ce système est que n'importe quelle application peut voir quelles sont les autres applications en cours d'exécution et les ressources qu'elles utilisent.

Du point de vue de l'utilisateur, nous ne creuserons pas beaucoup ici. Juste une dernière chose à dire : ces informations peuvent être très utiles si vous devez faire du dépannage. Certaines de mes réponses ont même déjà inclus cela.

Et il est certain que vous n'avez pas à craindre de "fuites dangereuses" du simple fait que tout ceci est lisible dans le monde entier. De plus, comme Le mensonge Ryan est clair dans sa réponse ではなく todo des informations ici sont lisibles dans le monde entier : Certaines informations sensibles sont, en fait, protégées.

Gardez également à l'esprit que ADB a généralement plus de privilèges que tout autre "processus utilisateur normal". Surtout à partir d'Android 4.0 Sandwich à la crème glacée (ICS), ses privilèges ont été augmentés (par exemple pour rendre possible une sauvegarde complète même si l'appareil n'est pas enraciné), donc vous ne pouvez pas prendre "l'accès via ADB" comme référence ici -- mais vous devriez plutôt vérifier à partir d'un terminal (local). En outre, les risques sont accrus lorsque vous vous connectez via ADB avec Débogage USB activé, car cela augmente encore les privilèges accordés à ADB.

4voto

Thej Points 655

Les dossiers

/proc/<pid>/maps
/proc/<pid>/smaps

ne sont PAS universellement lisibles par quiconque, du moins pas dans le dispositif de stockage.

Essayez d'exécuter un émulateur de terminal à partir d'Android (en tant qu'utilisateur normal), au lieu d'ADB (qui fonctionne avec un privilège légèrement élevé). ADB s'exécute avec de nombreux privilèges car il est utilisé pour le débogage et doit pouvoir accéder à de nombreuses fonctionnalités du périphérique, c'est pourquoi il est dangereux de connecter un périphérique à une machine non fiable avec le débogage USB activé.

Et le fichier /proc/<pid>/statm est également lisible dans les systèmes linux de bureau.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X