Metasploit -installasjon og grunnleggende kommandoer

Metasploit -installasjon og grunnleggende kommandoer

“Denne opplæringen forklarer hvordan du installerer og kommer i gang med grunnleggende metasploit -kommandoer i Linux med et ekte scenarioeksempel.

Metasploit er sårbarheter og utnytter innsamling for sikkerhetsrevisjon og sårbarhetsutnyttelse. Dette verktøyet hjelper systemadministratorer med å teste nettverks- og enhetssikkerhet. Det lar også uerfarne brukere utføre angrep mot mål lett.

Alle instruksjoner beskrevet i dette dokumentet inkluderer skjermbilder, noe som gjør det enkelt for leserne å forstå og anvende dem.”

Hva er PostgreSQL, hvordan det er nyttig når du bruker Metasploit, og hvordan du installerer det

Når et mål skannes for å finne sårbarheter eller utnyttes gjennom et sikkerhetshull, lagres innsamlet informasjon i en database som skal importeres og brukes av andre pentesting -verktøy. De som utfører pentestingoppgaver kan selvfølgelig lagre informasjonen manuelt, men å holde pentesting -resultater ordentlig bestilt i en database er nyttig for å spore aktiviteten, øke produktiviteten og lette pentesting oppgaver.

Databasestyringssystemet støttet av Metasploit er PostgreSQL, og selv om det ikke er obligatorisk når du bruker Metasploit, anbefales det på det sterkeste å installere det. Å bruke Metasploit uten et databasestyringssystem er ikke en smart beslutning. Derfor begynner denne opplæringen med instruksjoner om hvordan du installerer PostgreSQL før du installerer Metasploit.

Installere PostgreSQL på Debian -baserte Linux -distribusjoner (Centos nedenfor)

På Debian og dens baserte Linux -distribusjoner som Ubuntu, kan du enkelt installere PostgreSQL ved å bruke APT Packages Manager som vist i følgende skjermbilde.

Merk: Centos Brukere kan finne instruksjoner for å installere PostgreSQL på Centos under.

Debian/Ubuntu Kjør følgende kommando.

sudo apt install postgreSql postgreSql-contriB sudo systemctl start postgreSql

Instruksjoner for å installere PostgreSQL på centos

For å installere PostgreSQL på CentOS, kjør kommandoen vist nedenfor.

sudo yum installer postgreSql-server postgreSql-contriB

Initialiser deretter databasen ved å kjøre følgende kommando.

Service PostgreSql Initdb

Start tjenesten med SystemCTL som vist nedenfor.

sudo systemctl start postgreSql

Installere Metasploit i Linux

For å installere Metasploit i Linux, kjør kommandoen vist nedenfor.

sudo krøll https: // rå.GitHubUserContent.com/rapid7/metasploit-omnibus/master/config/maler/metasploit-rammeverk-wrapper/msfupdate.erb> mSfinstall && chmod 755 mSfinstall && ./MSFINSTALL

Etter å ha installert Metasploit, må du initialisere den; Initialiseringsprosessen vil opprette databasen for å koble til PostgreSQL. Kjør følgende kommando for å initialisere Metasploit.

Merk: Når du utfører kommandoen nedenfor, blir du spurt om du vil initialisere Metasploit -webtjenesten for å samhandle med Metasploit gjennom REST API. Siden det ikke er påkrevd og mange brukere klager på problemer når de arbeider med webservicen, som ikke er relevant for å bruke Metasploit, skrev jeg "Nei”Alternativ.

MSFDB init

Når metasploit er initialisert, start den ved å kjøre kommandoen vist på bildet nedenfor.

MSFConsole

Før du starter med Metasploit, må du sjekke om den ble koblet til databasen ved å utføre følgende kommando.

db_status

Som du kan se, er Metasploit vellykket koblet til databasen; Vi kan fortsette med metasploit grunnleggende kommandoer. Hvis du får feil når du prøver å koble til, kan du lese om Metasploit -databasen Feilsøkingskommandoer her.

Komme i gang med metasploit grunnleggende kommandoer

Denne delen forklarer metasploit grunnleggende kommandoer, inkludert et praktisk ekte scenario brukseksempel.

Tabellen nedenfor viser Metasploit mest brukte kommandoer med en kort forklaring. Etter tabellen kan du se hvordan kommandoer blir brukt i et ekte scenario.

