![]() |
Phpbb & java?
Здравствуйте!
Помогите плс советом. Наваял простейший флудер для phpbb на php, себе для одной задумки. Но вот блин незадача, генерит он ссылку нужного вида, но на форме стоит джава(?) проверка на заполненность! Если проверять через браузер ссылку, то вылазит окно мол нет мессаги, отключаю джаву - оно вылазит на страничке, типа пхп как-то узнаёт что поле пустое? Меня это ввело в ступор, даже и не знаю как обойти кроме писания скрипта который будет на страничке поле заполнять :\ А хочу именно простенькое на пхп\перл, без извратов, чтоб сам мог изменять.. Помогите плс :( |
Ну дай свой флудер заценить и глянуть.
|
внатуре, заполнение можно дефолтным сделать, какие там поля тебе нужно пустыми оставить? вроде как нужно лишь заполнение названия топика и текста мессаги, так они и не должны быть пустыми...
пхп-скрипт легко распознает, пустой параметр или нет ) |
не, вы не так поняли
делаю ссылку вида posting.php?subject=&addbbcode18=%23444444&addbbco de20=12&helpbox=%CD%E0%EA%EB%EE%ED%ED%FB%E9+%F2%E5 %EA%F1%F2%3A+%5Bi%5D%F2%E5%EA%F1%F2%5B%2Fi%5D++%28 alt%2Bi%29&message=TEST_MESSAGE&disable_bbcode=on& disable_smilies=on&mode=reply&t=1338&post=%CE%F2%E F%F0%E0%E2%E8%F2%FC граблю результат, имею еррор поле сообщений пустое. я немнога подумал и решил что джаваскрипт тут нипричём, доп проверка в пхп. но вот же она переменнная message, заполнена? <textarea name="message" rows="15" cols="35" wrap="virtual" style="width:98%" tabindex="3" class="post" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);"></textarea><br /> |
там по моему и нельзя GET запросом посылать сообщение, вообще поставь себе для мозилы экстеншн LiveHTTPHeaders и посмотри заголовки, потом просто копируешь их и отсылаешь через сокеты, по крайней мере я всегда так делаю
|
сабджект пустой ибо mode=reply - это ответ на тему а не создание новой
хедеры я выдрал, не дурак, оттуда эта строка и есть, толку-то. что-то я видать туплю, попробовал пару других форумовв пхпбб - не канает тоже. есть у кого готовая строка ответа? дета я лоханулся :) |
я посмотрел заголовки, там POST запрос
Код:
POST /posting.php HTTP/1.1 |
ну вот пост и подавай.. для получения инфы по построению запросов советую почитать Rfcшки, кажется, #1945 (HTTP/1.0) & #2616 (HTTP/1.1)
|
POST http://***.com/phpBB2/posting.php HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-ms-application, application/vnd.ms-xpsdocument, application/xaml+xml, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */* Referer: http://***.com/phpBB2/posting.php?mode=reply&t=11611 Accept-Language: ru Content-Type: application/x-www-form-urlencoded UA-CPU: x86 Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506) Proxy-Connection: Keep-Alive Content-Length: 278 Host: ***.com Pragma: no-cache Cookie: phpbb2mysql_data=a%3A2%3A%7Bs%3A11%3A%22autologini d%22%3Bs%3A0%3A%22%22%3Bs%3A6%3A%22userid%22%3Bs%3 A4%3A%223371%22%3B%7D; phpbb2mysql_sid=73a186a90bf2967a80fc9b293ab78132; phpbb2mysql_t=a%3A1%3A%7Bi%3A11611%3Bi%3A118484212 0%3B%7D subject=&addbbcode18=%23&addbbcode20=12&helpbox=%C F%EE%E4%F1%EA%E0%E7%EA%E0%3A+%CC%EE%E6%ED%EE+%E1%F B%F1%F2%F0%EE+%EF%F0%E8%EC%E5%ED%E8%F2%FC+%F1%F2%E 8%EB%E8+%EA+%E2%FB%E4%E5%EB%E5%ED%ED%EE%EC%F3+%F2% E5%EA%F1%F2%F3&message=qwe&mode=reply&t=11611&post =%CE%F2%EF%F0%E0%E2%E8%F2%FC |
вот хедер из навиката, вроде тажа строчка, результат тот же.
или я чёта не понимаю? |
догадался сравнить хедер при тыке этой ссылки
у меня get а там post как сделать post? :) |
print $sock "POST http://site.ru/page.php HTTP/1.1\r\n";
print $sock "Host: site.ru\r\n"; print $sock "Accept: */*\r\n"; print $sock "Content-Type: application/x-www-form-urlencoded\r\n"; print $sock "Content-Length: ".length($uri)."\r\n"; print $sock "Referer: Referer: http://site.ru/\r\n"; print $sock "User-Agent: Internet Explorer 6.0\r\n"; print $sock "Cookie: $cookie\r\n"; print $sock "Connection: close\r\n\r\n$uri"; вот пример пост запроса на перл, $cookie это куки, $uri - это subject=&addbbcode18=%23&a...... |
Код:
<? |
HTTP/1.1 200 OK Date: Thu, 19 Jul 2007 11:47:01 GMT Server: Apache/2.2.4 (Unix) PHP/5.1.6 mod_ssl/2.2.4 OpenSSL/0.9.8a X-Powered-By: PHP/5.1.6
Set-Cookie: phpbb2***_data=a%3A2%3A%7Bs%3A11%3A%22autologinid% 22%3Bs%3A0%3A%22%22%3Bs%3A6%3A%22userid%22%3Bi%3A-1%3B%7D; expires=Fri, 18-Jul-2008 11:47:01 GMT; path=/; domain=forum.***.ru Set-Cookie: phpbb2***_sid=481439295326078b15a2ceee3c36f6d8; path=/; domain=forum.***.ru Cache-Control: private, pre-check=0, post-check=0, max-age=0 Expires: 0 Pragma: no-cache Content-Length: 7260 Connection: close Content-Type: text/html |
$url="mode=reply";
$out .= "Connection: close\r\n\r\n$url\r\n\r\n"; не передаётся mode=reply серверу, не видит он этого - почему? вот как я вижу это Connection: close mode=reply HTTP/1.1 200 OK |
$out .= "Connection: close\r\n\r\n$url\r\n";
\r\n после самих данных лишнее, надо так $out .= "Connection: close\r\n\r\n$url"; |
оно отрабатывает, но страничка пишет что не задан тип сообщения(не видит оно что там mode=reply итд, не срабатывает строчка $url :/ )
|
$out .= "Content-Length: ".strlen($url)."\r\n";
я пхп не знаю, но тут ".strlen($url)." должна быть длинна $url, сколько символов, может быть кавычки и точки там не нужны? ибо писано это для перл |
писец я туплю, раскомментил контент-тайп всё пошло
теперь вопрос почему я получаю редирект на Location: http://forum.***.ru/login.php?redirect=posting.php&mode=reply&t=1257&s id=bbab0f5d768302c62e9d371e307fa4bb проблема с куками? |
Цитата:
Код:
HTTP/1.1 302 |
там на странице ответа скрытое поле и в нем вот такие ключи 48753, 5026be448d23afe2d94b7e88403d6735 сначала надо загружать страницу и их парсить, а потом уже слать запрос, через тупой цикл ничего не выйдет
Код:
<input type="hidden" name="attach_sig" value="1" /><input type="hidden" name="mode" value="reply" /><input type="hidden" name="post" value="1"><input type="hidden" name="t" value="48753" /> <input type="hidden" name="sid" value="5026be448d23afe2d94b7e88403d6735" /> |
Цитата:
есть готовый парсер\пример? :( |
$sid =~/value="([a-f0-9]{32})"/
$t =~/value="(\d+)"/ вот тебе парсер на перл, в пхп наверно так же |
Цитата:
|
$sid = $t = $site;
$sid =~/value="([a-f0-9]{32})"/ $t =~/value="(\d+)"/ в результате $sib будет иметь значение 5026be448d23afe2d94b7e88403d6735, а $t 48753 |
окей, заебался но с парсингом разобрался
совсем мозги не варят, в какой момент считывать страницу? |
| Время: 06:01 |