Vilka är stadierna för penetrationstestning?

By rik

Säkerhetssystem och penetrationstester: En djupdykning

Absolut vattentäta system existerar inte. Penetrationstestning, ofta kallat pentesting, utgör en specialiserad process som omfattar skanning, analys och förstärkning av ett informationssystems alla komponenter mot potentiella cyberhot. Företag använder sig av så kallade ”bug bounty”-program för att identifiera säkerhetsluckor i sina system. Cybersäkerhetsexperter med inriktning på penetrationstestning upptäcker och redovisar systembrister på ett lagligt sätt genom dessa bug bounty-system. Men exakt hur fungerar denna process?

1. Passiv informationsinhämtning och övervakning

I den inledande fasen av ett bug bounty-program och penetrationstest, är det avgörande att testaren samlar information om det aktuella systemet. Med tanke på det stora utbudet av attack- och testmetoder, måste penetrationstestaren prioritera baserat på den insamlade informationen för att välja den mest passande teststrategin.

Detta steg involverar att extrahera värdefull data om målsystemets uppbyggnad, såsom domännamn, nätverkssegment, routrar och IP-adresser som omfattas av testet. Dessutom ska all relevant information som kan öka sannolikheten för en framgångsrik attack, exempelvis personalinformation och telefonnummer, samlas in.

Öppen källkodsinformation som erhålls i detta skede kan ge oväntat kritiska detaljer. För att uppnå detta måste den etiska hackaren använda sig av en rad olika källor, med extra fokus på målorganisationens webbplats och sociala mediekanaler. Genom att noggrant samla in dessa data lägger testaren grunden för ett framgångsrikt bug bounty-projekt.

De flesta organisationer fastställer dock specifika regler för penetrationstestaren under bug bounty-processen. Det är juridiskt nödvändigt att följa dessa regler till punkt och pricka.

2. Aktiv informationsinhämtning och skanning

Under bug bounty-processen identifierar penetrationstestaren vilka enheter som är aktiva och passiva inom det specificerade IP-intervallet, ofta genom passiv informationsinhämtning. Genom att använda den information som samlats in, behöver pentestaren fastställa en tydlig väg, det vill säga prioritera och specificera exakt vilka tester som behövs.

Under denna fas är det oundvikligt att hackaren får insikt i operativsystemet (OS), öppna portar och tjänster, samt deras versionsinformation, på de system som är i drift.

Om organisationen som beställt bug bounty-programmet lagligt tillåter penetrationstestaren att övervaka nätverkstrafik, kan kritisk information om systemets infrastruktur samlas in, åtminstone så långt det är möjligt. Dock är många organisationer motvilliga till att ge denna tillåtelse. I sådana situationer får penetrationstestaren absolut inte överskrida de fastställda reglerna.

3. Analys- och testfas

I detta skede, efter att ha analyserat hur målsystemet kan tänkas svara på olika intrångsförsök, försöker penetrationstestaren upprätta aktiva anslutningar med de system som identifierats som i drift och göra direkta förfrågningar. Detta är fasen där den etiska hackaren interagerar med målsystemet med hjälp av tjänster som FTP, Netcat och Telnet.

Även om det inte lyckas just här, är det främsta syftet att pröva den information som erhållits under informationsinsamlingen och göra noggranna anteckningar.

4. Manipulations- och exploateringsförsök

Penetrationstestaren samlar all data från de tidigare stegen för att försöka få tillgång till målsystemet på samma sätt som en illvillig hackare. Därför är detta ett kritiskt steg. När man utformar en bug bounty, bör penetrationstestaren tänka som en potentiell angripare.

I denna fas försöker pentestaren att tränga in i systemet med hjälp av information om operativsystemet, öppna portar, tjänster, samt metoder för exploatering som kan användas utifrån deras versioner. Webbportaler och applikationer består av mycket kod och många bibliotek, vilket ökar sårbarheten för attacker. En skicklig penetrationstestare måste därför undersöka alla möjligheter och tillämpa alla möjliga attackvektorer, inom de regler som fastställts.

Det krävs gedigen expertis och erfarenhet för att på ett framgångsrikt och flexibelt sätt kunna använda befintliga metoder för exploatering, utan att skada systemet eller lämna spår, i processen att ta kontroll över systemet. Denna del av penetrationstestet är därför den mest avgörande. För att kriminaltekniska team ska kunna agera vid en eventuell attack, behöver cyberattacken följa de spår som lämnas efter sig.

5. Försök till rättighetseskalering

Ett system är endast så starkt som sin svagaste länk. Om en etisk hackare lyckas få tillgång till ett system, loggar de i allmänhet in med begränsade användarrättigheter. I det här skedet måste penetrationstestaren försöka erhålla administratörsrättigheter genom att utnyttja sårbarheter i operativsystemet eller den specifika miljön.

Därefter ska de sträva efter att få kontroll över andra enheter i nätverket med de utökade rättigheterna, och slutligen försöka få de högsta användarrättigheterna som domänadministratör eller databasadministratör.

6. Rapportering och presentation

När penetrationstestet och bug bounty-stegen är avklarade, måste penetrationstestaren eller bug bounty-jägaren presentera de säkerhetsbrister som upptäckts i målsystemet, de genomförda stegen och hur dessa sårbarheter kunde utnyttjas, i en detaljerad rapport till organisationen. Rapporten bör inkludera information som skärmbilder, exempelkod, angreppsfaser och möjliga konsekvenser av sårbarheten.

Den slutliga rapporten bör även innehålla förslag på lösningar för att åtgärda säkerhetsluckorna. Penetrationstestarens känslighet och oberoende bör förbli konfidentiell. Den etiska hackaren får aldrig dela konfidentiell information som erhållits under processen, inte heller missbruka informationen genom att ge felaktiga uppgifter. Detta är i allmänhet olagligt.

Varför är penetrationstester viktiga?

Det huvudsakliga syftet med penetrationstester är att avslöja hur säkert ett systems infrastruktur är ur ett angriparperspektiv och att eliminera alla sårbarheter. Utöver att identifiera svagheter i en organisations säkerhet, bedöms även säkerhetspolicyers relevans, personalens medvetenhet om säkerhetsfrågor, och i vilken utsträckning verksamheten har implementerat principer för cybersäkerhet.

Penetrationstester blir allt viktigare. För att analysera säkerheten i företags infrastrukturer och personliga applikationer, är det viktigt att anlita certifierade etiska penetrationstestare.