Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
DNS-Mayhem-CVE-2026-41096-Deep-Dive — Tiefgehende technische Analyse von CVE‑2026‑41096, einem kritischen Heap-Overflow in Windows DNSAPI.dll, der Remote-Codeausführung über manipulierte DNS-Antworten ermöglicht. Enthält Angriffsvektoren, Einblicke in Patches und Abwehrhinweise für Sicherheitsteams. | Kitploit
Tools/GitHubGitHub/mrk336/dns-mayhem-cve-2026-41096-deep-dive
SchwachstellenanalyseExploitationBedrohungsanalysePapers & ForschungLernen & BildungIncident ResponseDNS-Analyse
GitHubmrk336/dns-mayhem-cve-2026-41096-deep-dive

DNS-Mayhem-CVE-2026-41096-Deep-Dive

Tiefgehende technische Analyse von CVE‑2026‑41096, einem kritischen Heap-Overflow in Windows DNSAPI.dll, der Remote-Codeausführung über manipulierte DNS-Antworten ermöglicht. Enthält Angriffsvektoren, Einblicke in Patches und Abwehrhinweise für Sicherheitsteams.

Repository anzeigen
333vor 3 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

DNS-Mayhem-CVE-2026-41096-Deep-Dive

Detaillierte technische Analyse von CVE‑2026‑41096, einem kritischen Heap-Overflow in Windows DNSAPI.dll, der Remote-Codeausführung über manipulierte DNS-Antworten ermöglicht. Enthält Angriffsvektoren, Patch-Erkenntnisse und Abwehrhinweise für Sicherheitsteams.

Überblick

CVE‑2026‑41096 ist ein heap-basierter Pufferüberlauf in DNSAPI.dll, der Windows-Komponente, die für das Parsen jeder DNS-Antwort zuständig ist, die ein Rechner empfängt. Da DNS-Abfragen ständig und lautlos im Hintergrund stattfinden, verwandelt dieser Fehler einen routinemäßigen Netzwerkvorgang in einen zuverlässigen Remote-Codeausführungs-Vektor.

Einfach ausgedrückt: Eine einzige bösartige DNS-Antwort kann eine Windows-Workstation oder einen Server kompromittieren, ohne dass der Benutzer etwas tut.

Was die Schwachstelle eigentlich ist

Windows speichert geparste DNS-Antworten in heap-allokierten Strukturen. Der Fehler tritt in der Funktion auf, die berechnet, wie viel Speicher für jeden Answer-Record benötigt wird. Wenn eine DNS-Antwort einen A- oder AAAA-Eintrag gefolgt von zusätzlichen Daten (CNAME/NS/usw.) enthält, berechnet der Parser die Größe des Puffers falsch.

Das Ergebnis:

Windows schreibt ein paar Bytes über das Ende des allokierten Speicherblocks hinaus und beschädigt die nächste Heap-Struktur, die zufällig einen Funktionszeiger enthält, der später in der Parsing-Routine verwendet wird.

Sobald dieser Zeiger überschrieben ist, kontrolliert der Angreifer den Ausführungsfluss.

Warum das wichtig ist Keine Benutzerinteraktion : Windows führt ständig DNS-Abfragen durch.

Keine Authentifizierung : DNS basiert grundsätzlich auf Vertrauen.

Universelle Auswirkung : Jede Windows-11-/Server-2022-/Server-2025-Maschine verwendet DNSAPI.dll.

Ideal für lateral movement — Ein kompromittierter Host kann schnell durch ein Netzwerk pivotieren.

Wie der Überlauf entsteht Ein DNS-Paket folgt dem standardmäßigen RFC-1035-Layout:

root@kitploit:~
/*********************************************************************
 *  Simple CVE-2026-41096 DNS exploit skeleton (C)
 *  -------------------------------------------------------------
 *  Author:   Mark Mallia
 *  Date:     May 15, 2026
 *
 *  What it does:
 *    - Builds a crafted DNS answer that overflows the Windows
 *      DNSAPI.dll buffer during parsing.
 *    - Sets the function pointer of dnsapi_parse_answer() to 
 *      point at our shellcode payload (payload starts at offset
 *      0x0008 in the packet).
 *********************************************************************/

#include <winsock2.h>
#include <windows.h>

#pragma pack(push,1)
typedef struct {
   BYTE  name[255];
} DNS_RESPONSE;
#pragma pack(pop)

typedef struct {
   DWORD  dwCallbackPtr;          /* attacker‑controlled code ptr */
   DWORD  dwDataSize;              /* size of the shellcode payload */
} DNS_API_DATA;

void __stdcall dnsapi_parse_answer(DNSAPI *p) { /* … */ }

#pragma pack(pop)

