Я только что получил жалобу о нарушении правил хостинга:
[2014-04-04 03:30:23 CET] [Timestamp: 1396575024] [11717182.634230] Брандмауэр: UDP_IN заблокирован IN = eth0 OUT = SRC =Мой IP DST = 128.204.203.251 LEN = 70 TOS = 0x00 PREC = 0x00 TTL = 118 ID = 6181 DF PROTO = UDP SPT = 53 DPT = 52117 LEN = 50
Как мне решить эту проблему?
Во-первых, нужно спросить, действительно ли пакет исходит от вашего хоста. Подмена исходного IP-адреса происходит постоянно, и без контекста эта запись в журнале ничего не говорит о подлинности исходного IP-адреса.
Следующий вопрос: используете ли вы DNS-сервер на этом хосте. Если на этом хосте нет DNS-сервера, то зарегистрированный пакет, скорее всего, подделан. И вот что вам следует объяснить хостинг-провайдеру.
Если вы используете DNS-сервер, то этот пакет может быть реальным, но это не обязательно означает, что есть основания жаловаться на него. Вы должны спросить себя, действительно ли вам нужно запускать DNS-сервер. Если вы используете DNS-сервер, который вам в первую очередь не нужен, его выключение было бы хорошей идеей, независимо от жалобы.
Теперь давайте на мгновение предположим, что у вас есть причина для запуска DNS-сервера, и что пакет действительно исходит от вашего DNS-сервера. Значит ли это, что вам нужно что-то сделать?
В этом случае вам следует подумать о том, чтобы ваш DNS-сервер не использовался в атаках с усилением. Однако вышеупомянутый пакет не выглядит как часть атаки с усилением. При атаке с усилением вы ожидаете увидеть пакеты размером не менее 512 байт или 4 КБ, если ваш DNS-сервер поддерживает это. Размер зарегистрированного пакета составляет всего 50 байт, что для сравнения очень мало.
Если вы используете DNS-сервер, наиболее вероятным объяснением указанной выше записи журнала на самом деле является неправильная конфигурация брандмауэра, который создал запись в журнале. Скорее всего, был получен настоящий законный запрос DNS и вернулся законный ответ DNS. Но брандмауэр по какой-то причине потерял запись отслеживания соединения до того, как пришел ответ.
Также формулировка намекает на то, что они сбросили пакет, а не отправили обратно ошибку ICMP. Ошибки ICMP - это один из инструментов, который можно использовать для обнаружения атак спуфинга и активации контрмер.
Если бы DNS-серверы применяли все лучшие средства противодействия атакам с усилением, которые технически возможны, то блокирование неожиданных UDP-пакетов без отправки обратно ошибок ICMP было бы похоже на запрос на атаку.
Какие части моих рассуждений имеют отношение к вашему делу, немного зависит от деталей. Но я надеюсь, что хостинг-провайдер поймет, что жалоба недействительна, когда им подадут правильные ее части.
Исходный IP-адрес - это вы, исходный порт - 53 (DNS). Похоже, у вас есть DNS-сервер, открытый для запросов извне. Это может быть предназначено для использования, например, для предоставления DNS для ваших собственных поддоменов, но это также может быть неправильно настроенный DNS-сервер, который может использоваться для атак с усилением DNS, которые затем могут использоваться в (D) DOS-атаках на другие хосты.
Так что лучше проверьте, нужен ли вам вообще локальный DNS-сервер и должен ли он быть открыт для запросов извне. Если вам нужен общедоступный сервер для разрешения ваших собственных (под) доменов, убедитесь, что он не может использоваться для рекурсивных запросов.
Для получения дополнительной информации см. https://www.us-cert.gov/ncas/alerts/TA13-088A или http://help.1and1.com/servers-c37684/parallels-plesk-c37703/protect-against-dns-amplification-attacks-a791842.html