Примеры распространенных уязвимостей

Наиболее распространенная в настоящее время на подключенных к интернету компьютерах операционная система Microsoft Windows содержит множественные опасные уязвимости. Чаще всего хакерами используются уязвимости в IIS, MS SQL и Internet Explorer, а также системах обработки файлов и сервисах сообщений самой операционной системы.

Уязвимость в IIS, подробно описанная в Microsoft Security Bulletin MS01-033, является одной из наиболее часто используемых уязвимостей Windows. В последние годы было написано множество сетевых червей, пользующихся данной уязвимостью, но одним из наиболее известных является CodeRed. CodeRed был впервые обнаружен 17 июля 2001 года, и, по некоторым оценкам, заразил около 300 тысяч компьютеров, помешал работе множества предприятий и нанес значительный финансовый ущерб компаниям по всему миру. Хотя Microsoft и выпустила вместе с бюллетенем MS01-033 патч, закрывающий используемую червем уязвимость, некоторые версии CodeRed до сих пор продолжают распространяться.

Сетевой червь Spida, обнаруженный спустя почти год после появления CodeRed, использовал для своего распространения открытость в MS SQL. Некоторые стандартные инсталляции MS SQL не защищали паролем системный эккаунт “SA”, позволяя любому человеку с доступом к системе через сеть запускать на ней на исполнение произвольные команды. При использовании этой уязвимости, червь открывает эккаунту “Guest” полный доступ к файлам компьютера, после чего производит загрузку самого себя на заражаемый сервер.

Сетевой червь Slammer, обнаруженный в конце января 2003 года, использовал более простой способ заражения компьютеров под управлением Windows с работающим сервером MS SQL, а именно — уязвимость при переполнении буфера в одной из подпроцедур обработки UDP-пакетов. Поскольку червь был достаточно мал — всего 376 байт — и использовал протокол UDP, предназначенный для быстрой пересылки малых объемов данных, Slammer распространялся с невероятной скоростью. По некоторым оценкам, Slammer поразил порядка 75 тысяч компьютеров по всему миру за первые 15 минут эпидемии.

Три этих характерных сетевых червя использовали уязвимости и открытости в программах, работающих на разных версиях Microsoft Windows, в то время как обнаруженный 11 августа 2003 года червь Lovesan использовал для своего распространения гораздо более опасную уязвимость при переполнении буфера в одном из основных компонентов самой Windows. Эта уязвимость подробно описана в Microsoft Security Bulletin MS03-026.

Sasser, впервые появившийся в мае 2004 года, использовал еще одну уязвимость в компоненте ядра Windows, в службе Local Security Authority Subsystem Service (LSASS). Информация об этой уязвимости была опубликована в Microsoft Security Bulletin MS04-011. Sasser распространялся молниеносно и заразил миллионы компьютеров, причинив огромный финансовый ущерб.

Все операционные системы содержат уязвимости и открытости, которые могут быть использованы хакерами и создателями вирусов в своих целях.

Разумеется, все операционные системы содержат уязвимости и открытости, которые могут быть использованы хакерами и создателями вирусов в своих целях. Хоть уязвимости Windows и получают наибольшее освещение из-за огромного числа компьютеров, работающих под управлением этой операционной системы, свои слабые места есть и у UNIX.

Годами одной из наиболее популярных открытостей в мире UNIX была служба finger. Эта служба позволяет пользователям вне какой-либо сети видеть, кто в настоящее время к этой сети подключен, с каких компьютеров и какие сетевые ресурсы используются. Finger полезен, но раскрывает слишком много интересной хакерам информации.

Вот пример того, как выглядит результат работы службы finger:

Login     Name       Tty      Idle  Login Time   Office
xenon                pts/7   22:34  May 12 16:00 (chrome.chiba)
polly                pts/3      4d  May  8 14:21
cracker   DarkHacker pts/6      2d  May 10 11:58

Из этой таблицы всем умеющим пользоваться службой finger становится доступна следующая информация: к сети подключено три пользователя, но два из них не обращались к ресурсам уже более двух суток, в то время как последний отошел от своего компьютера 22 минуты назад. Логины, которые демонстрирует сервис finger, можно использовать в процессе подбора комбинации логин-пароль. Это самый элементарный путь проникновения в систему, поскольку множество пользователей подбирают себе пароли на основе все тех же логинов (например, добавляя в конце логина какие-либо цифры).

Служба finger не только открывает важную информацию о сервере, на котором она работает, но является целью множества эксплойтов, одним из которых пользовался самый первый сетевой червь, созданный Робертом Моррисом (Robert Morris) 2 ноября 1988 года. По этой причине большинство современных дистрибутивов UNIX поставляются с отключенным сервисом finger.

Программа sendmail, изначально созданная Эриком Олмэном (Eric Allman), представляет собой еще один пример популярной цели для хакеров. Sendmail была разработана для осуществления пересылки электронной почты через интернет. Из-за большого числа операционных систем и компьютерных конфигураций Sendmail постепенно стала чудовищно сложной программой с длительной и поучительной историей обнаружения критических уязвимостей. Все тот же червь Morris использовал для своего распространения эксплойт уязвимости в sendmail наравне с уязвимостью в службе finger.

В мире UNIX есть множество других часто используемых уязвимостей в программных пакетах вроде SSH, Apache, WU-FTPD, BIND, IMAP/POP3 и в различных частях ядра ОС.

Все описанные выше инциденты позволяют сделать вывод, что сетевой червь или иная автоматизированная хакерская утилита, распространяющаяся через уязвимости в обычных подключенных к интернету компьютерах под управлением Windows, общее число которых, вероятно, превышает несколько сотен миллионов, представляет чрезвычайно серьезную угрозу стабильности и работоспособности всего интернета.