Kali Linux vine pre-echipat cu toate instrumentele necesare pentru testarea de penetrare. Un astfel de instrument este cadrul Metasploit care permite echipei roșii să efectueze recunoaștere, scanare, enumerare, și exploatează vulnerabilitățile pentru toate tipurile de aplicații, rețele, servere, sisteme de operare și platforme.

Chiar dacă funcționalitatea principală a Metasploit se concentrează pe sarcinile de pentesting pre- și post-exploatare, este, de asemenea, utilă în dezvoltarea de exploatare și cercetarea vulnerabilităților.

Acest articol prezintă principalele componente ale cadrului Metasploit. Acesta demonstrează cum să utilizați modulele Metasploit pentru scanare, enumerare și exploatare pe o bază de date MySQL vulnerabilă găzduită pe o mașină cunoscută sub numele de Metasploitable 2.

Metasploit este instrumentul de pentesting cel mai frecvent utilizat, care vine preinstalat în Kali Linux. Principalele componente ale Metasploit sunt msfconsole și modulele pe care le oferă.

Ce este msfconsole?

instagram viewer

msfconsole este cea mai utilizată interfață all-in-one asemănătoare shell-ului, care vă permite să accesați toate caracteristicile Metasploit. Are suport pentru linia de comandă asemănătoare Linux, deoarece oferă completare automată a comenzilor, tabulare și alte comenzi rapide bash.

Este interfața principală care vă va permite să lucrați cu modulele Metasploit pentru scanarea și lansarea unui atac asupra mașinii țintă.

Metasploit are mici fragmente de cod care îi permit funcționalitatea principală. Cu toate acestea, înainte de a explica modulele, trebuie să fiți clar cu privire la următoarele concepte recurente:

  • Vulnerabilitate: Este o defecțiune în designul sau codul țintei care o face vulnerabilă la exploatare care duce la dezvăluirea de informații confidențiale.
  • Exploata: Un cod care exploatează vulnerabilitatea găsită.
  • Încărcătură utilă: Este un cod care vă ajută să atingeți obiectivul de a exploata o vulnerabilitate. Acesta rulează în interiorul sistemului țintă pentru a accesa datele țintă, cum ar fi menținerea accesului prin Meterpreter sau un shell invers.

Acum trecem la cele cinci module principale ale Metasploit:

  • Auxiliar: Modulul auxiliar conține un set de programe precum fuzzere, scanere și instrumente de injecție SQL pentru a aduna informații și a obține o înțelegere mai profundă a sistemului țintă.
  • Codificatoare: Codificatoarele criptează încărcăturile utile/exploatările pentru a le proteja împotriva soluțiilor antivirus bazate pe semnături. Deoarece încărcăturile utile sau exploit-urile conțin caractere nule sau proaste, există șanse mari ca acestea să fie detectate de o soluție antivirus.
  • Exploata: După cum sa discutat mai devreme, un exploit este un cod care valorifică vulnerabilitățile țintă pentru a asigura accesul la sistem prin încărcături utile.
  • Încărcătură utilă: După cum am menționat anterior, încărcăturile utile vă ajută să atingeți obiectivul dorit de a ataca sistemul țintă. Aceasta înseamnă că vă vor ajuta fie să obțineți un shell interactiv, fie vă vor ajuta să mențineți o ușă din spate, să executați o comandă sau să încărcați malware etc. Metasploit oferă două tipuri de încărcături utile: încărcări utile fără etape și încărcări utile pe etape.
  • Post: Modulul de post-exploatare vă va ajuta să culegeți mai multe informații despre sistem. De exemplu, vă poate ajuta să eliminați hash-urile parolei și să căutați acreditările de utilizator pentru deplasarea laterală sau escaladarea privilegiilor.

Puteți utiliza următoarele comenzi pentru a vizualiza fiecare modul și categoriile sale:

cd /usr/share/metasploit-framework/modules
ls
arbore -L 1 nume-modul/

Pentru a începe să utilizați interfața Metasploit, deschideți terminalul Kali Linux și tastați msfconsole.

În mod implicit, msfconsole se deschide cu un banner; pentru a elimina asta și a porni interfața în modul silențios, utilizați msfconsole comanda cu -q steag.

Interfața arată ca un shell de linie de comandă Linux. Unele comenzi Linux Bash pe care le acceptă sunt ls, clear, grep, history, jobs, kill, cd, exit etc.

Tip Ajutor sau un semn de întrebare"?" pentru a vedea lista tuturor comenzilor disponibile pe care le puteți utiliza în interiorul msfconsole. Unele dintre cele mai importante pe care le vom folosi în acest articol sunt:

Comanda Descriere
căutare Vă permite să căutați din baza de date Metasploit pe baza protocolului/aplicației/parametrului dat
utilizare Vă permite să alegeți un anumit modul și schimbă contextul la comenzi specifice modulului
info Oferă informații despre modulul selectat
spectacol Afișează informații despre numele modulului dat și opțiunile pentru modulul curent
Verifica Verifică dacă sistemul țintă are o vulnerabilitate
a stabilit Este o variabilă specifică contextului care configurează opțiunile pentru modulul curent
neasezat Elimină parametrii setați anterior
alerga Execută modulul curent

Înainte de a începe, configurați baza de date Metasploit prin pornind serverul PostgreSQL și inițializați baza de date msfconsole după cum urmează:

systemctl porniți postgresql
msfdb init

Acum verificați starea bazei de date inițializand msfconsole și rulând programul db_status comanda.

În scopuri demonstrative, configurați mașina Linux vulnerabilă open-source Metasploitable2.

Recunoaștere MySQL cu msfconsole

Găsi Adresa IP a mașinii Metasploitable primul. Apoi, utilizați db_nmap comandă în msfconsole cu steaguri Nmap pentru a scana baza de date MySQL la 3306 port.

db_nmap -sV -sC -p 3306 

Puteți rula obișnuit nmap -p- comandă pentru a confirma numărul portului bazei de date MySQL.

Legate de: Nmap pentru începători: câștigați experiență practică cu scanarea portului

Folosește căutare opțiunea de a căuta un modul auxiliar pentru a scana și enumera baza de date MySQL.

tip de căutare: auxiliar mysql

Din lista de mai sus, puteți utiliza auxiliar/scaner/mysql/mysql_version modul tastând numele modulului sau numărul asociat pentru a scana detaliile versiunii MySQL.

utilizați 11

Sau:

utilizați auxiliar/scanner/mysql/mysql_version

Acum folosiți afișează opțiuni comanda pentru a afișa parametrii necesari necesari pentru executarea modulului curent:

Ieșirea arată că singura opțiune necesară și dezactivată este RHOSTS, care este adresa IP a mașinii țintă. Folosește set rhosts comandă pentru a seta parametrul și a rula modulul, după cum urmează:

Ieșirea afișează detalii similare versiunii MySQL ca și db_nmap funcţie.

Cont rădăcină Bruteforce MySQL cu msfconsole

După scanare, puteți, de asemenea, să aveți un cont rădăcină MySQL cu forță brută prin intermediul lui Metasploit auxiliar (scanner/mysql/mysql_login) modul.

Va trebui să setați PASS_FILE parametru la calea listei de cuvinte disponibilă în interior /usr/share/wordlists:

setați PASS_FILE /usr/share/wordlistss/rockyou.txt

Apoi, specificați adresa IP a mașinii țintă cu comanda RHOSTS.

set RHOSTS 

A stabilit BLANK_PASSWORDS la true în cazul în care nu există nicio parolă setată pentru contul root.

setați BLANK_PASSWORDS adevărat

În cele din urmă, rulați modulul tastând alerga în terminal.

Enumerare MySQL cu msfconsole

msfconsole vă permite, de asemenea, să enumerați baza de date cu ajutorul auxiliar (admin/mysql/mysql_enum) modul. Returnează toate conturile cu detalii precum privilegiile asociate și hash-urile parolei.

Pentru a face asta, va trebui să specificați parola, numele de utilizator și variabila rhosts.

Seteaza parola ""
setați numele de utilizator root
set rhosts

În cele din urmă, rulați modulul tastând:

alerga

Exploatarea MySQL cu msfconsole

Din faza de enumerare, este clar că contul root are privilegii de fișier care permit unui atacator să execute load_file() funcţie. Funcția vă permite să exploatați baza de date MySQL prin încărcarea tuturor datelor din fișierul /etc/parolă prin intermediul auxiliar(/admin/mysql/mysql_sql) modul:

Din nou, setați numele de utilizator, parola și variabila rhosts. Apoi, executați o interogare care invocă funcția load_file() și încarcă fișierul /etc/passwd fişier.

set sql select load_file(\"/etc/parola\")

Modulele Metasploit ajută în toate fazele testării de penetrare. Metasploit le permite utilizatorilor să-și creeze propriile module.

Acest articol rezumă câteva module principale ale cadrului Metasploit și demonstrează cum să scanați, enumerați și exploatați o bază de date MySQL pe mașina Metasploitable 2.

Metasploit nu este singurul instrument de testare a penetrației pe care îl veți folosi ca profesionist în securitate cibernetică. Există câteva alte utilități cu care va trebui să vă familiarizați dacă doriți să deveniți un expert în securitate.

Top 10 instrumente de testare a penetrației pentru profesioniștii în securitate

Dacă vă întrebați cum testează profesioniștii pentru penetrare, acest ghid vă va oferi o mână de ajutor.

Citiți în continuare

AcțiuneTweetE-mail
Subiecte asemănătoare
  • Linux
  • Hacking etic
  • Hacking
  • Aplicații Linux
Despre autor
Rumaisa Niazi (11 articole publicate)

Rumaisa este un scriitor independent la MUO. Ea a purtat multe pălării, de la un matematician la un pasionat de securitate a informațiilor, iar acum lucrează ca analist SOC. Interesele ei includ citirea și scrierea despre noile tehnologii, distribuțiile Linux și orice despre securitatea informațiilor.

Mai multe de la Rumaisa Niazi

Aboneaza-te la newsletter-ul nostru

Alăturați-vă buletinului nostru informativ pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!

Click aici pentru a te abona