Metasploit -kommando Kort beskrivelse
MSFConsole Denne kommandoen utfører Metasploit
Søk Denne kommandoen brukes til å finne moduler og utnyttelser ved navn
bruk De bruk Kommando brukes til å velge moduler og utnyttelser
Vis alternativer Vis modul eller utnyttelsesalternativer
Sett Rhosts <Mål (s)> Denne kommandoen brukes til å definere mål
Sett porter <Porter> Denne kommandoen brukes til å definere porter
Sett tråder <Tråder> Denne kommandoen brukes til å definere tråder
løpe De løpe Kommando brukes til å utføre moduler
tilbake De tilbake Kommandoen flytter deg tilbake til forrige katalog
db_nmap<Flagg><Mål (er)> De db_nmap Kommando lar deg bruke integrert NMAP
Sett RPort <Mål> Denne kommandoen brukes til å definere porter
info Info -kommandoen skriver ut modulen eller utnytter informasjon
utnytte De utnytte Kommandoen utfører den valgte utnyttelsen
exit De exit Kommandoen lukker økten fra Target eller går ut Metasploit
laste Lastkommandoen brukes til å laste inn plugins
lesse Lastekommandoen brukes til å losse plugins
CD Denne kommandoen brukes til å endre det nåværende valget
Hjelp / ? Både hjelp kommando og ? symbolet forklarer kommandoer bruk

Metasploit grunnleggende kommandoer praktisk eksempel

Denne delen viser et praktisk eksempel på de første 14 Metasploit -kommandoene som er oppført i forrige tabell.

Målet som er tildelt IP -adresse i dette eksemplet er 192.168.0.101.

For å starte, kjør Metasploit med følgende kommando.

MSFConsole

For å begynne med vil jeg kjøre en portskanning mot målet for å oppdage åpne porter. Metasploit inkluderer flere portskannere som hjelpemoduler vi kan velge å skanne mål.

For å finne metasploit tilgjengelige portskannere Hjelpemoduler, Søk Kommando brukes, etterfulgt av modultypen eller nøkkelordet. I dette tilfellet leter vi etter en Portscan; Derfor må vi kjøre kommandoen vist på bildet nedenfor.

Søk i Portscan

Som du ser i forrige skjermbilde, har vi forskjellige portskannere til forskjellige formål. I dette tilfellet vil jeg kjøre en TCP -skanning ved hjelp av Hjelpe/skanner/Portscan/TCP modul.

For å velge den valgte modulen, vil jeg utføre bruk Kommando, etterfulgt av banen til modulen som vist nedenfor.

Bruk hjelpe/skanner/Portscan/TCP

Når modulen er valgt, må vi kjenne til dens nødvendige eller tilgjengelige alternativer før vi bruker den, som vi vil bruke Vis alternativer Kommando som vist på skjermbildet nedenfor.

Vis alternativer

Fra modulalternativene som er oppført på bildet over, vil jeg bruke Rhosts For å definere mål -IP -adressen, Porter å definere et porterområde, og Tråder For å definere antall samtidige oppgaver. Så starter jeg skanneprosessen ved å utføre løpskommandoen.

Bortsett fra løpe Kommando brukt i dette eksemplet, Rhosts, Porter, og Tråder Alternativer må være forut for sett Kommando avbildet i Metasploit Basic Commands -tabellen.

De Rhosts Alternativsyntaks for å definere et mål vises nedenfor, hvor <Mål (er)> Må erstattes med en eller flere målverter eller IP -adresser. I mitt tilfelle, som vist i følgende figur, er mål -IP -adressen 192.168.0.101.

Sett Rhosts

Nedenfor kan du se Porter alternativ syntaks, hvor <Porter> Må erstattes av port- eller portområdet du vil skanne. For dette eksemplet definerte jeg et portområde fra 20 til 100.

Sett porter

De Tråder Alternativet lar deg definere antall tråder; Jeg valgte 10.

Sett tråder

Etter å ha definert de tidligere nevnte alternativene, utfører jeg skanningen ved hjelp av løpe kommando. Du kan se hele prosessen i følgende figur.

løpe

Som du ser er porter 23, 21, 22, 25, 53 og 80 åpne i målet. Men jeg vil kjenne tjenesteversjonene som lytter på hver åpne port, som jeg vil bruke NMAP innen Metasploit.

Jeg vil bruke bakkommandoen for å flytte tilbake til den innledende konteksten for en mer behagelig utsikt.

tilbake

Som sagt rapporterte den forrige skanneutgangen åpne porter. Men jeg vil lære mer om tjenestene bak disse åpne portene ved hjelp av NMAP.

