Movatterモバイル変換


[0]ホーム

URL:


Naar inhoud springen
Wikipediade vrije encyclopedie
Zoeken

Fuzz-testen

Uit Wikipedia, de vrije encyclopedie

Fuzz-testen offuzzing is een techniek die desoftware van een apparaat test. De techniek dient om programmeerfouten of beveiligingsgaten te vinden door willekeurige data, genaamdfuzz, in het systeem te sturen in een poging om het te doencrashen. Wanneer een kwetsbaarheid is gevonden zal de Fuzz-test de mogelijke oorzaak weergeven[1].

Geschiedenis

[bewerken |brontekst bewerken]

De Fuzz-test is uitgevonden doorBarton Miller aan deuniversiteit van Wisconsin in 1989. Het idee ontstond door een storm in de herfst van 1988. Door de hevige regen merkte Barton Miller op dat het regengeluid voor storingen zorgde bij programma's op zijnUnix systeem en sommigecrashten zelfs. Wetenschappelijke nieuwsgierigheid dreef hem op onderzoek en de term werd bedacht bij het uitwerken van een klasproject dat Barton Miller gaf aan de universiteit. Het project bestond uit het bombarderen van eenUnix systeem met willekeurige data tot het crashte om zo de betrouwbaarheid ervan testen. De termFuzz werd gekozen omdat het een gevoel van toeval gaf. Snel werd ondervonden hoe effectief de fuzz-testen waren. Al de resultaten, programmacodes en gevondenbugs werden openbaar gemaakt waardoor andere programmeurs ook te werk konden gaan met fuzz-testen[2].

In 1991 ontstond een van de eerst fuzz-test programma's die gebruikt kon worden opUnix, namelijkCrashme.[3]

Hoe werkt het

[bewerken |brontekst bewerken]

Een fuzz-test gaat als volgt te werk:

  1. Verbind je fuzz-test met een programma.
  2. Laat de fuzz-test verschillende willekeurigeinputs doen in het programma.
  3. Kijk welke reacties het programma heeft op deze willekeurige inputs.
  4. Zie welkebugs er ontstaan endebug ze.

Deze willekeurigedata wordt gebruikt om te zien hoe hetprogramma gaat reageren wanneer het in contact komt met een onbekende input. Deze procedure blijft uitgevoerd worden tot het moment dat er een fatale foutmelding wordt gevonden. Het programma kan dangedebugd worden zodat het op een correcte manier fouten kan weergeven en nietcrasht. Hoewel de tests manueel uitgevoerd kunnen worden, gaat het nog altijd het snelst wanneer dit automatisch wordt gedaan[4].

Gebruik

[bewerken |brontekst bewerken]

Fuzzing werkt het beste bij het zoeken naar problemen die ervoor zorgen dat een programma crasht, zoalsbuffer overflow,cross-site scripting,denial of service aanval (DoS)... Deze problemen worden vaak veroorzaakt doorhackers die proberen zoveel mogelijk schade aan te richten in zo min mogelijke tijd. Hier kan de fuzz-test de fouten in de code die vaak overkeken worden, onthullen en zo zorgen voor een simpele en goedkope oplossing. Wel moet men rekening houden met het feit dat fuzz-testen niet zeer effectief zijn bij het testen naar andere specifieke fouten in de beveiliging, zoals bugs die er voor zorgen dat een programma niet crasht maar die uit zijn op het stelen vandata zoalsSpyware,Worms,Trojan horse,keyloggers... Ook vinden fuzz-testen vaak alleen maar de grote fouten en zo geeft een fuzz-test niet echt een compleet beeld van hoe goed beveiligd een programma is. Een fuzz-test is dan ook het effectiefst als het in samenwerking met andere tests wordt gebruikt[1][5].

Externe links

[bewerken |brontekst bewerken]
Bronnen, noten en/of referenties
  1. abFuzz testing (fuzzing), TechTarget [online]https://searchsecurity.techtarget.com/definition/fuzz-testing (geraadpleegd op 4 december 2016).Gearchiveerd op 27 oktober 2021.
  2. Foreword for fuzz testing book, UW-madison Computer sciences [online]http://pages.cs.wisc.edu/~bart/fuzz/Foreword1.html (geraadpleegd op 4 december 2016)
  3. Crashme, Codeplex [online],https://web.archive.org/web/20120811212536/http://crashme.codeplex.com/ (geraadpleegd op 4 december 2016)
  4. FUzz testing, IBM developerWorks, How fuzz testing works [online],https://www.ibm.com/developerworks/library/j-fuzztest (geraadpleegd op 4 december 2016).Gearchiveerd op 20 juni 2019.
  5. FUzz testing, IBM developerWorks, In conlusion [online],https://www.ibm.com/developerworks/library/j-fuzztest (geraadpleegd op 4 december 2016).Gearchiveerd op 20 juni 2019.
Overgenomen van "https://nl.wikipedia.org/w/index.php?title=Fuzz-testen&oldid=64675411"
Categorie:

[8]ページ先頭

©2009-2025 Movatter.jp