Один из крупнейших ботнетов в мире использовал 3 млн IP-адресов для сканирования всего диапазона IPv4 (то есть /0) в поисках SIP-серверов. Каждый IP-адрес в мире принял сначала пакет UDP на порт 5060 с SIP-заголовком, а затем пакет TCP SYN на порт 80 на открытие соединения.
Примерное содержимое UDP-пакета.
2011-02-02 12:15:18.913184 IP (tos 0x0, ttl 36, id 20335, offset 0, flags [none], proto UDP (17), length 412) XX.10.100.90.1878 > XX.164.30.56.5060: [udp sum ok] SIP, length: 384
REGISTER sip:3982516068@XX.164.30.56 SIP/2 .0
Via: SIP/2.0/UDP XX.164.30.56:5060; branch=1F8b5C6T44G2CJt; rport
Content-Length: 0
From:
Accept: application / sdp
User-Agent: Asterisk PBX
To:
Contact: sip:3982516068@XX.164.30.56
CSeq: 1 REGISTER
Call-ID: 4731021211
Max-Forwards: 70
Ботнет Sality известен специалистам с 2003 года, его размер оценивался в несколько сотен тысяч заражённых машин. Группа исследователей из Калифорнийского университета в Сан-Диего и университета Наполи (Италия) опубликовала отчёт (PDF) с анализом активности Sality в феврале 2011 года. Информация была собрана с помощью пассивной системы мониторинга трафика UCSD Network Telescope, которая собирает данные с диапазона /8.
По данным антивирусных компаний, заражённые Windows-машины в системе Sality используются для разных целей, в том числе рассылки спама, кражи личных данных, взлома паролей и т.д. Активность SIP-сканера замечена впервые.
Исследователи утверждают, что в 12-дневный период в феврале 2011 года с 3 млн IP-адресов приходили пакеты на инициацию соединения по протоколу SIP. По мнению авторов научной работы, владельцы ботнета пытались брутфорсить SIP-сервера для создания фейковых аккаунтов, чтобы использовать их для бесплатной телефонии, анонимных звонков, мошенничества и т.д.
Ещё один интересный факт в том, что владельцы ботнета использовали ряд методик, чтобы максимально замаскировать сканирование. Например, с 1 млн IP-адресов пришло всего по одному пакету на инициализацию соединения, затем эти адреса выключились из процесса. Диапазон сканируемых IP-адресов изменялся по фрактальной кривой Гильберта, чтобы затруднить обнаружение факта сканирования. На иллюстрации показан пример распределения чисел в таблице для фрактальной кривой третьего порядка (26 чисел).
Кривые 4-го, 8-го и 12-го порядка позволяют осуществить распределение на плоскости 28, 216 и 224 чисел, то есть подходят для хаотизации диапазонов IP-адресов класса C (/24), класса B (/16) и класса A (/8), соответственно.
Исследователи считают, что был просканирован весь диапазон IPv4, то есть весь интернет, но этот трафик не смогла бы обнаружить ни одна система детектирования угроз, потому что запросы шли с разных IP. Тем не менее, исследователи из Калифорнийского университета в Сан-Диего сумели обнаружить закономерность.
Хотя дело было полтора года назад, но подобная активность впервые наблюдается у ботнетов, то есть ранее никогда не документировалась. Поэтому эта научная работа представляет практический интерес для специалистов по ИТ-безопасности. Презентация работы состоится на конференции Internet Measurement Conference 2012, которая пройдёт в Бостоне в ноябре 2012 года.