X'inhu Fuzzing?

X'inhu fuzzing

Intro: X'inhu Fuzzing?

Fl-2014, hackers Ċiniżi hacked fis-Sistemi tas-Saħħa tal-Komunità, katina ta 'sptar Amerikan għall-profitt, u seraq dejta ta' 4.5 miljun pazjent. Il-hackers sfruttaw bug imsejjaħ Heartbleed li ġie skopert fil-librerija tal-kriptografija OpenSSL xi xhur qabel il-hack.

Heartbleed huwa eżempju ta' klassi ta' vettori ta' attakk li jippermettu lill-attakkanti jaċċessaw mira billi jibagħtu talbiet malformati validi biżżejjed biex jgħaddu minn kontrolli preliminari. Filwaqt li l-professjonisti li jaħdmu fuq partijiet differenti ta 'app jagħmlu l-almu tagħhom biex jiżguraw is-sigurtà tagħha, huwa impossibbli li wieħed jaħseb fil-każijiet kollha kantuniera li jistgħu jkissru app jew jagħmluha vulnerabbli waqt l-iżvilupp.

Dan huwa fejn jidħol 'fuzzing'.

X'inhu Fuzzing Attack?

Fuzzing, ittestjar fuzz, jew attakk fuzzing, huwa teknika awtomatizzata ta 'ttestjar ta' softwer użata biex tgħaddi dejta każwali, mhux mistennija jew invalida (imsejħa fuzz) fi programm. Il-programm huwa mmonitorjat għal imġieba mhux tas-soltu jew mhux mistennija bħal buffer overflows, ħabtiet, tnixxijiet tal-memorja, thread hangs, u ksur tal-aċċess għall-qari/kitba. L-għodda tal-fuzzing jew il-fuzzer imbagħad tintuża biex tikxef il-kawża tal-imġieba mhux tas-soltu.

Il-fuzzing huwa bbażat fuq is-suppożizzjoni li s-sistemi kollha fihom bugs li qed jistennew li jiġu skoperti, u jistgħu jingħataw biżżejjed ħin u riżorsi biex jagħmlu dan. Ħafna sistemi għandhom parsers tajbin ħafna jew li jipprevjenu l-validazzjoni tal-input cybercriminals milli jisfrutta kwalunkwe bug ipotetiku fi programm. Madankollu, kif semmejna hawn fuq, li tkopri l-każijiet kollha kantuniera matul l-iżvilupp huwa diffiċli.

Il-fuzzers jintużaw fuq programmi li jieħdu input strutturat jew li għandhom xi tip ta 'konfini ta' fiduċja. Pereżempju, programm li jaċċetta fajls PDF ikollu xi validazzjoni biex jiżgura li l-fajl ikollu estensjoni .pdf u parser biex jipproċessa l-fajl PDF.

Fuzzer effettiv jista 'jiġġenera inputs validi biżżejjed biex jgħaddi dawn il-konfini iżda invalidu biżżejjed biex jikkawża mġieba mhux mistennija aktar 'l isfel fil-programm. Dan huwa importanti għaliex sempliċement li tkun kapaċi tgħaddi mill-validazzjonijiet ma jfissirx ħafna jekk ma ssirx aktar ħsara.

Il-fuzzers jiskopru vettori ta 'attakk simili ħafna għal u inklużi bħal injezzjoni SQL, cross-site scripting, buffer overflow, u attakki ta' denial-of-service. Dawn l-attakki kollha huma riżultat tat-tmigħ ta' dejta mhux mistennija, invalida jew każwali f'sistema. 

 

Tipi ta' Fuzzers

Il-fuzzers jistgħu jiġu kklassifikati abbażi ta' xi karatteristiċi:

  1. Attakk miri
  2. Metodu ta 'ħolqien ta' fuzz
  3. Għarfien tal-istruttura tal-input
  4. Għarfien tal-istruttura tal-programm

1. Miri ta 'attakk

