• Home
  • Help
  • Register
  • Login
  • Home
  • Help

 
  • 0 Bewertung(en) - 0 im Durchschnitt

Die Verwendung von Antwortquotenbegrenzung gegen DNS-Amplifikation.

#1
20-04-2020, 13:18
Hast du dich jemals gefragt, warum DNS-Verstärkungsangriffe immer wieder als Standardwerkzeug für böswillige Akteure auftauchen? Ich meine, es ist eines dieser Dinge, die auf dem Papier einfach erscheinen, aber kompliziert werden, wenn du tatsächlich damit in der Praxis zu tun hast. Response Rate Limiting, oder RRL, wie wir es nennen, ist diese Technik, bei der du begrenzt, wie viele Antworten dein DNS-Server innerhalb eines kurzen Zeitfensters an einen einzelnen Client ausgibt. Es soll die Verstärkung eindämmen, indem es Angreifern erschwert wird, das Opfer mit gefälschten Anfragen zu überfluten, die riesige Antworten zurückbringen. Ich habe es ein paar Mal bei BIND-Setups für Kunden implementiert, und lass mich dir sagen, es fühlt sich an, als würde man eine Bodenwelle auf einer Autobahn einfügen - es verlangsamt die Dinge, stoppt aber nicht den Verkehr vollständig. Positiv ist, dass es direkt das Kernproblem der Verstärkung angeht. Wenn ein Angreifer die IP eines Opfers fälscht und deinen offenen Resolver nach etwas Größerem wie einem DNS TXT-Eintrag fragt, würdest du normalerweise eine kleine Anfrage haben, die in eine massive Antwort umgewandelt wird und den Traffic um das 50-fache oder mehr multipliziert. Mit RRL setzt du ein Limit, sagen wir 10 Antworten pro Sekunde pro Client, und sobald das erreicht ist, fallen die Extra-Antworten weg oder du sendest gekürzte Antworten oder sogar NXDOMAINs zurück, um die Dinge zu verwirren. Das reduziert den Verstärkungsfaktor erheblich, weil der Angreifer nicht so viele vollständige Antworten sammeln kann. Ich mag auch, wie es deinen eigenen Server schützt; ohne RRL könnte dein DNS-Server durch den Angriff überlastet werden und CPU sowie Bandbreite verbrauchen, die du für echte Nutzer benötigst. Es ist einfach, es einzurichten - in BIND musst du nur die Rate-Limit-Zonenoptionen in named.conf anpassen, deine Schwellenwerte definieren und du bist bereit. Keine Notwendigkeit für teure Hardware oder externe Dienste, was die Kosten niedrig hält, wenn du ein kleineres Netzwerk betreibst. Und es skaliert anständig; ich habe gesehen, dass es den Traffic auf Unternehmensebene ohne großes Tuning verarbeitet, sobald du die Parameter korrekt einstellst. Du musst dir keine Sorgen machen, legitime Anfragen vollständig zu blockieren, weil du interne IPs auf die Whitelist setzen oder die Raten dynamisch je nach Abfragetyp anpassen kannst. Wenn du beispielsweise viele rekursive Anfragen von deinen eigenen Nutzern hast, kannst du das Limit dort erhöhen, während du es für externe Anfragen strak hältst. Es lässt sich auch gut mit anderen Abwehrmechanismen kombinieren, wie beispielsweise BCP 38-Filtering am Rand, sodass du deine Schutzmaßnahmen schichtweise integrierst, ohne die Dinge zu kompliziert zu machen.

