Google lanĉis la ClusterFuzzLite fuzz-testsistemon

Google enkondukis la projekton ClusterFuzzLite, kiu ebligas organizi fuz-testadon de kodo por frua detekto de eblaj vundeblecoj dum funkciado de kontinuaj integrigaj sistemoj. Nuntempe, ClusterFuzz povas esti uzata por aŭtomatigi fuztestadon de tiraj petoj en GitHub Actions, Google Cloud Build kaj Prow, sed subteno por aliaj CI-sistemoj estas atendata estonte. La projekto estas bazita sur la ClusterFuzz-platformo, kreita por kunordigi la laboron de fuzzing-testaretoj, kaj estas distribuita sub la licenco Apache 2.0.

Oni rimarkas, ke post kiam Google enkondukis la servon OSS-Fuzz en 2016, pli ol 500 gravaj malfermfontaj projektoj estis akceptitaj en la kontinuan fuzzing-testprogramon. Surbaze de la testoj faritaj, pli ol 6500 21 konfirmitaj vundeblecoj estis forigitaj kaj pli ol XNUMX mil eraroj estis korektitaj. ClusterFuzzLite daŭre disvolvas fuzajn testajn mekanismojn kun la kapablo identigi problemojn pli frue en la reviziostadio de proponitaj ŝanĝoj. ClusterFuzzLite jam estis efektivigita en la ŝanĝreviziaj procezoj en la systemd kaj buklaj projektoj, kaj ebligis identigi erarojn maltrafitaj de senmovaj analiziloj kaj linters uzataj en la komenca etapo de kontrolado de nova kodo.

ClusterFuzzLite subtenas revizion de projekto en C, C++, Java (kaj aliaj JVM-bazitaj lingvoj), Go, Python, Rust kaj Swift. Fuzzing-testado estas farita uzante la LibFuzzer-motoron. La iloj AddressSanitizer, MemorySanitizer kaj UBSan (UndefinedBehaviorSanitizer) ankaŭ povas esti vokitaj por identigi memorerarojn kaj anomaliojn.

Ĉefaj trajtoj de ClusterFuzzLite: rapida kontrolo de proponitaj ŝanĝoj por trovi erarojn antaŭ kodo akcepto; elŝuti raportojn pri kraŝkondiĉoj; la kapablo pluiri al pli progresinta fuzzing-testado por identigi pli profundajn erarojn kiuj ne ekaperis post kontrolado de la kodŝanĝoj; generacio de priraportado-raportoj por taksi kodan kovradon dum testado; modula arkitekturo kiu ebligas al vi elekti la bezonatan funkciecon.

Ni rememoru, ke fuziga testado implikas generi fluon de ĉiaj hazardaj kombinaĵoj de eniga datumoj kiuj estas proksimaj al realaj datumoj (ekzemple, html-paĝoj kun hazardaj etikedaj parametroj, arkivoj aŭ bildoj kun nenormalaj titoloj, ktp.), kaj ebla registrado. misfunkciadoj en la procezo ilia prilaborado. Se sekvenco kraŝas aŭ ne kongruas kun la atendata respondo, tiam ĉi tiu konduto tre verŝajne indikas cimon aŭ vundeblecon.

fonto: opennet.ru

Aldoni komenton