The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Атака на серверы MySQL с целью совершения DDoS-атак

29.10.2015 17:01

Компания Symantec сообщила о выявлении вредоносного ПО, поражающего серверы с СУБД MySQL с целью их использования для совершения DDoS-атак. На первой стадии проникновения, путём эксплуатации уязвимостей в web-приложениях, позволяющих осуществить подстановку SQL-кода, в СУБД загружается вредоносная встраиваемая процедура, которая загружает и выполняет на сервере троянскую программу Chikdos, подключающую хост к ботнету для осуществления DDoS-атак. Большинство поражённых систем зафиксировано в Индии, Китае, Бразилии и Нидерландах. Поражаются только сборки MySQL для платформы Windows, но теоретически атака может быть адаптирована и для Linux (применяемый троян Chikdos доступен и для Linux).

  1. Главная ссылка к новости (http://www.symantec.com/connec...)
Лицензия: CC-BY
Тип: Проблемы безопасности
Ключевые слова: ddos, trojan
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (27) Ajax | 1 уровень | Линейный | Раскрыть всё | RSS
  • 1.1, pkdr (ok), 17:11, 29/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    Дожили, теперь БД интересна не как хранилище данных, которые можно стащить, а как средство для участия в ботнете.

    > Поражаются только сборки MySQL для платформы Windows, но теоретически атака может быть адаптирована и для Linux.

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

     
     
  • 2.2, pkdr (ok), 17:15, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Хм, ошибся, заражают базу через веб-сервер используя sql-инъекцию, простите, виндузятники, сегодня я вас выставил чуть хуже, чем вы есть на самом деле.
     
     
  • 3.6, Аноним (-), 17:31, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    И тут внимание вопрос, зачем в БД встраивать механизмы позволяющие из SQL кода устанавливать "расширения" либо участвовать в ботнетах напрямую...
     
     
  • 4.10, YetAnotherOnanym (ok), 18:40, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    "Гибкость" же!
     
  • 3.12, userd (ok), 18:57, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Вы ошиблись в одной детали.
    На фоне других косяков разница между инъекцией и подключением к порту с пользователем root без пароля значит совсем немного.

    Из текста новости не ясно, а по ссылке написано, что использованы UDF.

    Для того чтобы загрузить UDF можно выполнить запрос типа
    SELECT … INTO DUMPFILE '…';

    Далее, для установки UDF нужно выполнить оператор типа
    CREATE FUNCTION … RETURNS … SONAME '…';

    CREATE FUNCTION загружает библиотеку только из plugin_dir; в старинных версиях была ошибка - при пустом plugin_dir библиотека грузилась так, как грузится любая библиотека по правилам принятым в операционной системе.

    итого для записи и установки UDF нужно:
    - plugin_dir должен быть доступен серверу БД на запись.
      - mysql выполняется от пользователя с лишними привилегиями
      - или plugin_dir должен быть доступен для записи
    - пользователь должен иметь право "CREATE ROUTINE"

     
     
  • 4.22, pkdr (ok), 13:23, 30/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Вы ошиблись в одной детали.
    > На фоне других косяков разница между инъекцией и подключением к порту с пользователем root без пароля значит совсем немного.

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

     
  • 3.15, Обнимашки (?), 20:56, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Албанский вирус

    <SHELL># mysql -u root -p -h <IP_OF_TARGET_HOST>
    Enter password: <PASSWORD>

    https://www.giac.org/paper/gcih/759/exploiting-user-defined-functions-mysql/10

     
  • 2.14, svsd_val (ok), 19:03, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Дело в том что права у винды на запуск всего и вся есть и редко - очень редко ограничены, что делает распространение вредоносного ПО под виндой весьма обыденным делом., GNU/Linux / Unix админы часто "параноики" и блочат всё и вся включая и права на запуск без их разрешения...
     
     
  • 3.16, _KUL (ok), 00:20, 30/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не имеет значения ОС (и в винде есть гибкие локальные политики), всё зависит от админа, у некоторых и под линуксом веб-морда от рута отдаётся ("так ведь ошибки не сяпятся в лог")
     
     
  • 4.19, тоже Аноним (ok), 08:41, 30/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Имеет. Для того, что в нормальных системах делается просто и естественно, в винде нужно гнуть локальные политики. И наоборот - чтобы сделать так безобразно, как в винде по умолчанию, в нормальных системах нужно очень постараться.
     
     
  • 5.23, Michael Shigorin (ok), 16:20, 30/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Для того, что в нормальных системах делается просто и естественно,
    > в винде нужно гнуть локальные политики. И наоборот - чтобы сделать
    > так безобразно, как в винде по умолчанию, в нормальных системах
    > нужно очень постараться.

    Слушайте, но у меня уже стена для рамочек скоро закончится!

     
     
  • 6.25, тоже Аноним (ok), 18:17, 30/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ardebito ergo sum, типа того.
     
  • 2.21, cmp (ok), 10:18, 30/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Дожили, теперь БД интересна не как хранилище данных, которые можно стащить, а
    > как средство для участия в ботнете.

    А кому интересна база виндузятника с кривой цмской, кроме его друзей-одноклассников?

     
  • 2.28, XoRe (ok), 22:06, 31/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Просто среди тех, кто использует БД под линуксом, невероятно редко встречаются такие,
    > кому хватает идиотизма вывесить порты базы данных в мир.

    Боюсь, и там идиотов хватает - шаред хостинги постоянно на этом попадаются

     

  • 1.3, тоже Аноним (ok), 17:21, 29/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    > теоретически атака может быть адаптирована и для Linux

    Попробовал представить людей, которые могли заразить через Мускуль линуксовые сервера, но ограничились форточками. Ушел чинить сломанную фантазию.

     
  • 1.4, Аноним (-), 17:21, 29/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    >>загружается вредоносная встраиваемая процедура

    Напомните, какие привелегии надо добавить юзеру?

     
     
  • 2.8, Аноним (-), 17:56, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    GRANT ALL PRIVILEGES ...
     
  • 2.9, Нимано (?), 18:05, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Привилегии на ЧСВ > 9000 для многих вполне достаточно :)

    http://www.iodigitalsec.com/mysql-root-to-system-root-with-udf-for-windows-an
    http://infamoussyn.com/2014/07/11/gaining-a-root-shell-using-mysql-user-defin

     
     
  • 3.11, Ordu (ok), 18:48, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    http://infamoussyn.com/2014/07/11/gaining-a-root-shell-using.../

    > To do this, the following steps need to be taken:
    > 1. Turn off the MySQL service.
    > 2. Run the command on the datadir for the MySQL service (default is /var/lib/mysql).
    >        chown -R root:root /path/to/datadir
    > 3. Change the line “user=mysql” to “user=root” in the file /etc/my.cnf. [!!!!]
    > 4. Turn on the MySQL service.

    Мде... Одно непонятно: зачем такие сложности по созданию дыры? Может проще было запустить sshd, разрешив вход руту и поставив руту пароль root?

     
     
  • 4.13, Нимано (?), 19:02, 29/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Мде... Одно непонятно: зачем такие сложности по созданию дыры? Может проще было
    > запустить sshd, разрешив вход руту и поставив руту пароль root?

    Угу, а еще они там сами код для SO компильнули - вот ведь фейл какой.
    Из первой ссылки:
    [quote]Third, we then want to dump that table row out to a new file in either the ‘/usr/lib’ directory or the ‘c:\windows\system32’ directory depending on whether we are on Linux or Windows respectively. The reason we need to do this, is that our regular web application or user account ->does not have permission to create files in these directories, however the MySQL root user does.<-[/quote]

     
  • 4.24, Michael Shigorin (ok), 17:14, 30/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Может проще было запустить sshd, разрешив вход руту и поставив руту пароль root?

    Так PermitRootLogin without-password обломает.  Ну, если дистрибутив приличный.

     

  • 1.5, Сергей (??), 17:30, 29/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А собственно говоря чему тут удивляться, очень часто прикладные программеры не удосуживаются изучить возможности sql-ских и прочих движков в отношении прав пользователей, вот и ходят их программы к базам с правами dba, кричащий пример 1c 7.7 c движком на базе ms sql...
     
  • 1.7, Аноним (-), 17:36, 29/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Индия и вантуз, говорите? А это случайно не офисы сиско в бангалоре?
     
  • 1.17, Классический Анонимуз (?), 05:03, 30/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Надо было трояна писать под Оракле. Там на порядок больше возможностей, а патчи ещё реже ставят, ибо Оракле их выпускает только под 12-ку, а остальные в пролёте.
     
     
  • 2.27, Чудак (?), 22:17, 30/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    11.2.0.4 всё ещё патчится, но кому это интересно?
     
     
  • 3.29, Аноним (-), 13:04, 03/11/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Не надо трололо, оракл годами не закрывает дырки.
     

  • 1.18, Аноним (-), 06:40, 30/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    > но теоретически атака может быть адаптирована и для Linux (применяемый троян Chikdos доступен и для Linux)

    Из описания атака:
    1. Скопировать *.dll (или *.so для юникса) на целевой хост
    2. При копировании надо поместить эту динамическую библиотеку в plugin_dir
    3. Загрузить библиотеку как пользовательскую функцию или плагин к mysql

    Под unix системами mysql установлен от рута в систему (все файлы кроме datadir, логов и innodb файлов (которые обычно в datadir) принадлежат пользователю root и другие пользователи не имеют прав на запись в эти файлы и директории plugin_dir недоступен для записи во всех дистрибутивах или при ручной установке tar.gz архива от рута).

    При старте mysqld дропает root привилегии и работает от другого пользователя (обычно mysql:mysql).

    Итого для эксплуатации уязвимости нам надо получить root до того как мы запишем исполняемый файл UDF, а значит нет смысла во всей этой пляске с UDF и загрузками файлов через sql команды.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    MIRhosting
    Inferno Solutions
    Hosting by Ihor
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2019 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру