====== DoS-Attacken durch mDNS / Avahi ====== Es ist sehr angenehm, wenn die Netzwerkkonfiguration sich automatisch regelt. Netzwerkdrucker melden ihre Anwesenheit automatisch im LAN an, damit PCs einfach so sehen können, was vorhanden ist. Stichwörter zu dieser Technologie sind: [[https://de.wikipedia.org/wiki/Zeroconf|Zeroconf, mDNS, Avahi, Bonjour, Rendezvous]]. Leider können diese Dienste im Rahmen einer [[https://www.bsi.bund.de/DE/Themen/Cyber-Sicherheit/Aktivitaeten/CERT-Bund/CERT-Reports/HOWTOs/OffenemDNS-Dienste/offene_mDNS-Dienste_node.html|DoS-Attacke ("denial of service") mißbraucht werden]]. Dabei ist der PC, auf dem der Dienst läuft, nicht Ziel der Attacke, sondern wird zum Teil des Angriffs auf den Zielserver umfunktioniert, indem dieser PC dazu gebracht wird, den Server mit unnötigen Netzwerkverkehr zu überfluten. Es wird daher dringend empfohlen, mDNS bzw. den Avahidienst zu deaktivieren. ===== Testen ===== Mit folgendem Befehl kann man testen, ob der Rechner "ThisHost" das Problem aufweist: dig @ThisHost +time=1 -p 5353 -t ptr _services._dns-sd._udp.local | grep _workstation Wenn eine Zeile erscheint, hat man ein Problem. Wenn nicht, dann nicht. ===== Lösungen ===== Nachfolgend werden verschiedene Möglichkeiten dazu beschrieben. ==== Multicast deaktivieren ==== Die einfachste Möglichkeit besteht darin, auf der Ethernetschnittstelle des Linux-PCs Multicast auszuschalten: ifconfig -multicast ''Schnittstelle'' bitte entsprechend durch z.B. ''eth0'' sein. Am Besten fügt man diese Zeile in der Datei ''/etc/rc.local'' ein, damit sie beim Systemstart ausgeführt wird. Im folgenden Beispiel sieht man, dass "MULTICAST" bei der Ausgabe von verschindet: # ifconfig eth0 eth0 Link encap:Ethernet HWaddr 2c:27:d7:49:3b:92 ... UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 ... # ifconfig eth0 -multicast # ifconfig eth0 eth0 Link encap:Ethernet HWaddr 2c:27:d7:49:3b:92 ... UP BROADCAST RUNNING MTU:1500 Metric:1 ... ACHTUNG: Wer mit Time Machine Mac-Backups auf einem Linux-PC machen möchte, man leider Multicast nicht ausschalten. ==== Avahi ausschalten ==== Beim Start des Avahi-Daemons meldet sich der Daemon bei mDNS (Multicast) an. Wenn auf der Schnittstelle Multicast ausgeschaltet ist, ist es kein Problem. Falls aber Multicast eingeschaltet bleiben muss, sollte man Avahi irgendwie deaktivieren. === Durch Deinstallation === Unter Ubuntu und Debian kann man so den Avahi-Daemon vom System entfernen: apt-get purge avahi-daemon Bei anderen Linux-Arten ist der Befehl anders. === Durch Umbennung === Es kann sein, dass sich der avahi-daemon nicht deinstallieren läßt, weil ein anderer Dienst davon abhängt. In diesem Fall könnte man sich wie folgt behelfen: mv /usr/sbin/avahi-daemon /usr/sbin/avahi-daemon.orig ACHTUNG: Beim System-Update kann es vorkommen, dass das Binary wiederherstellt wird.