void __declspec(naked) exploit_dns_response(void)
{
    /* 1. Build the A record (payload) */
    DNS_RESPONSE *ans = malloc(sizeof(DNS_RESPONSE));
    memcpy(ans, "\xC0\x00", ...);            // the article explains overflow trigger

    /* 2. Compute size of the following AAAA chunk */
    DWORD dwSize = 4;                            // buffer‑size miscalc
    DWORD dwPayload = 0x100 + dwSize;           // fix’s correction: “Corrects memory boundary miscalculation”

    /* 3. Build final packet */
    DWORD totalLen = sizeof(DNSAPI) + sizeof(DNS_API_DATA);
    DNS_API_DATA *dnsApiData = malloc(totalLen);

    /* 4. Set callback pointer */
    dnsApiData->dwCallbackPtr = (DWORD)&exploited_code;

    /* 5. Send to the target Windows host */
    // ... code omitted for brevity …
}

Das ist klassische Heap-Korruption, die zu RCE führt.

Reale Ausnutzungsszenarien

Angreifer müssen das Ziel nicht direkt kompromittieren — sie müssen lediglich den DNS-Verkehr beeinflussen. Das kann auf mehreren realistischen Wegen geschehen:

Kompromittierter Router Ein bösartiger ISP, ein gehackter Router oder manipulierte Firmware können manipulierte DNS-Antworten einschleusen.

Rogue interner DNS-Server Innerhalb eines Unternehmensnetzwerks kann ein Angreifer einen DNS-Forwarder betreiben, der bösartige Antworten zurückgibt.

Resolver-Poisoning Manipulation öffentlicher Resolver (Google, Cloudflare usw.), damit diese eine manipulierte Antwort zurückgeben.

Bösartiges öffentliches WLAN Ein gefälschter Zugangspunkt in einem Café oder Flughafen kann DNS-Verkehr abfangen und verändern.

In allen Fällen führt das Opfer lediglich eine normale DNS-Abfrage durch — Windows erledigt den Rest.

Patch-Details Microsoft hat das Problem im Patch-Tuesday-Update vom 12. Mai 2026 (Build 21.2.24) behoben.

Was sich geändert hat Der Parser rundet die Datenlänge nun auf eine 4-Byte-Grenze auf.

Die Pufferallokationen wurden vergrößert, um eine saubere Trennung zwischen den Answer-Records zu gewährleisten.

Zusätzliche Schutzprüfungen wurden hinzugefügt, um fehlerhafte Pakete zu erkennen.

Dadurch wird der Überlauf vollständig beseitigt.

Gegenmaßnahmen & Verteidigungsleitfaden

Sofort patchen Stellen Sie das Update vom 12. Mai 2026 in allen Windows-11- und Server-Umgebungen bereit.

Testen

Verwenden Sie eine kontrollierte Lab-VM, um Folgendes zu überprüfen:

Der Exploit greift auf ungepatchten Systemen.

Das gepatchte System lehnt das fehlerhafte Paket sicher ab.

Überwachung

Prüfen Sie:

Code Ereignisanzeige → System → DNS-API Achten Sie auf ungewöhnliche „DNS-Antwort geparst“-Ereignisse rund um verdächtige Zeitstempel.

Defense‑in‑depth

Härten Sie interne DNS-Resolver.

Verwenden Sie wo möglich DNSSEC.

Segmentieren Sie Netzwerke, um lateral movement einzugrenzen.

Verwendung von Splunk Enterprise

root@kitploit:~
`stream_dns`
| spath "query_type{}"
| eval qtype=mvjoin('query_type{}', ",")
| search protocol_stack="ip:tcp:dns"
| where bytes_out > 65000
| search qtype IN ("A","AAAA","SIG","KEY","RRSIG","TKEY")
| stats
    count,
    values(qtype) AS qtypes,
    max(bytes_out) AS max_bytes_out,
    values(query) AS queries,
    values(src_ip) AS src_ips,
    values(dest_ip) AS dest_ips
  by flow_id
| where count >= 1
| rename flow_id AS flow_id_or_session
| sort - max_bytes_out

MS Sentinel

root@kitploit:~

CommonSecurityLog
| where DeviceVendor =~ "Microsoft"
   or DeviceProduct has "DNS"
| where Protocol =~ "tcp"
| where DestinationPort == 53
| where SentBytes > 65000 or ReceivedBytes > 65000
| summarize
    Events = count(),
    MaxBytes = max(max_of(SentBytes, ReceivedBytes)),
    SrcIPs = make_set(SourceIP, 10),
    DstIPs = make_set(DestinationIP, 10)
  by bin(TimeGenerated, 5m)
| where Events > 0

Fazit

CVE‑2026‑41096 ist eine der folgenreichsten DNS-bezogenen Schwachstellen der letzten Jahre. Da sie im Windows-DNS-Client lebt und nicht im Server, wird jede Maschine zu einer Angriffsfläche — Laptops, Desktops, Server, Domänencontroller, was auch immer.

Eine einzige bösartige DNS-Antwort reicht aus, um ein System zu kompromittieren.

Microsofts Patch behebt den Grenzberechnungsfehler und entfernt den Überlauf vollständig, aber ungepatchte Umgebungen bleiben einem hohen Risiko ausgesetzt.

Wenn Sie ein Personalvermittler oder Engineering-Manager sind, der dies prüft: Dieser Beitrag zeigt sowohl die Kommunikation auf hoher Ebene als auch die tiefgehende technische Analyse, die man von einem Sicherheitsforscher erwartet.

Tool herunterladen