SQL Slammer (SQL Slammer)

Перейти к навигации Перейти к поиску
SQL Slammer
Тип Сетевой червь, эксплойт
Год появления 25 января 2003 года
Используемое ПО уязвимость в Microsoft SQL Server

SQL Slammer (также известен как Sapphire, WORM_SQLP1434.A, SQL Hell и Helkern) — сетевой червь, вызвавший отказ в обслуживании некоторых хостов в Интернете и сильное снижение общего интернет-трафика, начиная с 05:30 UTC 25 января 2003. SQL Slammer — это червь, атакующий непропатченные серверы Microsoft SQL 2000. Он распространился быстро, заразив за 10 минут 75 тыс. компьютеров. Несмотря на свое название, червь не использовал язык SQL; он использовал переполнение буфера в продуктах Microsoft SQL Server и Desktop Engine, для которых исправление было выпущено шестью месяцами ранее.[1]

История[править | править код]

Фактически сам червь, или по крайней мере его шаблон, появился еще 22 мая 2002 года. Червь был создан для того, что бы вывести из строя SQL сервера, по заказу его же владельца. (Обычно такие заказы, совершаются для того что бы проверить системы на уязвимости) После обнаружения уязвимостей, благодаря которым эксплойт и вызывал отказ в обслуживание SQL серверов, копия эксплойта была переслана в Microsoft Security Response Center. К моменту проведения брифинга по безопасности Black Hat, Microsoft выпустила патч для исправления уязвимостей. Пользователей предупредили о том, что бы, новый патч был установлен, для устранения уязвимостей. К сожалению, спустя полгода оказалось, что множество пользователей, в том числе корпораций и даже служба экстренной помощи 911 в штате Вашингтон, не установили патч. Тогда, используя вышеупомянутый эксплойт как шаблон для кода, кто-то создал SQL Slammer, и запустил его в мир.[2] В результате он вызвал несколько атак типа «отказ в обслуживании» в 2002 и 2003 годах. Исправление, предоставленное Microsoft в 2002 году, а также более широкое освещение этого червя в СМИ значительно снизили риск заражения к 2004 году.[1][2][3][4]


25 января, 2003 года начал свое существование в интернете, путем заражения тысячи серверов, на которых установлено программное обеспечение Microsoft SQL Server. Slammer отключил некоторые части Интернета, потому что он распространялся очень быстро, косвенно вызывая отказ в обслуживании, а в некоторых частях мира это наносило ущерб основным службам. Например, в штате Вашингтон отказала система экстренной помощи 911. SQL Slammer представлял собой 376-байтовый вредоносный код. Он пытался подключиться к каждому компьютеру, который мог найти, через порт MS-SQL UDP 1434.[2]


Человек, создавший Slammer так и не был найден. Существует теория, о том, что авторов SQL Slammer было несколько, обосновано это тем, что, половина кода Slammer использует метод XOR для установки значений регистров, тогда как остальная часть кода использует метод MOV. У кодировщиков, обычно есть стили, которых они придерживаются, и так же, как радистов во время Второй мировой войны можно было узнать по их характерному стилю или кулаку, кодировщика можно было узнать по их стилю, и они, как правило, не переключались между использованием XOR и МОV; и что интересно в Slammer, так это то, что здесь задействовано как минимум два стиля, что предполагает наличие более одного автора. Но это всего лишь теория.[2]

Технические детали[править | править код]

376-байтовый пакет червя влияет только на SQL-серверы, на которых не установлен SP3, пакет обновлений для программного обеспечения Windows, который включает в себя исправление для исправления ошибки переполнения буфера, которую использует червь.[1]

Червь распространяется между серверами, увеличивая трафик на порту UDP 1434 и вызывая большой сетевой трафик, который может снизить производительность сети и привести к отказу в обслуживании. Обычно, когда трафик слишком большой, чтобы роутеры смогли обработать его, роутеры обязаны задержать или временно остановить сетевой трафик.

Согласно представителям NSF, DARPA, Silicon Defense, Cisco Systems, AT&T, NIST и CAIDA , стратегия распространения Sapphire основана на случайном сканировании — она случайным образом выбирает IP-адреса для заражения, в конечном итоге обнаруживая все уязвимые хосты.[3] Два ключевых аспекта способствовали быстрому распространению SQL Slammer. Червь поражал новые хосты через безсессионный UDP протокол. Весь червь (всего 376 байт) целиком помещался в единственный UDP пакет[5][6]. В результате заражённый хост мог отправлять сотни пакетов со своим телом в секунду всем вокруг, не заботясь об их успешной доставке.

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

Примечания[править | править код]

  1. 1 2 3 What is SQL Slammer? - Definition from Techopedia (англ.). Techopedia.com. Дата обращения: 16 августа 2022.
  2. 1 2 3 4 The Inside Story of SQL Slammer (англ.). threatpost.com. Дата обращения: 16 августа 2022. Архивировано 16 августа 2022 года.
  3. 1 2 Slammer. ethics.csc.ncsu.edu. Дата обращения: 16 августа 2022.
  4. Ty Mezquita. SQL Slammer Virus (Harbinger of things to come) (амер. англ.). CyberHoot (12 февраля 2020). Дата обращения: 16 августа 2022. Архивировано 16 августа 2022 года.
  5. Moore, David. The Spread of the Sapphire/Slammer Worm. CAIDA (Cooperative Association for Internet Data Analysis). Дата обращения: 6 января 2017. Архивировано 17 мая 2008 года.
  6. Serazzi, Giuseppe & Zanero, Stefano. Computer Virus Propagation Models // Performance Tools and Applications to Networked Systems (англ.) / Calzarossa, Maria Carla & Gelenbe, Erol. — 2004. — Vol. Vol. 2965. — P. 26—50. — (Lecture Notes in Computer Science). Архивировано 18 августа 2013 года.