Tässä artikkelissa puhumme Metasploitin perusteista ja komentorivikäyttöliittymässä käytettävistä Metasploit-komennoista. Aluksi MSF-konsolin komentorivi ja käytettävissä olevien komentojen määrä saattaa tuntua paljolta ja vaikealta ymmärtää ja käyttää, mutta älä pelästy niitä. Kun ymmärrät käsitteen ja selkeän rakenteen, se on hyvin helppoa. Kaiken kaikkiaan Metasploit-kehys koostuu ytimestä ja perustasta, monista hyväksikäyttökohteista, hyötykuormista, moduuleista (Ruby-luokat), lisäosista, skripteistä ja useista käyttöliittymistä. Metasploit-kehys sisältää myös hienoja tiedonkeruuvälineitä, joita kutsutaan apumoduuleiksi. Apumoduuleja voidaan käyttää porttiskannaukseen, palveluiden tunnistamiseen, salasanojen nuuskimiseen ja Windows-korjaustiedostojen luettelointiin. Metasploit on hyvin muokattavissa edistyneille käyttäjille, ja sitä voidaan mukauttaa vastaamaan omia tarpeitasi kirjoittamalla omia hyväksikäyttöjä, moduuleja, lisäosia ja skriptejä. Jos Metasploit ei tarjoa oletusarvoisesti tarvitsemaasi tiedonkeruumoduulia, voit yksinkertaisesti kirjoittaa sen itse.

Msfconsole on käyttöliittymä, joka on tunnetusti vakain käyttöliittymä, ja sen kanssa tulemme työskentelemään koko Metasploit-oppaiden ajan Hacking Tutorialsissa. Vakauden lisäksi toinen msfconsolen etu on mahdollisuus suorittaa ulkoisia komentoja, kuten ping-komento ja välilehden automaattinen täydennys. Metasploitille on saatavilla myös graafinen käyttöliittymä nimeltä Armitage. Tarkastelemme Armitagea ja sen käyttöä msfconsolen sijasta myöhemmässä opetusohjelmassa. Jatketaan tätä Metasploit-komentojen opetusohjelmaa päivittämällä tarvittaessa Metasploit Framework ja siirrytään sitten msfconsoleen katsomaan, mitä komentoja meillä on käytössämme.

Basic Msfconsole commands

Edellyttäen, että käytössäsi on Kali Linux 2016 rolling edition, voimme käynnistää Metasploit Frameworkin ja msfconsolen napsauttamalla Metasploit-kuvaketta telakassa. Tämä käynnistää PostgreSQL-palvelun ja Metasploit-palvelun automaattisesti.

Metasploitin päivittäminen msfupdate:lla

Aloitetaan Metasploitin päivittäminen seuraavalla komennolla terminaali-istunnossa (ei msfconsolessa):

msfupdate

Komennon pitäisi päivittää Metasploit-kehys uusimpaan versioon. Päivitykset sanoo, että meidän pitäisi odottaa päivityksiä viikoittain(ish). Varo: msfupdate-ohjelman suorittaminen saattaa rikkoa Metasploit-asennuksesi. Suoritettuamme tämän komennon tätä opetusohjelmaa varten törmäsimme seuraavanlaisiin virheisiin:

Tämä virhe liittyi jotenkin PostgreSQL:n kanssa ja korjataksesi tämän ongelman yritä ensin suorittaa seuraavat komennot:

apt-get update

apt-get upgrade

apt-get dist-upgrade

Tämä ratkaisi ongelman meidän puoleltamme, luultavasti sillä oli jotakin tekemistä jonkun paketin vanhentuneen version kanssa. Onko Metasploit-asennuksesi rikki päivityksen suorittamisen jälkeen ja tarvitset apua sen korjaamiseen? Käytä alla olevaa kommenttitoimintoa, niin yritämme auttaa sinua parhaamme mukaan. Jatketaan msfconsolella.