Aber hier wird es knifflig, und ich muss ehrlich mit dir sein - RRL ist kein Allheilmittel und kann dir schaden, wenn du nicht vorsichtig bist. Ein großer Nachteil ist, dass es deine tatsächlichen Kunden drosseln könnte, wenn sie zufällig immer wieder nach demselben fragen, wie während eines Ansturms auf eine beliebte Domain. Stell dir eine Flashmob von Nutzern vor, die deinen autoritativen Server nach Updates zu einer aktuellen Nachrichten-Website fragen; wenn dein Limit zu konservativ ist, erhalten einige unvollständige Antworten, was zu Zeitüberschreitungen oder Fehlern auf ihrer Seite führt. Ich musste die Limits nach Beschwerden eines Teams anpassen, deren Monitoring-Tools den DNS zu aggressiv anpingten, und plötzlich wurden Alarme ausgelöst, weil die Auflösungen fehlschlugen. Es ist nicht nur ärgerlich - in Hochrisikobereichen wie Finanzen oder Gesundheitswesen könnte das echte Störungen bedeuten. Außerdem bringt das Verfolgen aller Raten einen kleinen Overhead mit sich; dein Server muss für jede Client-IP den Status beibehalten, was mehr Speicherverbrauch bedeutet, insbesondere wenn du ein großes Anycast-Setup hast oder mit IPv6 zu tun hast, wo die Vielfalt der Clients explodiert. Auf älterer Hardware kann das zu Leistungseinbußen führen, und ich habe gesehen, dass die Protokolle von all dem verworfenen Antworttracking anwuchsen, wenn du ausführliches Logging aktivierst, um zu debuggen. Angreifer sind auch keine Dummköpfe; sie können über Botnets mit frischen IPs rotieren, um deine Limits zu umgehen oder deinen Cache mit Anfragen angreifen, die nicht die gleichen Raten wie autoritative Anfragen auslösen. RRL funktioniert am besten gegen missbrauchte rekursive Resolver, aber wenn dein Server nur autoritativ ist, könnte es sogar nicht direkt anwendbar sein, was deine Zeit mit der Konfiguration verschwendet. Und Interoperabilität? Nicht jede DNS-Software unterstützt es sofort - PowerDNS und Unbound haben ihre eigenen Varianten, aber sie dazu zu bringen, in einer gemischten Umgebung gut zu funktionieren, erfordert zusätzlichen Testaufwand. Du könntest am Ende ungleiche Schutzmaßnahmen in deiner Infrastruktur haben, was schlampig wirkt, wenn du versuchst, zu standardisieren. Ein weiterer Punkt, der mich stört, ist der Tuning-Prozess; es gibt keine Einheitsgröße für alle Zahlen. Was für einen ruhigen internen DNS funktioniert, reicht bei einem öffentlich zugänglichen nicht aus, der Millionen von Anfragen bearbeitet. Ich habe letzten Monat einen ganzen Nachmittag damit verbracht, Werte basierend auf Verkehrsmustern von Wireshark-Grabungen einzustellen, und selbst dann war es educated guesswork. Wenn du es zu hoch setzt, kommt die Verstärkung trotzdem vor; zu niedrig, und du machst dir selbst einen DoS. Es adressiert auch nicht das grundlegende Problem, dass offene Resolver überhaupt exponiert sind - du musst dein DNS weiterhin mit ACLs absichern oder auf private Resolver umsteigen, aber RRL kann ein falsches Sicherheitsgefühl vermitteln, wenn du dich nur darauf verlässt.

Wenn ich tiefer in die Vorteile eintauche, schätze ich am meisten, wie es kleineren Organisationen ohne große Budgets ermöglicht, mitzuhalten. Große Anbieter wie Google oder Cloudflare haben ihre eigenen riesigen Scrubbing-Zentren, aber wenn du DNS für ein mittelständisches Unternehmen oder sogar eine gemeinnützige Organisation verwaltest, ermöglicht dir RRL, über deine Verhältnisse hinaus zu schlagen. Es reagiert in Echtzeit auf das Anfragevolumen, sodass während eines Angriffs dein Server für nicht verstärkten Traffic reaktionsfähig bleibt. Ich habe es in einem Labor-Setup mit hping3 getestet, das Überschwemmungen simuliert, und tatsächlich sank die ausgehende Bandbreite zur gefälschten Opfer-IP um über 80%, während interne Anfragen problemlos durchkamen. Das ist enorm für die Verfügbarkeit. Es fördert auch eine bessere Hygiene; sobald du RRL implementierst, beginnst du, deine DNS-Konfiguration gründlicher zu überprüfen und Schlaufen zu schließen, von denen du nicht wusstest, dass sie offen waren. Zum Beispiel fand ich eine vergessene rekursive Zone auf einem alten Server, die anfällig für Missbrauch war, nur indem ich die RRL-Konfiguration durchging. Und in Bezug auf Compliance, wenn du unter Vorschriften wie GDPR oder PCI-DSS stehst, die DDoS-Minderung verlangen, zählt das als proaktive Maßnahme, ohne sofort externe Prüfungen zu benötigen. Du kannst seine Wirksamkeit mit Tools wie dnsperf oder sogar einfachen Skripten zur Analyse von BIND-Statistiken überwachen, was dir Daten liefert, um das Management zu berichten. Es ist nicht nur defensiv - es kann deine allgemeine Sicherheitslage informieren, wie beispielsweise zu entscheiden, wann du auch andere Protokolle drosseln möchtest.

