Ez a cikk a Metasploit alapjairól és a parancssori felületen használt Metasploit parancsokról fog szólni. Elsőre az MSF konzol parancssora és a rendelkezésre álló parancsok száma soknak és nehezen érthetőnek és használhatónak tűnhet, de ne ijedjünk meg tőlük. Ha egyszer megérti a koncepciót és a világos struktúrát, nagyon könnyű lesz. Ha mindent összerakunk, a Metasploit keretrendszer a magból és az alapból, rengeteg exploitból, payloadokból, modulokból (Ruby osztályok), pluginokból, szkriptekből és több felhasználói felületből áll. A Metasploit keretrendszer tartalmaz néhány nagyszerű információgyűjtő eszközt is, amelyeket segédmoduloknak neveznek. A segédmodulok port szkennelésre, szolgáltatás azonosításra, jelszó szimatolásra és Windows javítások számbavételére használhatók. A Metasploit nagymértékben testreszabható a haladó felhasználók számára, és saját exploitok, modulok, pluginok és szkriptek írásával testre szabható, hogy megfeleljen az egyéni igényeknek. Ha a Metasploit alapértelmezés szerint nem biztosítja a szükséges információgyűjtő modult, akkor egyszerűen megírhatja saját maga.

A msfconsole a legstabilabbnak ismert felhasználói felület, amellyel a Hacking Tutorials-on található Metasploit oktatóanyagok során végig dolgozni fogunk. A stabilitás mellett az msfconsole másik előnye a külső parancsok, például a ping parancs és a lap automatikus kitöltésének lehetősége. A Metasploithoz elérhető egy grafikus felhasználói felület is, az Armitage. Az Armitage-et és annak használatát az msfconsole helyett egy későbbi bemutatóban fogjuk megvizsgálni. Folytassuk ezt a Metasploit parancsok bemutatót a Metasploit keretrendszer frissítésével, ha szükséges, majd váltsunk át az msfconsole-ra, hogy megnézzük, milyen parancsok állnak rendelkezésünkre.

Basic Msfconsole parancsok

Feltéve, hogy a Kali Linux 2016 rolling edition-t használjuk, a Metasploit keretrendszert és az msfconsole-t a dokkolóban lévő Metasploit ikonra kattintva tudjuk elindítani. Ez automatikusan elindítja a PostgreSQL szolgáltatást és a Metasploit szolgáltatást.

A Metasploit frissítése az msfupdate segítségével

Kezdjük a Metasploit frissítését a következő paranccsal egy terminál munkamenetben (nem az msfconsole-ban):

msfupdate

Ez a parancs frissíti a Metasploit keretrendszert a legújabb verzióra. A frissítések azt mondják, hogy hetente(kb.) kellene frissítéseket várnunk. Vigyázat! Az msfupdate futtatása tönkreteheti a Metasploit telepítését. Miután lefuttattuk ezt a parancsot ehhez a bemutatóhoz, olyan hibákba futottunk bele, mint:

Ez a hiba a PostgreSQL-hez volt köze, és a probléma megoldásához először próbáljuk meg a következő parancsokat futtatni:

apt-get update

apt-get upgrade

apt-get dist-upgrade

Ez megoldotta a problémát nálunk, valószínűleg egy csomag elavult verziójához volt köze. A Metasploit telepítése elromlott egy frissítés futtatása után, és segítségre van szüksége a javításhoz? Használd az alábbi megjegyzés funkciót, és mi megpróbálunk segíteni, amennyire csak tudunk. Folytassuk az msfconsole-lal.

Metasploit msfconsole

Amikor a Metasploit elindult és az msfconsole elérhető, beírhatjuk a ‘help’ parancsot, hogy áttekintést kapjunk a Metasploit core és backend parancsairól leírással:

Metasploit parancsok

Időpocsékolás lenne és kívül esne ennek a bemutatónak a keretein, ha minden egyes Metasploit parancsot elmagyaráznánk ebben a bemutatóban. Csak azt szeretnénk, hogy a lehető leghamarabb beinduljon a Metasploit, ezért egyelőre elegendőnek kell lennie az alapvető parancsok alapszintű ismeretének. A haladó lehetőségekről a későbbiek során sokkal többet fogsz megtudni. Emellett a legtöbb parancs leírásának nagyon világosnak kell lennie, hogy pontosan mit csinál az adott parancs, és hogyan kell használni. Egyelőre a leggyakrabban használt alapvető Metasploit parancsokkal fogunk foglalkozni ebben a bemutatóban, mint például:

  • Basic parancsok: search, use, back, help, info és exit.
  • Exploit parancsok: set a változók beállításához és show az exploit opciók, célpontok, payloadok, kódolók, nops és a fejlett és kitérési opciók megjelenítéséhez.
  • Exploit végrehajtási parancsok: run és exploit az exploitok futtatásához egy célpont ellen.

