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.
O parte din
configurarea text clar dezvăluie funcțiile de atac ale botului Mirai, care pot
fi găsite în codul sursă al lui Mirai. De exemplu:
Dintre funcțiile
interesante se numără funcționalitatea de atac TSource Engine Query. Aceasta
poate fi folosită pentru a lansa un atac distribuit de denegare a serviciului
(DDoS) împotriva serverelor de joc Valve Source Engine (VSE).
Șirurile
necriptate dezvăluie detalii suplimentare de configurare despre acest bot
Mirai. Acestea includ anumite șiruri User-Agent și antete de server, cum ar fi
cloudflare-nginx și dosarrest. Acestea permit bot-ului să imite traficul
legitim, făcând mai dificilă separarea traficului DDoS de traficul de rețea
legitim.
Indicatorii de compromis
Următoarele
hash-uri și alte date au fost detectate ca fiind utilizate de această
exploatare:
Descărcătorul inițial
888f4a852642ce70197f77e213456ea2b3cfca4a592b94647827ca45adf2a5b8
Payload-uri
b43a8a56c10ba17ddd6fa9a8ce10ab264c6495b82a38620e9d54d66ec8677b0c
b45142a2d59d16991a38ea0a112078a6ce42c9e2ee28a74fb2ce7e1edf15dce3
366ddbaa36791cdb99cf7104b0914a258f0c373a94f6cf869f946c7799d5e2c6
413e977ae7d359e2ea7fe32db73fa007ee97ee1e9e3c3f0b4163b100b3ec87c2
2d0c8ab6c71743af8667c7318a6d8e16c144ace8df59a681a0a7d48affc05599
4cb8c90d1e1b2d725c2c1366700f11584f5697c9ef50d79e00f7dd2008e989a0
461f59a84ccb4805c4bbd37093df6e8791cdf1151b2746c46678dfe9f89ac79d
aed078d3e65b5ff4dd4067ae30da5f3a96c87ec23ec5be44fc85b543c179b777
0d404a27c2f511ea7f4adb8aa150f787b2b1ff36c1b67923d6d1c90179033915
eca42235a41dbd60615d91d564c91933b9903af2ef3f8356ec4cfff2880a2f19
3f427eda4d4e18fb192d585fca1490389a1b5f796f88e7ebf3eceec51018ef4d
aaf446e4e7bfc05a33c8d9e5acf56b1c7e95f2d919b98151ff2db327c333f089
4f53eb7fbfa5b68cad3a0850b570cbbcb2d4864e62b5bf0492b54bde2bdbe44b
URL-uri
http[://]185[.]225[.]74[.]251/armv4l
http[://]185[.]225[.]74[.]251/armv5l
http[://]185[.]225[.]74[.]251/armv6l
http[://]185[.]225[.]74[.]251/armv7l
http[://]185[.]225[.]74[.]251/mips
http[://]185[.]225[.]74[.]251/mipsel
http[://]185[.]225[.]74[.]251/sh4
http[://]185[.]225[.]74[.]251/x86_64
http[://]185[.]225[.]74[.]251/i686
http[://]185[.]225[.]74[.]251/i586
http[://]185[.]225[.]74[.]251/arc
http[://]185[.]225[.]74[.]251/m68k
http[://]185[.]225[.]74[.]251/sparc
Domeniu:
zvub[.]us
Concluzie
Observarea
acestei CVE fiind exploatată atât de repede după ce patch-ul a fost lansat
reprezintă o demonstrație clară a reducerii vitezei de "timp de
exploatare" pe care continuăm să o vedem în industrie. Cu toate acestea,
aceasta nu este nimic nou pentru administratorii rețelei botnet Mirai, care
sunt cunoscuți pentru exploatarea rapidă a dispozitivelor IoT pentru a-și
menține poziția într-o întreprindere. Privind înapoi la această CVE, a fost
interesant să o vedem descoperită independent de mai multe echipe în pregătirea
concursului Pwn2Own Toronto. Fiecare echipă a utilizat tehnici diferite pentru
a descoperi această vulnerabilitate împreună cu abordări distinctive cu privire
la modul în care au exploatat-o. Dorim să le mulțumim tuturor echipelor de la concursul
Pwn2Own pentru descoperirea și divulgarea acestor probleme de clasă critică.
Demonstrează cu adevărat valoarea concursului, în special în domeniul
dispozitivelor de acasă și de birou mic. În cele din urmă, dorim să recunoaștem
eforturile pe care TP-Link le-a depus în dezvoltarea și implementarea unui
patch. Aplicarea acestui patch este singura acțiune recomandată pentru a aborda
această vulnerabilitate, și recomandăm tuturor utilizatorilor routerului Wi-Fi
TP-Link Archer AX21 să îl aplice cât mai curând posibil.
Sursa:
CVE -
CVE-2023-1389 (mitre.org)
Unauthenticated
Command Injection in TP-Link Archer AX21 (AX1800) - Research Advisory |
Tenable®