KeyTrap i NSEC3 ranjivosti koje utiču na većinu implementacija DNSSEC

Identificirane su dvije ranjivosti u različitim implementacijama DNSSEC protokola, koje utječu na BIND, PowerDNS, dnsmasq, Knot Resolver i Unbound DNS razrešivače. Ranjivosti mogu uzrokovati uskraćivanje usluge za DNS razrješače koji izvode DNSSEC validaciju uzrokujući veliko opterećenje CPU-a koje ometa obradu drugih zahtjeva. Da bi se izvršio napad, dovoljno je poslati zahtjev DNS resolveru koristeći DNSSEC, što dovodi do poziva u posebno dizajniranu DNS zonu na serveru napadača.

Utvrđeni problemi:

  • CVE-2023-50387 (kodno ime KeyTrap) – Kada se pristupa posebno dizajniranim DNS zonama, to dovodi do uskraćivanja usluge zbog značajnog opterećenja procesora i dugog izvršavanja DNSSEC provjera. Za izvođenje napada potrebno je postaviti domensku zonu sa zlonamjernim postavkama na DNS server koji kontroliše napadač, kao i osigurati da toj zoni pristupa rekurzivni DNS server čije uskraćivanje usluge napadač traži .

    Zlonamjerne postavke uključuju korištenje kombinacije konfliktnih ključeva, RRSET zapisa i digitalnih potpisa za zonu. Pokušaj provjere korištenja ovih ključeva rezultira dugotrajnim operacijama koje zahtijevaju velike resurse koje mogu u potpunosti učitati CPU i blokirati obradu drugih zahtjeva (na primjer, tvrdi se da je u napadu na BIND bilo moguće zaustaviti obradu ostale zahtjeve za 16 sati).

  • CVE-2023-50868 (kodni naziv NSEC3) je uskraćivanje usluge zbog značajnog izračunavanja koji se obavlja prilikom izračunavanja hešova u NSEC3 (Next Secure v3) zapisima prilikom obrade posebno kreiranih DNSSEC odgovora. Metoda napada je slična prvoj ranjivosti, osim što se na DNS serveru napadača kreira posebno dizajniran skup NSEC3 RRSET zapisa.

Napominje se da je pojava gore navedenih ranjivosti uzrokovana definicijom u DNSSEC specifikaciji mogućnosti da DNS server pošalje sve dostupne kriptografske ključeve, dok razrješači moraju obraditi sve primljene ključeve dok se provjera ne završi uspješno ili sve primljeni ključevi su verificirani.

Kao mjere za blokiranje ranjivosti u resolverima, maksimalan broj DNSSEC ključeva uključenih u proces izgradnje lanca povjerenja i maksimalan broj izračuna heša za NSEC3 su ograničeni, a ponovni pokušaji verifikacije za svaki RRSET (kombinacija ključeva i potpisa) i svaki odgovor su ograničeni. server.

Ranjivosti su ispravljene u ažuriranjima za Unbound (1.19.1), PowerDNS Recursor (4.8.6, 4.9.3, 5.0.2), Knot Resolver (5.7.1), dnsmasq (2.90) i BIND (9.16.48, 9.18.24 i 9.19.21). Status ispravki ranjivosti u ovim distribucijama može se procijeniti na ovim stranicama: Debian, Ubuntu, SUSE, RHEL, Fedora, Arch Linux, Gentoo, Slackware, NetBSD, FreeBSD.

Verzije BIND DNS servera 9.16.48, 9.18.24 i 9.19.21 dodatno su popravile još nekoliko ranjivosti:

  • CVE-2023-4408 Parsiranje velikih DNS poruka može uzrokovati veliko opterećenje procesora.
  • CVE-2023-5517 - Zahtjev za posebno kreiranu reverznu zonu može dovesti do pada zbog pokretanja provjere potvrđivanja. Problem se pojavljuje samo u konfiguracijama s omogućenom postavkom "nxdomain-redirect".
  • CVE-2023-5679 – Rekurzivna detekcija hosta može dovesti do pada zbog pokretanja provjere potvrđivanja na sistemima s podrškom za DNS64 i omogućenom „serve-stale“ (postavke, omogućeno zastarjelo keširanje i omogućeno zastarjelo odgovor).
  • CVE-2023-6516 Posebno kreirani rekurzivni upiti mogu uzrokovati da proces iscrpi memoriju koja im je dostupna.

izvor: opennet.ru

Kupite pouzdan hosting za sajtove sa DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan web hosting sa DDoS zaštitom, VPS VDS servere | ProHoster