A Metasploithoz egy átfogó Metasploit dokumentáció is tartozik, amely bármit tisztázhat. Nézzük meg a Metasploit parancsokat.

Metasploit parancsok

Gyorsan végigmegyünk a Metasploit alapparancsain, így rátérhetünk a szórakoztató részre, és megtanulhatjuk, hogyan használjuk az exploitokat egy sebezhető gépen, mint a Metasploitable 2. Az alapvető parancsok a help, back, exit és info parancsokból állnak.

Use, back és exit parancsok

A use parancs a Metasploitban egy adott modul aktiválására szolgál, és megváltoztatja az msfconsole kontextusát az adott modulra. Az exploit neve piros színnel lesz feltüntetve a parancssorban a következőképpen:

Ebben a példában a parancssor kontextusát a realvnc_client nevű exploitra változtattuk. Innentől kezdve lekérdezhetünk információkat erről az exploitról, beállíthatjuk a szükséges exploit paramétereket és futtathatjuk egy célpont ellen.

Ha ki akarunk lépni az exploit kontextusából és vissza akarunk váltani az msfconsole-ra, akkor a back parancsot kell használnunk. A back parancs visszavisz minket az általános kontextusban lévő msfconsole-hoz. Innentől kezdve ismét kiadhatjuk a use parancsot, hogy egy másik Metasploit modulra váltsunk.

Az exit parancs bezárja az msfconsole-t, és visszavezet a Kali Linux terminálhoz.

Help parancs

Mint azt már korábban láttuk ebben a tananyagban, a help parancs az msfconsole-ban begépelve a lehetséges parancsok listáját adja vissza egy leírással együtt. Ha egy aktív exploit van kijelölve, a help paranccsal lekérhetjük az exploit parancsok listáját:

Info parancs

Ha a use paranccsal kiválasztottunk egy exploitot, akkor az info parancs segítségével olyan információkat kérhetünk le, mint a neve, platformja, szerzője, elérhető célpontjai és még sok más. A következő képernyőképen az info parancsot az ie_execcommand_uaf nevű exploitra használtuk:

Keresési parancs

Az írás pillanatában a Metasploit több mint 1500 különböző exploitot tartalmaz, és rendszeresen jönnek hozzá újak. Ennyi exploit mellett a keresési funkció és a használatának ismerete nagyon fontossá válik. A keresési funkciót a legegyszerűbben úgy használhatod, hogy kiadod a search parancsot, amelyet egy keresési kifejezés követ, például a Flash playerrel kapcsolatos exploitok kereséséhez a flash. A keresés parancs használatával a Metasploit a megadott keresési kifejezésre fog keresni a modulnevekben és a leírásban a következőképpen:

Mint várható volt, rengeteg exploit van a gyakran sebezhető Flash player szoftverhez kapcsolódóan. A lista tartalmazza a CVE-2015-5122 Adobe Flash opaqueBackground Use After Free nulladik napot is, amelyet a Hacking Team tavalyi adatbetörése során fedeztek fel.

Keresés exploitokkal kulcsszavakkal

A kulcsszóval ellátott keresőparanccsal egy adott szerző, egy OSVDB azonosító vagy egy platform keresésére is lehetőség van. A ‘help search’ parancs az alábbi módon jeleníti meg az elérhető kulcsszavakat az msfconsole-ban:

A kulcsszóval történő keresés parancs használata meglehetősen egyszerű, és a súgószöveg alján jelenik meg. A következő parancsot a 2016-os CVE azonosítóval rendelkező modulok keresésére használjuk:

msf > search cve:2016

Ez az összes 2016-os CVE azonosítóval rendelkező exploitot visszaadja nekünk, beleértve a nagyon friss Fortinet tűzfal SSH backdoor segédmodul szkennerét is:

Metasploit parancsok exploitokhoz

Az előző fejezetben megtanultuk a Metasploit parancsokat egy exploit aktiválásához az msfconsole-on és a parancssori környezet megváltoztatásához az exploithoz a use paranccsal. Most azt fogjuk megvizsgálni, hogyan jeleníthetjük meg az exploit paramétereit, és hogyan változtathatjuk meg azokat a set paranccsal. Azt is megnézzük, hogyan lehet megjeleníteni a hasznos terhelést, a célpontokat, a fejlett és a kitérési opciókat. A help show parancs megjeleníti a show parancs elérhető paramétereit:

Show options

A show options parancs megmutatja az exploit elérhető paramétereit, ha a parancssor exploit kontextusban van használva. Használjuk az adobe_flash_shader_drawing_fill exploitot, és nézzük meg az opciókat a következő paranccsal:

msf > Use exploit/multi/browser/ adobe_flash_shader_drawing_fill

