Basis van Linux en de opdrachtregel
Op veel Linux-systemen toont „ls -l /usr/bin/passwd” „-rwsr-xr-x 1 root root ...”. Wat betekent de „s” op de uitvoerpositie van de eigenaar?
- Asetuid is ingesteld, dus wie het programma ook uitvoert, het draait met de rechten van de eigenaar van het bestand (hier root)
- BDe sticky bit is ingesteld, dus andere gebruikers dan de eigenaar en root kunnen dit bestand niet verwijderen of hernoemen
- CHet geeft aan dat dit bestand een gedeelde bibliotheek is, die alleen vanuit andere programma's wordt aangeroepen en niet rechtstreeks als commando kan worden uitgevoerd
Antwoord en toelichting tonen
Antwoord: A. setuid is ingesteld, dus wie het programma ook uitvoert, het draait met de rechten van de eigenaar van het bestand (hier root)
s betekent dat zowel de setuid-bit (set user ID) als het uitvoerrecht is gezet, en dat het programma draait met de rechten van de eigenaar van het bestand in plaats van die van de gebruiker die het uitvoert. passwd moet /etc/shadow bijwerken, waarin alleen root kan schrijven, wanneer een gewone gebruiker zijn eigen wachtwoord wijzigt; daarom is het een setuid-root-programma. Een fout in een setuid-programma kan voor een gewone gebruiker een opstap worden om rootrechten te krijgen, dus de bit mag niet zomaar worden gezet. Octaal is het de positie van 4000, en chmod 4755 geeft -rwsr-xr-x.
Verder: nog 9 vragen over Basis van Linux en de opdrachtregel