LFI2RCE via PHP_SESSION_UPLOAD_PROGRESS
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Ako ste pronašli Local File Inclusion čak i ako nemate sesiju i session.auto_start
je Off
. Ako je session.upload_progress.enabled
On
i pružite PHP_SESSION_UPLOAD_PROGRESS
u multipart POST podacima, PHP će omogućiti sesiju za vas.
Napomena da sa PHP_SESSION_UPLOAD_PROGRESS
možete kontrolisati podatke unutar sesije, tako da ako uključite svoj sesijski fajl možete uključiti deo koji kontrolišete (na primer, php shellcode).
Iako većina tutorijala na Internetu preporučuje da postavite session.upload_progress.cleanup
na Off
u svrhu debagovanja. Podrazumevano session.upload_progress.cleanup
u PHP-u je i dalje On
. To znači da će vaš napredak u uploadu u sesiji biti očišćen što je pre moguće. Dakle, ovo će biti Race Condition.
U originalnom CTF gde je ova tehnika komentarisana, nije bilo dovoljno iskoristiti Race Condition, već je sadržaj koji se učitava morao da počne i sa stringom @<?php
.
Zbog podrazumevanog podešavanja session.upload_progress.prefix
, naš SESSION fajl će početi sa dosadnim prefiksom upload_progress_
Kao što je: upload_progress_controlledcontentbyattacker
Trik da uklonite inicijalni prefiks bio je da base64 kodirate payload 3 puta i zatim ga dekodirate putem convert.base64-decode
filtera, to je zato što kada base64 dekodirate, PHP će ukloniti čudne karaktere, tako da nakon 3 puta samo payload poslat od strane napadača će ostati (i tada napadač može kontrolisati inicijalni deo).
Više informacija u originalnom izveštaju https://blog.orange.tw/2018/10/ i konačnom eksploitu https://github.com/orangetw/My-CTF-Web-Challenges/blob/master/hitcon-ctf-2018/one-line-php-challenge/exp_for_php.py Još jedan izveštaj u https://spyclub.tech/2018/12/21/one-line-and-return-of-one-line-php-writeup/
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)