Din il-klassifikazzjoni hija bbażata fuq it-tip ta 'pjattaforma li l-fuzzer qed jintuża biex jittestja. Fuzzers huma komunement użati ma 'protokolli tan-netwerk u applikazzjonijiet tas-softwer. Kull pjattaforma għandha tip partikolari ta 'input li tirċievi, u għalhekk teħtieġ tipi differenti ta' fuzzers.

Pereżempju, meta jittrattaw applikazzjonijiet, it-tentattivi kollha ta 'fuzzing iseħħu fil-kanali ta' input varji tal-applikazzjoni, bħall-interface tal-utent, terminali tal-linja tal-kmand, formoli/inputs tat-test, u uploads tal-fajls. Allura l-inputs kollha ġġenerati mill-fuzzer għandhom jaqblu ma 'dawn il-kanali.

Fuzzers li jittrattaw protokolli ta 'komunikazzjoni għandhom jittrattaw pakketti. Fuzzers li jimmiraw għal din il-pjattaforma jistgħu jiġġeneraw pakketti falsifikati, jew saħansitra jaġixxu bħala prokuri biex jimmodifikaw pakketti interċettati u jerġgħu jtellgħuhom.

2. Metodu ta 'Ħolqien Fuzz

Il-fuzzers jistgħu wkoll jiġu kklassifikati abbażi ta' kif joħolqu dejta biex fuzz magħhom. Storikament, fuzzers ħolqu fuzz billi jiġġeneraw data każwali mill-bidu. Hekk għamel fil-bidu l-Professur Barton Miller, l-inizjatur ta’ din it-teknika. Dan it-tip ta 'fuzzer jissejjaħ a fuzzer ibbażat fuq il-ġenerazzjoni.

Madankollu, filwaqt li wieħed jista' teoretikament jiġġenera data li tevita limitu ta' fiduċja, ikun hemm bżonn ta' żmien u riżorsi konsiderevoli biex tagħmel dan. Għalhekk dan il-metodu huwa normalment użat għal sistemi bi strutturi ta 'input sempliċi.

Soluzzjoni għal din il-problema hija li ssir mutazzjoni ta' data magħrufa li hija valida biex tiġġenera data valida biżżejjed biex tgħaddi limitu ta' fiduċja, iżda invalida biżżejjed biex tikkawża problemi. Eżempju tajjeb ta’ dan huwa a DNS fuzzer li jieħu isem ta 'dominju u mbagħad jiġġenera lista kbira ta' ismijiet ta 'dominju biex jiskopri oqsma potenzjalment malizzjużi li jimmiraw lejn is-sid tad-dominju speċifikat.

Dan l-approċċ huwa aktar intelliġenti minn dak preċedenti u jnaqqas b'mod sinifikanti l-permutazzjonijiet possibbli. Fuzzers li jużaw dan il-metodu jissejħu fuzzers ibbażati fuq il-mutazzjoni

Hemm it-tielet metodu aktar reċenti li jagħmel użu minn algoritmi ġenetiċi biex jikkonverġu fuq l-aħjar data fuzz meħtieġa biex telimina l-vulnerabbiltajiet. Jaħdem billi jirfina kontinwament id-dejta tal-fuzz tiegħu, filwaqt li jqis il-prestazzjoni ta 'kull dejta tat-test meta ddaħħal fi programm. 

Is-settijiet ta' dejta bl-agħar prestazzjoni jitneħħew mill-ġabra tad-dejta, filwaqt li l-aħjar jiġu mutati u/jew magħquda. Il-ġenerazzjoni l-ġdida tad-dejta mbagħad tintuża biex terġa’ tiġi ttestjata l-fuzz. Dawn il-fuzzers jissejħu fuzzers evoluzzjonarji bbażati fuq il-mutazzjoni.

3. Għarfien tal-Istruttura tal-Input

Din il-klassifikazzjoni hija bbażata fuq jekk fuzzer huwiex konxju ta' u jużax b'mod attiv l-istruttura ta' input ta' programm fil-ġenerazzjoni ta' data fuzz. A fuzzer mutu (fuzzer li ma jkunx konxju ta 'struttura ta' input ta 'programm) jiġġenera fuzz b'mod l-aktar każwali. Dan jista' jinkludi kemm fuzzers ibbażati fuq il-ġenerazzjoni kif ukoll fuq il-mutazzjoni. 


