O QUE É O BIT SUID

Temos algumas permissões de arquivo adicionais como o bit SUID,SGID e sticky.

puis3_0603

 

O bit SUID

Se você estiver escrevendo programas que são SUID ou SGID , você deve tomar precauções adicionais, temos varias problemas de (in)seguraça por parte desse tipo de permissão, devemos considerar algumas coisas, um programa que estiver com bit SUID e que pertence a root rodara como usuário root. Podemos pensar no seguinte exemplo, gerando uma subshell a partir de um programa SUID, podemos usar um editor qualquer, nesse caso iremos usar o nano.

O editor nano permite que você emita um comando para criar um subshell enquanto estiver no editor,sabemos entao que todo que todo subprocesso herda o contexto e permissões do seu processo anterior, se o editor nano esta com bit SUID podemos entao gerar um subprocesso do shell com a mesma permissão de usuário root.

Ataque:

Um invasor pode explorar essa inseguraça usando um shell script ou fornecendo dados falsos, um exemplo simples jose quer executar o seguinte arquivo em “/home/documentos/user_pass.txt”, temos as seguintes permissões do arquivo “user_pass.txt” e o editor nano:

-rwxr-xr-x 1 root root 153516 2009-03-30 16:57 /bin/nano
-rw——- 1 root root 167 2009-03-30 16:57 /home/documentos/user_pass.tx

jose tem somente a permissão para executar “/bin/nano”, mas não tem permissão para ler o “/home/documentos/user_pass.tx”, se você tentar ler o arquivo não ira ter permissões, mas com a simples mudança definindo o bit SUID do editor nano:

chmod u+s /bin/nano

Podemos ver agora o conteúdo do arquivo  arquivo em “/home/documentos/user_pass.tx”

Fonte:
http://docstore.mik.ua/orelly/other/puis3rd/0596003234_puis3-chp-6-sect-5.html
http://cs.wellesley.edu/~cs342/fall08/handouts/06_more_linux_exploits.pdf
http://pen-testing.sans.org/resources/papers/gcih/discovering-local-suid-exploit-105447
http://lists.gnu.org/archive/html/bug-gnulib/2009-06/msg00042.html
http://docstore.mik.ua/orelly/networking/puis/ch23_04.htm
https://nixshell.wordpress.com/2007/04/21/suid-shell-scripts-setting-the-sticky-bit/
http://www.cyberciti.biz/faq/unix-bsd-linux-setuid-file/
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s