-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix some typos in first two sections #25
base: master
Are you sure you want to change the base?
Conversation
|
||
This document will introduce some features or design of customizing fuzzer. Firstly, most of fuzzer implemented its own Genetic Algorithm( GA). Some features can be classified to one of GA component. For example, the optimizing of generate, mutate and crossover. Other features, such as special feedback or satifying deep nested condition, is strongly depend on what project you fuzz, although these problem is very common in real-world project. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remain the format of "( ***)".
In most fuzzers, GA is the engine of evolving testcase. For different purposes, the design of GA's components can be quite different. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please keep two empty line before title and one empty line after.
3. Manually write manner: hard-code some special inputs or enum inputs.( Syzkaller) | ||
4. Extract input from real-world program( Moonshine). | ||
In evolutionary programming, if mutation and generating only base on random inputs, that fuzzer will perform badly. Useful information help to reduce the search space of evolving the testcase you want. Generally, these following information can benefit mutating or generating: | ||
1. symbolic execution: static analysis target, deriver which inputs are useful. (KLEE) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
static analyse( should be a vt.) targeted project, right?
3. Manually write manner: hard-code some special inputs or enum inputs.( Syzkaller) | ||
4. Extract input from real-world program( Moonshine). | ||
In evolutionary programming, if mutation and generating only base on random inputs, that fuzzer will perform badly. Useful information help to reduce the search space of evolving the testcase you want. Generally, these following information can benefit mutating or generating: | ||
1. symbolic execution: static analysis target, deriver which inputs are useful. (KLEE) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Keep all list like:
- symbolic execution: static analysis target, deriver which inputs are useful.( KLEE)
"deriver" should be "derive"
#### state | ||
|
||
1. Symbolic execution: static analyse call-stack input, weight them base on its CFG | ||
1. Symbolic execution: static analysis call-stack input, weight them base on its CFG |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
static analyse( should be vt.) call-stack inputs, right?
|
||
This document will introduce some features or design of customizing fuzzer. Firstly, most of fuzzer implemented its own Genetic Algorithm( GA). Some features can be classified to one of GA component. For example, the optimizing of generate, mutate and crossover. Other features, such as special feedback or satifying deep nested condition, is strongly depend on what project you fuzz, although these problem is very common in real-world project. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be "these problems are very common in real-world projects.", right?
Hi, @shiheyuan , could you modify it and send again? Thank you! |
No description provided.