15.05.2023

Vulnerabilitatea CVE-2023-1389 identificata pe partea WAN la tp-link, a fost adaugat la arsenalul Botnet Mirai

VULNERABILITATEA CVE-2023-1389 IDENTIFICATA PE PARTEA WAN LA TP-LINK, A FOST ADAUGAT LA ARSENALUL BOTNET MIRAI.

 

Săptămâna trecută, echipa de vânătoare de amenințări Zero Day Initiative (ZDI) a observat încercări noi de exploatări provenite din sistemul nostru de telemetrie din Europa de Est, indicând faptul că botnet-ul Mirai și-a actualizat arsenalul pentru a include CVE-2023-1389, cunoscut și sub numele de ZDI-CAN-19557/ZDI-23-451. Această problemă la routerul Wi-Fi TP-Link Archer AX21 a fost dezvăluită inițial către ZDI în cadrul evenimentului Pwn2Own Toronto, unde a fost folosită de către echipa Viettel pentru intrarea lor pe partea LAN împotriva dispozitivului TP-Link și de către Qrious Security pentru intrarea lor pe partea WAN.

 

Ambele intrări ale echipelor au avut succes în cadrul concursului, iar vulnerabilitățile au fost dezvăluite către producător. Este interesant de menționat că această problemă a fost folosită și de către echipa Tenable în încercarea lor nereușită de a exploata dispozitivul în cadrul evenimentului Pwn2Own. Aceștia au dezvăluit problema către TP-Link, dar raportul lor public nu a arătat că această problemă putea fi exploatată pe interfața WAN. TP-Link a lansat o actualizare de firmware în martie care "a remediat câteva probleme de securitate", inclusiv această problemă și alte CVE-uri. În urma publicării acestei remedieri, încercări de exploatare folosind această CVE au fost detectate în mediul online.

 

Detalii privind vulnerabilitatea

 

Problema în sine este o vulnerabilitate de injectare de comenzi neautentificate în API-ul local disponibil prin intermediul interfeței de gestionare web. Acest endpoint permite utilizatorului să specifice formularul pe care dorim să-l apelăm prin specificarea formularului de interogare împreună cu o operație, care de obicei este de citire sau scriere. În acest caz, suntem interesați de operația de scriere pe formularul de țară, care este gestionat de funcția set_country. Această funcție va apela merge_config_by_country care concatenează câmpul de țară specificat într-un șir de comenzi. Acest șir de comenzi va fi executat folosind funcția popen. Nu există nicio sanitizare a câmpului de țară, astfel încât un atacator poate realiza injectarea de comenzi la acest punct.

 

Această funcționalitate este expusă pe partea LAN a routerului, conform dovezilor prezentate de către ambele echipe, Team Viettel și Tenable, care au vizat această funcționalitate în cadrul concursului. Cu toate acestea, echipa Qrious Security a reușit să exploateze această vulnerabilitate pe interfața WAN a routerului. Aceștia au descoperit o problemă de condiție de cursă legată de gestionarea iptable pe partea de procesare WAN a TP-Link, care ar expune pentru scurt timp această funcționalitate pe partea WAN. Acest lucru le-a permis să înlănțuiască slăbiciunea de condiție de cursă cu injectarea de comenzi locale API pentru a obține execuție de cod în cadrul concursului. Potrivit TP-Link, ambele probleme au fost rezolvate în patch-ul lansat pe 17 martie.

 

Detalii despre exploatarea activă

 

Începând cu 11 aprilie, am început să primim notificări din partea sistemului nostru de telemetrie că un actor de amenințare a început să exploateze public această vulnerabilitate. Puteți vedea un exemplu al atacului aici:


 

Mai mult de jumătate din activitatea inițială a fost observată la atacarea dispozitivelor din Europa de Est, dar acum observăm detectări și în alte locații din întreaga lume.

 

Payload-uri Mirai

 

În această versiune a lui Mirai, atacatorii utilizează CVE-2023-1389 pentru a face o cerere HTTP către serverele de comandă și control (C2) ale Mirai pentru a descărca și executa o serie de payload-uri binare. Aceste payload-uri binare sunt destinate diverselor arhitecturi de sistem. Aceasta este una dintre aceste cereri:


 

Payload-urile binare sunt descărcate și apoi executate folosind metodologia forței brute pentru a găsi payload-ul potrivit pentru arhitectura sistemului țintă.

 


Odată ce binarul potrivit este găsit și payload-ul este instalat, gazda devine complet infectată și stabilește o conexiune cu Mirai C2. Iată o urmărire a rețelei care arată această conexiune:


 

În timp ce analizam unele dintre payload-uri, am determinat că actorii amenințării criptează șiruri folosind 0x00 și 0x22 ca chei XOR. Decodarea acestor șiruri a relevat unele dintre capacitățile și detaliile de configurare care corespund indicatorilor cunoscuți ai lui Mirai.