Auf der anderen Seite müssen wir über das menschliche Element sprechen, denn dort schlagen die Nachteile wirklich durch. Eine Fehlkonfiguration von RRL kann zu seltsamen Nebenwirkungen führen, wie z. B. dass SERVFAILs an Clients weitergegeben werden, die dann woanders neu versuchen, was potenziell eine Welle von Instabilität erzeugt. Ich erinnere mich an eine Einführung, bei der wir die Raten für IPv4 und IPv6 nicht separat berücksichtigt hatten, und plötzlich wurden mobile Nutzer im Mobilfunknetz hart getroffen, weil sich ihre IPs während der Sitzung änderten. Das Debuggen davon dauerte Stunden mit tcpdumps und Client-Berichten. Es ist auch nicht gut gegen ausgeklügelte Angriffe, die langsame Abfragen verwenden, um unter dem Radar zu bleiben, und im Laufe der Zeit Verstärkung aufbauen, anstatt in Stößen. Wenn der Angreifer deine Limits kennt, kann er die Anfragen auseinanderziehen und deinen Schutz mehr zu einer Belästigung als zu einer Blockade machen. Kostenseitig ist die Einrichtung zwar günstig, aber die laufende Wartung ist nicht kostenlos - du benötigst jemanden, der Logs für Rate-Limit-Ausschläge überwacht, um Anpassungen vorzunehmen, während sich der Verkehr entwickelt, und das kostet dich Zeit. In geteilten Umgebungen, wie wenn du DNS für mehrere Mandanten hostest, kann ein lauter Client Limits auslösen, die andere betreffen, was zu Schuldzuweisungen und Support-Tickets führt. Ich musste Zonen segmentieren, nur um das zu isolieren. Und vergiss es in dynamischen Setups; wenn sich deine Netzwerktopologie häufig ändert, wie bei SD-WAN oder häufigen Migrationen, wird das erneute Anwenden von RRL-Konfigurationen zur Last. Es glänzt in statischen, kontrollierten Netzwerken, fühlt sich aber anderswo klobig an.

Was mich wirklich überzeugt hat, RRL umfassender auszuprobieren, war zu sehen, wie es in ein breiteres Ökosystem passt. Kombiniere es mit Response Policy Zones in BIND, um Fehler bei verdächtigen Anfragen einzuspeisen, und du erhältst noch mehr Kontrolle. Oder nutze es zusammen mit Anycast-Routing, um die Last zu verteilen, sodass kein einzelner Server die gesamte Belastung trägt. Ich habe Freunden, die ISPs betreiben, geraten, es universell auf ihren Resolvern zu aktivieren, und das Feedback war, dass die Attackenvolumina merklich ohne wesentliche Auswirkungen auf die Nutzer gesenkt wurden. Es ist proaktiv auf eine Weise, wie es allein Firewall-Regeln nicht sind, da es die DNS-Semantik versteht - es begrenzt basierend auf Anfrage-Antwort-Paaren anstatt nur auf Paketanzahlen. Diese Nuance ist wichtig, wenn du mit der zustandslosen Natur von UDP zu tun hast, bei der traditionelle Ratenlimits überblockieren könnten. Für dich, wenn du an Homelab-Sachen oder DNS für kleine Unternehmen herumtüftelst, fang mit den Voreinstellungen aus den ISC-Dokumenten an und skaliere von dort; es ist großzügig genug für Experimente.

