Cyber Apocalypse 2025 - Cyber Attack
Table of Contents
Ciberatac (web)
Per a aquest repte se'ns dóna una IP i, presumiblement, el codi font del lloc web d'aquesta IP


Mirant el codi, veiem diverses ubicacions d'injecció potencial. El lloc utilitza scripts de python cgi per gestionar les sol·licituds i un index.php bàsic sense explotar cap explotació del costat del servidor. El primer que em ve al cap és la injecció de CRLF, ja que no veiem cap validació o desinfecció d'exposicions regulars al paràmetre del nom, a més d'imprimir-se de manera detallada com a capçalera.
que podem comprovar així:

Això funciona perquè mentre imprimeix la capçalera, injectem \r\n, que després podem injectar capçaleres arbitràries.
A més, veiem un altre script aparentment protegit a cgi-bin, la qual cosa implica que primer hem d'explotar attack-domain abans d'atacar attack-ip
Aquest és el codi per a attack-ip:
Aquí veiem la mateixa injecció d'ordres amb os.popen, però aquesta vegada no està protegit per una expressió regular, el que significa que aquest hauria de ser el nostre objectiu final.
Així que hem de:
- Explota un SSRF a
attack-domain - Feu que el servidor cridi a
127.0.0.1/cgi-bin/attack-ipper evitar la configuració d'apache - Injecteu una càrrega útil al
os.popen
En mirar el fitxer docker que va incloure el repte, veiem diversos complements apache activats deliberadament, cosa que em fa curiositat:
Vaig passar un llarg temps provant camins d'explotació alternatius i baixant per forats de conill, però finalment em vaig trobar amb això al documentation per a mod_proxy_fcgi. Notareu que té una notació proxy: peculiar.

Abans de provar, he configurat un túnel d'accés públic perquè no necessito confiar en ngrok o col·laborador de burp, allotjaré un servidor web Python senzill aquí per captar respostes.

Així que ara enviem una càrrega útil cega per fer ping al nostre túnel. Tingueu en compte que hem de codificar doblement la sol·licitud de proxy, ja que és una segona sol·licitud imbricada dins de la primera

L'enviament de la càrrega útil valida les nostres sospites de SSRF
SSRF aconseguit. ara passem a explotar. Recordeu que ja vam veure el codi de attack-ip, així que sabem que és fàcilment vulnerable a la injecció d'ordres, ja que no hi ha cap expressió regular que el protegeixi. Crearé index.html al meu túnel que conté un script per exfiltrar la bandera
I canvieu la càrrega útil per canalitzar a bash perquè realment s'executi:
Aleshores rebem una devolució de trucada amb la bandera codificada en base64!
