|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||||
|
Invité de passage
![]() Inscription : août 2009 Messages : 8 ![]() |
Bonjour
Je ne suis pas sur de poster dans la bonne catégorie mais c'est un peu un problème de sécurité : J'ai codé un petit programme tout simple qui prend le paramètre entré par l'utilisateur et qui l'exécute via system() afin de voir s'il était possible d'exécuter des commandes root en tant qu'utilisateur standard (Oui, je sais system() c'est le mal Code :
Puis, je le compile et je le "chown" en root Citation:
Comme vous le voyez, un simple utilisateur pourrait utiliser ce soft pour faire des bêtises... Mais si je tente la même chose à partir d'une clé USB : Citation:
Le système comprend que je veux le duper alors que les deux dossiers (le disque et le clé ont les même droits) Citation:
Quelque part c'est rassurant car si on pouvait exécuter ce soft à partir d'une clé USB, çe serait une faille énorme. Mais je me demandais, pourquoi ça marche sur le disque dur ( /media/dallas/ ) et pas sur la clé? Merci de votre attention |
|||||
|
|
01
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 538 ![]() |
ton programme doit s'exécuter les commandes comme utilisateur pas comme root, si il a besoin de toucher aux périphériques ou de modifier des libs ou fichiers dans /usr tu dois utiliser les setuid sur les commandes concernées.
mais lancer un sudo dans system().... |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : août 2009 Messages : 8 ![]() |
Problème résolu :
la clef USB est effectivement montée avec l’option nosuid, qui rend inopérant le bit set-user-id mais pas "/media/dallas/ |
|
|
10
|
|
|
#4 | |
![]() ![]() R&D en systemes informatiques bas niveau Unix/Linux Inscription : mai 2004 Messages : 5 482 ![]() |
Citation:
|
|
|
|
10
|
Copyright © 2000-2012 - www.developpez.com