Jekk fuzzer jiġi pprovdut mal-mudell ta' input ta' programm, il-fuzzer jista' mbagħad jipprova jiġġenera jew jimmodifika d-dejta b'tali mod li taqbel mal-mudell ta' input ipprovdut. Dan l-approċċ ikompli jnaqqas l-ammont ta’ riżorsi minfuqa biex jiġġeneraw data invalida. Tali fuzzer jissejjaħ a fuzzer intelliġenti.

4. Għarfien tal-Istruttura tal-Programm

Il-fuzzers jistgħu wkoll jiġu kklassifikati abbażi ta' jekk humiex konxji tal-ħidma interna tal-programm li qed jiffuzz, u jużaw dik l-għarfien biex jgħinu fil-ġenerazzjoni tad-data fuzz. Meta l-fuzzers jintużaw biex jittestjaw programm mingħajr ma jifhmu l-istruttura interna tiegħu, dan jissejjaħ ittestjar tal-kaxxa sewda. 

Id-dejta tal-fuzz ġġenerata waqt l-ittestjar tal-kaxxa s-sewda hija ġeneralment każwali sakemm il-fuzzer ma jkunx fuzzer evoluzzjonarju bbażat fuq mutazzjoni, fejn "jitgħallem" billi jimmonitorja l-effett tal-fuzzing tiegħu u juża dak. informazzjoni biex tirfina s-sett tad-data fuzz tagħha.

L-ittestjar tal-kaxxa l-bajda min-naħa l-oħra juża mudell tal-istruttura interna tal-programm biex jiġġenera data fuzz. Dan l-approċċ iħalli fuzzer jasal f'postijiet kritiċi fi programm u jittestjah. 

Għodda tal-Fuzzing Popolari

Hemm ħafna fuzzing għodod hemmhekk użati minn testers tal-pinna. Uħud mill-aktar popolari huma:

Limitazzjonijiet Ta' Fuzzing

Filwaqt li l-Fuzzing hija teknika ta 'ttestjar tal-pinna tassew utli, mhix mingħajr difetti tagħha. Xi wħud minn dawn huma:

  • Huwa jieħu żmien pjuttost twil biex jiddekorri.
  • Il-ħabtiet u mgieba oħra mhux mistennija li jinstabu waqt l-ittestjar tal-kaxxa s-sewda ta' programm jistgħu jkunu diffiċli, jekk mhux impossibbli biex jiġu analizzati jew debug.
  • Il-ħolqien ta' mudelli ta' mutazzjoni għal fuzzers intelliġenti bbażati fuq il-mutazzjoni jista' jieħu ħafna ħin. Xi drabi, jista' lanqas ikun possibbli minħabba li l-mudell tal-input huwa proprjetarju jew mhux magħruf.

 

Madankollu, hija għodda pjuttost utli u meħtieġa għal kull min irid jiskopri bugs qabel il-ħżiena.

konklużjoni

Il-fuzzing hija teknika qawwija ta' ttestjar tal-pinna li tista' tintuża biex tikxef vulnerabbiltajiet fis-softwer. Hemm ħafna tipi differenti ta 'fuzzers, u fuzzers ġodda qed jiġu żviluppati l-ħin kollu. Filwaqt li l-fuzzing huwa għodda oerhört utli, għandu l-limitazzjonijiet tiegħu. Pereżempju, il-fuzzers jistgħu jsibu biss daqstant vulnerabbiltajiet u jistgħu jkunu pjuttost intensivi fir-riżorsi. Madankollu, jekk trid tipprova din it-teknika aqwa għalik innifsek, għandna a DNS Fuzzer API b'xejn li tista' tuża fuq il-pjattaforma tagħna. 

Allura x'qed tistenna? 

Ibda fuzzing illum!

Google u The Incognito Myth

Google u The Incognito Myth

Google u l-Leġġenda Incognito Fl-1 ta' April 2024, Google qablet li ssolvi kawża billi teqred biljuni ta' rekords tad-dejta miġbura mill-modalità Incognito.

Aqra Aktar »