čtvrtek 26. října 2017

MikroTik DNS - Allow Remote Request

Myslel jsem že už je to tak profláknutá chyba/vlastnost, že už si na to dávají všichni pozor.
A ono nee.

O co jde.

 Pokud nechcete používat DNS Vašeho poskytovatele, nebo potřebujete z nějakého důvodu používat vlastní DNS server, tak si zapnete na MikroTiku v položce DNS funkci  Allow Remote Request viz. obrázek.


A ono to funguje, tj. máte "svůj DNS" a můžete si např. dopsat vlastní požadavky do položky Static a pod.
Problém je v tom, že to přijímá požadavky nejen v Vaší vnitřní sítě, ale i zvenčí. Takže pokud máte veřejnou IP tak ji klidně dáte kamarádovi, ten si ji nastaví jako DNS a ono mu to bude fungovat.
A tady se nachází onen zakopaný pes. Na internetu jsou mraky robotů které hledají právě takové chyby a poté je zneužívají k útokům.

O těchto hrozbách informoval CZ.NIC již v roce 2006 https://www.nic.cz/page/384/varovani-pred-otevrenymi-rekurzivnimi-nameservery/  a větší množství MikroTiků bylo zneužito např. při útocích v roce 2012 viz. https://csirt.cz/page/1077/csirt.cz-upozornuje-na-rizikovou-konfiguraci-operacniho-systemu-routeros/

Co s tím

1. vypnout a používat DNS poskytovatele

2. nechat zapnuté a do firewalu dopsat pravidlo kterým zakážete zvenčí port 53.

Pro stejně líné jako jsem já zde uvádím pravidla které stačí pouze vložit do terminálu

ip firewall filter add action=drop chain=input dst-port=53 protocol=udp
ip firewall filter add action=drop chain=input dst-port=53 protocol=tcp

A takto to potom vypadá v reálu. Toto je screen od reálného zákazníka. Podívejte se na počet zahozených paketů na řádku s pravidlem pro UDP.  To je stav po cca 10 hodinách od přidání pravidla. Mimochodem před aplikováním pravidla se vytížení CPU pohybovalo mezi 96 - 100%, po zavření portu je to při běžném provozu do 15%.


Edit:
Pro toho kdo nemá jinak nastavený FW, je potřeba povolit adresy ze kterých je daný provoz žádoucí, :-).
Pravidla jsou pak:
 /ip firewall filter
 add action=drop chain=input dst-port=53 protocol=udp src-address-list=!povolene
 add action=drop chain=input dst-port=53 protocol=tcp src-address-list=!povolene
 
/ip firewall address-list
 add address=primarni dns vaseho ISP list=povolene
 add address=sekundarni DNS vaseho poskytovatele list=povolene
 add address=192.168.0.0/16 list=povolene
 add address=169.254.0.0/16 list=povolene
 add address=172.16.0.0/12 list=povolene
 add address=127.0.0.0/8 list=povolene

1 komentář:

  1. Ahoj, díky za návod. Po nastavení portu, mu stále na moji veřejnou ip vychází, že nejsem chráněn. Jakmile odskrtnu allow remote requests nedostanu se na internet. Mohl by si mi poradit? Děkuji Kuba

    OdpovědětVymazat