Fuzz-testauksen (fuzzing) opetusohjelma

โšก ร„lykรคs yhteenveto

Fuzz Testing syรถttรครค ohjelmaan virheellistรค, odottamatonta tai satunnaista dataa ja tarkkailee kaatumisia, jumiutumisia ja muistivirheitรค paljastaen tietoturva-aukkoja, joihin skriptatut toiminnalliset testit eivรคt melkein koskaan itse lรถydรค.

  • ๐Ÿ”˜ Alkuperรค: Barton Miller loi termin Wisconsinin ja Madisonin yliopistossa, ja ensimmรคiset fuzz-ajot vuonna 1989 kaatuivat noin kolmanneksessa testatuista UNIX-apuohjelmista.
  • โ˜‘๏ธ Kuusivaiheinen silmukka: Tunnista kohde, tunnista syรถtteet, luo sumeaa dataa, suorita, valvo toimintaa ja kirjaa sitten kaikki ilmenevรคt viat.
  • โœ… Kolme sukupolven strategiaa: Mutaatiofuzzerit sotkevat valideja nรคytteitรค, generointifuzzerit rakentavat syรถtteitรค mallista ja protokollafuzzerit toimivat spesifikaation pohjalta.
  • ๐Ÿงช Palaute uutisoinnista muutti tilannetta: Nykyaikaiset moottorit sรคilyttรคvรคt kaiken syรถtteen, joka saavuttaa uuden koodin, joka lรถytรครค paljon syvempiรค virheitรค kuin puhtaasti satunnainen data.
  • ๐Ÿ› ๏ธ Tyรถkalut ovat kehittyneet: Peach Fuzzer ja WebScarab on arkistoitu, kun taas AFL++, libFuzzer, OSS-Fuzz, boofuzz โ€‹โ€‹ja OWASP ZAP ovat yllรคpidettyjรค vaihtoehtoja.
  • โš™๏ธ Tunnetut rajoitukset: Fuzzing lรถytรครค kaatumisia, ei logiikkavirheitรค, joten se tรคydentรครค eikรค korvaa koodikatselmusta ja penetraatiotestausta.

Fuzz-testauksen (fuzzing) opetusohjelma

Mitรค on Fuzz-testaus?

Fuzz-testaus tai fuzzing on ohjelmistotestaustekniikka, jossa ohjelmistojรคrjestelmรครคn lisรคtรครคn virheellistรค tai satunnaista dataa, jota kutsutaan nimellรค FUZZ, koodausvirheiden ja tietoturva-aukkojen lรถytรคmiseksi. Fuzz-testauksen tarkoituksena on lisรคtรค dataa automatisoitujen tai puoliautomaattisten tekniikoiden avulla ja testata jรคrjestelmรครค erilaisten poikkeusten, kuten jรคrjestelmรคn kaatumisten tai sisรครคnrakennetun koodin virheiden, varalta.

Fuzz-testauksen kehitti alun perin Barton Miller Wisconsinin ja Madisonin yliopistosta. Hรคn loi termin sen jรคlkeen, kun modeemilinkin linjakohina kaatoi hรคnen kรคyttรคmรคnsรค ohjelmat. Hรคnen opiskelijansa ajoivat ensimmรคiset fuzz-testaukset vuonna 1989 ja havaitsivat, ettรค noin kolmannes heidรคn kohdistamista UNIX-apuohjelmista kaatui tai jumiutui. Fuzz-testaus on ohjelmistojen testaus tekniikka, ja se on erรครคnlainen Suojaustestaus.

Alla oleva kaavio nรคyttรครค fuzzing-silmukan perusmuodon, jossa luotu data syรถtetรครคn testattavaan sovellukseen ja vastetta tarkkaillaan.

Fuzz-testauksen tyรถnkulku: fuzzer luo epรคmuotoisen syรถtteen ja syรถttรครค sen testattavalle sovellukselle

Miksi tehdรค Fuzz-testaus?

