EITC/IS/WAPT Web Applications Penetration Testing on eurooppalainen IT-sertifiointiohjelma, joka koskee verkkosovellusten läpäisytestauksen (valkoisen hakkeroinnin) teoreettisia ja käytännöllisiä näkökohtia, mukaan lukien erilaiset tekniikat web-sivustojen spider-, skannaus- ja hyökkäystekniikoita varten, mukaan lukien erikoistuneet läpäisytestaustyökalut ja -ohjelmistot. .
EITC/IS/WAPT Web Applications Penetration Testingin opetussuunnitelma kattaa Burp Suiten johdannon, web-sprideringin ja DVWA:n, brute force -testauksen Burp Suitella, verkkosovellusten palomuurien (WAF) tunnistuksen WAFW00F:llä, kohdealueen ja hämähäkin, piilotettujen tiedostojen löytämisen ZAP, WordPress-haavoittuvuuksien tarkistus ja käyttäjätunnusten luettelointi, kuormituksen tasapainottimen tarkistus, sivustojen välinen komentosarja, XSS – heijastuva, tallennettu ja DOM, välityspalvelinhyökkäykset, välityspalvelimen konfigurointi ZAP:ssa, tiedosto- ja hakemistohyökkäykset, tiedostojen ja hakemistojen etsintä DirBusterilla, verkkohyökkäyskäytäntö , OWASP Juice Shop, CSRF – Cross Site Request Forgery, evästeiden kerääminen ja käänteinen muokkaus, HTTP-attribuutit – evästeiden varastaminen, SQL-injektio, DotDotPwn – hakemiston läpikulku sumeus, iframe-injektio ja HTML-injektio, Heartbleed-hyödyntäminen – löytäminen ja hyödyntäminen, PHP-koodin lisäys, bWAPP – HTML-injektio, heijastuva POST, käyttöjärjestelmän komentojen lisäys Commixilla, palvelinpuolen mukana SSI-injektio, pentestaus Dockerissa, OverTheWire Natas, LFI ja komento-injektio, Google-hakkerointi pentestaukseen, Google Dorks tunkeutumistestaukseen, Apache2 ModSecurity sekä Nginx ModSecurity seuraavassa rakenteessa, joka sisältää kattavan videodidaktisen sisällön viitteenä tälle EITC-sertifioinnille.
Verkkosovellusten suojaus (kutsutaan usein nimellä Web AppSec) on käsite, jolla verkkosivustot suunnitellaan toimimaan normaalisti, vaikka niitä vastaan hyökätään. Ajatuksena on integroida joukko turvatoimenpiteitä Web-sovellukseen sen omaisuuden suojaamiseksi vihamielisiltä agenteilta. Verkkosovellukset, kuten kaikki ohjelmistot, ovat alttiita virheille. Jotkut näistä puutteista ovat todellisia haavoittuvuuksia, joita voidaan hyödyntää ja jotka muodostavat riskin yrityksille. Tällaisia puutteita vastaan suojataan verkkosovellusten suojauksella. Se edellyttää turvallisten kehitysmenetelmien käyttämistä ja tietoturvakontrollien käyttöönottoa koko ohjelmistokehityksen elinkaaren ajan (SDLC), jotta varmistetaan, että suunnitteluvirheet ja toteutusongelmat korjataan. Verkkoläpäisytestaus, jonka suorittavat asiantuntijat, jotka pyrkivät paljastamaan ja hyödyntämään verkkosovellusten haavoittuvuuksia niin sanotun valkoisen hakkeroinnin avulla, on välttämätön käytäntö asianmukaisen puolustuksen mahdollistamiseksi.
Verkkoläpäisytesti, joka tunnetaan myös nimellä verkkokynätesti, simuloi verkkohyökkäystä verkkosovellukseen, jotta löydettäisiin hyödynnettävissä olevia puutteita. Läpäisytestausta käytetään usein täydentämään verkkosovellusten palomuuria verkkosovellusten suojauksen (WAF) yhteydessä. Kynätestaukseen sisältyy yleensä yritys tunkeutua useisiin sovellusjärjestelmiin (esim. API, käyttöliittymä/taustapalvelimet) haavoittuvuuksien, kuten puhdistamattomien syötteiden löytämiseksi, jotka ovat alttiina koodin lisäyshyökkäyksille.
Online-penetraatiotestin tuloksia voidaan käyttää WAF-tietoturvakäytäntöjen määrittämiseen ja löydettyjen haavoittuvuuksien korjaamiseen.
Penetraatiotestauksessa on viisi vaihetta.
Kynätestausprosessi on jaettu viiteen vaiheeseen.
- Suunnittelu ja partio
Testin laajuuden ja tavoitteiden määrittely, mukaan lukien tarkasteltavat järjestelmät ja käytettävät testausmenetelmät, on ensimmäinen vaihe.
Saadaksesi parempi käsitys kohteen toiminnasta ja sen mahdollisista heikkouksista, kerää tietoja (esim. verkko- ja verkkotunnukset, sähköpostipalvelin). - Skannaus
Seuraava vaihe on selvittää, kuinka kohdesovellus reagoi erityyppisiin tunkeutumisyrityksiin. Tämä saavutetaan yleensä käyttämällä seuraavia menetelmiä:
Staattinen analyysi – Tarkastelee sovelluksen koodia ennustaakseen, miten se käyttäytyy, kun se ajetaan. Nämä työkalut voivat skannata koko koodin yhdellä kertaa.
Dynaaminen analyysi on prosessi, jossa tarkastetaan sovelluksen koodi sen ollessa käynnissä. Tämä skannausmenetelmä on käytännöllisempi, koska se tarjoaa reaaliaikaisen kuvan sovelluksen suorituskyvystä. - Käyttöoikeuden saaminen
Kohteen heikkouksien löytämiseksi tämä vaihe käyttää verkkosovellushyökkäystä, kuten sivustojen välistä komentosarjaa, SQL-injektiota ja takaovia. Ymmärtääkseen näiden haavoittuvuuksien mahdollisesti aiheuttaman vahingon testaajat yrittävät hyödyntää niitä lisäämällä oikeuksia, varastamalla tietoja, sieppaamalla liikennettä ja niin edelleen. - Säilytetään pääsy
Tämän vaiheen tarkoituksena on arvioida, voidaanko haavoittuvuutta hyödyntää pitkäaikaisen läsnäolon luomiseksi vaarantuneeseen järjestelmään, jolloin huono toimija pääsee perusteellisesti sisään. Tavoitteena on jäljitellä kehittyneitä pysyviä uhkia, jotka voivat viipyä järjestelmässä kuukausia varastaakseen yrityksen arkaluontoisimman tiedon. - analyysi
Läpäisytestin tulokset laitetaan sitten raporttiin, joka sisältää muun muassa seuraavat tiedot:
Haavoittuvuuksia, joita hyödynnettiin yksityiskohtaisesti
Saadut tiedot olivat arkaluontoisia
Aika, jonka kynätesteri pystyi pysymään huomaamatta järjestelmässä.
Tietoturvaasiantuntijat käyttävät näitä tietoja auttaakseen määrittämään yrityksen WAF-asetuksia ja muita sovellusten suojausratkaisuja haavoittuvuuksien korjaamiseksi ja uusien hyökkäysten estämiseksi.
Läpäisytestausmenetelmät
- Ulkoinen penetraatiotestaus keskittyy yrityksen internetissä näkyvään omaisuuteen, kuten itse verkkosovellukseen, yrityksen verkkosivustoon sekä sähköposti- ja verkkotunnuspalvelimiin (DNS). Tavoitteena on päästä käsiksi ja poimia hyödyllistä tietoa.
- Sisäinen testaus tarkoittaa, että testaajalla on pääsy yrityksen palomuurin takana olevaan sovellukseen, joka simuloi vihamielistä sisäpiirihyökkäystä. Tämä ei ole välttämätön rikollinen työntekijäsimulaatio. Työntekijä, jonka tunnukset on saatu tietojenkalasteluyrityksen seurauksena, on yleinen lähtökohta.
- Sokkotestaus tarkoittaa sitä, että testaajalle annetaan vain testattavan yrityksen nimi. Näin tietoturvaasiantuntijat näkevät, kuinka todellinen sovellushyökkäys voi toteutua reaaliajassa.
- Kaksoissokkotestaus: Kaksoissokkotestissä turvallisuusalan ammattilaiset eivät ole tietoisia simuloidusta hyökkäyksestä etukäteen. Heillä ei ole aikaa nostaa linnoituksiaan ennen murtoyritystä, aivan kuten todellisessa maailmassa.
- Kohdennettu testaus – tässä skenaariossa testaaja ja turvahenkilöstö tekevät yhteistyötä ja seuraavat toistensa liikkeitä. Tämä on erinomainen harjoitus, joka antaa turvallisuustiimille reaaliaikaista palautetta hakkerin näkökulmasta.
Verkkosovellusten palomuurit ja läpäisytestaus
Läpäisytestaus ja WAF:t ovat kaksi erillistä mutta toisiaan täydentävää tietoturvatekniikkaa. Testaaja käyttää todennäköisesti WAF-tietoja, kuten lokeja, löytääkseen ja hyödyntääkseen sovelluksen heikkoja kohtia monissa kynätestauksissa (poikkeuksena sokko- ja kaksoissokkotestit).
Kynätestaustiedot puolestaan voivat auttaa WAF-järjestelmänvalvojia. Testin päätyttyä WAF-konfiguraatioita voidaan muokata testin aikana havaittuja vikoja vastaan.
Lopuksi kynätestaus täyttää tietyt turvatarkastuksen menetelmien, kuten PCI DSS ja SOC 2, vaatimustenmukaisuusvaatimukset. Tietyt vaatimukset, kuten PCI-DSS 6.6, voidaan täyttää vain, jos käytetään sertifioitua WAF:ää. Tämä ei kuitenkaan tee kynätestauksesta yhtään vähemmän hyödyllistä johtuen edellä mainituista eduista ja mahdollisuudesta muuttaa WAF-asetuksia.
Mikä on verkkoturvallisuuden testauksen merkitys?
Verkkoturvatestauksen tavoitteena on tunnistaa tietoturvapuutteita verkkosovelluksissa ja niiden asetuksissa. Sovelluskerros on ensisijainen kohde (eli se, mikä on käynnissä HTTP-protokollassa). Erilaisten syötteiden lähettäminen Web-sovellukseen ongelmien aiheuttamiseksi ja järjestelmän saattamiseksi reagoimaan odottamattomilla tavoilla on yleinen tapa testata sen turvallisuutta. Nämä "negatiiviset testit" tarkastelevat, tekeekö järjestelmä jotain, mitä sen ei ollut tarkoitus saavuttaa.
On myös tärkeää ymmärtää, että Web-suojauksen testaus sisältää enemmän kuin vain sovelluksen suojausominaisuuksien (kuten todentamisen ja valtuutuksen) tarkistamisen. On myös tärkeää varmistaa, että muut ominaisuudet otetaan käyttöön turvallisesti (esim. liiketoimintalogiikka ja oikean syötteen validoinnin ja tulosteen koodauksen käyttö). Tarkoituksena on varmistaa, että verkkosovelluksen toiminnot ovat turvallisia.
Mitä erilaisia turvallisuusarviointeja on?
- Dynamic Application Security (DAST) -testi. Tämä automaattinen sovellusten suojaustesti soveltuu parhaiten vähäriskisille sisäisille sovelluksille, joiden on täytettävä lakisääteiset suojausvaatimukset. DAST:n yhdistäminen joihinkin manuaalisiin online-tietoturvatestauksiin yleisten haavoittuvuuksien varalta on paras strategia keskisuurten riskien sovelluksille ja tärkeille sovelluksille, joihin tehdään pieniä muutoksia.
- Staattisten sovellusten suojaustarkistus (SAST). Tämä sovellusten suojausstrategia sisältää sekä automaattisia että manuaalisia testausmenetelmiä. Se on ihanteellinen virheiden havaitsemiseen ilman, että sinun tarvitsee suorittaa sovelluksia live-ympäristössä. Sen avulla insinöörit voivat myös skannata lähdekoodia ohjelmiston tietoturvavirheiden havaitsemiseksi ja korjaamiseksi järjestelmällisesti.
- Läpäisytutkimus. Tämä manuaalinen sovelluksen suojaustesti on ihanteellinen olennaisiin sovelluksiin, erityisesti niihin, joihin tehdään merkittäviä muutoksia. Kehittyneiden hyökkäysskenaarioiden löytämiseksi arvioinnissa käytetään liiketoimintalogiikkaa ja vastustajapohjaista testausta.
- Sovelluksen itsesuojaus ajon aikana (RASP). Tämä kasvava sovellussuojausmenetelmä sisältää erilaisia teknologiatekniikoita sovelluksen instrumentoimiseksi niin, että uhkia voidaan tarkkailla ja toivottavasti ehkäistä reaaliajassa niiden ilmetessä.
Mikä rooli sovellusten tietoturvatestauksella on yrityksen riskin pienentämisessä?
Suurin osa verkkosovelluksiin kohdistuvista hyökkäyksistä sisältää:
- SQL Injection
- XSS (Cross Site Scripting)
- Etäkomentojen suoritus
- Path Traversal Attack
- Rajoitettu pääsy sisältöön
- Vaaralliset käyttäjätilit
- Haitallisen koodin asennus
- Myyntitulojen menetys
- Asiakkaiden luottamus heikkenee
- Tuotemerkin maine vahingoittaa
- Ja paljon muita hyökkäyksiä
Nykypäivän Internet-ympäristössä useat haasteet voivat vahingoittaa verkkosovellusta. Yllä oleva kuva esittää muutamia yleisimmistä hyökkääjien tekemistä hyökkäyksistä, joista jokainen voi aiheuttaa merkittävää vahinkoa yksittäiselle sovellukselle tai koko yritykselle. Kun tiedät monet hyökkäykset, jotka tekevät sovelluksesta haavoittuvan, sekä hyökkäyksen mahdolliset seuraukset, yritys voi ratkaista haavoittuvuudet etukäteen ja testata niitä tehokkaasti.
SDLC:n alkuvaiheissa voidaan luoda lieventäviä toimenpiteitä ongelmien estämiseksi tunnistamalla haavoittuvuuden perimmäinen syy. Verkkosovellusten tietoturvatestin aikana näiden uhkien toimintatapoja voidaan käyttää myös tunnettujen kiinnostavien paikkojen kohdistamiseen.
Hyökkäyksen vaikutuksen tunnistaminen on tärkeää myös yrityksen riskinhallinnan kannalta, sillä onnistuneen hyökkäyksen vaikutuksia voidaan käyttää haavoittuvuuden vakavuuden määrittämiseen kokonaisuudessaan. Jos tietoturvatestin aikana havaitaan haavoittuvuuksia, niiden vakavuuden määrittäminen antaa yritykselle mahdollisuuden priorisoida korjaustoimia tehokkaammin. Voit vähentää yritykselle aiheutuvia riskejä aloittamalla kriittisistä vakavuusongelmista ja pyrkimällä vähentämään vaikutusta.
Ennen ongelman tunnistamista kunkin ohjelman mahdollisen vaikutuksen arviointi yrityksen sovelluskirjastossa auttaa sinua priorisoimaan sovellusten tietoturvatestauksen. Wenb-tietoturvatestaus voidaan ajoittaa kohdistamaan ensin yrityksen kriittiset sovellukset, ja kohdistetumpi testaus pienentää liiketoimintaan kohdistuvaa riskiä. Vakiintuneen listan korkean profiilin sovelluksista ansiosta wenb-tietoturvatestaus voidaan ajoittaa kohdistumaan ensin yrityksen kriittisiin sovelluksiin, ja kohdistetumpi testaus pienentää liiketoimintaan kohdistuvaa riskiä.
Mitä ominaisuuksia verkkosovelluksen suojaustestin aikana tulisi tutkia?
Harkitse verkkosovellusten tietoturvatestauksen aikana seuraavaa ei-tyhjentävää ominaisuuksien luetteloa. Jokaisen tehoton toteuttaminen voi johtaa heikkouksiin, mikä saattaa yrityksen vaaraan.
- Sovelluksen ja palvelimen konfigurointi. Salaus/salausasetukset, Web-palvelinkokoonpanot ja niin edelleen ovat kaikki esimerkkejä mahdollisista virheistä.
- Syötteiden ja virheiden käsittelyn validointi Huono syötteiden ja tulosten käsittely johtaa SQL-injektioon, cross-site scripting (XSS) -komentosarjaan ja muihin tyypillisiin lisäysongelmiin.
- Istuntojen todennus ja ylläpito. Haavoittuvuudet, jotka voivat johtaa käyttäjän toisena henkilönä esiintymiseen. Myös pätevyys ja suojaus tulee ottaa huomioon.
- Valtuutus. Sovelluksen kykyä suojata pysty- ja vaakasuuntaisilta käyttöoikeuksien eskalaatioilta testataan parhaillaan.
- Logiikkaa liiketoiminnassa. Useimmat yritystoiminnallisuutta tarjoavat ohjelmat luottavat näihin.
- Logiikka asiakkaan päässä. Tämäntyyppinen ominaisuus on yleistymässä nykyaikaisilla, paljon JavaScriptiä sisältävillä verkkosivuilla sekä verkkosivuilla, jotka käyttävät muuntyyppisiä asiakaspuolen tekniikoita (esim. Silverlight, Flash, Java-sovelmia).
Tutustuaksesi sertifioinnin opetussuunnitelmaan yksityiskohtaisesti voit laajentaa ja analysoida alla olevaa taulukkoa.
EITC/IS/WAPT Web Applications Penetration Testing -sertifioinnin opetussuunnitelmassa viitataan avoimen pääsyn didaktisiin materiaaleihin videomuodossa. Oppimisprosessi on jaettu vaiheittaiseen rakenteeseen (ohjelmat -> oppitunnit -> aiheet), joka kattaa olennaiset opetussuunnitelman osat. Tarjolla on myös rajoittamaton konsultointi toimialueen asiantuntijoiden kanssa.
Katso tarkemmat tiedot sertifiointimenettelystä Miten se toimii.
Lataa EITC/IS/WAPT Web Applications Penetration Testing -ohjelman täydelliset offline-itseoppimisen valmistelumateriaalit PDF-tiedostona
EITC/IS/WAPT-valmistelumateriaalit – vakioversio
EITC/IS/WAPT-valmistelumateriaalit – laajennettu versio tarkistuskysymyksillä