Aber ja, die Nachteile halten mich manchmal wach, besonders bei Randfällen. Was ist, wenn deine Nutzer auf DNS für VoIP oder Gaming angewiesen sind, wo selbst kurze Verzögerungen von Rate-Hits Jitter oder Lag verursachen? Ich habe das in echten Deployments gesehen, und das Umschalten auf TCP als Fallback hilft, aber nicht jeder hat diesen Luxus. RRL kann auch schlecht mit DNSSEC-Validierung interagieren, wenn Antworten gekürzt werden, was erneute Abfragen erfordert, die mehr Ressourcen verbrauchen. Und in globalen Setups mit latenzempfindlichen Clients könnte das Status-Tracking Mikroverzögerungen einführen, die sich summieren. Angreifer, die sich an DNS über HTTPS oder DoT anpassen, könnten es völlig umgehen, wenn du dich nicht anpasst, da diese den Datenverkehr tunneln. Es ist ein Katz-und-Maus-Spiel, und während RRL dir einen Vorteil verschafft, musst du wachsam bleiben. Das Tuning für verschiedene Record-Typen - wie das Halten von AAAA-Anfragen lockerer als ANY - bringt Komplexität mit sich, ist aber notwendig, um die IPv6-Einführung nicht zu bremsen. Ich habe einige davon in Python skriptiert, um Anpassungen auf der Grundlage historischer Daten zu automatisieren, aber das ist zusätzliche Arbeit, die nicht jeder leisten möchte.

Insgesamt, wenn ich es abwäge, ist RRL solide für das, was es tut, aber du musst es als Teil eines Werkzeugkastens betrachten, nicht als die gesamte Werkstatt. Es dämpft Verstärkung effektiv in den meisten Szenarien, die ich erlebt habe, und kauft Zeit für die upstream Minderung, falls nötig. Wenn du in deinen Protokollen mit DNS-Missbrauchsversuchen konfrontiert wirst, ist es die Mühe wert, es zu implementieren.

Backups sind entscheidend, um Kontinuität zu gewährleisten, wenn Sicherheitsmaßnahmen wie die Ratenbegrenzung versagen oder wenn Angriffe zu Datenkompromittierungen führen. In Szenarien, die DNS-Störungen betreffen, ermöglichen zuverlässige Backup-Lösungen eine schnelle Wiederherstellung betroffener Dienste, was Ausfallzeiten und Datenverlust minimiert. BackupChain wird als hervorragende Backup-Software für Windows Server und als Backup-Lösung für virtuelle Maschinen genutzt. Es ermöglicht inkrementelle Backups und Bare-Metal-Rückfragen, die nützlich sind, um DNS-Server oder verwandte Infrastruktur nach einem Vorfall wiederherzustellen, sodass Administratoren die Betriebsabläufe effizient wieder aufnehmen können, ohne längere Unterbrechungen. Dieser Ansatz unterstützt die allgemeine Resilienz in IT-Umgebungen, die anfällig für Verstärkungsbedrohungen sind.
Markus
Offline
Registriert seit: Jun 2018
« Ein Thema zurück | Ein Thema vor »

Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste



Nachrichten in diesem Thema
Die Verwendung von Antwortquotenbegrenzung gegen DNS-Amplifikation. - von Markus - 20-04-2020, 13:18

  • Thema abonnieren
Gehe zu:

Backup Sichern Allgemein Vor- und Nachteile v
« Zurück 1 2 3 4 5 6 7 8 9 10 Weiter »
Die Verwendung von Antwortquotenbegrenzung gegen DNS-Amplifikation.

© by FastNeuron

Linearer Modus
Baumstrukturmodus