Fuzzing ansaitsee paikkansa testaussuunnitelmassa, koska se tutkii syรถtteitรค, joita varten kukaan ei ole ajatellut kirjoittaa testitapausta. Tรคrkeimmรคt syyt, miksi tiimit ottavat sen kรคyttรถรถn, on lueteltu alla.

  • Fuzz-testaus lรถytรครค yleensรค vakavimmat tietoturvaviat ja -puutteet, koska kaatuminen on suora todiste kรคsittelemรคttรถmรคstรค syรถttรถpolusta.
  • Fuzz-testaus antaa tehokkaamman tuloksen, kun sitรค kรคytetรครคn yhdessรค Musta Box Testaus, beta-testaus ja muut virheenkorjausmenetelmรคt.
  • Fuzz-testausta kรคytetรครคn ohjelmistojen haavoittuvuuksien tarkistamiseen, ja se on erittรคin kustannustehokas testaustekniikka, koska syรถtteet generoidaan kรคsin kirjoitettujen sijaan.
  • Fuzz-testaus on yksi mustan laatikon testaustekniikoista. Fuzz on myรถs yksi yleisimmistรค menetelmistรค, joita hakkerit kรคyttรคvรคt jรคrjestelmรคn haavoittuvuuksien lรถytรคmiseen, joten sen suorittaminen ensin poistaa hyรถkkรครคjรคn helpoimman reitin sisรครคn.

Fuzz-testauksen tyypit

Fuzzerit ryhmitellรครคn yleensรค sen mukaan, kuinka paljon ne tietรคvรคt hyรถkkรครคmรคstรครคn ohjelmasta. Mitรค enemmรคn fuzzeri tietรครค, sitรค syvemmรคlle koodiin se voi tyรถntรครค.

Tyyppi Mitรค sumuttaja tietรครค Tyypillinen kรคyttรถ
Mustan laatikon sumeus Ei mitรครคn sisรคosista; se nรคkee vain tulot ja lรคhdรถt. Quick Smoke suoritetaan binรครคritiedostoa tai live-pรครคtepistettรค vastaan.
Valkoisen laatikon sumentuminen Tรคysi lรคhdekoodi, usein yhdistettynรค symboliseen suoritukseen vaikeasti tavoitettavien haarojen ratkaisemiseksi. Syvรคllinen analyysi komponentista, jonka lรคhde on saatavilla.
Harmaan laatikon sumentuminen Ei lรคhdekoodin tarkistusta, mutta ajonaikaista palautetta, kuten mihin koodihaaraan syรถte pรครคtyi. Oletusarvo moderneille hakukoneille, kuten AFL++ ja libFuzzer.

Toinen, vanhempi ero erottaa tyhmรค hรถlynpรถly alkaen รคlykรคs sumeusTyhmรค fuzzeri kรครคntรครค bittejรค taaksepรคin ilman mitรครคn kรคsitystรค syรถttรถmuodosta, joten ensimmรคinen kohtaama jรคsennin hylkรครค suurimman osan sen datasta. ร„lykรคs fuzzeri ymmรคrtรครค tarkistussummat, pituuskentรคt ja viestirakenteen, joten sen syรถtteet selviรคvรคt validoinnista ja saavuttavat alla olevan logiikan. Kattavuusohjattu sumeus on harmaan laatikon hienosรครคtรถ, joka teki fuzzingista valtavirtaa: moottori instrumentoi binรครคrikoodin, sรคilyttรครค kaikki uuteen haaraan johtavat syรถtteet ja mutatoi eloonjรครคneet, joten korpus kehittyy tasaisesti kohti tutkimatonta koodia sen sijaan, ettรค se kรคynnistyisi uudelleen satunnaisesta kohinasta.

Kuinka tehdรค Fuzz-testaus

Fuzz-testauksen vaiheet sisรคltรคvรคt testauksen perusvaiheet:

Vaihe 1) Tunnista kohdejรคrjestelmรค โ€” valitse hyรถkkรคyksen kohteena oleva binรครคri-, kirjasto-, palvelu- tai protokollapรครคtepiste ja vahvista, ettรค sinulla on lupa testata sitรค.

Vaihe 2) Tunnista tulot โ€” listaa kaikki aloituskohdat, joista kohde lukee: tiedostot, komentoriviargumentit, ympรคristรถmuuttujat, verkkopaketit, lomakekentรคt ja API-hyรถtykuormat.

Vaihe 3) Luo sumea data โ€” tuottaa virheellisesti muotoiltuja syรถtteitรค muuntamalla kelvollisia nรคytteitรค, luomalla ne formaatin mallista tai yhdistรคmรคllรค molempia.

