ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Уязвимости > Чаты
   
Закрытая тема
 
Опции темы Поиск в этой теме Опции просмотра

IE XSS Kit
  #1  
Старый 06.06.2006, 12:49
Аватар для .Slip
.Slip
Leaders of Antichat - Level 4
Регистрация: 16.01.2006
Сообщений: 1,966
Провел на форуме:
21768337

Репутация: 3486


По умолчанию IE XSS Kit

Всем привет, ибо я.. Решил вот на досуге рассмотреть набор инструментов для xss, который лежит на сайте античата. Скачать IE xss kit Ещё небольшое предисловие. Запостил я всё это в этот раздел т.к. этот набор поможет в поиске уязвимостей в чате и немного повысит ваши возможности. Сегодня я кратко расскажу про редактор форм:

Form_Select-one2Text

Этот редактор форм позволяет нам превращать фреймы с зашитыми опциями, в собственный полигон для испытаний.
Начнём с самого простого, в большинстве чатов есть выбор цвета который в html виде производится таким образом:
Код HTML:
<OPTION selected VALUE="Black" STYLE="color:black">Чёрный </OPTION>
В действительности это выглядит вот так:

Как видите есть зашитые цвета, использование других пока что невозможно. Теперь мы подводим курсор мышки к фрейму с выбором цвета, щёлкаем правой кнопкой и выбираем команду Form_Select-one2Text И вот этот фрейм со строгим выбором цвета становится пустым фреймом с возможностью записи туда любого текста. (только не всё что вы напишите будет работать) Вот как он выглядит после применения Form_Select-one2Text :

Теперь у вас есть возможность ввести любой код цвета, например #FFFFFF. Так же эта команда делает многие фреймы свободными для редактирования. (Например в одном чате при выборе пола я сделал себе "Кошмарный Гермофродит"). Так же можно и напрямую искать xss уязвимости, подставляя этот код в ставшие доступными нам фреймы.
Вот здесь лежат множество кодов, способных вызвать alert и собственно найти xss. Теперь вы ознакомлены с редактором форм Form_Select-one2Text

Form_Method2Text, Form_Hidden2Text

Начнём с Form_Method2Text. Сама по себе команда не очень нужна, т.к. она открывает фрейм где написан метод работы со страницей. Самые основные методы это: post и get. Метод post означает что вы вносите свои данные на страницу. Чаще всего он встречается на форумах, гостевых книгах, чатах и т.д. Метод get означает что вы получаете какие либо данные от самой страницы, чаще всего он используется в поисковых системах, этот метод можно встретить почти везде. В общем эта команда ничем не примечательна, но она так же как и остальные даёт доступ к открытому фрейму. И конечно же в некоторых интернет ресурсах если заменить пост или гет на код xss, то яваскрипт успешно выполняется.
Теперь пройдёмся по команде Form_Hidden2Text. Сама по себе эта команда позволяет просмотреть данные которые зашиты в странице (сорцы) и даёт возможность их подкорректировать.
Покажу вам наглядный пример. Тестировал я этот метод на одном из чатов чатсити, когда нужно отправить отчёт об ошибке.
Вот он: _http://www.38557.chatcity.ru/bug/?err=IllegalChannel(get_ch)&www.38557.chatcity.ru&
Скрин делать не буду, т.к. зайдёте по ссылке и сами всё увидете. Теперь на этой странице используем команду Form_Hidden2Text, как видите открываются фреймы с данными пользователя который зашёл на эту страницу. (Так же они есть в сорцах) Теперь их можно редактировать, объясню зачем это нужно. При отправлении отчёта о ошибке администратору чатсити прийдут как раз те самые данные которые стали нам доступными для редактирования. Это наводит на мысль, что можно в этот раз остаться анонимным. Вот скрин того что нам открылось:

http://img124.imageshack.us/img124/5457/039hm.jpg

Как видно можно всё стереть или подставить чужие данные.
И вот это же самое хранится в сорцах:
Код HTML:
<input type=hidden name=err value="IllegalChannel(get_ch)">
<input type=hidden name=browser value="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)">
<input type=hidden name=addr value="айпи мой:))">
<input type=hidden name=via value="">
<input type=hidden name=referer value="http://www.38557.chatcity.ru/kpobatka">
<input type=hidden name=args value="www.38557.chatcity.ru&">
Но теперь мы всё можем отредактировать и остаться анонимными, написав администрации пару ласковых
Вот и всё, что могут эти две команды.

Form_Target2Text

