ronin-fuzzer 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.document +0 -1
- data/.github/workflows/ruby.yml +2 -1
- data/.gitignore +1 -0
- data/.ruby-version +1 -1
- data/ChangeLog.md +8 -1
- data/Gemfile +4 -2
- data/README.md +17 -4
- data/Rakefile +9 -0
- data/data/completions/ronin-fuzzer +55 -0
- data/gemspec.yml +3 -1
- data/lib/ronin/fuzzer/cli/command.rb +1 -1
- data/lib/ronin/fuzzer/cli/commands/completion.rb +64 -0
- data/lib/ronin/fuzzer/cli/commands/fuzz.rb +1 -1
- data/lib/ronin/fuzzer/cli.rb +8 -1
- data/lib/ronin/fuzzer/root.rb +1 -1
- data/lib/ronin/fuzzer/version.rb +2 -2
- data/lib/ronin/fuzzing/core_ext/string.rb +7 -6
- data/lib/ronin/fuzzing/core_ext.rb +1 -1
- data/lib/ronin/fuzzing/fuzzer.rb +1 -1
- data/lib/ronin/fuzzing/mutator.rb +1 -1
- data/lib/ronin/fuzzing/repeater.rb +1 -1
- data/lib/ronin/fuzzing/template.rb +1 -1
- data/lib/ronin/fuzzing.rb +1 -1
- data/man/ronin-fuzzer-completion.1 +76 -0
- data/man/ronin-fuzzer-completion.1.md +78 -0
- data/man/ronin-fuzzer-fuzz.1 +39 -54
- data/man/ronin-fuzzer-fuzz.1.md +21 -17
- data/scripts/setup +58 -0
- metadata +10 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0a103561af484214e0b8ab02e4da324be41eda5ebdb2eeee4d6b262125b23d19
|
4
|
+
data.tar.gz: a6db4705f1dff34a3539615feee23e5924a32136c2d0fe1b0af26c5f8dc2732f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2da48ce9d52caa355992e4acaa196dbfe2b9d7f90dff7371939c154f884779f0fe612a4180faa92fcc6dc2d9a06f08093cd8efbf2ec81e53d6d37ef6a7e5f65a
|
7
|
+
data.tar.gz: b74295333b7749c2a7cfcde845ebcf3f19383e06a8aefe04337cd3a2761f2cf961120e980ad9b58ad26ab89716e03fd798fe658fb40d5052bffae1331e5e9d2f
|
data/.document
CHANGED
data/.github/workflows/ruby.yml
CHANGED
data/.gitignore
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ruby-3.
|
1
|
+
ruby-3.3
|
data/ChangeLog.md
CHANGED
@@ -1,4 +1,11 @@
|
|
1
|
-
### 0.
|
1
|
+
### 0.2.0 / 2024-07-22
|
2
|
+
|
3
|
+
#### CLI
|
4
|
+
|
5
|
+
* Added the `ronin-fuzzer completion` command to install shell completion files
|
6
|
+
for all `ronin-fuzzer` commands for Bash and Zsh shells.
|
7
|
+
|
8
|
+
### 0.1.0 / 2023-02-01
|
2
9
|
|
3
10
|
* Initial release:
|
4
11
|
* Require `ruby` >= 3.0.0.
|
data/Gemfile
CHANGED
@@ -16,7 +16,7 @@ end
|
|
16
16
|
# Ronin dependencies
|
17
17
|
# gem 'ronin-support', '~> 1.0', github: "ronin-rb/ronin-support",
|
18
18
|
# branch: 'main'
|
19
|
-
# gem 'ronin-core', '~> 0.
|
19
|
+
# gem 'ronin-core', '~> 0.2', github: "ronin-rb/ronin-core",
|
20
20
|
# branch: 'main'
|
21
21
|
|
22
22
|
group :development do
|
@@ -28,7 +28,7 @@ group :development do
|
|
28
28
|
|
29
29
|
gem 'kramdown', '~> 2.0'
|
30
30
|
gem 'redcarpet', platform: :mri
|
31
|
-
gem 'kramdown-man', '~> 0
|
31
|
+
gem 'kramdown-man', '~> 1.0'
|
32
32
|
|
33
33
|
gem 'yard', '~> 0.9'
|
34
34
|
gem 'yard-spellcheck', require: false
|
@@ -36,4 +36,6 @@ group :development do
|
|
36
36
|
gem 'dead_end', require: false
|
37
37
|
gem 'sord', require: false, platform: :mri
|
38
38
|
gem 'stackprof', require: false, platform: :mri
|
39
|
+
|
40
|
+
gem 'command_kit-completion', '~> 0.2', require: false
|
39
41
|
end
|
data/README.md
CHANGED
@@ -9,7 +9,6 @@
|
|
9
9
|
* [Issues](https://github.com/ronin-rb/ronin-fuzzer/issues)
|
10
10
|
* [Documentation](https://ronin-rb.dev/docs/ronin-fuzzer/frames)
|
11
11
|
* [Discord](https://discord.gg/6WAb3PsVX9) |
|
12
|
-
[Twitter](https://twitter.com/ronin_rb) |
|
13
12
|
[Mastodon](https://infosec.exchange/@ronin_rb)
|
14
13
|
|
15
14
|
## Description
|
@@ -33,12 +32,26 @@ Fuzzes an input file and generates output bad files for testing:
|
|
33
32
|
$ ronin-fuzzer fuzz -i http_request.txt -o bad.txt -r unix_path:bad_strings
|
34
33
|
```
|
35
34
|
|
35
|
+
## Examples
|
36
|
+
|
37
|
+
Replace every `e`, `i`, `o`, `u` with `(`, 100 `A`s and a `\0`:
|
38
|
+
|
39
|
+
```ruby
|
40
|
+
require 'ronin/fuzzing'
|
41
|
+
|
42
|
+
"the quick brown fox".fuzz(/[eiou]/ => ['(', ('A' * 100), "\0"]) do |str|
|
43
|
+
p str
|
44
|
+
end
|
45
|
+
```
|
46
|
+
|
47
|
+
For more examples, please see the [API documentation](https://ronin-rb.dev/docs/ronin-fuzzer/String.html).
|
48
|
+
|
36
49
|
## Requirements
|
37
50
|
|
38
51
|
* [Ruby] >= 3.0.0
|
39
52
|
* [combinatorics] ~> 0.4
|
40
53
|
* [ronin-support] ~> 1.0
|
41
|
-
* [ronin-core] ~> 0.
|
54
|
+
* [ronin-core] ~> 0.2
|
42
55
|
|
43
56
|
## Install
|
44
57
|
|
@@ -63,7 +76,7 @@ gem.add_dependency 'ronin-fuzzer', '~> 0.1'
|
|
63
76
|
1. [Fork It!](https://github.com/ronin-rb/ronin-fuzzer/fork)
|
64
77
|
2. Clone It!
|
65
78
|
3. `cd ronin-fuzzer/`
|
66
|
-
4. `
|
79
|
+
4. `./scripts/setup`
|
67
80
|
5. `git checkout -b my_feature`
|
68
81
|
6. Code It!
|
69
82
|
7. `bundle exec rake spec`
|
@@ -71,7 +84,7 @@ gem.add_dependency 'ronin-fuzzer', '~> 0.1'
|
|
71
84
|
|
72
85
|
## License
|
73
86
|
|
74
|
-
Copyright (c) 2006-
|
87
|
+
Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3@gmail.com)
|
75
88
|
|
76
89
|
This file is part of ronin-fuzzer.
|
77
90
|
|
data/Rakefile
CHANGED
@@ -32,3 +32,12 @@ task :docs => :yard
|
|
32
32
|
|
33
33
|
require 'kramdown/man/task'
|
34
34
|
Kramdown::Man::Task.new
|
35
|
+
|
36
|
+
require 'command_kit/completion/task'
|
37
|
+
CommandKit::Completion::Task.new(
|
38
|
+
class_file: 'ronin/fuzzer/cli',
|
39
|
+
class_name: 'Ronin::Fuzzer::CLI',
|
40
|
+
output_file: 'data/completions/ronin-fuzzer'
|
41
|
+
)
|
42
|
+
|
43
|
+
task :setup => %w[man command_kit:completion]
|
@@ -0,0 +1,55 @@
|
|
1
|
+
# ronin-fuzzer completion -*- shell-script -*-
|
2
|
+
|
3
|
+
# This bash completions script was generated by
|
4
|
+
# completely (https://github.com/dannyben/completely)
|
5
|
+
# Modifying it manually is not recommended
|
6
|
+
|
7
|
+
_ronin-fuzzer_completions_filter() {
|
8
|
+
local words="$1"
|
9
|
+
local cur=${COMP_WORDS[COMP_CWORD]}
|
10
|
+
local result=()
|
11
|
+
|
12
|
+
if [[ "${cur:0:1}" == "-" ]]; then
|
13
|
+
echo "$words"
|
14
|
+
|
15
|
+
else
|
16
|
+
for word in $words; do
|
17
|
+
[[ "${word:0:1}" != "-" ]] && result+=("$word")
|
18
|
+
done
|
19
|
+
|
20
|
+
echo "${result[*]}"
|
21
|
+
|
22
|
+
fi
|
23
|
+
}
|
24
|
+
|
25
|
+
_ronin-fuzzer_completions() {
|
26
|
+
local cur=${COMP_WORDS[COMP_CWORD]}
|
27
|
+
local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")
|
28
|
+
local compline="${compwords[*]}"
|
29
|
+
|
30
|
+
case "$compline" in
|
31
|
+
'fuzz'*'--input')
|
32
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
|
33
|
+
;;
|
34
|
+
|
35
|
+
'completion'*)
|
36
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-fuzzer_completions_filter "--print --install --uninstall")" -- "$cur")
|
37
|
+
;;
|
38
|
+
|
39
|
+
'fuzz'*'-i')
|
40
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
|
41
|
+
;;
|
42
|
+
|
43
|
+
'fuzz'*)
|
44
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-fuzzer_completions_filter "--input -i --rules -r --output -o --command -c --tcp -t --udp -u --pause -p")" -- "$cur")
|
45
|
+
;;
|
46
|
+
|
47
|
+
*)
|
48
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-fuzzer_completions_filter "--version -V help completion fuzz")" -- "$cur")
|
49
|
+
;;
|
50
|
+
|
51
|
+
esac
|
52
|
+
} &&
|
53
|
+
complete -F _ronin-fuzzer_completions ronin-fuzzer
|
54
|
+
|
55
|
+
# ex: filetype=sh
|
data/gemspec.yml
CHANGED
@@ -18,6 +18,8 @@ metadata:
|
|
18
18
|
rubygems_mfa_required: 'true'
|
19
19
|
|
20
20
|
generated_files:
|
21
|
+
- data/completions/ronin-fuzzer
|
22
|
+
- man/ronin-fuzzer-completion.1
|
21
23
|
- man/ronin-fuzzer-fuzz.1
|
22
24
|
|
23
25
|
required_ruby_version: ">= 3.0.0"
|
@@ -26,7 +28,7 @@ dependencies:
|
|
26
28
|
combinatorics: ~> 0.4
|
27
29
|
# Ronin dependencies:
|
28
30
|
ronin-support: ~> 1.0
|
29
|
-
ronin-core: ~> 0.
|
31
|
+
ronin-core: ~> 0.2
|
30
32
|
|
31
33
|
development_dependencies:
|
32
34
|
bundler: ~> 2.0
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
@@ -0,0 +1,64 @@
|
|
1
|
+
#
|
2
|
+
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
|
+
#
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
|
+
#
|
6
|
+
# This file is part of ronin-fuzzer.
|
7
|
+
#
|
8
|
+
# ronin-fuzzer is free software: you can redistribute it and/or modify
|
9
|
+
# it under the terms of the GNU Lesser General Public License as published
|
10
|
+
# by the Free Software Foundation, either version 3 of the License, or
|
11
|
+
# (at your option) any later version.
|
12
|
+
#
|
13
|
+
# ronin-fuzzer is distributed in the hope that it will be useful,
|
14
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
15
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
16
|
+
# GNU Lesser General Public License for more details.
|
17
|
+
#
|
18
|
+
# You should have received a copy of the GNU Lesser General Public License
|
19
|
+
# along with ronin-fuzzer. If not, see <https://www.gnu.org/licenses/>.
|
20
|
+
#
|
21
|
+
|
22
|
+
require 'ronin/fuzzer/root'
|
23
|
+
require 'ronin/core/cli/completion_command'
|
24
|
+
|
25
|
+
module Ronin
|
26
|
+
module Fuzzer
|
27
|
+
class CLI
|
28
|
+
module Commands
|
29
|
+
#
|
30
|
+
# Manages the shell completion rules for `ronin-fuzzer`.
|
31
|
+
#
|
32
|
+
# ## Usage
|
33
|
+
#
|
34
|
+
# ronin-fuzzer completion [options]
|
35
|
+
#
|
36
|
+
# ## Options
|
37
|
+
#
|
38
|
+
# --print Prints the shell completion file
|
39
|
+
# --install Installs the shell completion file
|
40
|
+
# --uninstall Uninstalls the shell completion file
|
41
|
+
# -h, --help Print help information
|
42
|
+
#
|
43
|
+
# ## Examples
|
44
|
+
#
|
45
|
+
# ronin-fuzzer completion --print
|
46
|
+
# ronin-fuzzer completion --install
|
47
|
+
# ronin-fuzzer completion --uninstall
|
48
|
+
#
|
49
|
+
# @since 0.2.0
|
50
|
+
#
|
51
|
+
class Completion < Core::CLI::CompletionCommand
|
52
|
+
|
53
|
+
completion_file File.join(ROOT,'data','completions','ronin-fuzzer')
|
54
|
+
|
55
|
+
man_dir File.join(ROOT,'man')
|
56
|
+
man_page 'ronin-fuzzer-completion.1'
|
57
|
+
|
58
|
+
description 'Manages the shell completion rules for ronin-fuzzer'
|
59
|
+
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
data/lib/ronin/fuzzer/cli.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
@@ -21,6 +21,10 @@
|
|
21
21
|
|
22
22
|
require 'command_kit/commands'
|
23
23
|
require 'command_kit/commands/auto_load'
|
24
|
+
require 'command_kit/options/version'
|
25
|
+
|
26
|
+
require 'ronin/core/cli/command'
|
27
|
+
require 'ronin/core/cli/help/banner'
|
24
28
|
|
25
29
|
module Ronin
|
26
30
|
module Fuzzer
|
@@ -31,8 +35,11 @@ module Ronin
|
|
31
35
|
dir: "#{__dir__}/cli/commands",
|
32
36
|
namespace: "#{self}::Commands"
|
33
37
|
)
|
38
|
+
include CommandKit::Options::Version
|
39
|
+
include Core::CLI::Help::Banner
|
34
40
|
|
35
41
|
command_name 'ronin-fuzzer'
|
42
|
+
version Ronin::Fuzzer::VERSION
|
36
43
|
|
37
44
|
end
|
38
45
|
end
|
data/lib/ronin/fuzzer/root.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
data/lib/ronin/fuzzer/version.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
@@ -22,6 +22,6 @@
|
|
22
22
|
module Ronin
|
23
23
|
module Fuzzer
|
24
24
|
# ronin-fuzzer version
|
25
|
-
VERSION = '0.
|
25
|
+
VERSION = '0.2.0'
|
26
26
|
end
|
27
27
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
@@ -33,7 +33,8 @@ class String
|
|
33
33
|
#
|
34
34
|
# @param [Array(<String,Symbol,Enumerable>, <Integer,Array,Range>)] fields
|
35
35
|
# The fields which defines the string or character sets which will
|
36
|
-
# make up parts of the String.
|
36
|
+
# make up parts of the String. Symbols corresponds to
|
37
|
+
# [Chars method names](https://rubydoc.info/gems/chars/Chars).
|
37
38
|
#
|
38
39
|
# @yield [string]
|
39
40
|
# The given block will be passed each unique String.
|
@@ -51,8 +52,6 @@ class String
|
|
51
52
|
# A given string set was not a String, Symbol or Enumerable.
|
52
53
|
# A given string set length was not an Integer or Enumerable.
|
53
54
|
#
|
54
|
-
# @example Generate Strings with ranges of repeating sub-strings:
|
55
|
-
#
|
56
55
|
# @example Generate Strings with three alpha chars and one numeric chars:
|
57
56
|
# String.generate([:alpha, 3], :numeric) do |password|
|
58
57
|
# puts password
|
@@ -140,7 +139,9 @@ class String
|
|
140
139
|
# Incrementally fuzzes the String.
|
141
140
|
#
|
142
141
|
# @param [Hash{Regexp,String,Symbol => Enumerable,Symbol}] substitutions
|
143
|
-
# Patterns and their substitutions.
|
142
|
+
# Patterns and their substitutions. Symbols are resolved to
|
143
|
+
# [Ronin::Support::Text::Patterns](https://ronin-rb.dev/docs/ronin-support/Ronin/Support/Text/Patterns.html)
|
144
|
+
# constants.
|
144
145
|
#
|
145
146
|
# @yield [fuzz]
|
146
147
|
# The given block will be passed every fuzzed String.
|
@@ -162,7 +163,7 @@ class String
|
|
162
163
|
# end
|
163
164
|
#
|
164
165
|
# @example Replace a `Regexp::UNIX_PATH` with {Ronin::Fuzzing#format_strings}:
|
165
|
-
# "GET /downloads/".fuzz(unix_path: :
|
166
|
+
# "GET /downloads/".fuzz(unix_path: :format_strings)
|
166
167
|
#
|
167
168
|
# @api public
|
168
169
|
#
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
data/lib/ronin/fuzzing/fuzzer.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
data/lib/ronin/fuzzing.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# ronin-fuzzer - A Ruby library for generating, mutating, and fuzzing data.
|
3
3
|
#
|
4
|
-
# Copyright (c) 2006-
|
4
|
+
# Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
|
5
5
|
#
|
6
6
|
# This file is part of ronin-fuzzer.
|
7
7
|
#
|
@@ -0,0 +1,76 @@
|
|
1
|
+
.\" Generated by kramdown-man 1.0.1
|
2
|
+
.\" https://github.com/postmodern/kramdown-man#readme
|
3
|
+
.TH ronin-fuzzer-completion 1 "2024-01-01" Ronin Fuzzer "User Manuals"
|
4
|
+
.SH NAME
|
5
|
+
.PP
|
6
|
+
ronin\-fuzzer\-completion \- Manages shell completion rules for \fBronin\-fuzzer\fR
|
7
|
+
.SH SYNOPSIS
|
8
|
+
.PP
|
9
|
+
\fBronin\-fuzzer completion\fR \[lB]\fIoptions\fP\[rB]
|
10
|
+
.SH DESCRIPTION
|
11
|
+
.PP
|
12
|
+
The \fBronin\-fuzzer completion\fR command can print, install, or uninstall shell
|
13
|
+
completion rules for the \fBronin\-fuzzer\fR command\.
|
14
|
+
.PP
|
15
|
+
Supports installing completion rules for Bash or Zsh shells\.
|
16
|
+
Completion rules for the Fish shell is currently not supported\.
|
17
|
+
.SS ZSH SUPPORT
|
18
|
+
.PP
|
19
|
+
Zsh users will have to add the following lines to their \fB\[ti]\[sl]\.zshrc\fR file in
|
20
|
+
order to enable Zsh\[cq]s Bash completion compatibility layer:
|
21
|
+
.PP
|
22
|
+
.RS 4
|
23
|
+
.EX
|
24
|
+
autoload \-Uz \[pl]X compinit && compinit
|
25
|
+
autoload \-Uz \[pl]X bashcompinit && bashcompinit
|
26
|
+
.EE
|
27
|
+
.RE
|
28
|
+
.SH OPTIONS
|
29
|
+
.TP
|
30
|
+
\fB\-\-print\fR
|
31
|
+
Prints the shell completion file\.
|
32
|
+
.TP
|
33
|
+
\fB\-\-install\fR
|
34
|
+
Installs the shell completion file\.
|
35
|
+
.TP
|
36
|
+
\fB\-\-uninstall\fR
|
37
|
+
Uninstalls the shell completion file\.
|
38
|
+
.TP
|
39
|
+
\fB\-h\fR, \fB\-\-help\fR
|
40
|
+
Prints help information\.
|
41
|
+
.SH ENVIRONMENT
|
42
|
+
.TP
|
43
|
+
\fIPREFIX\fP
|
44
|
+
Specifies the root prefix for the file system\.
|
45
|
+
.TP
|
46
|
+
\fIHOME\fP
|
47
|
+
Specifies the home directory of the user\. Ronin will search for the
|
48
|
+
\fB\[ti]\[sl]\.cache\[sl]ronin\-fuzzer\fR cache directory within the home directory\.
|
49
|
+
.TP
|
50
|
+
\fIXDG\[ru]DATA\[ru]HOME\fP
|
51
|
+
Specifies the data directory to use\. Defaults to \fB\[Do]HOME\[sl]\.local\[sl]share\fR\.
|
52
|
+
.SH FILES
|
53
|
+
.TP
|
54
|
+
\fB\[ti]\[sl]\.local\[sl]share\[sl]bash\-completion\[sl]completions\[sl]\fR
|
55
|
+
The user\-local installation directory for Bash completion files\.
|
56
|
+
.TP
|
57
|
+
\fB\[sl]usr\[sl]local\[sl]share\[sl]bash\-completion\[sl]completions\[sl]\fR
|
58
|
+
The system\-wide installation directory for Bash completions files\.
|
59
|
+
.TP
|
60
|
+
\fB\[sl]usr\[sl]local\[sl]share\[sl]zsh\[sl]site\-functions\[sl]\fR
|
61
|
+
The installation directory for Zsh completion files\.
|
62
|
+
.SH EXAMPLES
|
63
|
+
.TP
|
64
|
+
\fBronin\-fuzzer completion \-\-print\fR
|
65
|
+
Prints the shell completion rules instead of installing them\.
|
66
|
+
.TP
|
67
|
+
\fBronin\-fuzzer completion \-\-install\fR
|
68
|
+
Installs the shell completion rules for \fBronin\-fuzzer\fR\.
|
69
|
+
.TP
|
70
|
+
\fBronin\-fuzzer completion \-\-uninstall\fR
|
71
|
+
Uninstalls the shell completion rules for \fBronin\-fuzzer\fR\.
|
72
|
+
.SH AUTHOR
|
73
|
+
.PP
|
74
|
+
Postmodern
|
75
|
+
.MT postmodern\.mod3\[at]gmail\.com
|
76
|
+
.ME
|
@@ -0,0 +1,78 @@
|
|
1
|
+
# ronin-fuzzer-completion 1 "2024-01-01" Ronin Fuzzer "User Manuals"
|
2
|
+
|
3
|
+
## NAME
|
4
|
+
|
5
|
+
ronin-fuzzer-completion - Manages shell completion rules for `ronin-fuzzer`
|
6
|
+
|
7
|
+
## SYNOPSIS
|
8
|
+
|
9
|
+
`ronin-fuzzer completion` [*options*]
|
10
|
+
|
11
|
+
## DESCRIPTION
|
12
|
+
|
13
|
+
The `ronin-fuzzer completion` command can print, install, or uninstall shell
|
14
|
+
completion rules for the `ronin-fuzzer` command.
|
15
|
+
|
16
|
+
Supports installing completion rules for Bash or Zsh shells.
|
17
|
+
Completion rules for the Fish shell is currently not supported.
|
18
|
+
|
19
|
+
### ZSH SUPPORT
|
20
|
+
|
21
|
+
Zsh users will have to add the following lines to their `~/.zshrc` file in
|
22
|
+
order to enable Zsh's Bash completion compatibility layer:
|
23
|
+
|
24
|
+
autoload -Uz +X compinit && compinit
|
25
|
+
autoload -Uz +X bashcompinit && bashcompinit
|
26
|
+
|
27
|
+
## OPTIONS
|
28
|
+
|
29
|
+
`--print`
|
30
|
+
: Prints the shell completion file.
|
31
|
+
|
32
|
+
`--install`
|
33
|
+
: Installs the shell completion file.
|
34
|
+
|
35
|
+
`--uninstall`
|
36
|
+
: Uninstalls the shell completion file.
|
37
|
+
|
38
|
+
`-h`, `--help`
|
39
|
+
: Prints help information.
|
40
|
+
|
41
|
+
## ENVIRONMENT
|
42
|
+
|
43
|
+
*PREFIX*
|
44
|
+
: Specifies the root prefix for the file system.
|
45
|
+
|
46
|
+
*HOME*
|
47
|
+
: Specifies the home directory of the user. Ronin will search for the
|
48
|
+
`~/.cache/ronin-fuzzer` cache directory within the home directory.
|
49
|
+
|
50
|
+
*XDG_DATA_HOME*
|
51
|
+
: Specifies the data directory to use. Defaults to `$HOME/.local/share`.
|
52
|
+
|
53
|
+
## FILES
|
54
|
+
|
55
|
+
`~/.local/share/bash-completion/completions/`
|
56
|
+
: The user-local installation directory for Bash completion files.
|
57
|
+
|
58
|
+
`/usr/local/share/bash-completion/completions/`
|
59
|
+
: The system-wide installation directory for Bash completions files.
|
60
|
+
|
61
|
+
`/usr/local/share/zsh/site-functions/`
|
62
|
+
: The installation directory for Zsh completion files.
|
63
|
+
|
64
|
+
## EXAMPLES
|
65
|
+
|
66
|
+
`ronin-fuzzer completion --print`
|
67
|
+
: Prints the shell completion rules instead of installing them.
|
68
|
+
|
69
|
+
`ronin-fuzzer completion --install`
|
70
|
+
: Installs the shell completion rules for `ronin-fuzzer`.
|
71
|
+
|
72
|
+
`ronin-fuzzer completion --uninstall`
|
73
|
+
: Uninstalls the shell completion rules for `ronin-fuzzer`.
|
74
|
+
|
75
|
+
## AUTHOR
|
76
|
+
|
77
|
+
Postmodern <postmodern.mod3@gmail.com>
|
78
|
+
|
data/man/ronin-fuzzer-fuzz.1
CHANGED
@@ -1,95 +1,80 @@
|
|
1
|
-
.\" Generated by kramdown-man 0.1
|
1
|
+
.\" Generated by kramdown-man 1.0.1
|
2
2
|
.\" https://github.com/postmodern/kramdown-man#readme
|
3
3
|
.TH ronin-fuzzer-fuzz 1 "2022-01-01" Ronin Fuzzer "User Manuals"
|
4
|
-
.
|
4
|
+
.SH NAME
|
5
|
+
.PP
|
6
|
+
ronin\-fuzzer\-fuzz \- Performs basic fuzzing of files
|
5
7
|
.SH SYNOPSIS
|
6
|
-
.
|
7
|
-
|
8
|
-
\fBronin-fuzzer fuzz\fR \[lB]\fIoptions\fP\[rB] \[lB]\fITEMPLATE\fP\[rB]
|
9
|
-
.LP
|
8
|
+
.PP
|
9
|
+
\fBronin\-fuzzer fuzz\fR \[lB]\fIoptions\fP\[rB] \[lB]\fITEMPLATE\fP\[rB]
|
10
10
|
.SH DESCRIPTION
|
11
|
-
.LP
|
12
11
|
.PP
|
13
12
|
Fuzzes data read from a \fIFILE\fP or from \fBSTDIN\fR\. The fuzzed data can be written
|
14
13
|
to output files, run in commands or sent to TCP\[sl]UDP services\.
|
15
|
-
.LP
|
16
14
|
.SH OPTIONS
|
17
|
-
.LP
|
18
15
|
.TP
|
19
|
-
\fB
|
16
|
+
\fB\-v\fR, \fB\-\-\[lB]no\-\[rB]verbose\fR
|
20
17
|
Enable verbose output\.
|
21
|
-
.LP
|
22
18
|
.TP
|
23
|
-
\fB
|
19
|
+
\fB\-q\fR, \fB\-\-\[lB]no\-\[rB]quiet\fR
|
24
20
|
Disable verbose output\.
|
25
|
-
.LP
|
26
21
|
.TP
|
27
|
-
\fB
|
22
|
+
\fB\-\-\[lB]no\-\[rB]silent\fR
|
28
23
|
Silence all output\.
|
29
|
-
.LP
|
30
24
|
.TP
|
31
|
-
\fB
|
25
|
+
\fB\-i\fR, \fB\-\-input\fR \fIFILE\fP
|
32
26
|
The input text FILE to parse\. Data will be read from \fBSTDIN\fR by default\.
|
33
|
-
.
|
34
|
-
|
35
|
-
|
36
|
-
The rule to apply to the \fIINPUT\fP\. Fuzzer rules consist of a pattern and
|
27
|
+
.TP
|
28
|
+
\fB\-r\fR, \fB\-\-rule\fR \[lB]\fIPATTERN\fP\[or]\fI\[sl]REGEXP\[sl]\fP\[or]STRING\[rB]:\[lB]\fIMETHOD\fP\[or]\fISTRING\fP\fI*N\fP\[lB]\-\fIM\fP\[rB]\[rB]
|
29
|
+
The rule to apply to the \fIINPUT\fP\. Fuzzer rules consist of a pattern and
|
37
30
|
substitution\. Patterns may be one of the following:
|
38
|
-
.
|
39
|
-
.
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
.
|
49
|
-
|
31
|
+
.RS
|
32
|
+
.RS
|
33
|
+
.IP \(bu 2
|
34
|
+
A name of a Ronin Regular Expression (ex: \fBunix\[ru]path\fR)
|
35
|
+
.IP \(bu 2
|
36
|
+
A custom Regular Expression (ex: \fB\[sl]\ed\[pl]\[sl]\fR)
|
37
|
+
.IP \(bu 2
|
38
|
+
A plain String (ex: \fBexample\.com\fR)\.
|
39
|
+
.IP \( 2
|
40
|
+
Substitutions may be one of the following:
|
41
|
+
.IP \(bu 2
|
42
|
+
A method from \fBRonin::Fuzzer\fR (ex: \fBbad\[ru]strings\fR)
|
43
|
+
.IP \(bu 2
|
44
|
+
A \fISTRING\fP, repeated \fIN\fP or \fIM\fP times (ex: \fBA*100\-200\fR)\.
|
45
|
+
.RE
|
46
|
+
.RE
|
50
47
|
.TP
|
51
|
-
\fB
|
48
|
+
\fB\-o\fR, \fB\-\-output\fR \fIPATH\fP
|
52
49
|
The output PATH to write the fuzzer to\.
|
53
|
-
.LP
|
54
50
|
.TP
|
55
|
-
\fB
|
56
|
-
The command to run with the fuzzed data\. All occurrences of \fB
|
57
|
-
will be replaced with the fuzzed data, and occurrences of \fB
|
51
|
+
\fB\-c\fR, \fB\-\-command\fR \fICOMMAND\fP
|
52
|
+
The command to run with the fuzzed data\. All occurrences of \fB\[sh]string\[sh]\fR
|
53
|
+
will be replaced with the fuzzed data, and occurrences of \fB\[sh]path\[sh]\fR will
|
58
54
|
be replaced with the path to the fuzzed data\.
|
59
|
-
.LP
|
60
55
|
.TP
|
61
|
-
\fB
|
56
|
+
\fB\-t\fR, \fB\-\-tcp\fR \fIHOST\fP:\fIPORT\fP
|
62
57
|
The TCP service to send the fuzzed data to\.
|
63
|
-
.LP
|
64
58
|
.TP
|
65
|
-
\fB
|
59
|
+
\fB\-u\fR, \fB\-\-udp\fR \fIHOST\fP:\fIPORT\fP
|
66
60
|
The UDP service to send the fuzzed data to\.
|
67
|
-
.LP
|
68
61
|
.TP
|
69
|
-
\fB
|
62
|
+
\fB\-p\fR, \fB\-\-pause\fR \fISECONDS\fP
|
70
63
|
Pause in between mutations\.
|
71
|
-
.LP
|
72
64
|
.SH EXAMPLES
|
73
|
-
.LP
|
74
65
|
.TP
|
75
|
-
\fBronin
|
66
|
+
\fBronin\-fuzzer fuzz \-i http\[ru]request\.txt \-o bad\.txt \-r unix\[ru]path:bad\[ru]strings\fR
|
76
67
|
Fuzzes a HTTP request, replacing every occurrence of a UNIX path, with
|
77
|
-
strings from the \
|
78
|
-
.LP
|
68
|
+
strings from the \fBbad\[ru]strings\fR method\.
|
79
69
|
.SH LINKS
|
80
|
-
.
|
81
|
-
.PP
|
70
|
+
.TP
|
82
71
|
Ronin Regular Expressions
|
83
72
|
https:\[sl]\[sl]ronin\-rb\.dev\[sl]docs\[sl]ronin\-support\[sl]Regexp\.html
|
84
|
-
.LP
|
85
73
|
.TP
|
86
74
|
\fBRonin::Fuzzer\fR
|
87
75
|
https:\[sl]\[sl]ronin\-rb\.dev\[sl]docs\[sl]ronin\-fuzzer\[sl]Ronin\[sl]Fuzzer\.html
|
88
|
-
.LP
|
89
76
|
.SH AUTHOR
|
90
|
-
.LP
|
91
77
|
.PP
|
92
78
|
Postmodern
|
93
79
|
.MT postmodern\.mod3\[at]gmail\.com
|
94
80
|
.ME
|
95
|
-
.LP
|
data/man/ronin-fuzzer-fuzz.1.md
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
# ronin-fuzzer-fuzz 1 "2022-01-01" Ronin Fuzzer "User Manuals"
|
2
2
|
|
3
|
+
## NAME
|
4
|
+
|
5
|
+
ronin-fuzzer-fuzz - Performs basic fuzzing of files
|
6
|
+
|
3
7
|
## SYNOPSIS
|
4
8
|
|
5
9
|
`ronin-fuzzer fuzz` [*options*] [*TEMPLATE*]
|
@@ -12,20 +16,20 @@ to output files, run in commands or sent to TCP/UDP services.
|
|
12
16
|
## OPTIONS
|
13
17
|
|
14
18
|
`-v`, `--[no-]verbose`
|
15
|
-
|
19
|
+
: Enable verbose output.
|
16
20
|
|
17
21
|
`-q`, `--[no-]quiet`
|
18
|
-
|
22
|
+
: Disable verbose output.
|
19
23
|
|
20
24
|
`--[no-]silent`
|
21
|
-
|
25
|
+
: Silence all output.
|
22
26
|
|
23
27
|
`-i`, `--input` *FILE*
|
24
|
-
|
28
|
+
: The input text FILE to parse. Data will be read from `STDIN` by default.
|
25
29
|
|
26
30
|
`-r`, `--rule` [*PATTERN*|*/REGEXP/*|STRING]:[*METHOD*|*STRING***N*[-*M*]]
|
27
|
-
|
28
|
-
|
31
|
+
: The rule to apply to the *INPUT*. Fuzzer rules consist of a pattern and
|
32
|
+
substitution. Patterns may be one of the following:
|
29
33
|
|
30
34
|
* A name of a Ronin Regular Expression (ex: `unix_path`)
|
31
35
|
* A custom Regular Expression (ex: `/\d+/`)
|
@@ -37,35 +41,35 @@ to output files, run in commands or sent to TCP/UDP services.
|
|
37
41
|
* A *STRING*, repeated *N* or *M* times (ex: `A*100-200`).
|
38
42
|
|
39
43
|
`-o`, `--output` *PATH*
|
40
|
-
|
44
|
+
: The output PATH to write the fuzzer to.
|
41
45
|
|
42
46
|
`-c`, `--command` *COMMAND*
|
43
|
-
|
44
|
-
|
45
|
-
|
47
|
+
: The command to run with the fuzzed data. All occurrences of `#string#`
|
48
|
+
will be replaced with the fuzzed data, and occurrences of `#path#` will
|
49
|
+
be replaced with the path to the fuzzed data.
|
46
50
|
|
47
51
|
`-t`, `--tcp` *HOST*:*PORT*
|
48
|
-
|
52
|
+
: The TCP service to send the fuzzed data to.
|
49
53
|
|
50
54
|
`-u`, `--udp` *HOST*:*PORT*
|
51
|
-
|
55
|
+
: The UDP service to send the fuzzed data to.
|
52
56
|
|
53
57
|
`-p`, `--pause` *SECONDS*
|
54
|
-
|
58
|
+
: Pause in between mutations.
|
55
59
|
|
56
60
|
## EXAMPLES
|
57
61
|
|
58
62
|
`ronin-fuzzer fuzz -i http_request.txt -o bad.txt -r unix_path:bad_strings`
|
59
|
-
|
60
|
-
|
63
|
+
: Fuzzes a HTTP request, replacing every occurrence of a UNIX path, with
|
64
|
+
strings from the `bad_strings` method.
|
61
65
|
|
62
66
|
## LINKS
|
63
67
|
|
64
68
|
Ronin Regular Expressions
|
65
|
-
|
69
|
+
: https://ronin-rb.dev/docs/ronin-support/Regexp.html
|
66
70
|
|
67
71
|
`Ronin::Fuzzer`
|
68
|
-
|
72
|
+
: https://ronin-rb.dev/docs/ronin-fuzzer/Ronin/Fuzzer.html
|
69
73
|
|
70
74
|
## AUTHOR
|
71
75
|
|
data/scripts/setup
ADDED
@@ -0,0 +1,58 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
|
3
|
+
#
|
4
|
+
# Prints a log message.
|
5
|
+
#
|
6
|
+
function log()
|
7
|
+
{
|
8
|
+
if [[ -t 1 ]]; then
|
9
|
+
echo -e "\x1b[1m\x1b[32m>>>\x1b[0m \x1b[1m$1\x1b[0m"
|
10
|
+
else
|
11
|
+
echo ">>> $1"
|
12
|
+
fi
|
13
|
+
}
|
14
|
+
|
15
|
+
#
|
16
|
+
# Prints a warn message.
|
17
|
+
#
|
18
|
+
function warn()
|
19
|
+
{
|
20
|
+
if [[ -t 1 ]]; then
|
21
|
+
echo -e "\x1b[1m\x1b[33m***\x1b[0m \x1b[1m$1\x1b[0m" >&2
|
22
|
+
else
|
23
|
+
echo "*** $1" >&2
|
24
|
+
fi
|
25
|
+
}
|
26
|
+
|
27
|
+
#
|
28
|
+
# Prints an error message.
|
29
|
+
#
|
30
|
+
function error()
|
31
|
+
{
|
32
|
+
if [[ -t 1 ]]; then
|
33
|
+
echo -e "\x1b[1m\x1b[31m!!!\x1b[0m \x1b[1m$1\x1b[0m" >&2
|
34
|
+
else
|
35
|
+
echo "!!! $1" >&2
|
36
|
+
fi
|
37
|
+
}
|
38
|
+
|
39
|
+
#
|
40
|
+
# Prints an error message and exists with -1.
|
41
|
+
#
|
42
|
+
function fail()
|
43
|
+
{
|
44
|
+
error "$@"
|
45
|
+
exit -1
|
46
|
+
}
|
47
|
+
|
48
|
+
# default to installing gems into vendor/bundle
|
49
|
+
if [[ ! -f .bundle/config ]]; then
|
50
|
+
bundle config set --local path vendor/bundle >/dev/null || \
|
51
|
+
fail "Failed to run 'bundle config'"
|
52
|
+
fi
|
53
|
+
|
54
|
+
log "Installing gems ..."
|
55
|
+
bundle install || fail "Failed to run 'bundle install'!"
|
56
|
+
|
57
|
+
log "Setting up the project ..."
|
58
|
+
bundle exec rake setup || "Failed to run 'rake setup'!"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ronin-fuzzer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Postmodern
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-07-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: combinatorics
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '0.
|
47
|
+
version: '0.2'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '0.
|
54
|
+
version: '0.2'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: bundler
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -90,9 +90,11 @@ files:
|
|
90
90
|
- README.md
|
91
91
|
- Rakefile
|
92
92
|
- bin/ronin-fuzzer
|
93
|
+
- data/completions/ronin-fuzzer
|
93
94
|
- gemspec.yml
|
94
95
|
- lib/ronin/fuzzer/cli.rb
|
95
96
|
- lib/ronin/fuzzer/cli/command.rb
|
97
|
+
- lib/ronin/fuzzer/cli/commands/completion.rb
|
96
98
|
- lib/ronin/fuzzer/cli/commands/fuzz.rb
|
97
99
|
- lib/ronin/fuzzer/root.rb
|
98
100
|
- lib/ronin/fuzzer/version.rb
|
@@ -103,9 +105,12 @@ files:
|
|
103
105
|
- lib/ronin/fuzzing/mutator.rb
|
104
106
|
- lib/ronin/fuzzing/repeater.rb
|
105
107
|
- lib/ronin/fuzzing/template.rb
|
108
|
+
- man/ronin-fuzzer-completion.1
|
109
|
+
- man/ronin-fuzzer-completion.1.md
|
106
110
|
- man/ronin-fuzzer-fuzz.1
|
107
111
|
- man/ronin-fuzzer-fuzz.1.md
|
108
112
|
- ronin-fuzzer.gemspec
|
113
|
+
- scripts/setup
|
109
114
|
homepage: https://ronin-rb.dev/
|
110
115
|
licenses:
|
111
116
|
- LGPL-3.0
|
@@ -130,7 +135,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
130
135
|
- !ruby/object:Gem::Version
|
131
136
|
version: '0'
|
132
137
|
requirements: []
|
133
|
-
rubygems_version: 3.
|
138
|
+
rubygems_version: 3.5.11
|
134
139
|
signing_key:
|
135
140
|
specification_version: 4
|
136
141
|
summary: A highly configurable fuzzing library and CLI for Ruby.
|