Rootkit
Un rootkit este definit ca un set de software care permite unui utilizator acces „privilegiat” la un computer, dar își păstrează prezența inițial ascunsă administratorilor prin întreruperea funcționării normale a sistemului de operare . Acest termen provine dintr-o concatenare a cuvântului englezesc root , care înseamnă „rădăcină” (numele tradițional al contului privilegiat în sistemele de operare Unix ) și a cuvântului englezesc kit , care înseamnă „set de instrumente” (referindu-se la componentele software-ului care implementează acest program). Unele versiuni spaniole ale programelor de calculator, documentelor universitare și ICANN însuși l-au tradus ca corector . [ 1 ] [ 2 ] [ 3 ]
Termenul rootkit are conotații peiorative, deoarece este asociat cu malware , ascunzându-se și cu alte programe , procese , fișiere , directoare , chei de registry și porturi care permit unui atacator să mențină accesul la o mare varietate de sisteme de operare după cum poate fi GNU . /Linux , Solaris sau Microsoft Windows pentru a comanda de la distanță acțiuni sau pentru a extrage informații sensibile .
De obicei, un atacator instalează un rootkit pe un computer după ce a obținut mai întâi drepturi de scriere în altă parte în ierarhia sistemului de fișiere , fie prin exploatarea unei vulnerabilități cunoscute, fie prin obținerea unei parole (fie prin spargerea rootkit-ului). criptare sau prin inginerie socială ). Odată ce rootkit-ul a fost instalat, acesta permite atacatorului să mascheze următoarea intruziune și să mențină accesul privilegiat la computer, ocolind mecanismele normale de autentificare și autorizare . Deși rootkit-urile pot servi multor scopuri, acestea au câștigat notorietate în primul rând ca malware, ascund programe care deturnează resursele computerului sau fură parole fără știrea administratorilor și utilizatorilor sistemelor afectate. Rootkiturile pot viza firmware -ul , hypervisorul , nucleul sau, mai frecvent, programele utilizatorului.
Detectarea rootkit-ului este complicată, deoarece este capabilă să corupă programul care ar trebui să-l detecteze. Metodele de detectare includ utilizarea unui sistem de operare alternativ de încredere; metode bazate pe comportament ; verificări ale semnăturii, verificări ale diferenţelor şi analiză de descărcare a memoriei . Îndepărtarea rootkit-ului poate fi foarte dificilă sau practic imposibilă, mai ales în cazurile în care rootkit-ul se află în kernel; uneori fiind reinstalarea sistemului de operare singura metodă posibilă de rezolvare a problemei.
Utilizarea rootkit-urilor
Un rootkit este folosit în mod obișnuit pentru a ascunde unele aplicații care ar putea acționa asupra sistemului atacat. Acestea includ adesea uși din spate pentru a ajuta un atacator să obțină acces ușor la sistem odată ce a primit intrarea pentru prima dată. De exemplu, rootkit-ul poate ascunde o aplicație care lansează o consolă de fiecare dată când atacatorul se conectează la sistem printr-un anumit port . Rootkit-urile kernelului pot conține funcționalități similare. O ușă din spate poate permite, de asemenea, proceselor lansate de un utilizator fără privilegii de administrator să execute unele funcționalități rezervate doar utilizatorului root . Tot felul de instrumente utile pentru obținerea ilegală de informații pot fi ascunse de rootkit-uri.
Rootkit-urile sunt folosite și pentru a folosi sistemul atacat ca „bază de operațiuni”, adică pentru a-l folosi la rândul său pentru a lansa atacuri împotriva altor computere. În acest fel poate apărea că sistemul infiltrat este cel care lansează atacurile și nu intrusul extern. Aceste tipuri de atacuri pot fi denial of service ( DoS ), atacuri IRC sau e- mail ( spam ).
Cum funcționează rootkit-urile
Funcționarea rootkit-urilor poate fi generalizată după cum urmează:
1. Infecția sistemului – În primul rând, rootkit-ul este instalat pe dispozitiv și infectează sistemul.
2. Modul secret – Odată ce rootkit-ul a fost instalat, acesta intră în modul secret. Cu alte cuvinte, rootkit-ul se ascunde în sistem și începe să manipuleze procesele de schimb de date utilizate de programe și funcții pentru a trimite informații false către programele de securitate precum programele antivirus .
3. Creați o ușă în spate : Ultimul pas este să creați o ușă în spate pentru a permite accesul de la distanță la dispozitiv. Sarcina rootkit-ului este de a ascunde conectările de la distanță și orice activitate care poate fi clasificată ca suspectă pentru a manipula dispozitivul fără a lăsa urme. [ 4 ]
Tipuri de rootkit-uri
Tipuri de bază
Rootkit-urile pot fi clasificate în două grupe: cele care sunt încorporate în nucleu și cele care funcționează la nivel de aplicație . Cei care acționează din nucleu adaugă sau modifică o parte din codul nucleului pentru a ascunde ușa din spate . În mod normal, această procedură este completată prin adăugarea unui cod nou la nucleu, fie printr-un driver ( driver ) fie printr-un modul, cum ar fi modulele nucleului Linux sau dispozitivele de sistem Windows. Aceste rootkit-uri corectează adesea apelurile de sistem cu versiuni care ascund informații despre atacator. Sunt cele mai periculoase, deoarece detectarea lor poate fi foarte complicată.
Rootkit-urile care acționează ca aplicații pot înlocui fișierele executabile originale cu versiuni crăpate care conțin niște cal troieni sau pot modifica, de asemenea, comportamentul aplicațiilor existente folosind hack -uri, patch-uri, cod injectat etc.
Exemple
Unii troieni au folosit aceste rootkit-uri nepersistente (FU Rootkits) care se încarcă în memorie odată ce sunt instalate:
- Suge-l
- adora
- T0rn
- Ambient's Rootkit (ARK)
- Hacker Defender
- Primele 4 Internet XCP (Extended Copy Protection) DRM
- RkU Test Rootkit & Unreal [ 5 ]
- Rootkit kernel: UACd (Adaugă un driver de nivel foarte scăzut numit UACd.sys)
- Rootkit-uri Macintosh
Detectare rootkit
Există limitări inerente oricărui program care încearcă să detecteze rootkit-urile în timp ce rulează pe sistemul suspectat. Rootkit-urile sunt aplicații care modifică multe dintre instrumentele și bibliotecile de care depinde sistemul. Unele rootkit-uri modifică nucleul în sine (prin module și alte metode, așa cum s-a menționat mai sus). [ citare necesară ] Principala problemă cu detectarea rootkit-ului este că sistemul de operare care rulează nu este de încredere la nivel global. [ citare necesară ] Cu alte cuvinte, unele acțiuni precum solicitarea listei proceselor care rulează sau listarea fișierelor dintr-un director nu sunt de încredere, deoarece nu se comportă așa cum ar trebui.
Cea mai bună metodă de detectare a unui rootkit este să închideți sistemul despre care se crede că este infectat și să examinați sau să salvați datele prin pornirea de pe un mediu alternativ, cum ar fi un CD-ROM de salvare sau o unitate flash USB . Un rootkit inactiv nu își poate ascunde prezența. Programele antivirus mai bine pregătite identifică adesea rootkit-urile funcționale prin apeluri de sistem și solicitări de nivel scăzut, ambele trebuie lăsate neatinse. Dacă există vreo diferență între ele, prezența unui rootkit poate fi afirmată. Rootkit-urile încearcă să se protejeze prin monitorizarea proceselor care rulează și suspendându-și activitatea până la finalizarea scanării, astfel încât rootkit-ul să nu poată fi identificat de un scaner.
Furnizorii de aplicații de securitate au integrat scanere rootkit în produsele tradiționale de detectare antivirus . Dacă un rootkit reușește să se ascundă în timpul procesului de detectare, acesta va fi identificat de detectorul de rootkit, care caută mișcări suspecte. Dacă rootkit-ul „decide” să se oprească momentan, va fi identificat ca un virus . Această tehnică de detectare combinată poate forța atacatorii să implementeze mecanisme de contorizare ( numite și retro - rutine) în codul rootkit-ului, cu scopul de a ucide procesele create de software-ul de securitate, ucigând astfel programul. Ca și în cazul virușilor convenționali, detectarea și eliminarea rootkit-urilor va fi o luptă continuă între scriitorii de rootkit-uri și software-ul de securitate.
Există mai multe programe disponibile pentru a detecta rootkit-urile. Pe sistemele bazate pe Unix, două dintre cele mai populare aplicații sunt chkrootkit și rkhunter . Pentru Windows, pe site-ul F-Secure este disponibil un detector numit Blacklight (gratuit pentru uz personal). [ citare necesară ] Blacklight are probleme de incompatibilitate în Windows 7. [ citare necesară ] O altă aplicație de detectare pentru Windows este Sysinternals Rootkit Revealer . Detectează toate rootkit-urile actuale comparând caracteristicile sistemului de operare original cu cele care au fost detectate. Cu toate acestea, unele rootkit-uri au început să adauge acest program la lista cărora nu ar trebui să fie ascunse. În esență, elimină diferențele dintre cele două listări, astfel încât detectorul nu le găsește. Dar ceva la fel de simplu precum redenumirea fișierului rootkitrevealer.exe face ca rootkit-ul să nu mai știe că are de-a face cu un detector. După cum am spus anterior, va fi o luptă continuă între rootkit-uri și antivirusuri.
Vezi și
Referințe
- ↑ „Ce este un rootkit și cum să-l elimini?” . www.avast.com . Preluat la 8 aprilie 2019 .
- ↑ „Rootkit-uri” . moodle2017-18.ua.es . Preluat la 8 aprilie 2019 .
- ↑ „Ce este un atac de tip om-in-the-middle?” . www.icann.org . Preluat la 8 aprilie 2019 .
- ↑ „Ce trebuie să știți despre rootkit” . Ghid digital IONOS . Extras 20 aprilie 2022 .
- ↑ RkU Test Rootkit & Unreal (în franceză) rootkit-uri pentru a-ți testa software-ul de protecție.
Link- uri externe
- Rootkit-uri în nucleul Linux
- Analiza rootkit-ului T0rn
- Rootkit-uri pentru Windows și Linux și software de detectare (în germană)
- Anti-trojan.org: Informații despre troieni în rootkit-uri și software de detectare
- Detectarea rootkitului Strider GhostBuster
- Rootkit-uri Unix în securitatea furtunii de pachete
- (în engleză) Șase detectoare de rootkit vă protejează sistemul (Serdar Yegulalp - InformationWeek)
- Site-ul web F-Secure
- Sysinternali