¿Qué es la suplantación de root del script basado en setuid?

3

Estoy leyendo esto y estoy un poco confundido. ¿Qué es exactamente esta suplantación de la raíz del script basado en setuid?

    
pregunta Tom 14.11.2013 - 20:00
fuente

1 respuesta

1

Este es un ataque teórico que podría permitir a un usuario elevar sus privilegios a root.

Supongamos que tenemos un setuid-root script.sh como este:

#!/bin/bash
echo Hello World!

Cuando se ejecuta el script, el sistema operativo lee la primera línea, el programa utiliza ese programa para ejecutar el script. El comando que ejecutará es: /bin/bash script.sh

Un giro en los scripts de setuid es que un usuario puede crear un enlace al script, por ejemplo, myscript.sh y ahora el comando sería /bin/bash myscript.sh Esto está empezando a ser un poco preocupante porque quizás el usuario podría llamar a su enlace -c ls y ejecutar un comando como root que no debería.

Sin embargo, bash y Linux tienen otras defensas que lo hacen poco práctico. Por ejemplo, el comando en Linux sería /bin/bash "./-c ls" que no es explotable. Es posible que otros shells y sistemas operativos sean vulnerables.

Todo esto solo se aplica si tiene un script de shell setuid-root. Esto no se recomienda de todos modos, por estas razones y más. De hecho, en Linux no puede tener scripts de shell setuid en absoluto.

Si está interesado en esta área en general, Nebula merece una visita.

    
respondido por el paj28 14.11.2013 - 20:42
fuente

Lea otras preguntas en las etiquetas