Hva er sikkerhetstesting? Eksempel
Hva er sikkerhetstesting?
Sikkerhetstesting er en type programvaretesting som avdekker sårbarheter, trusler, risikoer i en programvareapplikasjon og forhindrer ondsinnede angrep fra inntrengere. Formålet med sikkerhetstester er å identifisere alle mulige smutthull og svakheter i programvaresystemet som kan resultere i tap av informasjon, inntekter, omdømme i hendene til ansatte eller utenforstående i organisasjonen.
Hvorfor er sikkerhetstesting viktig?
Hovedmålet med Sikkerhetstesting er å identifisere truslene i systemet og måle dets potensielle sårbarheter, slik at truslene kan møtes og systemet ikke slutter å fungere eller ikke kan utnyttes. Det hjelper også med å oppdage alle mulige sikkerhetsrisikoer i systemet og hjelper utviklere med å fikse problemene gjennom koding.
Typer sikkerhetstesting i programvaretesting
Det er syv hovedtyper av sikkerhetstesting i henhold til metodehåndboken for Open Source Security Testing. De er forklart som følger:
- Sårbarhetssøking: Dette gjøres gjennom automatisert programvare for å skanne et system mot kjente sårbarhetssignaturer.
- Sikkerhetsskanning: Det innebærer å identifisere nettverks- og systemsvakheter, og gir senere løsninger for å redusere disse risikoene. Denne skanningen kan utføres for både manuell og automatisk skanning.
- Penetrasjonstesting: Denne typen testing simulerer et angrep fra en ondsinnet hacker. Denne testingen involverer analyse av et bestemt system for å se etter potensielle sårbarheter for et eksternt hackingforsøk.
- Risikovurdering: Denne testingen innebærer analyse av sikkerhetsrisikoer observert i organisasjonen. Risikoer er klassifisert som lav, middels og høy. Denne testingen anbefaler kontroller og tiltak for å redusere risikoen.
- Sikkerhetsrevisjon: Dette er en intern inspeksjon av Søknader og Operating systemer for sikkerhetsfeil. En revisjon kan også gjøres via linje for linje inspeksjon av kode
- Etisk hacking: Det hacker en organisasjons programvaresystemer. I motsetning til ondsinnede hackere, som stjeler for egen vinning, er hensikten å avsløre sikkerhetsfeil i systemet.
- Holdningsvurdering: Dette kombinerer sikkerhetsskanning, Etisk hacking og risikovurderinger for å vise en overordnet sikkerhetsstilling for en organisasjon.
Hvordan gjøre sikkerhetstesting
Det er alltid enighet om at kostnaden blir mer hvis vi utsetter sikkerhetstesting etter programvareimplementeringsfasen eller etter distribusjon. Så det er nødvendig å involvere sikkerhetstesting i SDLC-livssyklusen i de tidligere fasene.
La oss se nærmere på de tilsvarende sikkerhetsprosessene som skal tas i bruk for hver fase i SDLC
SDLC-faser | Sikkerhetsprosesser |
---|---|
Krav | Sikkerhetsanalyse for krav og sjekk misbruks-/misbrukssaker |
utforming | Sikkerhetsrisikoanalyse for design. Utvikling av Testplan inkludert sikkerhetstester |
Koding og enhetstesting | Statisk og dynamisk testing og sikkerhet Hvit Box Testing |
Integrasjonstesting | Svart Box Testing |
Systemtesting | Svart Box Testing og sårbarhetsskanning |
Gjennomføring | Penetrasjonstesting, Sårbarhetsskanning |
Støtte | Konsekvensanalyse av patcher |
Testplanen skal inneholde
- Sikkerhetsrelaterte testtilfeller eller scenarier
- Testdata relatert til sikkerhetstesting
- Testverktøy som kreves for sikkerhetstesting
- Analyse av ulike testutganger fra ulike sikkerhetsverktøy
Eksempel på testscenarier for sikkerhetstesting
Eksempel på testscenarier for å gi deg et glimt av sikkerhetstesttilfeller –
- Et passord skal være i kryptert format
- Applikasjonen eller systemet skal ikke tillate ugyldige brukere
- Sjekk informasjonskapsler og økttid for søknad
- For finansielle nettsteder bør ikke nettleserens tilbake-knapp fungere.
Metoder / tilnærming / teknikker for sikkerhetstesting
I sikkerhetstesting følges forskjellige metoder, og de er som følger:
- Tiger Box: Denne hackingen gjøres vanligvis på en bærbar datamaskin som har en samling av operativsystemer og hackingverktøy. Denne testingen hjelper penetrasjonstestere og sikkerhetstestere med å utføre sårbarhetsvurderinger og angrep.
- Svart Box: Testeren er autorisert til å utføre testing på alt om nettverkstopologien og teknologien.
- grå Box: Delvis informasjon gis til testeren om systemet, og det er en hybrid av hvite og svarte boksmodeller.
Roller for sikkerhetstesting
- Hackere – Få tilgang til datasystem eller nettverk uten autorisasjon
- Crackere – Bryt deg inn i systemene for å stjele eller ødelegge data
- Ethical Hacker – Utfører de fleste bruddaktivitetene, men med tillatelse fra eieren
- Script Kiddies eller pakkeaper – uerfarne hackere med ferdigheter i programmeringsspråk
Sikkerhetstestverktøy
1) Teramind
Teramind leverer en omfattende pakke for forebygging av innsidetrusler og overvåking av ansatte. Det forbedrer sikkerheten gjennom atferdsanalyse og forebygging av datatap, sikrer overholdelse og optimaliserer forretningsprosesser. Den tilpassbare plattformen dekker ulike organisasjonsbehov, og gir praktisk innsikt som fokuserer på å øke produktiviteten og ivareta dataintegriteten.
Egenskaper:
- Forebygging av insidertrusler: Oppdager og forhindrer brukerhandlinger som kan indikere innsidetrusler mot data.
- Optimalisering av forretningsprosesser: Bruker datadrevet atferdsanalyse for å redefinere operasjonelle prosesser.
- Arbeidsstyrkens produktivitet: Overvåker produktivitet, sikkerhet og overholdelsesadferd til arbeidsstyrken.
- Samsvarshåndtering: Hjelper med å administrere samsvar med én enkelt, skalerbar løsning som passer for små bedrifter, bedrifter og offentlige etater.
- Hendelse etterforskning: Gir bevis for å berike hendelsesrespons, undersøkelser og trusseletterretning.
- Forebygging av tap av data: Overvåker og beskytter mot potensielt tap av sensitive data.
- Ansattovervåking: Tilbyr muligheter for å overvåke ansattes ytelse og aktiviteter.
- Atferdsanalyse: Analyserer detaljerte kundeappatferdsdata for å få innsikt.
- Tilpassbare overvåkingsinnstillinger: Tillater tilpasning av overvåkingsinnstillinger for å passe til spesifikke brukstilfeller eller for å implementere forhåndsdefinerte regler.
- Dashboard-innsikt: Gir synlighet og praktisk innsikt i arbeidsstyrkens aktiviteter gjennom et omfattende dashbord.
2) Owasp
Open Web Application Security Project (OWASP) er en verdensomspennende ideell organisasjon som fokuserer på å forbedre sikkerheten til programvare. Prosjektet har flere verktøy for å teste ulike programvaremiljøer og protokoller. Flaggskipverktøy for prosjektet inkluderer
- Zed Attack Proxy (ZAP – et integrert penetrasjonstestverktøy)
- OWASP-avhengighetssjekk (den skanner etter prosjektavhengigheter og sjekker mot kjente sårbarheter)
- OWASP webtestmiljøprosjekt (samling av sikkerhetsverktøy og dokumentasjon)
3) WireShark
Wireshark er et nettverksanalyseverktøy tidligere kjent som Ethereal. Den fanger opp pakker i sanntid og viser dem i lesbart format. I utgangspunktet er det en nettverkspakkeanalysator - som gir de minste detaljene om nettverksprotokollene dine, dekryptering, pakkeinformasjon osv. Det er en åpen kildekode og kan brukes på Linux, Windows, OS X, Solaris, NetBSD, FreeBSD og mange andre systemer. Informasjonen som hentes via dette verktøyet kan sees gjennom en GUI eller TTY-modus TShark Utility.
4) W3af
w3af er et nettapplikasjonsangrep og revisjonsrammeverk. Den har tre typer plugins; oppdagelse, revisjon og angrep som kommuniserer med hverandre for eventuelle sårbarheter på nettstedet, for eksempel ser en oppdagelsesplugin i w3af etter forskjellige url-er for å teste for sårbarheter og videresende den til revisjonspluginen som deretter bruker disse URL-ene til å søke etter sårbarheter.
Myter og fakta om sikkerhetstesting
La oss snakke om et interessant emne om myter og fakta om sikkerhetstesting:
Myte #1 Vi trenger ingen sikkerhetspolitikk siden vi har en liten bedrift
Fakta: Alle og enhver bedrift trenger en sikkerhetspolicy
Myte #2 Det er ingen avkastning på investeringen i sikkerhetstesting
Fakta: Sikkerhetstesting kan peke på forbedringsområder som kan forbedre effektiviteten og redusere nedetiden, noe som muliggjør maksimal gjennomstrømning.
Myte #3: Den eneste måten å sikre på er å koble den fra.
Fakta: Den eneste og beste måten å sikre en organisasjon på er å finne "Perfekt sikkerhet". Perfekt sikkerhet kan oppnås ved å utføre en holdningsvurdering og sammenligne med forretningsmessige, juridiske og bransjebegrunnelser.
Myte #4: Internett er ikke trygt. Jeg vil kjøpe programvare eller maskinvare for å beskytte systemet og redde virksomheten.
Fakta: Et av de største problemene er å kjøpe programvare og maskinvare for sikkerhet. I stedet bør organisasjonen først forstå sikkerhet og deretter bruke den.
konklusjonen
Sikkerhetstesting er den viktigste testen for en applikasjon og kontrollerer om konfidensielle data forblir konfidensielle. I denne typen testing spiller testeren rollen som angriperen og spiller rundt systemet for å finne sikkerhetsrelaterte feil. Sikkerhetstesting er svært viktig i Software Engineering for å beskytte data på alle måter.