Bevezetés a biztonsági tesztelésbe
A biztonsági tesztelés egy olyan szoftvertesztelési típus, amely a rendszer sebezhetőségének felismerésére, valamint annak információk és erőforrások védelmének biztosítására szolgál a lehetséges betolakodókkal szemben. Hasonlóképpen, egy webalkalmazásnak az adatvédelem mellett a hozzáférés biztonságára is szüksége van. Az alkalmazásnak immunisnak kell lennie a webfejlesztőktől származó Brute Force Attacks és XSS, SQL injekciók ellen. Hasonlóképpen a webes alkalmazás távoli hozzáférési pontjainak is biztonságosnak kell lenniük. A biztonság fontossága azonban exponenciálisan növekszik, amikor az internetről beszélünk. Soha senki nem fogja azt gondolni, hogy ha egy online rendszer nem tudja megvédeni a tranzakciós adatokat. A biztonság még nem fogalommeghatározása.
Itt található a biztonsági hibák néhány listája
• Ha a 'Belépés' ág szerkesztheti a vizsgainformációkat, akkor a hallgatói menedzsment rendszer nem biztonságos.
• Ha a DEO (adatbeviteli operátor) „jelentéseket” tud készíteni, az ERP-séma nem biztonságos.
• Ha az ügyfél hitelkártya adatait nem titkosítja, akkor az online webhelynek nincs biztonsága.
• A személyre szabott szoftverek nem elég biztonságosak, ha egy SQL lekérdezés valódi felhasználói jelszavakat talál.
A biztonsági tesztelés típusai
A nyílt forráskódú biztonsági tesztelési módszertani kézikönyv hét fő típusú biztonsági tesztet tartalmaz. A következőket írják le:
1. Sebezhetőség vizsgálata
Ezt automatikus szoftverrel hajtják végre, hogy megvizsgálják a rendszert a biztonsági rés ismert aláírásait illetően.
2. Biztonsági szkennelés
Ez magában foglalja a hálózat és a rendszer gyengeségeinek azonosítását, és alternatívákat kínál az ilyen veszélyek csökkentésére. A kézi és az automatikus szkenneléshez ez a szkennelés elvégezhető.
3. Behatolásteszt
Ez a teszt egy rosszindulatú hacker támadást szimulálja. Ez a vizsgálat magában foglalja egy speciális rendszer elemzését a belső hackelés esetleges sebezhetőségének felismerésére.
4. Kockázatértékelés
Ez a teszt magában foglalja a vállalat által megfigyelt biztonsági veszélyek elemzését. A kockázatok alacsony, közepes és magas besorolással rendelkeznek. Ez a teszt kockázatcsökkentési ellenőrzéseket és intézkedéseket javasol.
5. Biztonsági ellenőrzés
Az ellenőrzés online, vonalon keresztül, kódellenőrzésekkel és a biztonsági hibák operációs rendszereivel is elvégezhető.
6.Etikus csapkodás
Az etikus hackelés nem ugyanaz, mint a rosszindulatú hackelés. Az etikus hackelés célja a szervezeti felépítés biztonsági hiányosságainak azonosítása.
7. Testtartás-értékelés
Ez egyesíti a biztonsági átvizsgálást, a kockázatértékelést és az etikus hackelést, hogy megmutassa a szervezet általános biztonsági helyzetét.
A biztonsági tesztelés módszertana
Különböző módszerek léteznek a biztonsági teszteléshez
1. Tigrisdoboz
2. Fekete doboz
3. Szürke doboz
Tigrisdoboz:
Ezt a hackelést általában operációs rendszert használó laptopokkal és hackereszköz-gyűjteményekkel hajtják végre. Ez a teszt lehetővé teszi a penetrációs tesztelő és a biztonsági tesztelési operátorok számára a biztonsági rések felmérését és megtámadását.
Fekete doboz:
A Black Box Testing egy olyan szoftver tesztelési módszer, amelyet a tesztelő viselkedési tesztelésként ismert. Ilyen módon a vizsgált termék belső kialakítása nem ismert. Ezek a vizsgák lehetnek funkcionálisak vagy sem.
Szürke doboz:
A Szürke Doboz Tesztelés egy olyan szoftver tesztelés technikája, amely ötvözi a Black Box és a White Box tesztelést. A szürke doboz tesztelése egy olyan alkalmazás vagy szoftver termék tesztelésének módszere, amely része a megvalósítás belső működésének.
Hogyan tehetjük meg a biztonsági tesztelést?
Mindig megállapodtak abban, hogy ha elhalasztjuk a biztonsági tesztelést a szoftver bevezetése vagy telepítése után, ez a költség növekedni fog. A korábbi szakaszokban a biztonsági teszteket az SDLC életciklusában kell elvégezni. Nézzük meg az egyes SDLC szakaszokhoz tartozó megfelelő biztonsági eljárásokat. A bemeneti területeknél a tesztelő megvizsgálhatja a maximális hosszúságot. Ez a korlátozás nem teheti lehetővé, hogy a hackerek ilyen rosszindulatú szkripteket tartalmazzanak.
• A biztonsági értékelés és a visszaélések / visszaélések ellenőrzésének követelményei.
• A biztonsági veszélyek elemzése a tervezésnél. Tesztelési terv kidolgozása, beleértve a biztonsági tesztelést.
A 10 legfontosabb nyílt forráskódú biztonsági tesztelő eszköz
Az alábbiakban felsoroljuk a legfontosabb biztonsági tesztelő eszközöket és azok jellemzőit. Bármelyik eszközt választhat az igényei alapján.
1. Wapiti
A Wapiti egy hatékony webes alkalmazásbiztonsági teszt eszköz a webes alkalmazások biztonságának felméréséhez. „Fekete doboz tesztelést” végez a webes alkalmazások esetleges sebezhetőségének ellenőrzése céljából. Beolvassa a weboldalakat és tesztelési információkat ad be, hogy ellenőrizze a biztonsági hiányosságokat a tesztelési szakaszban. A Wapiti több sebezhetőséget határoz meg a GET és POST HTTP támadások támogatására. A Wapiti egy olyan parancsokhoz való alkalmazás, amely kezdők számára nehéz, de szakemberek számára egyszerű. A szoftvernek teljes parancs-megértésre van szüksége.
A Wapiti jellemzői
• XSS befecskendezés
• Adatbázis-befecskendezés
• A parancs végrehajtásának észlelése.
• Befecskendezés CRLF
2. A Zed Attack proxy
A Zed Attack Proxy-t, közismert nevén ZAP, a ZAP az OWASP hozta létre, és ezzel a ZAP nyílt forráskódú. A Zed Attack Proxy, amelyet az Unix / Linux, a Windows és a Mac OS támogat, a Zed Attack Proxy lehetővé teszi a sebezhetőség felismerését, még a webes alkalmazások fejlesztési és tesztelési szakaszaiban is. Ez a teszt eszköz könnyen használható, még akkor is, ha egy penetrációs teszt kezdője.
A Zed Attack jellemzői
• A Zed Attack Proxy rendelkezik egy automatizálási szkennerrel és hitelesítési támogatással.
• A Zed Attack Proxy rendelkezik egy dinamikus SSL tanúsítvánnyal és a Web Socket támogatással is.
3. Vega
A Java-ban írt Vega rendelkezik egy GUI-val. Hozzáférhető Linux, Mac OS és Windows rendszereken, amelyek segíthetnek. A Vega egy ingyenes webalkalmazás-tesztelő eszköz és nyílt forráskódú platform. A Vega elősegítheti az SQL befecskendezés, a webhelyek közötti parancsfájlok (XSS) és más sebezhetőségek megtalálását és érvényesítését. Használható a preferenciák beállításához is, például az utód leszármazottainak száma és a csomópontok száma másodpercenként, a maximális és a minimális kérések száma másodpercenként.
A Vega jellemzői
• A Vega rendelkezik webhelyek közötti szkriptekkel.
• SQL befecskendezés érvényesítése
4. W3af
A W3af a webes alkalmazások híres biztonsági tesztelési kerete. A Python segítségével kifejlesztett hatékony webes alkalmazások penetrációs tesztelési platformját nyújtja. Ez az eszköz felhasználható több mint 200 típusú internetes alkalmazás biztonsági problémájának, például a webhelyek közötti szkriptek és az SQL befecskendezés azonosítására. Figyelemmel kíséri a következő web-alkalmazás biztonsági réseket. A W3af könnyen érthető mind a felhasználói felület, mind a konzol felületein. A hitelesítési modulok lehetővé teszik a webhely hitelesítését is.
A W3af jellemzői
• Több CORS hibás beállítás
• CSRF és még sok más sebezhetőség
5. Skipfish
A Skipfish egy internetes alkalmazás által előidézett tesztelő eszköz, amely kijavítja a webhelyet, ellenőrzi az esetleges hiányosságokat minden oldalon, és végül elkészíti az ellenőrzési jelentést. A Skipfish c nyelven íródott, és úgy van optimalizálva, hogy kezelje a HTTP-t és minimális CPU-lábnyomot hagyjon. A CPU lábnyomának bemutatása nélkül a szoftver, amely másodpercenként 2 K kérést dolgoz fel. Az eszköz azt állítja, hogy magas színvonalú előnyöket is kínál, mivel a heurisztikát használja a webes alkalmazásokban. Internetes alkalmazásokhoz a Linux, a FreeBSD, a Mac-OS X és a Windows a Skipfish biztonsági értékelés eszközeivel vannak ellátva.
6. SQLMap
Az SQLMap egy általános webalapú biztonsági tesztelő eszköz az SQL befecskendezésének sérülékenység-észlelési folyamatának automatizálására egy webhely-adatbázisban. Számos különféle funkcióval csomagolva a tesztmotor nagy teljesítményű, lehetővé téve a könnyű behatolást és az SQL befecskendezés tesztelését egy webes alkalmazásban. Az SQLMap számos adatbázist támogat, köztük a MySQL, Oracle, PostgreSQL, Microsoft SQL stb. Ezenkívül a teszt eszköz támogatja az SQL injektálás hat különböző módszerét.
7. Wfuzz
A Wfuzz egy másik nyílt forráskódú eszköz, amely szabadon hozzáférhető a piacon egy web alapú biztonsági tesztelő eszközhöz. Ezt a tesztelő eszközt Pythonban fejlesztették ki, és webes alkalmazásokhoz használják a brutális erő alkalmazásához. A WFuzz használatakor a parancssori felületen kell működnie, mivel nincs grafikus felhasználói felület. A Wfuzz néhány jellemzője a következő:
A Wfuzz jellemzői
• A Wifuzz több befecskendezési pontot támogat.
• A Wfuzz OutPut HTML formátumban jelenik meg
• Többszálú menettel is rendelkezik
• Több proxy támogatással is rendelkezik
8. Metasploit
A penetrációs tesztek egyik leggyakrabban használt kerete. A Metasploit egy nyílt forrású tesztelési platform, amely a kockázatértékelésen túlmutató biztonsági teszteket is lehetővé tesz.
A Metasploit tulajdonságai
• A szerkezet sokkal jobb, mint a riválisoké.
• Számos forgatókönyv a beszűrődési modell funkciókhoz
9. Acunetix
Teljes körű automatizálási penetráció-értékelő eszköz webhelye 4500 + sebezhetőségének felkutatására. Az Acunetix legszembetűnőbb tulajdonsága, hogy több ezer oldalt képes megszakítás nélkül rohanni.
Az Acunetix jellemzői
- Könnyen előállít számos technikai és megfelelési jogorvoslatot.
- Vizsgálja mind a nyílt forráskódú, mind a személyre szabott alkalmazásokat
- Mély beolvasás a hatékony szkenneléshez.
10. Grabber
A Grabber egy nyílt forrású szkenner az internetes alkalmazások biztonsági réseinek felismerésére. A kis webes alkalmazások, például a fórumok és a privát internetes oldalak mobilok és beolvashatók. A Grabber egy kis tesztelő eszköz, amely hosszabb ideig tart a nagy alkalmazások beolvasásához. Ezenkívül a lapolvasónak nincs grafikus felhasználói felülete és PDF-jelentéskészítési funkciója, mivel azt személyes használatra tervezték.
A Grabber jellemzői
• A fájl ellenőrzésének biztonsági másolata
• Ajax ellenőrzés
Következtetés
Ebben a cikkben láttuk, mi a biztonsági tesztelés, miért van rá szükség a különféle típusú biztonsági tesztelésekhez, a teszteléshez használt eszközökhöz és a szolgáltatásokhoz. Remélem, ez a cikk segít kiválasztani a tesztelési eszközöket a fent megadott követelmények és szolgáltatások alapján.
Ajánlott cikkek
Ez egy útmutató a biztonsági teszteléshez. Itt tárgyaljuk a bevezetést, a típusokat, a módszertant és a top 10 nyílt forráskódú biztonsági tesztelési eszközöket. A további javasolt cikkeken keresztül további információkat is megtudhat -
- Alfa tesztelés vs béta tesztelés
- Statikus tesztelés
- Mi a használhatóság tesztelése?
- Teljesítményvizsgálati eszközök
- A béta tesztelés előnyei és hátrányai
- Ismerje meg az alkalmazástesztelés eszközeit