DistFuzz

From ICO wiki
Revision as of 11:56, 27 November 2013 by Jkaap (talk | contribs)
Jump to navigationJump to search

Kirjeldus

Programmi näol on tegemist distributed fuzzeriga, ehk siis programmiga, mis on võimeline tegema valmistarkvara sisendite (antud juhul ainult failide) "rumalat" fuzzimist korraga mitme masina peal, olles samal ajal juhitav kesksest kohast. Programm koosneb kahest osast. Üheks on kliendi rakendused, mis töötavad mitmete masinate pealt ja saavad käsklusi kesksest kohast. Teiseks on serveri rakendus, mis juhib kliendi rakenduste tööd.

Eesmärk

Kuna fuzzimise abil turvavigade leidmisel on väga oluliseks testitavate sisendite hulk, siis on mõistlik teostada fuzzimist võimalikult paljude masinate peal üheaegselt. See muudab aga fuzzimise juhtimise, kontrollimise ja monitoorimise väga ebamugavaks. Antud programm peaks seda tegevust oluliselt lihtsustama, andes võimaluse fuzzimist juhtida ning tulemusi näha kesksest kohast. Programm peab võimaldama serveri kaudu testimise mahte automaatselt laiali jaotada ning leitud tulemid kokku korjata. Samuti peab programm võimaldama seadistada testimise parameetreid, korduste hulki ja muid omadusi.


Funktsionaalsus mis peab olema

Kliendi osa

Kliendi rakendus peab olema võimeline jooksutama suvalisi rakendusi ning detekteerima nende crashe

Kliendi rakendus peab olema võimeline säilitama rakenduse crashi loonud olukorra ning selle taasloomiseks vajaliku info

Kliendi rakendus peab olema võimeline saama kõik enda tööks vajaliku info ja andmed serverist

Kliendi rakendus peab olema võimeline saatma testimise tulemid serverisse

Serveri osa

Server peab võimaldama kliendi rakenduste jälgimist

Server peab võimaldama kliendi rakendustele testimiseks vajaliku info edastamise

Server peab võimaldama kliendi rakenduste testide tulemuste säilitamist


Funktsionaalsus mis võiks olla

Kliendi osa

Erinevad crashide detekteerimise võimalused

Erinevad andmete fuzzimise meetodid

Serveri osa

Kliendite eraldi ja koos seadistamised

Klientide jaotamine ja grupeerimine

Testiplaani etteandmine failina


Võimalikud probleemid

Kõige suuremaid probleeme võib tekitada kliendi ja serveri vaheline suhtlus, mis peab edasi andma väga erinevat infot, alates suurtest failides ja lõpetades seadistus konfiguratsiooni ning monitooringuks vajaliku infoga.