“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.
På Debian/Ubuntu Kjør følgende kommando.
sudo apt install postgreSql postgreSql-contriB sudo systemctl start postgreSqlInstruksjoner for å installere PostgreSQL på centos
For å installere PostgreSQL på CentOS, kjør kommandoen vist nedenfor.
sudo yum installer postgreSql-server postgreSql-contriBInitialiser deretter databasen ved å kjøre følgende kommando.
Service PostgreSql InitdbStart tjenesten med SystemCTL som vist nedenfor.
sudo systemctl start postgreSqlInstallere 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 && ./MSFINSTALLEtter å 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 initNår metasploit er initialisert, start den ved å kjøre kommandoen vist på bildet nedenfor.
MSFConsoleFør du starter med Metasploit, må du sjekke om den ble koblet til databasen ved å utføre følgende kommando.
db_statusSom 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.
MSFConsoleFor å 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 PortscanSom 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/TCPNå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 alternativerFra 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 RhostsNedenfor 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 porterDe Tråder Alternativet lar deg definere antall tråder; Jeg valgte 10.
Sett tråderEtter å 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øpeSom 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.
tilbakeSom 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.101Som 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 VSFTPMetasploit 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_BackdoorEtter å ha valgt utnyttelsen, vil jeg utføre Vis alternativer Kommando for å vise utnyttelsesalternativene.
Vis alternativerSom 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.
infoHvis du ville definere et annet mål, ville du kjørt følgende kommando.
Sett Rhosts 192.168.0.101Når mål og port er definert, kjører du utnytte Kommando for å starte utnyttelsen.
utnytteSom 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.
exitFor å avslutte metasploit, bruk også exit -kommandoen.
exitDet 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.