web-dev-qa-db-fra.com

Comment un pirate informatique peut-il accéder au fichier / etc / shadow s'il n'est accessible que par root et ne dispose pas d'un accès root?

Je lis un livre sur le piratage éthique et il y a quelques exemples dans Python que je ne posterai pas ici à moins que cela ne demande que ce n'est pas un débordement de pile. Mais je me demandais, si un Hacker essayait d'accéder à des mots de passe dans/etc/shadow, comment le font-ils sans accès root? Ils ne peuvent pas le copier, l'ouvrir; etc. Y a-t-il une méthode de force brute?

Et mon fichier/etc/shadow n'est pas un fichier texte, il s'agit d'un fichier shadow. Je ne sais rien à ce sujet, où puis-je apprendre?

3
Andy Meza III

Afin de comprendre comment un pirate informatique pourrait accéder à ce fichier, vous devez penser comme un pirate informatique, principalement en dehors de la boîte, de savoir ce que la plupart considéreraient comme des méthodes "normales" pour accéder à un fichier.

À cette fin, quelqu'un pourrait accéder à un démon qui peut avoir des privilèges root, puis induire ce démon à lire le contenu de la /etc/shadow déposer. J'ai vu de nombreux exemples tout au long de ma carrière où des développeurs ou des sysadmines inconnus ont des applications telles que Tomcat ou Apache en tant que root.

Ces mêmes méthodes peuvent être utilisées pour augmenter les autorisations sur les dossiers également, bien qu'un bon pirate informatique ne ferait pas quelque chose d'aussi évident à être détecté, plus sûr de lire le contenu de ces fichiers et de les cacher ailleurs ou de les récupérer de la boîte.

Sur le type de fichier qui /etc/shadow est, il est clairement marqué comme un fichier texte sur mon système Centos 7.x.

$ file /etc/shadow
/etc/shadow: regular file, no read permission

$ Sudo file /etc/shadow
/etc/shadow: ASCII text

Ses autorisations sont les suivantes:

$ ll /etc/shadow
----------. 1 root root 1150 Oct 29 11:44 /etc/shadow

Et les mots de passe hachés sont clairement visibles par utilisateur:

$ Sudo grep vagrant /etc/shadow
vagrant:$1$sPqOnE53$gIcd5Q0xjmV9bM406mHpf/::0:99999:7:::

-ou-

$ Sudo getent shadow | grep vagrant
vagrant:$1$sPqOnE53$gIcd5Q0xjmV9bM406mHpf/::0:99999:7:::
2
slm
  1. Un utilisateur ne peut pas accéder à /etc/shadow Sans accès root, à moins qu'ils ne parviennent à exploiter une vulnérabilité système pour provoquer la protection de /etc/shadow changer. Mais la question est que, si un pirate informatique parvient à obtenir un accès root en exploitant une vulnérabilité système, vous ne voulez pas qu'ils puissent simplement lire les mots de passe.
  2. /etc/shadow est (Afaik) un fichier texte. Pourquoi croyez-vous que ce n'est pas? Avez-vous essayé de le regarder avec un éditeur de texte? Certains gestionnaire de fichiers vous indiquent-ils qu'il s'agit d'un "fichier shadow"? Cela signifie simplement que cela ne sait pas, et cela fait de son mieux.
0
Scott