Перейти к контенту

Уязвимости форумов Invision Power Board


Рекомендуемые сообщения

  • Ответы 1,2k
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

Лучшие авторы в этой теме

Загружено фотографий

ребят, какие-то твари поломали мой форум http://www.forum.metoart.ru

-------------------

сейчас я все наладил, а вот как выглядела страничка после взлома :

-------------------

<title>HACKED AND FUCKED</title>

если хотите пооб4аться

IRC SERVER : irc.rinet.ru

IRC USER : #behacked

<textarea>основной код форума</textarea>

-------------------

звери как-то добрались до моей базы mysql и сменили там код форума... все патчи, какие тут описаны я ставил, а результат ........

 

единственное, что они не учли - я часто делаю back-up :D и никакой информации не было потеряно ;), но хотелось бы знать как такое можно запатчить, и если не тружно, протестите форум на дыры, спасибо.

Ссылка на комментарий
Поделиться на других сайтах

Версия форума какая?

 

Кроме форума на твоём хостинге какие скрипты крутятся?

Что за сервер? Логи остались?

Ссылка на комментарий
Поделиться на других сайтах

версия : 1.3.1

---

есть несколько простеньких скриптов для записи/чтения из/в текстовый файл, но доступ к ним запаролен через панель хостинга

---

хостинг: nevahost.net

---

вот логи того дня

--------------------------

80.237.43.133 18 Авг 2005 - 15:17

213.180.216.164 17 Авг 2005 - 00:44

62.64.20.9 17 Авг 2005 - 18:03

195.122.226.14 16 Авг 2005 - 18:13

--------------------------

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

вот появился еще какой-то патч безопасности:

 

A script can be posted as an image to your forum and when the image loads, the browser automatically redirects to the logout page. A person viewing the malicious image just sees "user posted image" but their cookies have already been cleared. Even if dynamic images are disabled, a regular image can be accepted and the malicious script can replace it later. The exploit is possible on IE, Netscape, Firefox and perhaps all browsers.

 

This fix adds a userid to the logout links, so if anyone tries the "logout exploit" it would have to target a specific user, and wouldn't affect everyone on your forums.

 

Files modified:

sources/login.php

 

_http://mods.invisionize.com/db/index.php/a/download/f/5236

Ссылка на комментарий
Поделиться на других сайтах

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

 

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

 

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

 

Код этого сплойта есть здесь... только код для index.php под IPB немного отличается:

<?php 
header("Location: хттп://путь_к_необходимому_форуму/index.php?act=Login&CODE=03"); 
exit;
?>

Ссылка на комментарий
Поделиться на других сайтах

Да уж, «чудо». Очерёдный брутфорс написали, LOL.

 

Во-первых, речь идёт всё о той же политике безопасности аккаунта (не сумел поставить себе нормальный пароль — потерял доступ... т.е. собственно к уязвимостям IPB это никакого отношения не имеет), во-вторых, защититься от этого не так уж и сложно. Пишем мод у духе «5 попыток логина и автоматический отказ в логине до письма админу» и всё.

Ссылка на комментарий
Поделиться на других сайтах

Где-то был мод, который защищал от брутфорса авторства GIV'а.
Ссылка на комментарий
Поделиться на других сайтах

Где-то был мод, который защищал от брутфорса авторства GIV'а.

А по каким словам, кроме "брутфорс", "bruteforce" и "перебор" искать?

Ссылка на комментарий
Поделиться на других сайтах

XSS Injection в Custom BB Code

Временное исправление:

 

Файл ./source/lib/post_parser.php