Vaihe 4) Suorita testi kรคyttรคmรคllรค sumeaa dataa โ€” ajaa kohdetta luotuja syรถtteitรค vasten, mieluiten silmukassa, joka kรคynnistรครค prosessin automaattisesti uudelleen jokaisen virheen jรคlkeen.

Vaihe 5) Tarkkaile jรคrjestelmรคn toimintaa โ€” tarkkaile kaatumisia, jumiutumisia, vahvistusvirheitรค, ylikuormitettua muistinkรคyttรถรค ja puhdistusraportteja pelkรคn tulosteen tarkistamisen sijaan.

Vaihe 6) Loki viat โ€” tallenna tarkka syรถte, joka laukaisi kunkin vian, kutista se pienimpรครคn toistuvaan tapaukseen ja arkistoi se pinoon trace liitteenรค.

Esimerkkejรค Fuzzereista

Fuzzerit luokitellaan myรถs sen mukaan, miten ne rakentavat syรถtteen, ja alla olevat kolme lรคhestymistapaa ovat ne, joihin tรถrmรครคt useimmin.

  • Mutaatiopohjaiset sumuttimet muokata olemassa olevia datanรคytteitรค luodakseen uutta testidataa. Tรคmรค on hyvin yksinkertainen ja suoraviivainen lรคhestymistapa: se aloittaa valideilla protokollan nรคytteillรค ja jatkaa jokaisen tavun tai tiedoston muokkaamista.
  • Sukupolvipohjaiset fuzzerit mรครคrittelevรคt uutta dataa mallin syรถtteen perusteella. He alkavat tuottaa syรถtettรค tyhjรคstรค spesifikaation perusteella.
  • Protokollapohjaiset fuzzerit riippuvat testattavan protokollamuodon yksityiskohtaisesta tiedosta, ja tรคmรค ymmรคrrys tulee spesifikaatiosta. Se tarkoittaa spesifikaation taulukon kirjoittamista tyรถkaluun ja sitten mallipohjaisen testigenerointitekniikan kรคyttรถรค spesifikaation lรคpikรคymiseksi ja epรคsรครคnnรถllisyyksien lisรครคmiseksi tietosisรคltรถรถn, jรคrjestykseen jne. Tรคtรค kutsutaan myรถs syntaksitestaukseksi, kielioppitestaukseksi tai kestรคvyystestaukseksi. Fuzzer voi luoda testitapauksia olemassa olevasta tai se voi kรคyttรครค kelvollisia tai virheellisiรค syรถtteitรค.

Protokollapohjaisella fuzzingilla on kaksi rajoitusta:

  1. Testausta ei voi jatkaa ennen kuin spesifikaatio on kypsรค.
  2. Monet hyรถdylliset protokollat โ€‹โ€‹ovat julkaistujen protokollien laajennuksia. Jos fuzz-testaus perustuu julkaistuihin spesifikaatioihin, Testin kattavuus uusille protokollille on rajoitettu.

Yksinkertaisin sumeustekniikan muoto on lรคhettรครค ohjelmistolle satunnaista syรถtettรค joko protokollapaketteina tai tapahtumana. Tรคmรค satunnaisen syรถtteen vรคlittรคmiseen perustuva tekniikka on erittรคin tehokas virheiden lรถytรคmiseen monista sovelluksista ja palveluista. Saatavilla on myรถs muita tekniikoita, ja ne on erittรคin helppo toteuttaa. Nรคiden tekniikoiden toteuttamiseksi meidรคn tarvitsee vain muuttaa olemassa olevia syรถtteitรค, ja voimme muuttaa syรถtettรค yksinkertaisesti vaihtamalla sen bittejรค.

Fuzz-testauksen havaitsemat bugityypit

