Пропускать запросы на собственный адрес в DNSmasq

Отлаживая сервер DNSmasq с использованием его журналов, я обнаружил МНОГО из:

dnsmasq: query[ANY] . from RANDOM-IP
dnsmasq: query[ANY] . from RANDOM-IP
dnsmasq: query[ANY] . from RANDOM-IP
dnsmasq: query[ANY] . from RANDOM-IP

Все законные запросы кажутся более конкретными, например:

dnsmasq: query[A] specificdomain.com from KNOWN-IP

РЕДАКТИРОВАТЬ: Это НЕ предназначено в качестве общедоступной службы DNS

Мы хотим создать DNS-фильтр белого списка, он должен ТОЛЬКО отвечать на список указанных доменов. Типичные атаки с усилением влияют только на наш сервер, ни на кого больше. Мы просто хотим, чтобы более чистый журнал работал лучше.

Предполагаемая операция:

  • Клиент использует этот DNS для подключения к Интернету.
  • Клиент запрашивает разрешение домена
  • Если домен находится в белом -список, решаем, если нет, то не отвечайте.

Как мы можем этого добиться? Обрабатывать только те запросы, которые соответствуют нашему белому списку, все остальное отклонять.

0
задан 7 April 2017 в 03:46
2 ответа

. ANY - это хорошо известный запрос, который запрашивает все типы записей в кэше, которые связаны с корневым узлом (AKA.) DNS. В больших объемах это, несомненно, показатель злонамеренного поведения. К сожалению, эти запросы почти наверняка являются UDP, а исходный IP-адрес является поддельным исходным адресом жертвы .

Эта проблема должна быть решена путем определения того, почему злонамеренные объекты могут делать эти запросы против вашего сервер, а не , заблокировав сам запрос.Злоумышленники могут так же легко использовать любое количество запросов, которые, как известно, возвращают большие наборы результатов, некоторые из которых вообще не используют тип записи ЛЮБОЙ.

В большинстве случаев это индикатор того, что вы выполняете и открытый резольвер . Вашим первым приоритетом должно быть подтверждение этого и устранение уязвимости системы безопасности. Если вы не являетесь открытым резолвером, значит, в вашей сети есть зараженное устройство. Это становится труднее отследить, поскольку вам нужно отслеживать MAC-адрес по очереди до исходного устройства.

1
ответ дан 4 December 2019 в 16:18

Хотя, как указал Эндрю, существует много проблем с безопасностью службы DNS в общедоступном IP-адресе, решением было следующее правило iptables:

iptables -A INPUT -i eth0 -p udp --dport 53 -m string --hex-string "|0000ff|" --algo bm -j DROP

Это специально отбрасывает этот запрос.

0
ответ дан 4 December 2019 в 16:18

Теги

Похожие вопросы