Ищем

  if ( is_array( $ibforums->cache['bbcode'] ) and count( $ibforums->cache['bbcode'] ) )
 {
	 foreach( $ibforums->cache['bbcode'] as $i => $row )
	 {

Заменяем на:

  if ( is_array( $ibforums->cache['bbcode'] ) and count( $ibforums->cache['bbcode'] ) )
 {
     [b]$t = str_replace( "`" , "& #96;", $t );	[/b]     
     
	 foreach( $ibforums->cache['bbcode'] as $i => $row )
	 {

 

пробел м/у & и # убрать!

Пример уязвимости не даю, завтра Matt пообщеал официальный патч.

Ссылка на комментарий
Поделиться на других сайтах

Народ у меня такая трабла, мой форум регулярно атакуется чтобы я не делал все безполезно перепробывал все на этом форуме...

 

вобщем я нашел в чем проблема в папку html/emoticons/

зааплодили следующие файлы:

m.php

shell.php

readme.php

xxx.php

 

shell.php - скрипт на пхп позволяющий вам выполнять шелл команды на сервере через браузер

 

m.php -

 

$lang=array(

'ru_text1' =>'Выполненная команда',

'ru_text2' =>'Выполнение команд на сервере',

'ru_text3' =>'Выполнить команду',

 

'ru_text4' =>'Рабочая директория',

 

'ru_text5' =>'Загрузка файлов на сервер',

 

'ru_text6' =>'Локальный файл',

 

'ru_text7' =>'Алиасы',

 

'ru_text8' =>'Выберите алиас',

 

'ru_butt1' =>'Выполнить',

 

'ru_butt2' =>'Загрузить',

 

'ru_text9' =>'Открытие порта и привязка его к /bin/bash',

 

'ru_text10'=>'Открыть порт',

 

'ru_text11'=>'Пароль для доступа',

 

'ru_butt3' =>'Открыть',

 

'ru_text12'=>'back-connect',

 

'ru_text13'=>'IP-адрес',

 

'ru_text14'=>'Порт',

 

'ru_butt4' =>'Выполнить',

 

'ru_text15'=>'Загрузка файлов с удаленного сервера',

 

'ru_text16'=>'Использовать',

 

'ru_text17'=>'Удаленный файл',

 

'ru_text18'=>'Локальный файл',

 

'ru_text19'=>'Exploits',

 

'ru_text20'=>'Использовать',

 

'ru_text21'=>'Новое имя',

 

'ru_text22'=>'datapipe',

 

'ru_text23'=>'Локальный порт',

 

'ru_text24'=>'Удаленный хост',

 

'ru_text25'=>'Удаленный порт',

 

'ru_text26'=>'Использовать',

 

'ru_butt5' =>'Запустить',

 

'ru_text28'=>'Работа в safe_mode',

 

'ru_text29'=>'Доступ запрещен',

 

'ru_butt6' =>'Сменить',

 

'ru_text30'=>'Просмотр файла',

 

'ru_butt7' =>'Вывести',

 

'ru_text31'=>'Файл не найден',

 

'ru_text32'=>'Выполнение PHP кода',

 

'ru_text33'=>'Проверка возможности обхода ограничений open_basedir через функции cURL',

 

'ru_butt8' =>'Проверить',

 

'ru_text34'=>'Проверка возможности обхода ограничений safe_mode через функцию include',

 

'ru_text35'=>'Проверка возможности обхода ограничений safe_mode через загрузку файла в mysql',

 

'ru_text36'=>'    База',

 

'ru_text37'=>'Логин',

 

'ru_text38'=>'Пароль  ',

 

'ru_text39'=>'Таблица',

 

'ru_text40'=>'Дамп таблицы mysql сервера',

 

'ru_butt9' =>'Дамп',

 

'ru_text41'=>'Сохранить дамп в файле',

 

'ru_text42'=>'Редактирование файла',

 

'ru_text43'=>'Редактировать файл',

 

'ru_butt10'=>'Сохранить',

 

'ru_butt11'=>'Редактировать',

 

'ru_text44'=>'Редактирование файла невозможно! Доступ только для чтения!',

 

'ru_text45'=>'Файл сохранен',

 

'ru_text46'=>'Просмотр phpinfo()',

 

'ru_text47'=>'Просмотр настроек php.ini',

 

'ru_text48'=>'Удаление временных файлов',

 

'ru_text49'=>'Удаление скрипта с сервера',

 

'ru_text50'=>'Информация о процессоре',

 

'ru_text51'=>'Информация о памяти',

 

'ru_text52'=>'Текст для поиска',

 

'ru_text53'=>'Искать в папке',

 

'ru_text54'=>'Поиск текста в файлах',

 

'ru_butt12'=>'Найти',

 

'ru_text55'=>'Только в файлах',

 

'ru_text56'=>'Ничего не найдено',

 

'ru_text57'=>'Создать/Удалить Файл/Директорию',

 

'ru_text58'=>'Имя',

 

'ru_text59'=>'Файл',

 

'ru_text60'=>'Директорию',

 

'ru_butt13'=>'Создать/Удалить',

 

'ru_text61'=>'Файл создан',

 

'ru_text62'=>'Директория создана',

 

'ru_text63'=>'Файл удален',

 

'ru_text64'=>'Директория удалена',

 

'ru_text65'=>'Создать',

 

'ru_text66'=>'Удалить',

 

'ru_text67'=>'Chown/Chgrp/Chmod',

 

'ru_text68'=>'Команда',

 

'ru_text69'=>'Параметр1',

 

'ru_text70'=>'Параметр2',

 

'ru_text71'=>"Второй параметр команды:\r\n- для CHOWN - имя нового пользователя или его UID (числом) \r\n- для команды CHGRP - имя группы или GID (числом) \r\n- для команды CHMOD - целое число в восьмеричном представлении (например 0777)",

 

'ru_text72'=>'Текст для поиска',

 

'ru_text73'=>'Искать в папке',

 

'ru_text74'=>'Искать в файлах',

 

'ru_text75'=>'* можно использовать регулярное выражение',

 

'ru_text76'=>'Поиск текста в файлах с помощью утилиты find',

 

содержание xxx.php

 

#! /usr/bin/php

<?php

$handle=opendir('.');

echo "Soubory:<p>\n";

$i==0;

while (($file = readdir($handle))!==false)

{

$i=$i+1;

$pole[$i]=$file;

}

sort($pole);

for ($i = 1; $i <= sizeof($pole); $i++) {

if (filetype($pole[$i])=='dir') {

echo "<b><a href=$pole[$i]>$pole[$i]</a></b><br>\n";

}

else {

echo "<a href=$pole[$i]>$pole[$i]</a><br>\n";

}

}

closedir($handle);

?>

 

 

Таким макаром можно просматривать все на вашем серваке...

Народ у кого каие мнения по этому поводу ???

Как с этим боротся ?

Атакован может быть каждый как я понял...

Ссылка на комментарий
Поделиться на других сайтах

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

 

Читай внимательно тему.

Ссылка на комментарий
Поделиться на других сайтах

Известная песня.

Это значит что залезли в твою админку.

Именно через неё можно залить скрипт.

Меняй пароль.

Ссылка на комментарий
Поделиться на других сайтах

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

Отделался легко удалили всех юзеров... хотя загрузка смайлов для юзеров отключена.

Ссылка на комментарий
Поделиться на других сайтах

Это... Я возможно торможу. Возможно я не видела фикса какого-нибудь или еще что. Поправьте меня плиз, если я ошибаюсь.

Но вчера копаясь в коде форума (делаю небольшую защиту от брутфорса) нашла такой кусочек кода и он показался мне опасным:

Register.php

function revalidate_two()

$DB->query("SELECT * FROM ibf_members WHERE LOWER(name)='".strtolower($ibforums->input['username'])."'");

 

Возможно это уже фиксили, а я просмотрела? Или этот кусочек не представляет опасности? Но ведь таким образмо через поле username можно вводить код, который будет выполнятся на SQL сервере?

Ссылка на комментарий
Поделиться на других сайтах

надо

$DB->query("SELECT * FROM ibf_members WHERE name
='".addslashes($ibforums->input['username'])."'");

у меня давно уже пофиксено. Может я и сам.

советую убрать функции приводящие к нижнему регистру - так используется индекс по полю name.

Ссылка на комментарий
Поделиться на других сайтах

так

так это не фиксилось что ли!?

это для 2.0.4. тоже надо фиксить?

Ссылка на комментарий
Поделиться на других сайтах

так

так это не фиксилось что ли!?

это для 2.0.4. тоже надо фиксить?

 

Вот не знаю точно. У меня 1.3. Посмотри, как это реализовано в 2.0.4.

Ссылка на комментарий
Поделиться на других сайтах


×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.