Metasploit msfconsole

Kun Metasploit on käynnistynyt ja msfconsole on käytettävissä, voimme kirjoittaa ’help’ saadaksemme yleiskatsauksen Metasploitin ydin- ja taustakomentoihin kuvauksen kera:

Metasploit-komennot

Olisikin ajanhukkaa ja tämän opetusohjelman ulkopuolella selittää jokainen Metasploit-komento tässä opetusohjelmassa. Haluamme vain, että pääset käyttämään Metasploitia mahdollisimman pian, ja siksi perustiedot peruskomennoista riittänevät tällä hetkellä. Tulet oppimaan paljon enemmän edistyneistä vaihtoehdoista matkan varrella. Myös useimpien komentojen kuvausten pitäisi olla hyvin selkeitä siitä, mitä komento tarkalleen ottaen tekee ja miten sitä käytetään. Toistaiseksi tarkastelemme tässä tutoriaalissa yleisimmin käytettyjä Metasploitin peruskomentoja, kuten:

  • Peruskomennot: search, use, back, help, info ja exit.
  • Hyökkäyskomennot: set muuttujien asettamiseen ja show hyväksikäyttövaihtoehtojen, kohteiden, hyötykuormien, koodareiden, nops:ien ja kehittyneiden ja väistämisvaihtoehtojen näyttämiseen.
  • Exploitin suorituskomennot: run ja exploit suorittaaksesi exploitit kohdetta vastaan.

Metasploitin mukana tulee myös kattava Metasploit-dokumentaatio, jota voi käyttää kaiken selventämiseen. Tutustutaan Metasploitin komentoihin.

Metasploitin komennot

Käymme Metasploitin peruskomennot nopeasti läpi, jotta voimme aloittaa hauskemman osan ja opetella käyttämään hyväksikäyttöjä haavoittuvassa koneessa, kuten Metasploitable 2. Peruskomennot koostuvat help-, back-, exit- ja info-komennoista.

Käytä-, back- ja exit-komennot

Käytä-komentoa Metasploitissa käytetään tietyn moduulin aktivoimiseen ja se muuttaa msfconsolen kontekstin kyseiseen moduuliin. Hyödyntäjän nimi mainitaan komentorivillä punaisella seuraavasti:

Tässä esimerkissä olemme muuttaneet komentorivin kontekstin realvnc_client-nimiseen hyödyntäjään. Tästä eteenpäin voimme hakea tietoa tästä exploitista, asettaa tarvittavat exploit-parametrit ja ajaa sen kohdetta vastaan.

Jos haluamme poistua exploit-kontekstista ja siirtyä takaisin msfconsoleen, meidän on käytettävä back-komentoa. Back-komento vie meidät takaisin msfconsoleen yleisessä kontekstissa. Tästä eteenpäin voimme antaa use-komennon uudelleen siirtyäksemme toiseen Metasploit-moduuliin.

Exit-komennolla suljetaan msfconsole ja palataan takaisin Kali Linuxin päätelaitteeseen.

Help-komento

Kuten olemme nähneet aiemmin tässä oppaassa, help-komento palauttaa listan mahdollisista komennoista kuvauksineen, kun se on näppäilty msfconsoleen. Kun aktiivinen hyväksikäyttö on valittuna, voimme käyttää help-komentoa saadaksemme luettelon hyväksikäyttökomennoista:

Info-komento

Kun hyväksikäyttö on valittuna use-komennolla, voimme hakea info-komennolla tietoja, kuten nimen, alustan, tekijän, käytettävissä olevat kohteet ja paljon muuta. Seuraavassa kuvakaappauksessa olemme käyttäneet info-komentoa exploitille nimeltä ie_execcommand_uaf:

Hakukomento

