GiV Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 http://www.securityfocus.com/archive/1/407471 есть ли патч?<{POST_SNAPBACK}>Вот такой вот :[||||||]: Лечится удалением plain/text файлов из разрешенных. txt, htm, html... В общем головой думайте, прежде чем... Ссылка на комментарий Поделиться на других сайтах Прочее
Dr.Freddy Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 GiV, делаем пустой файл с расширением JPEG, запихиваем в него код с securefocus и загружаем на форум. Попытка открыть — alert(). Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 Ну замените: @header( "Content-Type: ".$ibforums->cache['attachtypes'][ $attach['attach_ext'] ]['atype_mimetype']. "\nContent-Disposition: inline; filename=\"".$attach['attach_file'] ."\"\nContent-Length: ".(string)(filesize( $file ) ) );на @header( "Content-Type: application/force-download\nContent-Disposition: inline; filename=\"".$attach['attach_file'] ."\"\nContent-Length: ".(string)(filesize( $file ) ) ); проблем то... Ссылка на комментарий Поделиться на других сайтах Прочее
Mokkey Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 2 GiV Это, извините, где менять? (..в разрешенных файлах..) Ссылка на комментарий Поделиться на других сайтах Прочее
-co- Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 проблем то... такие заголовки выдадут в браузере диалоговое окно для сохранения файла с именем index Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 не верюContent-Disposition: inline; filename=\"".$attach['attach_file'] Ссылка на комментарий Поделиться на других сайтах Прочее
-co- Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 не верюContent-Disposition: inline; filename=\"".$attach['attach_file']<{POST_SNAPBACK}> точно, вру. для версия 1.3 используются другие переменные. сорри Ссылка на комментарий Поделиться на других сайтах Прочее
dfc_darkman Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 где менять это, подскажите плз! Ссылка на комментарий Поделиться на других сайтах Прочее
Vic'er Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 Где, где... ну пошевелите мозгами, какой файл может отвечать за вывод аттачей? Конечно же sources\misc\attach.php Ссылка на комментарий Поделиться на других сайтах Прочее
kolorom Опубликовано 11 Августа 2005 Жалоба Поделиться Опубликовано 11 Августа 2005 Может я что-то пропустил на на 1.3 как сплойт так и заплатка негодны 8) Ссылка на комментарий Поделиться на других сайтах Прочее
Anna Опубликовано 13 Августа 2005 Жалоба Поделиться Опубликовано 13 Августа 2005 Мне XSpider нашел такую, по его словам, уязвимость, которая есть и на этом форуме: http://ibresource.ru/forums/?=PHPB8B5F2A0-...A9-4C7B08C10000 это какая-то инфа phpinfo по разработчикам языка. В принципе это конечно не опасно, но нет ли вероятности передать какие-то другие числа и получить уже настройки языка и серверные пути? Ссылка на комментарий Поделиться на других сайтах Прочее
nafigator Опубликовано 13 Августа 2005 Жалоба Поделиться Опубликовано 13 Августа 2005 Это не опасно, вероятности никакой нет Ссылка на комментарий Поделиться на других сайтах Прочее
Vic'er Опубликовано 13 Августа 2005 Жалоба Поделиться Опубликовано 13 Августа 2005 XSpider нашел такую, по его словам, уязвимость, которая есть и на этом форуме: Эта "уязвимость" давно всем известна. Хотя на самом деле, никакая это не уязвимость, а так называемые Easter Eggs. Они присутствует во всех скриптах ПХП (в принципе почти во всем софте такое можно встретить) Именно эта ( http://ibresource.ru/forums/?=PHPB8B5F2A0-...A9-4C7B08C10000 ) является "Списком разработчиков" Есть еще несколько, а именно: PHP Authors Image ))http://ibresource.ru/forums/?=PHPE9568F36-...69-00AA001ACF42 PHP Logo http://ibresource.ru/forums/?=PHPE9568F34-...69-00AA001ACF42 Zend Logo http://ibresource.ru/forums/?=PHPE9568F35-...69-00AA001ACF42 Ссылка на комментарий Поделиться на других сайтах Прочее
Din2 Опубликовано 13 Августа 2005 Жалоба Поделиться Опубликовано 13 Августа 2005 хм... неприятным открытием для меня стало то что модератор не имея админ панели, а имея все лишь warn панель может разбанить пользователя, один забанил другой разбанил не дело.... кому надо можете профиксить./sources/misc/warn.phpнаходим if ( ! $this->warn_member['id'] ) { $std->Error( array( LEVEL => 1, MSG => 'no_such_user') ); } добавляем после if ( strlen($this->warn_member['temp_ban']) > 1 ) { $std->Error( array( LEVEL => '1', MSG => 'banned_mem') ); } и в языки добавляем текст ошибки/lang/*/lang_error.php добавляем $lang['banned_mem'] = "Этому пользователю сейчас невозможно изменить рейтинг. Участник на данный момент забанен.";<{POST_SNAPBACK}>Гхм, поставил фикс и такая штука:Вобщем рут-админ(не прописанный, как модер раздела), при попытке изменить warn, получает "Этому пользователю сейчас невозможно изменить рейтинг. Участник на данный момент забанен., причём при первом изменении warn-a! -Т.е. варн, до этого, вообще не изменялся."Модерами" не тестил - может с этой группой всё ок. Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 14 Августа 2005 Жалоба Поделиться Опубликовано 14 Августа 2005 >> -Т.е. варн, до этого, вообще не изменялся."Модерами" не тестил - может с этой группой всё ок. Вообще странно конечно. $this->warn_member['temp_ban']) не может быть при этом единицей.А так чтобы супре модератор мог разбанить в любом случае, сделай так: if ( $this->warn_member['temp_ban'] and !$ibforums->member['g_is_supmod'] ) { $std->Error( array( LEVEL => '1', MSG => 'banned_mem') ); } Ссылка на комментарий Поделиться на других сайтах Прочее
Din2 Опубликовано 14 Августа 2005 Жалоба Поделиться Опубликовано 14 Августа 2005 Song, Вроде, теперь воркает, спасибо. Т.е. уже могу под рут-админом, не входящего в модераторы раздела, изменять "чистый" варн. Чего раньше - не было Ссылка на комментарий Поделиться на других сайтах Прочее
Брит Опубликовано 14 Августа 2005 Жалоба Поделиться Опубликовано 14 Августа 2005 Ссылка на комментарий Поделиться на других сайтах Прочее
SAT Опубликовано 14 Августа 2005 Жалоба Поделиться Опубликовано 14 Августа 2005 Din вот так думаю лучше: $ban_error = $std->hdl_ban_line( $this->warn_member['temp_ban'] ); if ( time() <= $ban_error['date_end'] ) { $std->Error( array( LEVEL => '1', MSG => 'banned_mem') ); } хотя странно очень почему поле temp_ban по умолчанию не ноль....ладно вот это точно должно роботать до оканчания бана с этим никто не изменит рейтинг Ссылка на комментарий Поделиться на других сайтах Прочее
Брит Опубликовано 14 Августа 2005 Жалоба Поделиться Опубликовано 14 Августа 2005 Ребят, есть ли возможность проверить дырки на форуме как-то конкретно? Тут был спор с одним человеком, что в течении 2-х часов мой форум ломанут Спор - 40$. Хотелось бы протестировать как-то на уязвимость, ну, что б не проспорить Ссылка на комментарий Поделиться на других сайтах Прочее
Din2 Опубликовано 14 Августа 2005 Жалоба Поделиться Опубликовано 14 Августа 2005 Din вот так думаю лучше: $ban_error = $std->hdl_ban_line( $this->warn_member['temp_ban'] ); if ( time() <= $ban_error['date_end'] ) { $std->Error( array( LEVEL => '1', MSG => 'banned_mem') ); } хотя странно очень почему поле temp_ban по умолчанию не ноль....ладно вот это точно должно роботать до оканчания бана с этим никто не изменит рейтинг<{POST_SNAPBACK}>-Гут, это тоже работает. Почему не ноль?- затрудняюсь ответить. Может это "у меня" не ноль, а у остальных всё в порядке? Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 14 Августа 2005 Жалоба Поделиться Опубликовано 14 Августа 2005 А собственно на 0 там и не проверяется... strlen($this->warn_member['temp_ban']) > 1 два пробела тоже проходят по этому условию. Вот, если бы так: strlen(intval($this->warn_member['temp_ban'])) > 1 тогда да. Но всё-равно я не понимаю зачем тормозить код вызовом ненужных и лишних функций, когда php может всё сделать сам при преобразовании типов? Это же относится к варианту $ban_error = $std->hdl_ban_line( $this->warn_member['temp_ban'] ); if ( time() <= $ban_error['date_end'] ) { $std->Error( array( LEVEL => '1', MSG => 'banned_mem') ); } Ссылка на комментарий Поделиться на других сайтах Прочее
PhreakeR Опубликовано 14 Августа 2005 Жалоба Поделиться Опубликовано 14 Августа 2005 как пофиксить это? на официальном форуме овтета не нашел http://forums.invisionpower.com/index.php?...dpost&p=1172697 -- все делаю, но все же sql-inj остается [1124048654:1124049125]Прикрыть уязвимость как?помогло Ссылка на комментарий Поделиться на других сайтах Прочее
nafigator Опубликовано 15 Августа 2005 Жалоба Поделиться Опубликовано 15 Августа 2005 Ребят, есть ли возможность проверить дырки на форуме как-то конкретно? Тут был спор с одним человеком, что в течении 2-х часов мой форум ломанут Спор - 40$. Хотелось бы протестировать как-то на уязвимость, ну, что б не проспорить <{POST_SNAPBACK}>Кстати, кинь в личку контакты - готов с ним поспорить.Вообще, хочу сотрудничество с каким-нибудь абмициозным хакером, чтобы движок всё время тестил на дырки Ссылка на комментарий Поделиться на других сайтах Прочее
SAT Опубликовано 15 Августа 2005 Жалоба Поделиться Опубликовано 15 Августа 2005 А собственно на 0 там и не проверяется... strlen($this->warn_member['temp_ban']) > 1 два пробела тоже проходят по этому условию. Вот, если бы так: strlen(intval($this->warn_member['temp_ban'])) > 1 тогда да. может я ошибаюсь, но я смотрел по базе там только вставляется: время забана|время разбана|часы или 0 - по дефолту(надо глянуть что в русской версии) или "" - пустота после разбана но ведь два пробела не вставляется, да и два пробела тож вроде не пройдут один пройдет, длинна строки из двух пробелов ведь будет 2 Но всё-равно я не понимаю зачем тормозить код вызовом ненужных и лишних функций, когда php может всё сделать сам при преобразовании типов? Это же относится к варианту $ban_error = $std->hdl_ban_line( $this->warn_member['temp_ban'] ); if ( time() <= $ban_error['date_end'] ) { $std->Error( array( LEVEL => '1', MSG => 'banned_mem') ); }<{POST_SNAPBACK}> угу ты прав, можно в принципе проверять в том фиксе который ты выложил на доступ к АЦП. Буду юзать что ты написал Ссылка на комментарий Поделиться на других сайтах Прочее
w1a9 Опубликовано 16 Августа 2005 Жалоба Поделиться Опубликовано 16 Августа 2005 Люди, кто понимает что это и чем это грозит и как это пофиксить? Кусок отчёта по проверке безопасности сервера.Запрос для выполнения SQL инъекции: [url="http://remote"]http://remote[/url] server forum/index.php?&act=Members&photoonly=&name=&name_box=all&max_results=10&filter=ALL&sort_order=desc&sort_key=posts&st=1'Cookie: session_id=2aaed8b4b6f62646eed7f84da31083d4; forum_read=a:1:%7Bi:6%3Bi:1104561113%3B%7D; Результат работы <...> <> 1 ORDER BY m.posts desc LIMIT 1',10 mySQL error: You have an error in your SQL syntax near '',10' at line 8 mySQL error code: Date: Saturday 01st of January 2005 10:31:05 AM</textarea></form><br>We apologise for any inconvenience</blockquote></body></html> <...> Решение Запретить использование этого скрипта или программно исправить ошибку. И как же исправить эту ошибку? Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения