qwertz1
Goto Top

Frage zu SUID

Hallo,
ich habe eine Frage zu SUID. System: Ubunutu 16.04 LTS 64-Bit. Es gibt einen User a und einen User root.
Es geht um ein Skript namens test.sh(Inhalt: whoami) mit folgenden Rechten:

-rwsrwxrwx 1 root root 7 Jul 9 08:06 test.sh

Das SUID-Bit ist gesetzt. Wenn ich als a dieses Skript aufrufe, dann bekomme ich a als Antwort. Warum? Es müsste doch root sein, oder nicht?

Content-ID: 309390

Url: https://administrator.de/contentid/309390

Ausgedruckt am: 22.11.2024 um 16:11 Uhr

IrunGoldstein
IrunGoldstein 09.07.2016 aktualisiert um 09:25:50 Uhr
Goto Top
Hi qwertz1,

das SUID-Bit wird unter Linux aus Sicherheitsgründen bei Shell-Skripts ignoriert.

Weitere Infos: Link


Falls du es aber unbedingt umgehen willst oder musst:

Ein C Programm welches dein script startet anlegen und dieses Ausführen:

Bsp:

int main(void) {        
    setuid(0);
    clearenv();
    system("/pfad/zu/deinem/script/test.sh");  
}

Oder lass es von sudo abwickeln.

In /etc/sudoers mit visudo einfügen:

ALL    ALL = (root) NOPASSWD: /pfad/zu/deinem/script/test.sh

Mach dir aber bitte bei allen varianten, grundlegende Gedanken über Sicherheitsrelevante fragen.

Grüße