Bevezetés
a sebezhetőség feltérképezése olyan biztonsági hibák azonosítására irányuló tevékenység, amelyek a rendszer kompromisszumát eredményezhetik. Néha a kutatók a “sebezhetőség felmérése” kifejezést használják a “sebezhetőség feltérképezése” helyett.”Ezek azonban ugyanazok.
a pentestingben és a rosszindulatú hackelésben a sebezhetőségi leképezés egy olyan lépés, amely azt követően következik, hogy a tesztelő vagy hacker megfelelően elvégezte az információgyűjtést és a célhálózat vagy a gazdagép számbavételét.
ebben a cikkben megvizsgáljuk, hogy a Kali Linux operációs rendszeren belüli különféle eszközök hogyan valósíthatók meg olyan sebezhetőségek felfedezésére, amelyek kompromittáló célokhoz vezethetnek, és így a hacker vagy a penetrációs tesztelő megsérti az üzleti rendszer titkosságát, integritását és elérhetőségét.
sebezhetőségi típusok
napjainkban a sebezhetőségek három fő osztálya létezik, amelyek közül egyértelmű különbséget lehet tenni. A három osztály a következő:
- tervezési sebezhetőségek: Ezeket a szoftver specifikációiból eredő gyengeségek révén fedezik fel. Ezek messze a legnehezebb megoldani, mivel javításokat igényelnek a pentester által megadott biztonsági követelmények alapján
- végrehajtási sebezhetőségek: amikor a szoftverkód hibáit fedezik fel, ide vannak besorolva.
- működési biztonsági rések: ezek a biztonsági rések a szoftver nem megfelelő konfigurációjából és telepítéséből erednek.
a fenti sebezhetőségi osztályok lokálisan vagy távolról fordulnak elő a célkörnyezetben.
a helyi biztonsági rések kihasználásához a tesztelőnek vagy a támadónak helyi hozzáféréssel kell rendelkeznie a célrendszerhez. Jó példa erre a CVE-2013-0232, más néven GP Trap Handler nt!KiTrap0D, amely lehetővé tenné a támadók vagy tesztelők számára, hogy hozzáférjenek egy sebezhető Windows Server 2008 géphez, hogy fokozott privilegizált hozzáférést szerezzenek.
a távoli biztonsági rések lehetővé teszik a kizsákmányolást a célrendszerhez való fizikai hozzáférés nélkül. Ezek előfordulhatnak az internetről vagy azon a hálózaton belül, amelyen a sebezhető rendszer ül. Ennek egyik gyakori példája az MS08-067 Windows Server szolgáltatás biztonsági rése, amely a Windows XP rendszereket érinti.
sebezhetőségi taxonómia
mivel a technológiák száma naponta növekszik, számos kísérlet történt egy olyan taxonómia megtervezésére, amely a legjobban képes kielégíteni az általánosan azonosítható sebezhetőségeket. Ezen erőfeszítések ellenére valójában még mindig nem lehet figyelembe venni az összes elkövethető kódolási hibát.
a szervezetek a következő szabványokkal álltak elő, amelyeket számos olyan eszközben is megvalósítottak, amelyek felhasználhatók a biztonsági rések keresése közben.
biztonsági rendszertan | Forrás link |
gyakori gyengeségek felsorolása | http://cwe.mitre.org/data/index.html |
OWASP Top 10 | https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project |
Wasc fenyegetési osztályozás | http://projects.webappsec.org/w/page/13246978/Threat%20Classification |
Nemzeti sebezhetőségi Adatbázis | https://nvd.nist.gov/vuln |
Google Hacking Database (GHDB) | https://www.exploit-db.com/google-hacking-database/ |
sebezhetőség szkennelés Kali Linux
Kali Linux jön a csomagban számos eszközt a penetráció tesztelő. Ezen eszközök egy része hatékonyan használható a pentest elkötelezettség során a sebezhetőség feltérképezésére a fent tárgyalt három osztályban.
webalkalmazások sebezhetőségének vizsgálata
webalkalmazások generálása naponta történik, de a legtöbb programozó nem tartja be azokat a biztonságos kódolási elveket, amelyeket az alkalmazások tervezésekor be kell tartani. A következő eszközök lehetővé teszik a fejlesztő vagy a pentester számára, hogy felfedezze a fenti táblázatban elérhető dokumentációba tartozó sebezhetőségeket.
Nikto2
a Nikto2 egy nagyon egyszerű webes alkalmazás sebezhetőségi szkenner, amely a LibWhisker2-re épül, ami azt jelenti, hogy számos képességgel rendelkezik. Például több platformon is telepíthető, támogatja az SSL-t, képes kezelni a gazdagép-hitelesítést NTLM-en keresztül, sőt az IDS-kijátszást is képes kezelni.
a nikto indítása egy gazdagép ellen a fent látható módon a “nikto-h” paranccsal olyan eredményeket ad vissza, amelyek attól függően változnak, hogy a célpont mennyire sebezhető. Biztos lehet benne, hogy a Nikto észleli az elavult szerver implementációkat, az alapértelmezett telepítőfájlokat, a szerver hibás konfigurációit és számos más biztonsági problémát. A portot a “-p ” hozzáfűzésével is megadhatja, miután megadta a célt, hogy megtalálja a kívánt portok problémáit.
OWASP ZAP
az OWASP Zed Attack proxyt (Zap) az OWASP projekt hozza létre, amely a fenti táblázatban szereplő egyik fél. Ez egy nyílt forráskódú webalkalmazás-proxy eszköz, amely jó funkciókat kínál, például a webalkalmazások sebezhetőségének vizsgálatát.
Kali Linuxon egyszerűen indítsa el az alábbi parancs kiadásával a terminálon:
#owasp-zap
megjelenik a főképernyő. A szkennelés végrehajtása azonban meglehetősen egyszerű. A beolvasandó célt az alábbiak szerint adná ki:
miután megnyomta a” támadás ” gombot, a szkennelés megkezdődik, és látni fogja, hogy néhány tevékenység az alábbi szakaszban a képernyőn.
az OWASP ZAP feltérképezi a cél webhelyet, sebezhetőségeket keresve. Azt is azonosítani néhány téves konfigurációk jelennek meg a figyelmeztetések lapon, így tartsa szemmel, hogy a lapon is. Az OWASP ZAP lehetővé teszi az érintett linkek szűkítését, az alábbiak szerint:
a ZAP kereskedelmi versenytársa a BurpSuite, amely hasonló funkciókat kínál ingyenes verziójával, de sokkal többet a kereskedelmi verziójában.
Nessus
a Nessus automatizált webes alkalmazás-sebezhetőségi vizsgálatot biztosít azokra a helyzetekre, amikor korlátozott az idő, és gyors sebezhetőségi értékelésre vagy pentest-re van szüksége.
a Nessus ingyenesen futtatható korlátozott képességekkel, vagy kereskedelmi eszközként, sokkal több képességgel, amelyek hasznosak lehetnek — különösen a nagy pentest csapatok és megbízások számára.
a biztonsági rés vizsgálatához először telepítenie kell a Nessus ingyenes verzióját, majd navigálnia kell a böngészőben a https://localhost:8834 pontra. Lásd alább:
Ezután nyomja meg a fenti” új szkennelés ” gombot, és válassza ki a beolvasás típusát a rendelkezésre álló számos sablon közül.
a fent bemutatott sablonok korlátozottak lesznek a Nessus ingyenes verziójában, ha futtatod, de sokkal több a szám és a képesség a kereskedelmi verzióban.
ezután kiadja a célokat. A Nessus képes vesszővel elválasztott vagy CIDR formátumban kiadott több célponton történő beolvasásra.
miután befejezte a szükséges mezők kitöltését, megjelenik a fenti képernyő. Kattintson a” lejátszás ” ikonra a vizsgálat elindításához.
a sebezhetőségeket a fenti képernyőn megjelenő módon mutatjuk be, összefoglalva a felfedezett problémák súlyosságát és eseteit.
a Nessus lehetővé teszi, hogy konkrét gépekre és sebezhetőségekre is kiterjedjen, és több információt kapjon a felfedezésükről, valamint ajánlásokat az azonosított kockázatok javítására.
hálózati sebezhetőség vizsgálata
a Kali Linux olyan eszközöket is kínál, amelyek képesek hálózati eszközök, például adatbázisok, útválasztók, kapcsolók és protokollok, például SNMP és SMB szkennelésére. Számos eszköz létezik, de megnézzük a leggyakoribbakat.
CISCO Analysis
a CISCO eszközök számos sebezhetőségre érzékenyek, amelyeket néhány eszközzel fel lehet mérni. Az útválasztók auditálásakor a Kali Linux a Cisco Auditing Tool (CAT) eszközt használja, amely segíthet a támadóknak vagy a behatolási tesztelőknek azonosítani a sebezhetőségeket, az SNMP közösségi karakterláncoktól kezdve a régi CISCO hibákig és az alapértelmezett hitelesítő adatokig, amelyek felhasználhatók az útválasztó illegális hozzáféréséhez.
hogy teszteljük a host Kali, mi végre az alábbi parancsot:
#CAT -h 192.168.67.73 -w lists/community -a lists/passwords -i
a CAT folytatja az alapértelmezett hitelesítő adatok és az SNMP közösségi karakterláncok ellenőrzését a fentiek szerint.
SNMP Analysis
a Kali Linux lehetővé teszi a támadók és a pentesterek számára, hogy információkat szerezzenek a Simple Network Management Protocol (SNMP) protokollal rendelkező gazdagépektől. Ez rendkívül fontos lehet a házigazdát célzó további támadások előkészítésében.
a támadó gépünkön végrehajtottuk az alábbi parancsot, és rengeteg információt tudtunk szerezni a célpontunkról.
amint az fent látható, képesek voltunk azonosítani az ethernet kártya adatait, azt, hogy mennyi ideig kapcsolódott a rendszer ezen a kártyán keresztül, a gazdagép nevét és-amint az alább látható-a hálózati interfészek számát a megfelelő információkkal.
Database Assessment in Kali Linux
a Kali Linux lehetővé teszi a MySQL, az Oracle és a Microsoft MSSQL adatbázisainak tesztelését olyan sebezhetőségek szempontjából, mint az SQL injection. A jelszó-házirendek és az alapértelmezett jelszó-ellenőrzések tesztelését néhány eszköz is támogatja.
SQLMap
az SQLMap egy ügyes eszköz a Kali Linuxon belül, amely képes különféle SQL injekciós tesztek elvégzésére néhány adatbázis ellen, mint például a PostgreSQL, az MSSQL, az Oracle és a MySQL. Képes felismerni és kihasználni az észlelt hibákat, így nagyon gyakori eszköz a támadók és a tesztelők számára. Az SQLMap gyorsan segít a következő támadások végrehajtásában, amelyek egyébként nehézkesek és időigényesek lennének:
- inferenciális vak SQL injection
- UNION query SQL injection
- halmozott lekérdezés SQL injection
- időalapú vak SQL injection
a mi Kali Linux rendszer, mi végre az alábbi parancsot, hogy megpróbálja felfedezni információkat a mögöttes adatbázis belül a cél rendszer.
# sqlmap -u "http://192.168.0.30/mutillidae/index.php?page=view-someones-blog.php" --forms --batch --dbs
a fenti eredmény megmutatja nekünk a rendelkezésre álló adatbázisokat, és lehetővé teszi számunkra, hogy megismerjük az injektálható paramétereket a webes alkalmazásunkban az adott URL-en.
az “owasp10” adatbázis tartalmának megkereséséhez az alábbi parancsot adjuk ki:
# sqlmap -u "http://192.168.0.30/mutillidae/index.php?page=view-someones-blog.php" --forms --batch -D owasp10 –tables
a-D opció megadja a használni kívánt adatbázist, a –tables pedig felkéri az SQLMap-et, hogy sorolja fel az elérhető táblákat.
az SQLMap sokkal több funkciót kínál, amelyekre nem terjed ki, de ezt a súgódokumentációban az “sqlmap-h”paranccsal kell ellenőrizni.
léteznek más eszközök is, például az SQLNinja, amelyek funkcionalitásában hasonlóak az SQLMap-hez.
következtetés
miután feltérképezte a biztonsági réseket a fent tárgyalt eszközökkel, folytathatja a következő fázist, amely egy behatolási teszt vagy támadás során kizsákmányolás lenne. Azonban csak a biztonsági rések felsorolása érdekelheti a biztonsági rések értékelését. Ebben az esetben a fenti eszközök működni fognak.