O bug do shellshock pode ser exposto para executar um comando como um usuário privilegiado?

2

Estou curioso para saber se o seguinte comando pode ser executado em um sistema / servidor com o bug do Shellshock:

curl -H "User-Agent: () { :; }; sudo /bin/eject" http://example.com/

(Este código é uma versão elaborada de um exemplo aqui: link )

Pelo que entendi, o bug permitiria injetar código no sistema, mas não necessariamente executar código com privilégios elevados. Se isso não for possível, há outra maneira de o código ser injetado para fornecer privilégios de root de hacker?

Não há exemplos necessários, estou simplesmente curioso quanto à extensão dos danos que este bug poderia causar.

** Não tenho nenhuma intenção maliciosa, pergunto por curiosidade.

    
por Orando 11.12.2014 / 23:19

1 resposta

4
 curl -H "User-Agent: () { :; }; sudo /bin/eject" http://example.com/

Não funcionaria porque não foi possível encontrar sudo .

 curl -H "User-Agent: () { :; }; /usr/bin/sudo /bin/eject" http://example.com/

conseguiria invocar sudo , mas a menos que o administrador tenha configurado sudo para permitir que o usuário executando o servidor da Web execute qualquer comando como root (o que seria a coisa mais insensata a ser feita), faça muito.

Mesmo se o servidor remoto permitisse que o usuário do servidor Web executasse um comando específico como root , primeiro, você precisaria adivinhar qual é e, mesmo que fosse um script bash , o ambiente HTTP_USER_AGENT a variável não seria passada a ela mesmo se sudo fosse configurado com env_reset desativado porque sudo sempre lista as variáveis cujo conteúdo começa com () .

Embora alguns cenários possam ser imaginados, não há uma forma comum de usar o shellshock para escalonamento de privilégios locais. Veja esta resposta em security.stackexchange para mais detalhes.

    
por 11.12.2014 / 23:38