Koska sumeus arvioi suoritusajan ohjelman kรคyttรคytymisen eikรค odotusarvon perusteella, sen havaitsemat viat ryhmittyvรคt kolmeen perheeseen.

  • Vรคitevirheet ja muistivuodot: Tรคtรค menetelmรครค kรคytetรครคn laajalti suurissa sovelluksissa, joissa virheet vaikuttavat muistin turvallisuuteen, mikรค on vakava haavoittuvuus. Buffer Ylivuoto-, kรคyttรถ-vapautuksen jรคlkeen- ja rajojen ulkopuoliset lukemat nรคkyvรคt kaikki tรคssรค.
  • Virheellinen syรถte: Fuzz-testauksessa fuzzeja kรคytetรครคn virheellisen syรถtteen luomiseen, jota kรคytetรครคn virheenkรคsittelyrutiinien testaamiseen, ja tรคmรค on tรคrkeรครค ohjelmistoille, jotka eivรคt hallitse syรถtettรครคn. Yksinkertainen fuzzing voidaan nรคhdรค tapana automatisoida negatiivinen testi.
  • Oikeellisuusvirheet: Sumennusta voidaan kรคyttรครค myรถs tietyntyyppisten "oikeellisuusvirheiden", kuten vioittuneen tietokannan tai heikkojen hakutulosten, havaitsemiseen. Differentiaalisumennusta kรคytetรครคn yleensรค siten, ettรค sama syรถte syรถtetรครคn kahteen toteutukseen ja vastauksia vertaillaan.

Fuzz-testaustyรถkalut

Verkkoturvallisuudessa kรคytettyjรค tyรถkaluja voidaan kรคyttรครค laajalti fuzz-testauksessa, kuten Burp Suite ja Peach Fuzzer. Useat alla olevista klassikkonimistรค on nyt arkistoitu, joten niiden nykyinen tila ilmoitetaan jokaisen merkinnรคn yhteydessรค.

  • Peach FuzzerPeach Fuzzer tarjoaa vankemman suojauksen kuin skanneri. Muut testaustyรถkalut voivat etsiรค vain tunnettuja uhkia, kun taas Peach Fuzzer mahdollistaa kรคyttรคjien lรถytรครค tunnettuja ja tuntemattomia uhkia. GitLab osti Peach Techin, eikรค Community Edition v3:a enรครค yllรคpidetรค; yllรคpidetty seuraaja on GitLab Protocol Fuzzer -yhteisรถversio.
  • Spike-vรคlityspalvelin: ammattilaistason tyรถkalu, joka etsii sovellustason haavoittuvuuksia verkkosovelluksista. SPIKE Proxy kattaa perusasiat, kuten SQL Injektio ja sivustojen vรคlinen komentosarjatuotto tรคysin avoimella alustalla Python infrastruktuuri, ja se oli kรคytettรคvissรค Linux ja WindowsSitรค ei ole yllรคpidetty moneen vuoteen, ja se on sisรคllytetty tรคhรคn historiallisen kontekstin vuoksi.
  • WebSkarabeeWebScarab on kirjoitettu kielellรค Java ja on siksi siirrettรคvissรค monille alustoille. WebScarab-kehys kommunikoi HTTP- ja HTTPS-protokollien avulla ja toimii sieppaavana vรคlityspalvelimena: se antaa operaattorille mahdollisuuden tarkastella ja muokata selaimen luomia pyyntรถjรค ennen kuin palvelin vastaanottaa ne, sekรค tarkastella ja pรคivittรครค palvelimen luomia vastauksia ennen kuin selain vastaanottaa ne. Kaikki WebScarabin lรถytรคmรคt porsaanreiรคt lisรคtรครคn raportoitujen ongelmien luetteloon. Tietovarasto arkistoitiin huhtikuussa 2024 ja on nyt vain luku -tilassa.
  • OWASP WSFuzzerWSFuzzer on GPL-lisensoitu ohjelma, joka on kirjoitettu Python joka kohdistui verkkopalveluihin ja viimeisimmรคssรค versiossaan HTTP-pohjaiseen SOAP palvelut olivat pรครคkohde. Se toimitettiin osana WebScarabia ja poistettiin sen mukana; OWASP ZAP ja sen Fuzzer-lisรคosa ovat suositeltuja vaihto-osia.
  • Sรคilytetyt vaihtoehdot: AFL++ ja libFuzzer ovat natiivikoodin vakiomuotoisia kattavuusohjattuja moottoreita, OSS-Fuzz suorittaa niitรค jatkuvasti ja maksutta avoimen lรคhdekoodin projekteissa, ja buzz kattaa verkkoprotokollan sumennuksen PythonLaajempi luettelo on koottu oppaaseen tietoturvatestaustyรถkalut.

Fuzz-testauksen parhaat kรคytรคnnรถt

