Menu

Phase 1 work

I've settled on more details for phase one of the project (where you input a grammar and get back fuzz sessions). The first program / phase in this project will (hopefully) read an RFC and find the extended BNF syntax for the protocol, then output a perl script that looks similar to pfuzz1.pl, which consists of subroutines corresponding to nonterminal productions in the original grammar. The subroutines output a random production within the grammar, subject to two possible mutilations:
1. a chance for "production" mangling
2. a chance for string mangling.

"Production mangling" currently consists of a random choice between:
a. skip the current production
b. repeat (double) the current production

A third, inactive, option is to branch to a different, random,
production.

String mangling consists of a random choice between four options:
1. switch the case of a random character
2. insert some number of characters
3. delete some number of characters
4. repeat a random character

Posted by Jeff Schaller 2001-08-23

Log in to post a comment.