Sto leggendo questo e sono un po 'confuso. Che cosa è esattamente questo spoofing di script basato su setuid?
Questo è un attacco teorico che potrebbe consentire a un utente di elevare i propri privilegi a root.
Diciamo che abbiamo un setuid-root script.sh
come questo:
#!/bin/bash
echo Hello World!
Quando lo script viene eseguito, il sistema operativo legge la prima riga, utilizza il programma per eseguire lo script. Il comando che verrà eseguito è: /bin/bash script.sh
Una svolta sugli script setuid è che un utente può creare un collegamento allo script, ad esempio myscript.sh
e ora il comando sarebbe /bin/bash myscript.sh
Questo sta iniziando a essere un po 'preoccupante perché forse l'utente potrebbe chiamare il loro link -c ls
- ed eseguire un comando come root che non dovrebbero.
Tuttavia, bash e Linux hanno una serie di altre difese che rendono questo poco pratico. Ad esempio, il comando su Linux sarebbe /bin/bash "./-c ls"
che non è sfruttabile. È possibile che altre shell e SO siano vulnerabili.
Tutto ciò si applica solo se si ha uno script di shell radice setuid. Questo non è raccomandato comunque - per questi motivi e altro ancora. In effetti, su Linux non puoi avere setuid script di shell.
Se sei interessato a quest'area in generale, vale la pena dare un'occhiata a Nebula .
Leggi altre domande sui tag spoofing