Само по себе слово target означает цель, и означает это ваше дальнейшее "направление" после какого либо действия. И в данном случае при использовании этой команды у нас так же открывается фрейм доступный для редактирования. Во многих случаях, (если цель не прописана на яваскриптах) при использовании команды вы увидете какую либо ссылку, куда вас отправит после каких либо действий. Это может быть хоть что, нажатие кнопки ОК, Выход, и т.д. В этом то как раз команда Form_Target2Text очень удобна для поиска Xss. Вы можете приписать xss код к ссылке которая уже была, или просто стереть ссылку и прописать xss код.

LocationReplace

При выполнении этой команды, происходит запрос сценария через метод prompt, запрос идёт на какую либо страницу. В общем не буду ходить вокруг да около, эта команда довольно бесполезна при поиске xss, т.к. чтобы вы не написали, любой ваш текст добавится к изначальнуму адресу страницы с которой вы выполнили команду.
Пример:
_http://www.ya.ru/
Используем LocationReplace, выпадает окошко, вписываем туда простую конструкцию:
<script>alert(/test/)</script>
Жмём ОК, и нас перебрасывает на: _http://www.ya.ru/<script>alert(/test/)</script>
Толку никакого.. Этот способ для тех, кому лень самим прописать в адресной строке код и не более. Так же его можно использовать как рефферер.
__________________
..

Последний раз редактировалось sL(IP)--!(P.i.N.); 07.06.2006 в 20:37..
 

  #2  
Старый 06.06.2006, 18:44
Аватар для Desr0w
Desr0w
Постоянный
Регистрация: 01.02.2006
Сообщений: 523
Провел на форуме:
1730553

Репутация: 319


Отправить сообщение для Desr0w с помощью ICQ
По умолчанию

Молодца!
 

  #3  
Старый 07.06.2006, 14:48
Аватар для alextoun
alextoun
Постоянный
Регистрация: 07.05.2006
Сообщений: 732
Провел на форуме:
7910701

Репутация: 811


Отправить сообщение для alextoun с помощью ICQ
По умолчанию

во-во, всё уменя получилось! класссно!!!
 

Html коды
  #4  
Старый 07.06.2006, 17:38
Аватар для .Slip
.Slip
Leaders of Antichat - Level 4
Регистрация: 16.01.2006
Сообщений: 1,966
Провел на форуме:
21768337

Репутация: 3486


По умолчанию Html коды

Здесь я выложу все html коды, которыми оперирует набор IE xss kit.

Cookies:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	function zExpires() {
		var expires = new Date();
		expires.setYear(expires.getYear() + 10);
		return expires.toUTCString();
	}
	var zWindow = external.menuArguments;
	var zDocument = zWindow.document;
	var zCookie = zDocument.cookie;
	var zNew = zWindow.prompt('New Cookie?', zCookie);
	if (zNew != null) {
		var zNewCookie = zWindow.prompt('New Cookie:', '; EXPIRES=' + zExpires() + ';');
		if (zNewCookie != null) zDocument.cookie = zNewCookie;
	}
</script>
Action2Text:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	function zConvert(text) {
		var text2 = '';
		for (var i = 0; i <= text.length - 1; i ++) {
			if (text.charAt(i) != escape(text.charAt(i))) {
				text2 += escape(text.charAt(i)).replace(/%/, '&#x') + ';';
			} else {
				text2 += text.charAt(i);
			}
		}
		return text2;
	}
	var zWindow = external.menuArguments;
	var zDocument = zWindow.document;
	var zForms = zDocument.forms;
	for (var i = 0; i <= zForms.length - 1; i ++) {
		with (zForms[i]) {
			if (!zForms[i].zAction) {
				innerHTML = '<input type="text" id="zAction" value="' + zConvert(action) + '" title="action" onChange="document.forms[' + i + '].action = this.value">' + innerHTML;
			}
		}
	}
</script>
Checkbox2Text:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	function zConvert(text) {
		var text2 = '';
		for (var i = 0; i <= text.length - 1; i ++) {
			if (text.charAt(i) != escape(text.charAt(i))) {
				text2 += escape(text.charAt(i)).replace(/%/, '&#x') + ';';
			} else {
				text2 += text.charAt(i);
			}
		}
		return text2;
	}
	var zWindow = external.menuArguments;
	var zDocument = zWindow.document;
	var zForms = zDocument.forms;
	for (var i = 0; i <= zForms.length - 1; i ++) {
		for (var j = 0; j <= zForms[i].elements.length - 1; j ++) {
			with (zForms[i].elements[j]) {
				if (type == 'checkbox') {
					outerHTML = '<input type="text" name="' + name + '" id="' + name + '" value="' + zConvert(value) + '" title="' + type + ' / ' + name + '" onDblClick="this.outerHTML = \'\'">';
				}
			}
		}
	}