Kohteeseen suunnattu ja rauhaan jรคtetty fuzzer lรถytรครค harvoin paljoakaan. Alla olevat kรคytรคnnรถt erottavat kampanjan, joka tuottaa arkistoituja vikoja, kampanjasta, joka vain kuluttaa prosessoriaikaa.

  • Aloita hyvรคstรค siemenrungosta. Kerรครค aitoja, kelvollisia syรถtteitรค, jotka sovellus jo hyvรคksyy. Aidon tiedoston muuntaminen jรคsentรครค koodia paljon nopeammin kuin satunnaisten tavujen muuntaminen.
  • Kirjoita pieni, nopea valjaat. Aloituspisteen tulisi tehdรค yksi asia suorituskertaa kohden, vรคlttรครค verkkokutsuja ja levylle kirjoituksia sekรค palata nopeasti, koska lรคpรคisykyky mitataan suoritusten mรครคrรคnรค sekunnissa.
  • Ota desinfiointiaineet kรคyttรถรถn. Hiljainen muistin vioittuminen ei usein aiheuta kaatumista. AddressSanitizer ja UndefinedBehaviorSanitizer muuttavat sen vรคlittรถmรคksi, diagnosoitavaksi viaksi.
  • Juokse pitkรครคn ja juokse jatkuvasti. Yhden tai kahden tunnin ajolla nappaa matalalla sijaitsevat รถtรถkรคt; syvรคt polut vaativat yleensรค useita tunteja, minkรค vuoksi fuzzing kuuluu iltaiseen CI-tyรถhรถn manuaalisen istunnon sijaan.
  • Minimoi ja poista jokaisen kaatumisen kaksoiskappaleet. Pienennรค virheellinen syรถte pienimpรครคn muotoonsa ja ryhmittele kaatumiset pinon mukaan tracmuuten yksi vika saapuu satoina tiketteinรค.
  • Pidรค regressiokorpus yllรค. Lisรครค jokainen toistuva syรถte pysyvรครคn joukkoon, joka suoritetaan jokaisella koonnilla, jotta korjattu vika ei voi palata huomaamattomasti.
  • Mittaa kohde laillisesti. Kolmannen osapuolen palvelun toiminnassa olevan sisรคllรถn sumentaminen ilman kirjallista lupaa on sama asia kuin hyรถkkรคys.

Fuzz-testauksen edut

Realististen odotusten pohjalta kรคytettynรค fuzzing lisรครค arvoa, jota muilla tekniikoilla on vaikea saavuttaa.

  • Fuzz-testaus parantaa ohjelmistojen tietoturvatestausta.
  • Fuzzingissa lรถytyvรคt virheet ovat joskus vakavia ja usein samoja, joita hyรถkkรครคjรคt kรคyttรคvรคt, mukaan lukien kaatumiset, muistivuotoja ja kรคsittelemรคttรถmiรค poikkeuksia.
  • Jos testaajat eivรคt huomaa bugeja ajan ja resurssien rajallisuuden vuoksi, ne lรถytyvรคt myรถs fuzz-testauksesta.
  • Kone tuottaa syรถtteet, joten peitto kasvaa yรถn yli ilman ylimรครคrรคistรค manuaalista tyรถtรค.

Fuzz-testauksen haitat

Samat ominaisuudet, jotka tekevรคt fuzzingista halpaa, myรถs kattavat sen, mitรค se voi todistaa.

  • Pelkkรค sumea testaus ei voi antaa tรคydellistรค kuvaa yleisestรค tietoturvauhasta tai joukosta virheitรค.
  • Fuzz-testaus on vรคhemmรคn tehokasta sellaisten tietoturvauhkien kรคsittelyssรค, jotka eivรคt aiheuta ohjelmien kaatumisia, kuten jotkut virukset, madot ja troijalaiset.
  • Fuzz-testaus voi havaita vain suhteellisen yksinkertaisia โ€‹โ€‹vikoja tai uhkia, eikรค se analysoi liiketoimintalogiikkaa.
  • Tehokkaan toiminnan takaamiseksi se vaatii merkittรคvรคsti koneaikaa.
  • Reuna-arvoehdon asettaminen satunnaisilla syรถtteillรค on erittรคin ongelmallista, vaikka testaajat ratkaisevatkin nykyรครคn suuren osan tรคstรค kรคyttรคjรคn syรถtteiden ohjaamilla deterministisillรค algoritmeilla.

Fuzz-testaus vs. penetraatiotestaus

Molemmat toiminnot etsivรคt tietoturva-aukkoja, mutta ne vastaavat eri kysymyksiin ja ovat harvoin keskenรครคn vaihdettavissa.

