grå æske
Hvad er en grå æske?
Grå boks henviser til test af software, hvor der er en vis begrænset viden om dens interne funktion. Gray box-test er en etisk hackingteknik, hvor hackeren skal bruge begrænset information til at identificere styrkerne og svaghederne ved et måls sikkerhedsnetværk.
Forståelse af grå kasser
Grey box er hybriden af white box test, hvor testeren undersøger den interne logik og struktur af softwarens kode, og black box test, hvor testeren ikke ved noget om softwarens kode. For at forstå test af grå boks skal vi først forstå test af sort boks og test af hvid boks.
Black Box og White Box Test
Black box-test ser på intet andet end input fra brugeren, og hvilket output softwaren producerer givet disse input. Black box-test kræver ikke noget kendskab til programmeringssprog eller andre tekniske detaljer. Det er en type test på højt niveau, der bruges i systemtest og accepttest. Softwareingeniører kræver et SRS-dokument (software requirement specification) for at udføre black box-test. Denne test tager et slutbrugerperspektiv, hvor black box-testeren ikke ved, hvordan udgangene genereres fra inputs.
White box-test kræver indgående kendskab til de teknikker og platforme, der bruges til at bygge software, herunder det relevante programmeringssprog. Det er en type test på lavt niveau, der bruges i enhedstest og indikationstest. Softwareingeniører skal forstå det programmeringssprog, der bruges til at oprette applikationen, så de kan forstå dens kildekode. White box-tests primære formål er at styrke sikkerheden, undersøge hvordan input og output flyder gennem applikationen og forbedre design og brugervenlighed. Når en white box tester ikke får det forventede output fra et givet input, anses resultatet for at være en fejl, der skal rettes.
Sådan fungerer test af grå boks
Grå bokstest inkluderer vigtige komponenter i både sort og hvid boks test for at få et bedre resultat, end begge kunne opnå alene. Både slutbrugere og udviklere udfører grå boks-test med begrænset (delvis) viden om en applikations kildekode. Test af grå boks kan være manuel eller automatiseret. Det er mere omfattende og mere tidskrævende end black box test, men ikke så omfattende eller tidskrævende som white box test. Grå bokstestere kræver detaljerede designdokumenter.
Test af grå boks involverer identifikation af input, output, hovedstier og underfunktioner. Det går derefter videre til at udvikle input og output til underfunktioner, udføre testcases for underfunktioner og verificere disse resultater.
Eksempel på grå boks
En grå boks tester kan kontrollere og rette linkene på et websted. Hvis et link ikke virker, ændrer testeren HTML-koden for at prøve at få linket til at virke, og kontrollerer derefter brugergrænsefladen igen for at se, om linket virker. En grå boks tester kan også teste en online lommeregner. Testeren definerer input - matematiske formler som 1+1, 2*2, 5-4 og 15/3 - og kontrollerer derefter, at lommeregneren giver de korrekte output givet disse input. Den grå boks-tester har adgang til lommeregnerens HTML-kode og kan ændre den, hvis der opdages fejl.
Grå boks-test ser på både applikationens brugergrænseflade eller præsentationslag og dens interne funktion eller kode. Det bruges hovedsageligt til integrationstest og penetrationstest, men det er ikke egnet til algoritmetest. Gråbokstest bruges generelt til at teste en applikations brugergrænseflade, sikkerhed eller onlinefunktionalitet gennem teknikker som matrixtest, regressionstest,. ortogonal array-test og mønstertest. Grå boks-testere er mest tilbøjelige til at identificere kontekstspecifikke problemer.
"Grå" henviser til testerens delvise evne til at se applikationens interne funktion. "Hvid" henviser til evnen til at se gennem softwarens grænseflade til dens indre funktion, og "sort" henviser til manglende evne til at se softwarens interne funktion. Test af grå boks kaldes nogle gange gennemskinnelig test, mens test af hvid boks undertiden kaldes klar test og sort boks test kan også kaldes uigennemsigtig test.
##Højdepunkter
Grå boks-testning er i bund og grund en blanding af hvid boks (fuld viden) og sort boks (ingen viden) metoder.
Gray box-test er en teknik til at opdage softwarefejl eller finde exploits, hvor en vis begrænset viden om den underliggende software er kendt på forhånd.
Denne form for "etisk hacking" giver softwareudviklere mulighed for at lave rettelser og patches for at forhindre ondsindede angribere i at bruge disse udnyttelser.