</script>
EventsOFF:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	var zWindow = external.menuArguments;
	var zDocument = zWindow.document;
	var zForms = zDocument.forms;
	for (var i = 0; i <= zForms.length - 1; i ++) {
		for (var ii in zForms[i]) {
			if (ii.match(/^on/i) && (zForms[i].getAttribute(ii) != null)) {
				zForms[i].setAttribute(ii, null);
			}
		}
		for (var j = 0; j <= zForms[i].elements.length - 1; j ++) {
			for (var jj in zForms[i].elements[j]) {
				if (jj.match(/^on/i) && (zForms[i].elements[j].getAttribute(jj) != null)) {
					zForms[i].elements[j].setAttribute(jj, null);
				}
			}
		}
	}
</script>
Hidden2Text:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	function zConvert(text) {
		var text2 = '';
		for (var i = 0; i <= text.length - 1; i ++) {
			if (text.charAt(i) != escape(text.charAt(i))) {
				text2 += escape(text.charAt(i)).replace(/%/, '&#x') + ';';
			} else {
				text2 += text.charAt(i);
			}
		}
		return text2;
	}
	var zWindow = external.menuArguments;
	var zDocument = zWindow.document;
	var zForms = zDocument.forms;
	for (var i = 0; i <= zForms.length - 1; i ++) {
		for (var j = 0; j <= zForms[i].elements.length - 1; j ++) {
			with (zForms[i].elements[j]) {
				if (type == 'hidden') {
					outerHTML = '<input type="text" name="' + name + '" id="' + name + '" value="' + zConvert(value) + '" title="' + type + ' / ' + name + '">';
				}
			}
		}
	}
</script>
Method2Text:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	function zConvert(text) {
		var text2 = '';
		for (var i = 0; i <= text.length - 1; i ++) {
			if (text.charAt(i) != escape(text.charAt(i))) {
				text2 += escape(text.charAt(i)).replace(/%/, '&#x') + ';';
			} else {
				text2 += text.charAt(i);
			}
		}
		return text2;
	}
	var zWindow = external.menuArguments;
	var zDocument = zWindow.document;
	var zForms = zDocument.forms;
	for (var i = 0; i <= zForms.length - 1; i ++) {
		with (zForms[i]) {
			if (!zForms[i].zMethod) {
				innerHTML = '<input type="text" id="zMethod" value="' + zConvert(method) + '" title="method" onChange="document.forms[' + i + '].method = this.value">' + innerHTML;
			}
		}
	}
</script>
Radio2Text:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	function zConvert(text) {
		var text2 = '';
		for (var i = 0; i <= text.length - 1; i ++) {
			if (text.charAt(i) != escape(text.charAt(i))) {
				text2 += escape(text.charAt(i)).replace(/%/, '&#x') + ';';
			} else {
				text2 += text.charAt(i);
			}
		}
		return text2;
	}
	var zWindow = external.menuArguments;
	var zDocument = zWindow.document;
	var zForms = zDocument.forms;
	for (var i = 0; i <= zForms.length - 1; i ++) {
		for (var j = 0; j <= zForms[i].elements.length - 1; j ++) {
			with (zForms[i].elements[j]) {
				if (type == 'radio') {
					outerHTML = '<input type="text" name="' + name + '" id="' + name + '" value="' + zConvert(value) + '" title="' + type + ' / ' + name + '" onDblClick="this.outerHTML = \'\'">';
				}
			}
		}
	}
</script>
Select-One2Text:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	function zConvert(text) {
		var text2 = '';
		for (var i = 0; i <= text.length - 1; i ++) {
			if (text.charAt(i) != escape(text.charAt(i))) {
				text2 += escape(text.charAt(i)).replace(/%/, '&#x') + ';';
			} else {
				text2 += text.charAt(i);
			}
		}
		return text2;
	}
	var zWindow = external.menuArguments;
	var zDocument = zWindow.document;
	var zForms = zDocument.forms;
	for (var i = 0; i <= zForms.length - 1; i ++) {
		for (var j = 0; j <= zForms[i].elements.length - 1; j ++) {
			with (zForms[i].elements[j]) {
				if (type == 'select-one') {
					outerHTML = '<input type="text" name="' + name + '" id="' + name + '" value="' + zConvert(value) + '" title="' + type + ' / ' + name + '">';
				}
			}
		}
	}
</script>
Target2Text:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	function zConvert(text) {
		var text2 = '';
		for (var i = 0; i <= text.length - 1; i ++) {
			if (text.charAt(i) != escape(text.charAt(i))) {
				text2 += escape(text.charAt(i)).replace(/%/, '&#x') + ';';
			} else {
				text2 += text.charAt(i);
			}
		}
		return text2;
	}
	var zWindow = external.menuArguments;
	var zDocument = zWindow.document;
	var zForms = zDocument.forms;
	for (var i = 0; i <= zForms.length - 1; i ++) {
		with (zForms[i]) {
			if (!zForms[i].zTarget) {
				innerHTML = '<input type="text" id="zTarget" value="' + zConvert(target) + '" title="target" onChange="document.forms[' + i + '].target = this.value">' + innerHTML;
			}
		}
	}
</script>
LocationReplace:
Код HTML:
<script type="text/javascript">
// Created by zFailure
// Web-site: http://zfailure.narod.ru
	var zWindow = external.menuArguments;
	var zLocation = zWindow.location;
	var zNewLocation = zWindow.prompt('New Location:', zLocation);
	if (zNewLocation != null) zLocation.replace(zNewLocation);
</script>
=================================================
Вот все коды, кому нибудь они обязательно пригодятся.
PS Описание команд я буду постепенно добавлять в первый пост.
PSS спасибо zFailure за данный набор
__________________
..
 

  #5  
Старый 07.06.2006, 22:02
Аватар для Sn@k3
Sn@k3
Познавший АНТИЧАТ
Регистрация: 13.04.2006
Сообщений: 1,738
Провел на форуме:
5151669

Репутация: 1198


Отправить сообщение для Sn@k3 с помощью ICQ
По умолчанию

молоток, думаю тебе +
 

  #6  
Старый 08.06.2006, 10:50
Аватар для Folkner
Folkner
Новичок
Регистрация: 05.06.2006
Сообщений: 12
Провел на форуме:
71564

Репутация: 3
По умолчанию

молодец, супер... очень хорошая и граммотно оформленная статья!
 

  #7  
Старый 08.06.2006, 12:23
Аватар для alextoun
alextoun
Постоянный
Регистрация: 07.05.2006
Сообщений: 732
Провел на форуме:
7910701

Репутация: 811


Отправить сообщение для alextoun с помощью ICQ
По умолчанию

Слушай, если я захожу в чате, то в XSS есть функция
XSS:Cookies
я когда нажимаю на ник и выбираю это функции, он открывает какое то поле, и там написанно чё то, как мне с этим работать? точнее, можно ли украсть куки, и зайти с правами админа.
И ещё, при входе в чате, когда стоишь на пороге, я пробовал нажимать разные функции и у меня вылетали поля, с вводом, щаз расскажу, я стоял на пороге одного из чатов(и на других тоже такое есть)
chathome
вообщем жму Action2Text: и у меня появляется строчка и там написанно down1.php
дальше жму Hidden2Text: и выпадает 2 строчки в одной написанн сам чат(его домен) к примеры f1live а
в другом цыфра 1
дальее жму Method2Text: ну там у меня выпадет окно с и пишется POST( об этом ты описывал, спасибо кстати, очень помогло, твоё описание)
далее жму Target2Text: и выпадет ваще пустое окно
и вроде бы всё, вот что с этим делать я не знаю,
хотя в другом чате у меня выпало окно и там был написанно мой статус REG я попробовал изменить на admin или moder, но меня не пустили туда, написав, ошибка сервера.
Если можешь, опишешь что нибудь, а я пойду ещё там ковыряться. Кстати если, в том чате забрать куки админа, и там в поле ввести вместо статуса REG admin? то тогда же пустят со статусом админа*??

Последний раз редактировалось alextoun; 08.06.2006 в 12:42..
 

  #8  
Старый 08.06.2006, 12:30
Аватар для qBiN
qBiN
Постоянный
Регистрация: 20.01.2005
Сообщений: 899
Провел на форуме:
1535446

Репутация: 182


Отправить сообщение для qBiN с помощью ICQ
По умолчанию

Не понравилось.Все и так понятно.

Последний раз редактировалось qBiN; 08.06.2006 в 12:54..
 

  #9  
Старый 08.06.2006, 12:40
Аватар для .Slip
.Slip
Leaders of Antichat - Level 4
Регистрация: 16.01.2006
Сообщений: 1,966
Провел на форуме:
21768337

Репутация: 3486


По умолчанию

alextoun, отвечу в ПМ
__________________
..

Последний раз редактировалось sL(IP)--!(P.i.N.); 10.06.2006 в 09:16..
 

  #10  
Старый 10.06.2006, 09:15
Аватар для W!z@rD
W!z@rD
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме:
1892597

Репутация: 836


Отправить сообщение для W!z@rD с помощью ICQ
По умолчанию

чтож буду учить xss =) Думаю старт есть!
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
 
Закрытая тема



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Xss черви и вирусы: сообщества уязвимых Utochka Чужие Статьи 3 28.08.2006 00:26
Xss для новичков Micr0b Уязвимости 0 04.06.2006 18:25
Xss — основные ходы dinar_007 Чужие Статьи 11 30.05.2006 17:00
XSS в Phorum<=5.0.14 tester2005 Уязвимости 22 17.03.2005 07:52



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