Wat is beveiligingstests?
SECURITY TESTING is een type softwaretest dat kwetsbaarheden, bedreigingen en risico's in een softwaretoepassing blootlegt en kwaadaardige aanvallen van indringers voorkomt. Het doel van beveiligingstests is om alle mogelijke mazen en zwakheden van het softwaresysteem te identificeren die kunnen leiden tot verlies van informatie, inkomsten en reputatie door de werknemers of buitenstaanders van de organisatie.
Waarom is beveiligingstest belangrijk?
Het belangrijkste doel van Security Testing is om de bedreigingen in het systeem te identificeren en de mogelijke kwetsbaarheden te meten, zodat de bedreigingen kunnen worden aangetroffen en het systeem niet stopt met functioneren of niet kan worden misbruikt. Het helpt ook bij het detecteren van alle mogelijke beveiligingsrisico's in het systeem en helpt ontwikkelaars de problemen op te lossen door middel van codering.
In deze tutorial leer je-
- Wat is beveiligingstests?
- Soorten beveiligingstests
- Hoe u beveiligingstests uitvoert
- Voorbeeldtestscenario's voor beveiligingstests
- Methodologieën / aanpak / technieken voor beveiligingstests
- Beveiligingstestrollen
- Beveiligingstesttool
- Mythes en feiten over beveiligingstests
Soorten beveiligingstests:
Er zijn zeven hoofdtypen beveiligingstests volgens de methodologiehandleiding van Open Source Security Testing. Ze worden als volgt uitgelegd:
- Kwetsbaarheidsscanning : dit wordt gedaan door middel van geautomatiseerde software om een systeem te scannen op bekende kwetsbaarheidshandtekeningen.
- Beveiligingsscanning: het omvat het identificeren van netwerk- en systeemzwakte en biedt later oplossingen om deze risico's te verminderen. Dit scannen kan worden uitgevoerd voor zowel handmatig als automatisch scannen.
- Penetratietesten : dit soort tests simuleert een aanval van een kwaadwillende hacker. Dit testen omvat een analyse van een bepaald systeem om te controleren op mogelijke kwetsbaarheden voor een externe hackpoging.
- Risicobeoordeling: deze test omvat een analyse van veiligheidsrisico's die in de organisatie worden waargenomen. Risico's worden geclassificeerd als laag, gemiddeld en hoog. Deze test beveelt controles en maatregelen aan om het risico te verminderen.
- Beveiligingsaudits: dit is een interne inspectie van applicaties en besturingssystemen op beveiligingsfouten. Een audit kan ook worden gedaan via regel voor regel inspectie van code
- Ethisch hacken: het is het hacken van een software-systeem van een organisatie. In tegenstelling tot kwaadwillende hackers, die stelen voor hun eigen gewin, is het de bedoeling om beveiligingsfouten in het systeem aan het licht te brengen.
- Houdingsbeoordeling: dit combineert beveiligingsscannen, ethisch hacken en risicobeoordelingen om de algehele beveiligingshouding van een organisatie te laten zien.
Hoe u beveiligingstests uitvoert
Er is altijd afgesproken dat die kosten hoger zullen zijn als we het testen van de beveiliging uitstellen na de implementatiefase van de software of na de implementatie. Het is dus noodzakelijk om beveiligingstests in de SDLC-levenscyclus in de eerdere fasen te betrekken.
Laten we eens kijken naar de overeenkomstige beveiligingsprocessen die voor elke fase in SDLC moeten worden toegepast
SDLC-fasen | Beveiligingsprocessen |
---|---|
Voorwaarden | Beveiligingsanalyse voor vereisten en controleer gevallen van misbruik / misbruik |
Ontwerp | Beveiligingsrisicoanalyse voor ontwerpen. Ontwikkeling van testplan inclusief beveiligingstests |
Codering en testen van eenheden | Statische en dynamische tests en White Box-tests op het gebied van beveiliging |
Integratietesten | Black Box-testen |
Systeemtesten | Black Box-testen en scannen op kwetsbaarheden |
Implementatie | Penetratietesten, scannen op kwetsbaarheid |
Ondersteuning | Impactanalyse van patches |
Het testplan moet bevatten
- Beveiligingsgerelateerde testcases of scenario's
- Testgegevens met betrekking tot beveiligingstests
- Testtools die nodig zijn voor beveiligingstests
- Analyse van verschillende testresultaten van verschillende beveiligingstools
Voorbeeldtestscenario's voor beveiligingstests:
Voorbeeldtestscenario's om u een glimp te geven van beveiligingstestgevallen -
- Een wachtwoord moet in gecodeerde indeling zijn
- Toepassing of systeem mag ongeldige gebruikers niet toestaan
- Controleer cookies en sessietijd voor toepassing
- Voor financiële sites zou de knop Browser terug niet moeten werken.
Methodologieën / aanpak / technieken voor beveiligingstests
Bij beveiligingstests worden verschillende methodologieën gevolgd, en deze zijn als volgt:
- Tiger Box : dit hacken wordt meestal gedaan op een laptop met een verzameling besturingssystemen en hacktools. Deze tests helpen penetratietesters en beveiligingstesters bij het beoordelen van kwetsbaarheden en aanvallen.
- Black Box : Tester is bevoegd om alles over de netwerktopologie en de technologie te testen.
- Grijze doos : Er wordt gedeeltelijke informatie over het systeem aan de tester gegeven en het is een hybride van witte en zwarte doosmodellen.
Beveiligingstestrollen
- Hackers - Toegang tot computersysteem of netwerk zonder toestemming
- Crackers - Breek in op de systemen om gegevens te stelen of te vernietigen
- Ethical Hacker - Voert de meeste breekactiviteiten uit, maar met toestemming van de eigenaar
- Scriptkiddies of pakketapen - Onervaren hackers met programmeertaalvaardigheid
Beveiligingstesttool
1) Indringer
Intruder is een kwetsbaarheidsscanner op bedrijfsniveau die gemakkelijk te gebruiken is. Het voert meer dan 10.000 hoogwaardige beveiligingscontroles uit in uw IT-infrastructuur, waaronder, maar niet beperkt tot: zwakke punten in de configuratie, zwakke punten in toepassingen (zoals SQL-injectie en cross-site scripting) en ontbrekende patches. Intruder biedt intelligent geprioriteerde resultaten en proactieve scans voor de nieuwste bedreigingen, helpt tijd te besparen en beschermt bedrijven van elke omvang tegen hackers.
Kenmerken:
- AWS-, Azure- en Google Cloud-connectoren
- Perimeter-specifieke resultaten om uw externe aanvalsoppervlak te verkleinen
- Hoogwaardige rapportage
- Slack, Microsoft Teams, Jira, Zapier-integraties
- API-integratie met uw CI / CD-pijplijn
2) Owasp
Het Open Web Application Security Project (OWASP) is een wereldwijde non-profitorganisatie die zich richt op het verbeteren van de beveiliging van software. Het project heeft meerdere tools om verschillende softwareomgevingen en protocollen te testen. Vlaggenschip-tools van het project zijn onder meer
- Zed Attack Proxy (ZAP - een geïntegreerde penetratietesttool)
- OWASP-afhankelijkheidscontrole (het scant op projectafhankelijkheden en controleert op bekende kwetsbaarheden)
- OWASP Web Testing Environment Project (verzameling van beveiligingstools en documentatie)
3) WireShark
Wireshark is een netwerkanalysetool die voorheen bekend stond als Ethereal. Het vangt pakketten in realtime op en geeft ze weer in een door mensen leesbaar formaat. In feite is het een netwerkpakketanalysator - die de kleinste details geeft over uw netwerkprotocollen, decodering, pakketinformatie, enz. Het is een open source en kan worden gebruikt op Linux, Windows, OS X, Solaris, NetBSD, FreeBSD en vele andere andere systemen. De informatie die via deze tool wordt opgehaald, kan worden bekeken via een GUI of de TTY-modus TShark Utility.
4) W3af
w3af is een aanvals- en auditframework voor webtoepassingen. Het heeft drie soorten plug-ins; discovery, audit en attack die met elkaar communiceren voor eventuele kwetsbaarheden op de site, bijvoorbeeld een discovery-plug-in in w3af zoekt naar verschillende url's om te testen op kwetsbaarheden en stuurt deze door naar de audit-plug-in die deze URL's vervolgens gebruikt om te zoeken naar kwetsbaarheden.
Mythes en feiten over beveiligingstests:
Laten we het hebben over een interessant onderwerp over mythen en feiten over beveiligingstests:
Mythe # 1 We hebben geen beveiligingsbeleid nodig omdat we een klein bedrijf hebben
Feit: iedereen en elk bedrijf heeft een beveiligingsbeleid nodig
Mythe # 2 Er is geen rendement op investering in beveiligingstests
Feit: Security Testing kan verbeterpunten aan het licht brengen die de efficiëntie kunnen verbeteren en de uitvaltijd kunnen verminderen, waardoor een maximale doorvoer mogelijk is.
Mythe 3 : De enige manier om te beveiligen is door de stekker uit het stopcontact te halen.
Feit: de enige en beste manier om een organisatie te beveiligen, is door "perfecte beveiliging" te vinden. Perfecte beveiliging kan worden bereikt door een houdingsbeoordeling uit te voeren en deze te vergelijken met zakelijke, juridische en industriële rechtvaardigingen.
Mythe 4 : internet is niet veilig. Ik zal software of hardware kopen om het systeem te beschermen en het bedrijf te redden.
Feit: een van de grootste problemen is de aanschaf van software en hardware voor beveiliging. In plaats daarvan moet de organisatie eerst de beveiliging begrijpen en deze vervolgens toepassen.
Gevolgtrekking:
Security testing is de belangrijkste test voor een applicatie en controleert of vertrouwelijke gegevens vertrouwelijk blijven. Bij dit type testen speelt de tester een rol van de aanvaller en speelt hij het systeem rond om beveiligingsgerelateerde bugs te vinden. Beveiligingstests zijn erg belangrijk in Software Engineering om gegevens op alle mogelijke manieren te beschermen.