Retour en… 1996. Je suis en 2ème année de graduat en informatique.
Nous disposons d’une salle infomatique avec des terminaux connectés à un serveur Unix (HP-UX de mémoire). Ils nous servent principalement au labo Fortran, Cobol et C. Il va sans dire que je préfère le dernier.
J’y découvre vi qui me suit toujours. Comme quoi, je n’ai pas fais que perdre mon temps pendant ces trois années d’études.
Et dans vi, il y a la fonction :sh.
Les profs vérifiant que nous ne trichions pas en allant voir notre historique. Après chaque cours, ils rassemblaient les fichiers .bash-history de notre répértoire utilisateur. Par un heureux hasard, j’avais trouvé que lancer un shell dans vi ne sauvegardait pas l’historique des commandes lancées dans ce shell. Nous pouvions donc discuter grâce aux commandes who et write.
htmiva@ubuntu-mate:~$ who
htmiva tty1 2022-02-15 19:11
htmiva pts/0 2022-02-15 19:14 (192.168.1.44)
htmiva pts/1 2022-02-15 22:49 (192.168.1.44)
htmiva@ubuntu-mate:~$ write htmiva pts/1
coucou
Message from htmiva@127.0.0.1 on pts/0 at 22:49 ...
coucou
Etudiant: 1, professeur: 0
Cette faille me rappelle celle trouvée chez un de mes fournisseurs des années plus tard.
Il nous fournissait un serveur Linux sur lequel nous n’avions pas un accès root. Mais le fichier sudoers contenait la ligne suivante
user ALL=NOPASSWD: /usr/bin/perl
Pas malin, cela nous permettait d’avoir un acces root juste en lançant
sudo /usr/bin/perl -e 'system("bash")'
Cela aurait pû etre la même chose si il avait mis vi en NOPASSWD. Toujours se méfier du fichier sudo (surtout avec NOPASSWD)