LFI2RCE via PHP_SESSION_UPLOAD_PROGRESS
Last updated
Last updated
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Eğer bir Yerel Dosya Dahil Etme bulduysanız, oturumunuz olmasa bile ve session.auto_start
Kapalı
ise. Eğer session.upload_progress.enabled
Açık
ise ve PHP_SESSION_UPLOAD_PROGRESS
'i multipart POST verilerinde sağlarsanız, PHP sizin için oturumu etkinleştirecektir.
Not edin ki PHP_SESSION_UPLOAD_PROGRESS
ile oturum içindeki verileri kontrol edebilirsiniz, bu nedenle oturum dosyanızı dahil ederseniz, kontrol ettiğiniz bir kısmı (örneğin bir php shellcode) dahil edebilirsiniz.
Çoğu internet üzerindeki eğitim, hata ayıklama amacıyla session.upload_progress.cleanup
'ı Off
olarak ayarlamanızı öneriyor. PHP'deki varsayılan session.upload_progress.cleanup
hala On
'dur. Bu, oturumdaki yükleme ilerlemenizin mümkün olan en kısa sürede temizleneceği anlamına gelir. Bu nedenle bu bir Race Condition olacaktır.
Bu tekniğin yorumlandığı orijinal CTF 'de, Race Condition'ı istismar etmek için yeterli değildi, ayrıca yüklenen içeriğin de @<?php
dizesi ile başlaması gerekiyordu.
session.upload_progress.prefix
'in varsayılan ayarı nedeniyle, OTURUM dosyamız rahatsız edici bir ön ekle başlayacaktır upload_progress_
Şöyle: upload_progress_controlledcontentbyattacker
Başlangıç ön ekini kaldırmanın hilesi, payload'ı 3 kez base64 encode etmek ve ardından convert.base64-decode
filtreleri aracılığıyla decode etmektir, çünkü base64 decode ederken PHP garip karakterleri kaldıracaktır, bu nedenle 3 kez sadece payload gönderen tarafından kalacaktır (ve ardından saldırgan başlangıç kısmını kontrol edebilir).
Daha fazla bilgi için orijinal yazıya https://blog.orange.tw/2018/10/ ve son istismara https://github.com/orangetw/My-CTF-Web-Challenges/blob/master/hitcon-ctf-2018/one-line-php-challenge/exp_for_php.py Başka bir yazı için https://spyclub.tech/2018/12/21/one-line-and-return-of-one-line-php-writeup/
AWS Hacking öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)