Tässä kirjoituksessa Metasploit sisältää yli 1.500 erilaista exploitia ja uusia lisätään säännöllisesti. Tämän exploitien määrän myötä hakutoiminnosta ja sen käytön osaamisesta tulee erittäin tärkeää. Helpoin tapa käyttää hakutoimintoa on antaa komento search ja sen jälkeen hakusana, esimerkiksi flash, jos haluat etsiä Flash playeriin liittyviä exploiteja. Käyttämällä hakukomentoa Metasploit etsii annettua hakutermiä moduulin nimistä ja kuvauksesta seuraavasti:

Kuten odotettua, usein haavoittuvaan Flash-soitinohjelmistoon liittyviä hyväksikäyttöjä on paljon. Luettelossa on myös CVE-2015-5122 Adobe Flash opaqueBackground Use After Free -nollapäivä, joka löydettiin viime vuonna Hacking Teamin tietomurron yhteydessä.

Haetaan hyväksikäyttöjä avainsanoilla

Hakukomennolla avainsanan kanssa voi myös hakea tiettyä tekijää, OSVDB-tunnusta tai alustaa. Komento ’help search’ näyttää käytettävissä olevat avainsanat msfconsolessa seuraavasti:

Hakukomennon käyttö avainsanan kanssa on melko suoraviivaista ja se näytetään ohjetekstin alareunassa. Seuraavaa komentoa käytetään etsimään moduuleja, joiden CVE-tunnus on vuodelta 2016:

msf > search cve:2016

Tämä palauttaa meille kaikki hyväksikäyttökohteet, joiden CVE-tunnus on vuodelta 2016, mukaan lukien apumoduulin skannerin hyvin tuoreelle Fortinet-palomuurin SSH-taustaovelle:

Metasploit-komennot hyväksikäyttökohteita varten

Edellisessä luvussa opimme Metasploit-komennot hyväksikäyttökohteen aktivoimiseksi msfconsolessa ja komentorivikontekstin muuttamiseksi hyväksikäyttökohteeseen use-komennolla. Nyt tarkastelemme, miten exploitin parametrit näytetään ja miten niitä voidaan muuttaa set-komennolla. Katsomme myös, miten näytetään hyötykuormat, kohteet, edistyneet ja väistämisvaihtoehdot. Komento help show näyttää show-komennon käytettävissä olevat parametrit:

Show options

Komento show options näyttää exploitin käytettävissä olevat parametrit, jos sitä käytetään komentorivin ollessa exploit-kontekstissa. Käytetään adobe_flash_shader_drawing_fill -hyödykettä ja tarkastellaan vaihtoehtoja seuraavalla komennolla:

msf > Käytä exploit/multi/browser/ adobe_flash_shader_drawing_fill

Seuraavana komento show options:

msf > show options

Flash-hyökkäys sisältää yhteensä 6 vaihtoehtoa, joista vain 2 tarvitaan:

  • Retries
  • SRVHOST (Required)
  • SRVPORT (Required)
  • SSL
  • SSLCert
  • URLPath

Huomaa, että komento show options palauttaa moduulivaihtoehtojen alapuolella nykyisen valitun kohteen. Oletuskohde on 0, joka on valitun exploitin Windows.

Muutetaan oletusarvot set-komennolla, jota seuraa vaihtoehdon nimi ja uusi arvo:

Set SRVHOST 192.168.0.100 muuttaa SRVHOST-arvon arvoksi 192.168.0.100

Set SRVPORT 80 muuttaaksesi portin arvosta 8080 arvoon 80

Käyttämällä komentoa show options uudelleen voit tarkistaa, että SRVHOST- ja SRVPORT-arvot on muutettu. Boolean-arvoja voi muuttaa set-komennolla, jossa on option nimi ja true tai false.

Show payloads

Kun käytämme komentoa show payloads, msfconsole palauttaa luettelon yhteensopivista hyötykuormista tälle exploitille. Esimerkissämme flash player -hyökkäyksestä se palauttaa melko paljon yhteensopivia hyötykuormia:

