From 552d3394e119ca4ced8115f9fd2d7e26760e40b1 Mon Sep 17 00:00:00 2001 From: farnaboldi Date: Mon, 9 Apr 2018 15:52:43 -0400 Subject: [PATCH] +minor bugfixes in the documentation --- README.md | 1 + docs/1.-Install.md | 2 +- docs/2.-The-input.md | 2 +- docs/3.-The-software.md | 10 +++------- docs/4.-The-fuzzer.md | 3 ++- docs/Changelog.md | 2 +- xdiff_run.py | 2 +- 7 files changed, 10 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index e588f8b..46d17e3 100755 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ * Different versions * Different implementations * Different operating systems' implementations + The fuzzer uses Python and runs on multiple OSs (Linux, Windows, OS X, and Freebsd). Its main goal is to detect issues based on diffential fuzzing aided with the extended capabilities to increase coverage. Still, it will found diff --git a/docs/1.-Install.md b/docs/1.-Install.md index d4c06ce..7ca86dd 100755 --- a/docs/1.-Install.md +++ b/docs/1.-Install.md @@ -124,4 +124,4 @@ echo @echo off > C:\Windows\System32\canaryfile.bat & echo.echo canarytokencomma --- # What's next? -You want to define [the input](https://github.com/IOActive/XDiFF/wiki/The-input) \ No newline at end of file +You want to define [the input](https://github.com/IOActive/XDiFF/wiki/2.-The-input) diff --git a/docs/2.-The-input.md b/docs/2.-The-input.md index a569b4d..16a716d 100755 --- a/docs/2.-The-input.md +++ b/docs/2.-The-input.md @@ -80,4 +80,4 @@ Moreover, if the software may open network connections, you also want to define # What's next? -You want to define [the software](https://github.com/IOActive/XDiFF/wiki/The-software) +You want to define [the software](https://github.com/IOActive/XDiFF/wiki/3.-The-software) diff --git a/docs/3.-The-software.md b/docs/3.-The-software.md index 40f401c..a1e9742 100755 --- a/docs/3.-The-software.md +++ b/docs/3.-The-software.md @@ -15,18 +15,14 @@ This defines pieces of data in three columns:
     Type = ["File"]
     OS = ["darwin", "linux2", "freebsd11"]
-    Suffix = [".sh"]
-    
- + Suffix = [".sh"] 2.4. **Filename**: if the software to be fuzzed reads information from a certain static filename, you can define it in here. Don't forget to run the fuzzer with only 1 thread when using this. 3. The third column defines the pieces of software to be fuzzed. If you want to fuzz mp3 files using mpg321 and mpg123, you can do it like this:
         Bash = ["bash", "-c", "-fuzzdata=echo $(([[test]]))"]
-        Ksh = ["ksh",  "-c", "-fuzzdata=echo $(([[test]]))"]
-    
- + Ksh = ["ksh", "-c", "-fuzzdata=echo $(([[test]]))"] First we set the name of the software to be fuzzed (***bash***, ***dash***, or ***ksh***). Then, we defined in an array the command and options to be executed. There is a special option named *-fuzzdata=* that indicates the fuzzer that the next piece of information is where we will be placed our fuzzed test case. The *[[test]]* will be replaced by a temporary file name containing a weird mp3 to fuzz the software on this example. ### Putting all the pieces together @@ -41,4 +37,4 @@ This is how you could define the software category ***shells*** to be fuzzed usi --- # What's next? -You want to [run the fuzzer](https://github.com/IOActive/XDiFF/wiki/Run-the-fuzzer) +You want to [run the fuzzer](https://github.com/IOActive/XDiFF/wiki/4.-The-fuzzer) diff --git a/docs/4.-The-fuzzer.md b/docs/4.-The-fuzzer.md index ac87ca2..f52218b 100755 --- a/docs/4.-The-fuzzer.md +++ b/docs/4.-The-fuzzer.md @@ -21,6 +21,7 @@ Now the output should indicate now and then when new inputs are being generated There are three additional important optional settings to be mentioned: +- [*-D*]: Print debugging information - [*-t 100*]: The amount of threads to be executed in parallel. - [*-T 10*]: The timeout per thread - [*-v*]: Use valgrind to execute the software to be fuzzed. @@ -30,4 +31,4 @@ The combination of threads and the timeout is something to be defined per catego --- # What's next? -You want to analyze [the output](https://github.com/IOActive/XDiFF/wiki/The-output) +You want to analyze [the output](https://github.com/IOActive/XDiFF/wiki/5.-The-output) diff --git a/docs/Changelog.md b/docs/Changelog.md index ec27758..53f8034 100755 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -1,7 +1,7 @@ # Changelog Changes are listed in time order: newer changes are at the top, older changes are at the bottom. -## Version: [1.2](https://github.com/IOActive/XDiFF/releases/tag/1.2) +## Version: [1.2.0](https://github.com/IOActive/XDiFF/releases/tag/1.2) - Changed main function names in the root directory - Improved code, documentation, and (most of) the code is now tested. Tons of bugfixes. - Added new analysis for error disclosure (analyze_error_disclosure) and path disclosure (analyze_path_disclosure_stderr) diff --git a/xdiff_run.py b/xdiff_run.py index e0f563b..00206e9 100755 --- a/xdiff_run.py +++ b/xdiff_run.py @@ -83,7 +83,7 @@ def help(err=""): print("XDiFF Syntax: ") print(os.path.basename(__file__) + " -d db.sqlite Choose the database") print("\t -c Python Software category to be fuzzed") - print("\t [-D] Debug information") + print("\t [-D] Print debugging information") print("\t [-r 0] Random inputs: radamsa & zzuf without newlines (faster)") print("\t [-r 1] Random inputs: radamsa & zzuf with newlines (slower)") print("\t [-r 2] Random inputs: radamsa without newlines (faster)")