Majd a show options parancs következik:

msf > show options

A Flash exploit összesen 6 opciót tartalmaz, amelyek közül csak 2 szükséges:

  • Retries
  • SRVHOST (Kötelező)
  • SRVPORT (Kötelező)
  • SSL
  • SSLCert
  • URLPath

Megjegyezzük, hogy a show options parancs a modul opciók alatt az aktuálisan kiválasztott célt adja vissza. Az alapértelmezett cél 0, ami a Windows a kiválasztott exploit számára.

Az alapértelmezett értékek módosításához használja a set parancsot, amelyet az opció neve és az új érték követ:

Set SRVHOST 192.168.0.100 az SRVHOST érték 192-re történő módosításához.168.0.100

Set SRVPORT 80, hogy a portot 8080-ról 80-ra változtassa

A show options parancs ismételt használatával ellenőrizheti, hogy az SRVHOST és SRVPORT értékek megváltoztak. A Boolean értékeket a set paranccsal változtathatjuk meg az opció nevével és true vagy false értékkel.

Show payloads

Ha a show payloads parancsot használjuk, az msfconsole visszaadja az exploithoz kompatibilis payloadok listáját. A mi flash player exploit példánkban elég sok kompatibilis payloadot fog visszaadni:

A kompatibilis exploitok áttekintése

Az adott payload használatához a set parancsot kell használni, amelyet a payload neve követ:

Set payload linux/x86/exec

Show targets

A show targets parancs visszaadja azon operációs rendszerek listáját, amelyek sebezhetőek a kiválasztott exploitra. A parancs futtatásakor az adobe_flash_shader_drawing_fill exploit esetében a következő kimenetet kapjuk:

A kiválasztott exploit elérhető célpontjainak áttekintése.

Ez az exploit mind a Windows, mind a Linux operációs rendszereket célozza. Megjegyezzük, hogy az info paranccsal további információkat kaphatunk erről az exploitról és a célpontokról.

A célpont beállításához használhatjuk a set parancsot, amelyet a célpont azonosítója követ:

set target 1

A célpont beállításával a hasznos terhek listája jelentősen csökken, mivel csak a célponttal kompatibilis hasznos terhek jelennek meg:

Show advanced

A show advanced parancs használatával megtekinthetjük az exploit speciális beállításait.

A set paranccsal, majd az advanced paraméter és az új érték megadásával módosíthatjuk a speciális beállításokat:

Set displayablepayloadhandler true

Show encoders

A show encoders parancs a kompatibilis kódolókat adja vissza. A kódolókat arra használják, hogy kikerüljék az egyszerű IDS/IPS aláírásokat, amelyek a hasznos teher bizonyos bájtjait keresik. A Metasploit oktatóanyagok egy későbbi fejezetében részletesen foglalkozunk a kódolókkal.

A kódoló használatához használja a set parancsot, amelyet a kódoló neve követ.

Show nops

A show nops parancs a NOP generátorok listáját adja vissza. A NOP a No Operation rövidítése, és arra szolgál, hogy megváltoztassa a NOP szán mintáját, hogy megkerülje a gyakori NOP szánok egyszerű IDS/IPS aláírásait. A NOP-generátorok neve a CPU-architektúrával kezdődik. A NOPS-okkal az oktatóanyag egy későbbi fejezetében foglalkozunk majd.

A NOP-generátor használatához használja a set parancsot, amelyet a NOP-generátor neve követ. Az exploit indításakor a NOP-szánok a NOP-generátorból kerülnek átvételre.

Show evasion

A show evasion parancs az elérhető kitérési technikák listáját adja vissza.

A kitérési beállítások módosításához használjuk a set parancsot, amelyet az evasion paraméter és az új érték követ.

Metasploit parancsok az exploit végrehajtásához

Ha az exploithoz szükséges összes opciót beállítottuk, beleértve a hasznos terhet és a speciális beállításokat, például a NOP generátort, a kitérési opciókat és a kódolást, az exploit készen áll a végrehajtásra. Az exploit két parancs segítségével hajtható végre: run és exploit. Csak írja be a run vagy exploit parancsot az msfconsole-ban, és az exploit futni fog.

Ezzel a Metasploit parancsok bemutatója egyelőre befejeződik. Ha bármilyen kérdése van az említett vagy nem említett parancsokkal kapcsolatban, kérjük, tegye fel őket a hozzászólás alatti hozzászólási funkció segítségével. A következő Metasploit bemutatóban a Metasploit 2 gépet fogjuk felsorolni. Ezt követően egy sebezhetőségi értékelést fogunk végezni az összegyűjtött információkkal. Ha még nem telepítette a Metasploitable 2-t, akkor először kövesse a Metasploitable 2 telepítési bemutatót.

Megosztás: