Here's several exploits related to different web CGIs. I wrote those exploits in last few years.
Web app are basicly those layers:
- applications
- web frameworks
- script language engines
- web containers(servers)
- web front proxy(nginx etc.)
4
and5
could be the same thing.3
and4
could the same thing too.
There are communications between each layer. each layer software are developed by different teams. they do have standards to communicate each other, but they always have misunderstandings or design faults. So we can take advantage of those faults to achieve our goals, like RCE, spwan a shell, port forward etc.
-
Fastcgi
- Reference: PHP FastCGI Remote Exploit(Chinese)
fcgi_exp.go
use fastcgi to read or execute file if the fcgi port exposed to public( or with aSSRF
).fcgi_jailbreak.php
use fastcgi params to change some php ini configs and break php-based sandbox.
- Reference: Using PHP-FPM as memory shell(Chinese)
-
Apache Mod_php
- Reference: PHP Port Reuse With Mod_php(Chinese)
mod_php_port_reuse.php
reuse the 80 connection to spawn a interactive shell. Bypass the firewall.mod_php_port_proxy.py
work together withmod_php_port_reuse.php
, create a 80 tcp proxy to bypass the firewall.
- Uwsgi
- Reference: uWSGI RCE Exploit(Chinese)
uwsgi_exp.py
exploit uwsgi to execute any command remotely if the uwsgi port exposed to public( or with aSSRF
).