Categorii
Arhivă
- Septembrie 2009 (2)
- October 2009 (3)
- November 2009 (5)
- December 2009 (1)
- Ianuarie 2010 (4)
- Februarie 2010 (5)
- Martie 2010 (1)
- Aprilie 2010 (1)
- Mai 2010 (5)
- Iunie 2010 (4)
Blogroll
Un backdoor Un-real
Weekend-ul acesta, admnistratorii proiectului Unreal IRCd au descoperit prezenţa unui backdoor în kit-ul disponibil public pentru download. Anunţul complet poate fi găsit pe site-ul oficial, dar am reţinut din el un paragraf care mi-a atras atenţia în mod deosebit:
"It appears the replacement of the .tar.gz occurred in November 2009 (at least on some mirrors). It seems nobody noticed it until now" („Se pare că înlocuirea lui tar.gz s-a întâmplat în luna noiembrie 2009 (cel puţin pe unele dintre server-ele mirror) şi nimeni nu a observat până acum")
Practic, acest lucru semnifică faptul că software-ul infectat a fost disponibil pentru download timp de opt luni, înainte de a fi descoperit.
În ciuda faptului că sursele oficiale au fost „curăţate", am reuşit să găsesc versiunea infectată în doar câteva minute cu o simplă căutare. Este relativ simplu de identificat această versiune, deoarece are următorul MD5:
752e46f2d873c1679fa99de3f52a274d Unreal3.2.8.1.tar.gz
Deci, cum funcţionează backdoor-ul? Iată un fragment al codului cu pricina:
După cum puteţi vedea, nu a fost nevoie decât de două linii de cod, plus încă alte două pentru a defini condiţia atunci când codul este inserat - aceasta fiind, dacă DEBUGMODE3 este definit.
Mai exact, iată ce se întâmplă în cazul nostru: modulul "s_bsd.c" conţine o funcţie numită "read_packet", care este chemată pentru orice pachet de date trimis către server. Dacă este detectată comanda „AB" (definită de DEBUGMODE3_INFO în cazul nostru), atunci datele rămase în buffer sunt trimise direct sistemului de operare pentru executare prin comanda "system()". Foarte simplu şi direct.
Deci, care este morala poveştii? În primul rând, aplicaţiile create în prezent au sute sau mii de linii de cod în componenţă, aşadar este foarte simplu să treci cu vederea ceva mic, cum ar fi două linii de cod maliţios inserate în plus. În al doilea rând, acesta nu este primul caz întâlnit şi sunt sigur că nu este singura aplicaţie open source infectată disponibilă pentru download.
Cel mai îngrijorător este că a durat opt luni pentru a fi descoperită infecţia. Oare cât va dura data viitoare?

