Защита против «невидимых» компьютерных червей

2 апрель, 2010 - 16:13Леонід Бараш

Самораспространяющиеся компьютерные черви являются вредоносными компьютерными программами, которые после активизации могут распространиться по всей сети, похищая или уничтожая данные на жестких дисках, затрудняя работу установленных программ и замедляя или даже приводя к краху компьютеры. Новый код, или алгоритм, который разработали исследователи из Университета штата Пенсильвания, нацелен на обнаружение самых невидимых из этих червей.

«В 2001 г. червь «Code Red» причинил убытков на 2 млрд долл., - сказал Йон-Хо Чой (Yoon-Ho Choi), научный сотрудник по информационным технологиям Пенсильванского университета. – Наш алгоритм может предотвратить распространение червя на ранних стадиях».

Алгоритм защищает против распространения локальных сканирующих червей, которые ищут хосты в «локальных» пространствах внутри сетей и подсетей. Эта стратегия позволяет им получить доступ к хостам, которые объединены в кластер. Это значит, что если инфицирован один хост, то остальные могут быть заражены очень быстро. Имеются много типов сканирующих червей, но Чой называет этих червей невидимками, потому что они наиболее эффективны и могут ускользать даже от самой лучшей защиты.

Эпидемия может начаться с заражения одного компьютера. После инфицирования червь начинает поиск локальных или корпоративных IP-адресов, стараясь обнаружить наиболее уязвимые хосты. Когда один из них найден, червь посылает пакет, чтобы заразить его.

«Локальный сканирующий червь может целенаправленно сканировать локальную или корпоративную сеть, - поясняет Чой. – По мере того как размер восприимчивой популяции увеличивается, вирулентность червя растет».

Работа алгоритма основывается на оценке размера восприимчивой популяции хостов. Он осуществляет мониторинг случаев заражения внутри нее и устанавливает пороговое значение, которое равно или ниже среднего значения числа сканирований, необходимых для инфицирования очередного хоста.

Если число сканирований специфического порта превышает порог, алгоритм изолирует червя. Затем алгоритм разбивает сеть на множество небольших сетей, или ячеек, которые в некоторых случаях могут содержать один компьютер. Червь может распространяться внутри ячейки, но не между ячейками. Таким способом алгоритм может изолировать инфицированный хост или небольшой кластер инфицированных хостов.

Для тестирования эффективности алгоритма исследователи провели серию компьютерных симуляций с использованием различных стратегий сканирования. Результаты показали, что алгоритм эффективно оценивал вирулентность червей и мог определить размер восприимчивой популяции хостов всего после нескольких случаев инфицирования.