Yleiskatsaus yhteensopiviin hyötykuormiin

Käyttääksesi tiettyä hyötykuormaa sinun on käytettävä set-komentoa, jota seuraa hyötykuorman nimi:

Set payload linux/x86/exec

Show targets

Komento show targets palauttaa luettelon käyttöjärjestelmistä, jotka ovat haavoittuvia valitulle exploitille. Kun suoritamme komennon, saamme seuraavan tulosteen adobe_flash_shader_drawing_fill-hyökkäyksen osalta:

Yleiskatsaus valitun hyväksikäytön käytettävissä olevista kohteista.

Tämä hyväksikäyttö kohdistuu sekä Windows- että Linux-käyttöjärjestelmiin. Huomaa, että voimme käyttää info-komentoa saadaksemme lisätietoja tästä exploitista ja kohteista.

Kohteen asettamiseen voimme käyttää komentoa set, jota seuraa kohteen ID:

set target 1

Kohteen asettamisella hyötykuormien luettelo supistuu huomattavasti, koska näytetään vain hyötykuormat, jotka ovat yhteensopivia kohteen kanssa:

Show advanced

Käyttämällä komennon show advanced avulla voimme vilkaista hyväksikäyttökokeilun lisäasetuksia.

Muutetaan lisäasetuksia set-komennolla, jota seuraa advanced-parametri ja uusi arvo:

Set displayablepayloadhandler true

Show encoders

Show encoders-komennolla palautetaan yhteensopivat kooderit. Koodaajia käytetään kiertämään yksinkertaisia IDS/IPS-signaattoreita, jotka etsivät tiettyjä tavuja hyötykuormasta. Tarkastelemme koodaajia yksityiskohtaisesti Metasploit-oppaiden myöhemmässä luvussa.

Koodaajan käyttämiseksi käytä komentoa set, jota seuraa koodaajan nimi.

Show nops

Komento show nops palauttaa luettelon NOP-generaattoreista. NOP on lyhenne sanoista No Operation (Ei toimintaa), ja sitä käytetään NOP-kelkan kuvion muuttamiseen tavallisten NOP-kelkojen yksinkertaisten IDS/IPS-signatuurien ohittamiseksi. NOP-generaattorit alkavat CPU-arkkitehtuurin nimellä. Tarkastelemme NOPS:ia tämän oppikirjan myöhemmässä luvussa.

Käyttääksesi NOP-generaattoria käytä set-komentoa, jota seuraa NOP-generaattorin nimi. Kun hyväksikäyttö käynnistetään, NOP-kelkat otetaan NOP-generaattorista.

Show evasion

Komento show evasion palauttaa luettelon käytettävissä olevista evasion-tekniikoista.

Muuttaaksesi evasion-asetuksia käytä komentoa set, jota seuraa evasion-parametri ja uusi arvo.

Metasploit-komennot exploitin suorittamista varten

Kun kaikki vaaditut asetukset on asetettu exploitille, mukaan lukien hyötykuorma ja lisäasetukset, kuten NOP-generaattori, evasion-asetukset ja koodaus, exploit on valmis suoritettavaksi. Hyödyntäminen voidaan suorittaa kahdella komennolla: run ja exploit. Kirjoita vain run tai exploit msfconsoleen ja exploit suoritetaan.

Tähän päättyy Metasploit-komentojen opetusohjelma toistaiseksi. Jos sinulla on kysyttävää jostain mainituista tai mainitsemattomista komennoista, kysy niitä tämän viestin alla olevan kommenttitoiminnon avulla. Seuraavassa Metasploit tutorialissa luettelemme Metasploitable 2 koneen. Sen jälkeen teemme haavoittuvuusarvioinnin kerätyillä tiedoilla. Jos et ole vielä asentanut Metasploitable 2:ta, voit seurata ensin Metasploitable 2:n asennusopasta.

Jaa: