SQL Slammer [a] — компьютерный червь , выпущенный в 2003 году , который вызывал отказ в обслуживании на некоторых хостах Интернета и резко замедлял общий интернет-трафик . Это также привело к сбоям в работе маршрутизаторов по всему миру, что привело к еще большему замедлению работы. Он быстро распространился, заразив большинство из 75 000 жертв в течение 10 минут.
Программа использовала ошибку переполнения буфера в продуктах баз данных Microsoft SQL Server и Desktop Engine . Хотя патч MS02-039 (CVE-2002-0649) [2] был выпущен шестью месяцами ранее, многие организации еще не применили его.
Наиболее зараженными регионами были Европа, Северная Америка и Азия (включая Восточную Азию и Южную Азию (Индию) и т. д.). [3]
Червь был основан на экспериментальном коде, продемонстрированном на брифинге Black Hat Дэвидом Личфилдом , который первоначально обнаружил уязвимость переполнения буфера, которую использовал червь. [4] Это небольшой фрагмент кода, который мало что делает, кроме генерации случайных IP-адресов и отправки себя на эти адреса. Если выбранный адрес принадлежит хосту, на котором запущена непропатченная копия службы разрешения Microsoft SQL Server, прослушивающая UDP-порт 1434, хост немедленно заражается и начинает забрасывать Интернет новыми копиями программы-червя.
Домашние компьютеры , как правило, не уязвимы для этого червя, если на них не установлен MSDE. Червь настолько мал, что не содержит кода для записи себя на диск, поэтому он остается только в памяти и его легко удалить. Например, Symantec предоставляет бесплатную утилиту удаления, или ее даже можно удалить, перезапустив SQL Server (хотя компьютер, скорее всего, будет немедленно повторно заражен).
Использование червя стало возможным благодаря уязвимости безопасности программного обеспечения в SQL Server, о которой впервые сообщила Microsoft 24 июля 2002 года. Исправление было доступно от Microsoft за шесть месяцев до запуска червя, но многие установки так и не были исправлены, в том числе многие в Microsoft. . [5]
Червя начали замечать рано утром 25 января 2003 года [b] , поскольку он замедлял работу систем по всему миру. Замедление было вызвано выходом из строя многочисленных маршрутизаторов под бременем чрезвычайно высокого бомбардировочного трафика с зараженных серверов. Обычно, когда трафик слишком велик для обработки маршрутизаторами, предполагается, что маршрутизаторы задерживают или временно останавливают сетевой трафик. Вместо этого некоторые маршрутизаторы выходили из строя (приходили в негодность), и «соседние» маршрутизаторы замечали, что эти маршрутизаторы остановлены и с ними не следует связываться (то есть «удалены из таблицы маршрутизации »). Маршрутизаторы начали рассылать уведомления об этом другим маршрутизаторам, о которых они знали. Поток уведомлений об обновлении таблицы маршрутизации привел к сбою некоторых дополнительных маршрутизаторов, что усугубило проблему. В конце концов специалисты по обслуживанию вышедших из строя маршрутизаторов перезапустили их, заставив их объявить о своем статусе, что привело к новой волне обновлений таблиц маршрутизации. Вскоре значительная часть пропускной способности Интернета была занята маршрутизаторами, взаимодействующими друг с другом для обновления своих таблиц маршрутизации, а обычный трафик данных замедлился, а в некоторых случаях вообще прекратился. Поскольку червь SQL Slammer был настолько мал по размеру, иногда ему удавалось пройти, когда законного трафика не было.
Два ключевых аспекта способствовали быстрому распространению SQL Slammer. Червь заражал новые хосты по бессеансовому протоколу UDP , а весь червь (всего 376 байт) умещался в одном пакете. [10] [11] В результате каждый зараженный хост мог просто «выпустить и забыть» пакеты как можно быстрее.
{{cite web}}
: CS1 maint: неподходящий URL ( ссылка )