De db_nmap Kommando utfører NMAP fra Metasploit. I eksemplet nedenfor vil jeg starte en fotavtrykkskanning. I denne opplæringen vil jeg ikke forklare NMAP -flagg, men du kan lære fotavtrykk med NMAP i denne artikkelen vi har publisert på Linuxhint.

Syntaksen er enkel, utfør db_nmap etterfulgt av de ønskede flaggene og mål -IP -adressen som vist nedenfor.

db_nmap -Sc -Sv -o 192.168.0.101

Som du ser i forrige figur, er FTP -tjenesteversjonen som kjører i port 21 VSFTPD 2.3.4.

Etter å ha lært målet vårt kjører VSFTPD, Vi kan bruke Søk kommando for å se tilgjengelige ressurser for å utføre et angrep mot den identifiserte programvaren.

Søk VSFTP

Metasploit returnerte en tilgjengelig utnyttelse (EXPLOIT/UNIX/FTP/VSFTPD_234_BACKDOOR) vi kan bruke mot FTP -serveren VSFTPD 2.3.4.

Tidligere utførte jeg bruk Kommando for å velge en modul. Nå skal jeg utføre bruk Kommando for å velge tilgjengelig utnyttelse, som vist på figuren nedenfor. Syntaksen er den samme; Kjør bruk Kommando etterfulgt av utnyttelsen av full sti.

Bruk Exploit/UNIX/FTP/VSFTPD_234_Backdoor

Etter å ha valgt utnyttelsen, vil jeg utføre Vis alternativer Kommando for å vise utnyttelsesalternativene.

Vis alternativer

Som du ser i forrige figur, er alternativene Rhosts å definere målet og Rport å definere porter. Både mål og port er allerede valgt. Målet hentes fra vår tidligere aktivitet, mens porten er standard FTP -port; Hvis det var annerledes, ville jeg kjørt Sett RPort Alternativ for å endre det.

De info Kommandoen viser tilleggsinformasjon om den valgte utnyttelsen eller modulen. Nedenfor kan du se et eksempel på info Kommandoutgang.

info

Hvis du ville definere et annet mål, ville du kjørt følgende kommando.

Sett Rhosts 192.168.0.101

Når mål og port er definert, kjører du utnytte Kommando for å starte utnyttelsen.

utnytte

Som du kan se, fikk jeg et eksternt skall i målet. De ls Kommandoen viser de viktigste målkatalogene. Målet ble hell hacket.

For å koble fra målet, kjører jeg exit kommando.

exit

For å avslutte metasploit, bruk også exit -kommandoen.

exit

Det er alt for nå; Eksemplet gitt ovenfor inkluderer de mest brukte kommandoene for deg å komme i gang med Metasploit.

Metasploit og PostgreSQL Feilsøkingskommandoer

Mange brukere klager på problemer når de kobler til databasen. Her viser jeg noen kommandoer du kan bruke hvis det oppstår problemer når du kobler Metasploit til databasen.

MSFDB feilsøkingskommandoer Beskrivelse
Service PostgreSQL omstart Start PostgreSql på nytt
MSFDBREINIT Fjern og reinitialiser databasen
MSFDB slett Fjern databasen
MSFDBinit Initialiser databasen (kjør etter MSFDB slett)
MSFDB -status Vis databasestatus
MSFDB -løp Start databasen og utfør Metasploit

Hvis du har problemer, kan du prøve å bruke kommandoene i tabellrekkefølgen. Forsøk først å starte PostgreSQL på nytt. Hvis det ikke fungerer, kan du prøve å reinitialisere databasen. Hvis problemet vedvarer, må du fjerne databasen og reinitialisere den på nytt. Bruke MSFDB -status kommando for å sjekke statusen etter hver kommando.

Konklusjon

Metasploit er et av de mest populære pentesting -verktøyene for sikkerhetsrevisjon. Sammen med NMAP fører det til sikkerhetsressurser med multitasking. Metasploit kan brukes både til defensive og støtende formål. Som du kan se, er det ikke vanskelig å bruke det; Brukere trenger bare å innlemme litt praktisk kunnskap hvis de allerede er kjent med nettverk og programmering. Metasploit er også tilgjengelig for Mac OS og Microsoft Windows.

Takk for at du leser denne opplæringen som forklarer Metasploit -installasjonen og grunnleggende kommandoer. Fortsett å følge oss for mer Linux profesjonelle tips og opplæringsprogrammer.