Istraživačke grupe Forescout Research Labs i JSOF Research objavile su rezultate zajedničkog istraživanja o sigurnosti različitih realizacija shema kompresije, primijenjenih za pakiranje ponovljenih imena u DNS, mDNS, DHCP i IPv6 RA porukama (pakiranje dupliciranih dijelova domena u porukama koje uključuju više imena). U okviru provedenog rada otkriveno je 9 ranjivosti, sažetih pod kodnim imenom NAME:WRECK.
Problemi su identificirani u FreeBSD-u, kao i u mrežnim podsustavima IPnet, Nucleus NET i NetX, koji su se proširili na operativne sustave stvarnog vremena VxWorks, Nucleus i ThreadX, korištene u uređajima automatizacije, skladištima, medicinskim uređajima, avioničkim sustavima, printerima i potrošačkoj elektronici. Pretpostavlja se da je ranjivost pogođena najmanje 100 milijuna uređaja.
- Ranjivost u FreeBSD-u (CVE-2020-7461) omogućila je izvođenje vlastitog koda putem slanja napadačima, koji se nalaze u istoj lokalnoj mreži s žrtvom, posebno oblikovanog DHCP paketa, čija obrada od strane ranjivog DHCP klijenta dovela je do prelivanja bafera. Olakšavalo je to što se proces dhclient, u kojem se nalazi ranjivost, izvodio s smanjenim privilegijama u izoliranom okruženju Capsicum, iz kojeg je potrebno otkriti još jednu ranjivost.
Suština greške je u neispravnoj provjeri parametara u vraćenoj DHCP server paketu s 119 opcijom DHCP, koja omogućava prijenos popisa „domain search“ za resolver. Neispravan izračun veličine bafera potrebnog za smještaj raspakiranih domenaskih imena, doveo je do zapisivanja informacija pod kontrolom napadača izvan dodijeljenog bafera. U FreeBSD-u je problem ispravljen još u rujnu prošle godine. Problem se može eksploatirati samo u slučaju pristupa lokalnoj mreži.
- Ranjivost u ugrađenom mrežnom steku IPnet, koji se koristi u RTOS VxWorks, potencijalno omogućava izvršavanje koda na strani DNS klijenta zbog neispravne obrade kompresije DNS poruka. Kako se pokazalo, ovu ranjivost je prvi put otkrila tvrtka Exodus još 2016. godine, ali nije nikada ispravljena. Novi zahtjev tvrtki Wind River također je ostao bez odgovora, a uređaji s IPnet-om ostaju ranjivi.
- U TCP/IP stogu Nucleus NET, koji podržava tvrtka Siemens, otkrivene su 6 ranjivosti, od kojih su dvije mogle dovesti do daljinskog izvršavanja koda, a četiri do iniciranja napada uskraćivanja usluga. Prvi opasan problem povezan je s greškom pri raspakiranju komprimiranih DNS poruka, a drugi s nepravilnim analiziranjem oznaka domena. Oba problema dovode do prelivanja bafera pri obradi posebno oblikovanih DNS odgovora.
Za iskorištavanje ranjivosti, napadaču je dovoljno poslati posebno oblikovani odgovor na bilo koji legitimni zahtjev koji je poslan s ranjivog uređaja, na primjer, provođenjem MTIM napada i upadom u promet između DNS poslužitelja i žrtve. Ako napadač ima pristup lokalnoj mreži, može pokrenuti DNS poslužitelj koji pokušava napasti problematične uređaje slanjem mDNS zahtjeva u širokotsnom režimu.
- Ranjivost u mrežnom stogu NetX (Azure RTOS NetX), razvijenom za ThreadX RTOS i otkrivenom 2019. godine nakon prijelaza u vlasništvo Microsofta, ograničila se na uskraćivanje usluga. Problem je uzrokovan greškom u analiziranju komprimiranih DNS poruka u implementaciji resolvera.
Među provjerenim mrežnim stogovima u kojima nisu pronađene ranjivosti povezane sa kompresijom ponavljajućih podataka u DNS porukama, navedeni su projekti lwIP, Nut/Net, Zephyr, uC/TCP-IP, FreeRTOS+TCP, OpenThread i FNET. Pri tome, prva dva (Nut/Net i lwIP) uopće ne podržavaju kompresiju u DNS porukama, dok ostali ovu operaciju provode bez grešaka. Nadalje, napominje se da su isti istraživači ranije već otkrivali slične ranjivosti u stekovima Treck, uIP i PicoTCP.
Izvor: opennet.ru