Kriteeri Fuzz-testaus Lรคpรคisyn testaus
Ohjaama Automaattinen moottori tuottaa virheellisesti muotoiltua syรถtettรค Taitava testaaja pohtii jรคrjestelmรครค
Etsii Kaatumiset, jumiutumiset ja muistin turvallisuusongelmat Hyรถdynnettรคvissรค olevat heikkoudet, mukaan lukien logiikka- ja konfiguraatiovirheet
Syvyys Hyvin laaja syรถtevalikoima, pinnallinen pรครคttely Kapea kattavuus, syvรคllinen pรครคttely
ulostulo Tulojen ja pinon toistaminen traces Lรถydรถsraportti, jossa on hyvรคksikรคyttรถpolut ja riskiluokitukset
Paras hetki Jatkuvasti rakennusputkessa Ajoittain, julkaisuehdokasta vastaan

Kรคytรคnnรถssรค nรคmรค kaksi ruokkivat toisiaan: fuzzing poistaa halvat, automaattisesti syntyvรคt kaatumiset, jolloin testaajan rajalliset tunnit kรคytetรครคn virheisiin, jotka vain ihminen havaitsee.

UKK

Siemenkorpus on fuzzer-funktion mutatoimien validien syรถtteiden lรคhtรถjoukko. Pienet, vaihtelevat ja oikeat tiedostot toimivat parhaiten, koska jokainen niistรค lรคpรคisee jo jรคsentimen ja antaa moottorin kรคyttรครค budjettinsa syvempรครคn koodiin ensimmรคisen validiteettitarkistuksen sijaan.

Fuzz-harnes on pieni funktio, joka luovuttaa testattavalle koodille yhden puskurin fuzz-tavuja. Sen tulisi vรคlttรครค globaalia tilaa, tiedostojen kirjoittamista ja verkkokutsuja, jotta moottori voi suorittaa sen tuhansia kertoja sekunnissa.

Tunti tai pari paljastaa pinnallisia bugeja. Vakavat kampanjat kestรคvรคt useita tunteja tai pรคiviรค, koska uusi peittoalue saapuu purskeina. Peittoalueen tasaantuminen, ei kellon lukema, on rehellinen merkki siitรค, ettรค operaatio ei ole enรครค kannattava.

AddressSanitizer havaitsee puskurin ylivuodot ja kรคytรถn jรคlkeiset virheet, UndefinedBehaviorSanitizer havaitsee kokonaislukujen ja osoittimien vรครคrinkรคytรถn ja MemorySanitizer havaitsee alustamattoman muistin lukemat. Ilman niitรค monet vioittuneet tiedot kulkevat huomaamattomasti, eikรค fuzzer ilmoita lainkaan virheistรค.

Toista se, minimoi syรถte pienimpรครคn epรคonnistuneeseen tapaukseen, ryhmittele se saman pinon jakavien kaatumisten kanssa trace, sitten lรคhetรค yksi tukipyyntรถ tavalliseen tapaan vianhallinnan prosessi ja lisรครค syรถte regressiokorpukseen.

He jakavat satunnaisuutta, mutta eivรคt tarkoituksellisuutta. Apinatestaus heittรครค mielivaltaisia โ€‹โ€‹kรคyttรคjรคn toimia kรคynnissรค olevaan kรคyttรถliittymรครคn, kun taas fuzzing kohdistaa tiettyyn syรถtejรคsentimeen ja mittaa koodin peittoa, jotta se voi ohjata itseรครคn kohti koodia, jota aiemmat syรถtteet eivรคt koskaan saavuttaneet.

Kielimalleja kรคytetรครคn sumentamattomien API-rajapintojen (unfuzzed API) valjaiden suunnitteluun, eksoottisten formaattien siemensyรถtteiden syntetisointiin sekรค kaatumisraporttien klusterointiin ja yhteenvetoon. Moottori toimittaa edelleen kattavuuspalautteen; malli poistaa pรครคasiassa manuaalisen asennustyรถn.

GitHub Copilot voi luoda libFuzzer-aloituspisteen, koontitiedoston ja siemengeneraattorin olemassa olevasta API-allekirjoituksesta. RevTarkastele tulosta huolellisesti, sillรค virheet hiljaa nielevรค valjaat eivรคt ilmoita kaatumisista.

Tiivistรค tรคmรค viesti seuraavasti: