Хакеры выбирают NOD32 - Аналитика - Форумы Anti-Malware.ru Перейти к содержанию
Иван

Хакеры выбирают 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

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

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


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

  • Сообщения

    • PR55.RP55
      + Уточнение по: " при первых запусках после установки драйвера Ф и перезагрузки PC  - uVS не видел процессов запущенного  Firefox ( все файлы в базе проверенных ( если это имеет значение ) " Я говорю о том, что процессов не было в "История процессов и задач..."
    • PR55.RP55
      Demkd По поводу: 5.0.4 На: "uVS v5.0.4v x64 [http://dsrt.dyndns.org:8888]: Windows 7 Home Basic x64 (NT v6.1 SP1) build 7601 Service Pack 1 [C:\WINDOWS] " История процессов и задач... Отобразить цепочку запуска процесса uVS начинает жрать память и... Out of memory. Сжирает все 8гб+файл подкачки и... На компьютере недостаточно памяти ( и да, твик: 39\40 ) на происходящее не влияет ) ----- Второе, при первых запусках после установки драйвера Ф и перезагрузки PC  - uVS не видел процессов запущенного  Firefox ( все файлы в базе проверенных ( если это имеет значение ) Третье: При проверке системы с Live CD Видим следующее: Загружено реестров пользователей: 6
      Анализ автозапуска...
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\rcvscxggb\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\rcvscxggb\Environment\TMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\fnfozvsrt\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\fnfozvsrt\Environment\TMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\rpnrvystm\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\rpnrvystm\Environment\TMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\evikeffmz\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\evikeffmz\Environment\TMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TEMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\uvs_default\Environment\TEMP
      --------------------------------------------------------------------------------------------------
      (!) Переменная окружения TMP содержит неcуществующий или испорченный путь: %USERPROFILE%\AppData\Local\Temp
      \REGISTRY\MACHINE\uvs_default\Environment\TMP ------------- Так это в списке Live CD: ;uVS v5.0.4v x64 [http://dsrt.dyndns.org:8888] [Windows 10.0.14393 SP0 ]
      ; Все ПОДОЗРИТ.  | <%TEMP%>
      ПОДОЗРИТ.  | <%TMP%>
      автозапуск | MMDRV.DLL
      автозапуск | MSCORSEC.DLL
      ПОДОЗРИТ.  | E:\USERS\DEFAULT\<%TEMP%>
      ПОДОЗРИТ.  | E:\USERS\DEFAULT\<%TMP%>
      ПОДОЗРИТ.  | E:\USERS\USER\<%TEMP%>
      ПОДОЗРИТ.  | E:\USERS\USER\<%TMP%>
       \DESKTOP\ЗАГРУЗКИ\PASSIST_STANDARD ( РАЗДЕЛЫ ДИСКА )_20251230.1.EXE
      ПОДОЗРИТ.  | E:\WINDOWS\SERVICEPROFILES\LOCALSERVICE\<%TEMP%>
      ПОДОЗРИТ.  | E:\WINDOWS\SERVICEPROFILES\LOCALSERVICE\<%TMP%>
      ПОДОЗРИТ.  | E:\WINDOWS\SERVICEPROFILES\NETWORKSERVICE\<%TEMP%>
      ПОДОЗРИТ.  | E:\WINDOWS\SERVICEPROFILES\NETWORKSERVICE\<%TMP%> ------ Четвёртое, по поводу запуска файлов В старых версиях uVS брал информацию: AppData\Roaming\Microsoft\Windows\Recent судя по всему сейчас этого нет.  
    • demkd
      ---------------------------------------------------------
       5.0.4
      ---------------------------------------------------------
       o Переменные окружения всех пользователей с некорректным содержимым теперь добавляются
         в список как подозрительные объекты со статусом "ПЕРЕМЕННАЯ".
         Удаление такого объекта приведет к удалению переменной пользователя или 
         к восстановлению значения по умолчанию если это системная переменная.  
         Поскольку уже запущенные процессы используют копии переменных потребуется перезагрузка системы.

       o Для процессов с внедренными потоками теперь печатается родитель этого процесса.

       o В лог выводится состояние SecureBoot.

       o В лог выводится версия драйвера Ф.

       o Добавлена интеграция с Ф:
         o История процессов загружается из Ф, а не из журнала Windows.
           Работает и при выключенной опции отслеживания процессов и задач, но если эта опция выключена
           то будет доступна лишь история процессов, но не задач.
           Это может быть полезно в случае когда зловред удаляет свою активность из журнала Windows.
         o Если установлен Ф v2.20 и старше, то в лог выводится список процессов (в т.ч. и уже завершенных)
           внедрявших потоки в чужие процессы, такие процессы получают статус "ПОДОЗРИТЕЛЬНЫЙ" и новый статус "ИНЖЕКТОР".

       o В меню запуска добавлена опция "Установить драйвер Ф".
         Версия драйвера: v2.20 mini - это урезанный драйвер бесплатной версии Ф.
         В отличии от драйвера в Ф эта версия не имеет региональных ограничений. 
         Драйвер ведет историю запуска процессов и внедрения потоков в чужие процессы.
         Дополнительно осуществляется защита ключа драйвера в реестре и самого файла драйвера.
         Остальной функционал удален.
         Драйвер устанавливается под случайным именем.
         Удалить драйвер можно будет в том же меню запуска, после установки/удаления требуется перезагрузка системы.
         (!) Для установки драйвера Ф потребуется выключить SecureBoot в BIOS-е.
         (!) Установка драйвера возможна лишь в 64-х битных системах начиная с Win7.
         (!) После установки драйвера система перейдет в тестовый режим из-за включения опции Testsigning.
         (!) При удалении драйвера запрашивается разрешение на отключение опции Testsigning.
         (!) Если эта опция изначально была включена и пользователь использует самоподписанные драйвера
         (!) то это опцию НЕ следует выключать, иначе система может уже и не загрузиться.

       o В меню "Запуск" и в меню удаленной системы добавлен пункт "Свойства системы".

       o Исправлена ошибка из-за которой в логе не появлялось сообщение о завершении сеанса при обратном подключении
         к удаленному рабочему столу.

       
    • PR55.RP55
      Возможно, что-то в открытом коде будет полезного и для uVS https://www.comss.ru/page.php?id=19320
    • Ego Dekker
      Домашние антивирусы для Windows были обновлены до версии 19.0.14.
×