ronin-vulns 0.2.0.rc1 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +1 -0
  3. data/.ruby-version +1 -1
  4. data/ChangeLog.md +13 -1
  5. data/README.md +7 -5
  6. data/data/completions/ronin-vulns +70 -38
  7. data/gemspec.yml +5 -3
  8. data/lib/ronin/vulns/cli/command.rb +3 -2
  9. data/lib/ronin/vulns/cli/commands/command_injection.rb +3 -3
  10. data/lib/ronin/vulns/cli/commands/completion.rb +3 -2
  11. data/lib/ronin/vulns/cli/commands/irb.rb +3 -3
  12. data/lib/ronin/vulns/cli/commands/lfi.rb +3 -3
  13. data/lib/ronin/vulns/cli/commands/open_redirect.rb +3 -3
  14. data/lib/ronin/vulns/cli/commands/reflected_xss.rb +3 -3
  15. data/lib/ronin/vulns/cli/commands/rfi.rb +3 -3
  16. data/lib/ronin/vulns/cli/commands/scan.rb +3 -3
  17. data/lib/ronin/vulns/cli/commands/sqli.rb +3 -3
  18. data/lib/ronin/vulns/cli/commands/ssti.rb +3 -3
  19. data/lib/ronin/vulns/cli/importable.rb +4 -3
  20. data/lib/ronin/vulns/cli/printing.rb +1 -1
  21. data/lib/ronin/vulns/cli/ruby_shell.rb +1 -1
  22. data/lib/ronin/vulns/cli/web_vuln_command.rb +4 -4
  23. data/lib/ronin/vulns/cli.rb +5 -2
  24. data/lib/ronin/vulns/command_injection.rb +3 -3
  25. data/lib/ronin/vulns/importer.rb +1 -1
  26. data/lib/ronin/vulns/lfi/test_file.rb +2 -2
  27. data/lib/ronin/vulns/lfi.rb +4 -3
  28. data/lib/ronin/vulns/open_redirect.rb +2 -2
  29. data/lib/ronin/vulns/reflected_xss/context.rb +2 -2
  30. data/lib/ronin/vulns/reflected_xss/test_string.rb +2 -2
  31. data/lib/ronin/vulns/reflected_xss.rb +4 -4
  32. data/lib/ronin/vulns/rfi.rb +3 -3
  33. data/lib/ronin/vulns/root.rb +1 -1
  34. data/lib/ronin/vulns/sqli/error_pattern.rb +2 -2
  35. data/lib/ronin/vulns/sqli.rb +3 -3
  36. data/lib/ronin/vulns/ssti/test_expression.rb +2 -2
  37. data/lib/ronin/vulns/ssti.rb +3 -3
  38. data/lib/ronin/vulns/url_scanner.rb +8 -8
  39. data/lib/ronin/vulns/version.rb +2 -2
  40. data/lib/ronin/vulns/vuln.rb +1 -1
  41. data/lib/ronin/vulns/web_vuln/http_request.rb +3 -2
  42. data/lib/ronin/vulns/web_vuln.rb +4 -4
  43. data/lib/ronin/vulns.rb +32 -0
  44. metadata +23 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 890723d99792999a79f6aa9c4cd93323e3c9c896cdf861432a2c73af0b66bc13
4
- data.tar.gz: '08fa2f69408d4d1ea2d15be47ca2dce4f9f8e02f74d412d9df5cd08f09c4c61b'
3
+ metadata.gz: 35653f9125d0af1492343dc82a17c6d7e645fa2649b75ee828647ea13e256676
4
+ data.tar.gz: dbe4ada050f9dbcedea4eb8197a59217affec0276205e49ec5708b4d73865e23
5
5
  SHA512:
6
- metadata.gz: 56b93b2271a57ff173374dd419d06231fc86d1e88bfebc733dd586fac636c908cdb14a40b8ebe4f0566c4bdf9ec02fcedd633a16d73593072d0db997b5aeea9c
7
- data.tar.gz: cfb41dc3e01bcf9012c2b586bd0490710a082ef5cd939364a0644628722db1bc29065b725d0a02dea847d2f8d03a852e0df504d8f81697539d54341218dcdf8d
6
+ metadata.gz: 8573bc7cbb8f8da72c27d453bdd904457ad0076723700171f89aafa82ad499dd1d0a206426858e148261196e387eb3a8d18395cff9feebd65b0783320b38b760
7
+ data.tar.gz: e647b631bd189433fe527ac88f8411ed0f1a40690711449ebc8596c3e55a43671a05318f71f1166ed9071a7bfd2243dea2162fba772921b39b3ea0be92ef1da9
@@ -13,6 +13,7 @@ jobs:
13
13
  - '3.1'
14
14
  - '3.2'
15
15
  - '3.3'
16
+ - '3.4'
16
17
  # - jruby
17
18
  - truffleruby
18
19
  name: Ruby ${{ matrix.ruby }}
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-3.1
1
+ ruby-3.3
data/ChangeLog.md CHANGED
@@ -1,4 +1,16 @@
1
- ### 0.2.0 / 2024-XX-XX
1
+ ### 0.2.1 / 2025-02-14
2
+
3
+ * Added the `base64` gem as a dependency for Bundler and Ruby 3.4.0.
4
+ * Added missing `ronin/vulns` Ruby file.
5
+ * Use `require_relative` to improve load times.
6
+ * Documentation fixes.
7
+
8
+ #### CLI
9
+
10
+ * Fixed a bug in the `ronin-vulns irb` command where the `ronin/vulns` Ruby file
11
+ was missing.
12
+
13
+ ### 0.2.0 / 2024-07-22
2
14
 
3
15
  * Require [ronin-db] ~> 0.2
4
16
  * Added {Ronin::Vulns::Importer}.
data/README.md CHANGED
@@ -89,7 +89,7 @@ $ ronin-vulns lfi "http://www.example.com/page.php?lang=en"
89
89
  Test a URL for SQL injection (SQLi):
90
90
 
91
91
  ```shell
92
- $ ronin-vulns sqli "http://www.example.com/page.php?lang=en"
92
+ $ ronin-vulns sqli "http://testphp.vulnweb.com/listproducts.php?cat=1"
93
93
  ```
94
94
 
95
95
  Test a URL for Server Side Template Injection (SSTI):
@@ -185,17 +185,17 @@ Test a URL for SQL Injection (SQLi):
185
185
  ```ruby
186
186
  require 'ronin/vulns/sqli'
187
187
 
188
- vuln = Ronin::Vulns::SQLI.test('http://www.example.com/page.php?lang=en')
188
+ vuln = Ronin::Vulns::SQLI.test('http://testphp.vulnweb.com/listproducts.php?cat=1')
189
189
  # => #<Ronin::Vulns::SQLI: ...>
190
190
  ```
191
191
 
192
192
  Finds all Server Side Template Injection (SQLI) vulnerabilities for a given URL:
193
193
 
194
194
  ```ruby
195
- vulns = Ronin::Vulns::SQLI.scan('http://www.example.com/page.php?lang=en')
195
+ vulns = Ronin::Vulns::SQLI.scan('http://testphp.vulnweb.com/listproducts.php?cat=1')
196
196
  # => [#<Ronin::Vulns::SQLI: ...>, ...]
197
197
 
198
- vulns = Ronin::Vulns::SQLI.scan('http://www.example.com/page.php?lang=en') do |vuln|
198
+ vulns = Ronin::Vulns::SQLI.scan('http://testphp.vulnweb.com/listproducts.php?cat=1') do |vuln|
199
199
  puts "Found SQLi on #{vuln.url} query param #{vuln.query_param}"
200
200
  end
201
201
  # => [#<Ronin::Vulns::SQLI: ...>, ...]
@@ -274,6 +274,7 @@ end
274
274
  ## Requirements
275
275
 
276
276
  * [Ruby] >= 3.0.0
277
+ * [base64] ~> 0.1
277
278
  * [ronin-support] ~> 1.0
278
279
  * [ronin-core] ~> 0.2
279
280
  * [ronin-db] ~> 0.2
@@ -309,7 +310,7 @@ gem.add_dependency 'ronin-vulns', '~> 0.1'
309
310
 
310
311
  ## License
311
312
 
312
- Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
313
+ Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
313
314
 
314
315
  ronin-vulns is free software: you can redistribute it and/or modify
315
316
  it under the terms of the GNU Lesser General Public License as published
@@ -327,6 +328,7 @@ along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
327
328
  [Ruby]: https://www.ruby-lang.org
328
329
  [ronin-rb]: https://ronin-rb.dev
329
330
 
331
+ [base64]: https://github.com/ruby/base64#readme
330
332
  [ronin-support]: https://github.com/ronin-rb/ronin-support#readme
331
333
  [ronin-core]: https://github.com/ronin-rb/ronin-core#readme
332
334
  [ronin-db]: https://github.com/ronin-rb/ronin-db#readme
@@ -11,7 +11,7 @@ _ronin-vulns_completions_filter() {
11
11
 
12
12
  if [[ "${cur:0:1}" == "-" ]]; then
13
13
  echo "$words"
14
-
14
+
15
15
  else
16
16
  for word in $words; do
17
17
  [[ "${word:0:1}" != "-" ]] && result+=("$word")
@@ -28,112 +28,144 @@ _ronin-vulns_completions() {
28
28
  local compline="${compwords[*]}"
29
29
 
30
30
  case "$compline" in
31
+ 'command_injection'*'--db-file')
32
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
33
+ ;;
34
+
31
35
  'command_injection'*'--input')
32
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
36
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
33
37
  ;;
34
38
 
35
- 'open_redirect'*'--input')
36
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
39
+ 'reflected_xss'*'--db-file')
40
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
41
+ ;;
42
+
43
+ 'open_redirect'*'--db-file')
44
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
37
45
  ;;
38
46
 
39
47
  'reflected_xss'*'--input')
40
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
48
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
49
+ ;;
50
+
51
+ 'open_redirect'*'--input')
52
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
41
53
  ;;
42
54
 
43
55
  'command_injection'*'-i')
44
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
56
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
45
57
  ;;
46
58
 
47
59
  'command_injection'*)
48
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --escape-quote -Q --escape-operator -O --terminator -T")" -- "$cur" )
60
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --escape-quote -Q --escape-operator -O --terminator -T")" -- "$cur")
61
+ ;;
62
+
63
+ 'reflected_xss'*'-i')
64
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
49
65
  ;;
50
66
 
51
67
  'open_redirect'*'-i')
52
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
68
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
53
69
  ;;
54
70
 
55
- 'reflected_xss'*'-i')
56
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
71
+ 'scan'*'--db-file')
72
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
73
+ ;;
74
+
75
+ 'sqli'*'--db-file')
76
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
77
+ ;;
78
+
79
+ 'ssti'*'--db-file')
80
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
57
81
  ;;
58
82
 
59
83
  'open_redirect'*)
60
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --test-url -T")" -- "$cur" )
84
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --test-url -T")" -- "$cur")
61
85
  ;;
62
86
 
63
87
  'reflected_xss'*)
64
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i")" -- "$cur" )
88
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i")" -- "$cur")
65
89
  ;;
66
90
 
67
- 'scan'*'--input')
68
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
91
+ 'lfi'*'--db-file')
92
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
69
93
  ;;
70
94
 
71
- 'sqli'*'--input')
72
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
95
+ 'rfi'*'--db-file')
96
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
73
97
  ;;
74
98
 
75
99
  'ssti'*'--input')
76
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
100
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
101
+ ;;
102
+
103
+ 'scan'*'--input')
104
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
105
+ ;;
106
+
107
+ 'sqli'*'--input')
108
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
77
109
  ;;
78
110
 
79
111
  'lfi'*'--input')
80
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
112
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
81
113
  ;;
82
114
 
83
115
  'rfi'*'--input')
84
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
116
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
85
117
  ;;
86
118
 
87
119
  'completion'*)
88
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--print --install --uninstall")" -- "$cur" )
120
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--print --install --uninstall")" -- "$cur")
89
121
  ;;
90
122
 
91
123
  'scan'*'-i')
92
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
124
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
93
125
  ;;
94
126
 
95
127
  'sqli'*'-i')
96
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
128
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
97
129
  ;;
98
130
 
99
131
  'ssti'*'-i')
100
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
101
- ;;
102
-
103
- 'lfi'*'-i')
104
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
132
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
105
133
  ;;
106
134
 
107
135
  'rfi'*'-i')
108
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
136
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
109
137
  ;;
110
138
 
111
- 'scan'*)
112
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --lfi-os --lfi-depth --lfi-filter-bypass --rfi-filter-bypass --rfi-script-lang --rfi-test-script-url --sqli-escape-quote --sqli-escape-parens --sqli-terminate --ssti-test-expr --open-redirect-url")" -- "$cur" )
139
+ 'lfi'*'-i')
140
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
113
141
  ;;
114
142
 
115
143
  'sqli'*)
116
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --escape-quote -Q --escape-parens -P --terminate -T")" -- "$cur" )
144
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --escape-quote -Q --escape-parens -P --terminate -T")" -- "$cur")
117
145
  ;;
118
146
 
119
- 'ssti'*)
120
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --test-expr -T")" -- "$cur" )
147
+ 'scan'*)
148
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --lfi-os --lfi-depth --lfi-filter-bypass --rfi-filter-bypass --rfi-script-lang --rfi-test-script-url --sqli-escape-quote --sqli-escape-parens --sqli-terminate --ssti-test-expr --open-redirect-url")" -- "$cur")
121
149
  ;;
122
150
 
123
- 'lfi'*)
124
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --os -O --depth -D --filter-bypass -B")" -- "$cur" )
151
+ 'ssti'*)
152
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --test-expr -T")" -- "$cur")
125
153
  ;;
126
154
 
127
155
  'rfi'*)
128
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --filter-bypass -B --script-lang -S --test-script-url -T")" -- "$cur" )
156
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --filter-bypass -B --script-lang -S --test-script-url -T")" -- "$cur")
157
+ ;;
158
+
159
+ 'lfi'*)
160
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--db --db-uri --db-file --import --first -F --all -A --print-curl --print-http --request-method -M --header -H --user-agent-string -U --user-agent -u --cookie -C --cookie-param -c --referer -R --form-param -F --test-query-param --test-all-query-params --test-header-name --test-cookie-param --test-all-cookie-params --test-form-param --test-all-form-params --input -i --os -O --depth -D --filter-bypass -B")" -- "$cur")
129
161
  ;;
130
162
 
131
163
  *)
132
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-vulns_completions_filter "--version -V help command-injection completion irb lfi open-redirect reflected-xss rfi scan sqli ssti xss cmdi")" -- "$cur" )
164
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-vulns_completions_filter "--version -V help command-injection completion irb lfi open-redirect reflected-xss rfi scan sqli ssti xss cmdi")" -- "$cur")
133
165
  ;;
134
166
 
135
167
  esac
136
168
  } &&
137
- complete -F _ronin-vulns_completions ronin-vulns
169
+ complete -F _ronin-vulns_completions ronin-vulns
138
170
 
139
171
  # ex: filetype=sh
data/gemspec.yml CHANGED
@@ -9,7 +9,7 @@ description: |
9
9
  Remote File Inclusion (RFI), SQL injection (SQLi), reflective Cross Site
10
10
  Scripting (XSS), Server Side Template Injection (SSTI), and Open Redirects.
11
11
 
12
- license: LGPL-3.0
12
+ license: LGPL-3.0-or-later
13
13
  authors: Postmodern
14
14
  email: postmodern.mod3@gmail.com
15
15
  homepage: https://ronin-rb.dev/
@@ -39,9 +39,11 @@ generated_files:
39
39
  - man/ronin-vulns-scan.1
40
40
 
41
41
  dependencies:
42
+ base64: ~> 0.1
43
+ # Ronin dependencies:
42
44
  ronin-support: ~> 1.0, >= 1.0.1
43
- ronin-core: ~> 0.2.0.rc1
44
- ronin-db: ~> 0.2.0.rc1
45
+ ronin-core: ~> 0.2
46
+ ronin-db: ~> 0.2
45
47
 
46
48
  development_dependencies:
47
49
  bundler: ~> 2.0
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,9 +18,10 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/root'
22
21
  require 'ronin/core/cli/command'
23
22
 
23
+ require_relative '../root'
24
+
24
25
  module Ronin
25
26
  module Vulns
26
27
  class CLI
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/web_vuln_command'
22
- require 'ronin/vulns/command_injection'
21
+ require_relative '../web_vuln_command'
22
+ require_relative '../../command_injection'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,9 +18,10 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/root'
22
21
  require 'ronin/core/cli/completion_command'
23
22
 
23
+ require_relative '../../root'
24
+
24
25
  module Ronin
25
26
  module Vulns
26
27
  class CLI
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/command'
22
- require 'ronin/vulns/cli/ruby_shell'
21
+ require_relative '../command'
22
+ require_relative '../ruby_shell'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/web_vuln_command'
22
- require 'ronin/vulns/lfi'
21
+ require_relative '../web_vuln_command'
22
+ require_relative '../../lfi'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/web_vuln_command'
22
- require 'ronin/vulns/open_redirect'
21
+ require_relative '../web_vuln_command'
22
+ require_relative '../../open_redirect'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/web_vuln_command'
22
- require 'ronin/vulns/reflected_xss'
21
+ require_relative '../web_vuln_command'
22
+ require_relative '../../reflected_xss'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/web_vuln_command'
22
- require 'ronin/vulns/rfi'
21
+ require_relative '../web_vuln_command'
22
+ require_relative '../../rfi'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/web_vuln_command'
22
- require 'ronin/vulns/url_scanner'
21
+ require_relative '../web_vuln_command'
22
+ require_relative '../../url_scanner'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/web_vuln_command'
22
- require 'ronin/vulns/sqli'
21
+ require_relative '../web_vuln_command'
22
+ require_relative '../../sqli'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/web_vuln_command'
22
- require 'ronin/vulns/ssti'
21
+ require_relative '../web_vuln_command'
22
+ require_relative '../../ssti'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,9 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/importer'
22
- require 'ronin/vulns/cli/printing'
21
+ require_relative 'printing'
22
+ require_relative '../importer'
23
+
23
24
  require 'ronin/db/cli/database_options'
24
25
  require 'ronin/db/cli/printing'
25
26
 
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,9 +18,9 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/cli/command'
22
- require 'ronin/vulns/cli/importable'
23
- require 'ronin/vulns/cli/printing'
21
+ require_relative 'command'
22
+ require_relative 'importable'
23
+ require_relative 'printing'
24
24
 
25
25
  require 'ronin/support/network/http/cookie'
26
26
  require 'ronin/support/network/http/user_agents'
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,12 +18,14 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/version'
21
+ require 'ronin/core/cli/help/banner'
22
22
 
23
23
  require 'command_kit/commands'
24
24
  require 'command_kit/commands/auto_load'
25
25
  require 'command_kit/options/version'
26
26
 
27
+ require_relative 'version'
28
+
27
29
  module Ronin
28
30
  module Vulns
29
31
  #
@@ -39,6 +41,7 @@ module Ronin
39
41
  namespace: "#{self}::Commands"
40
42
  )
41
43
  include CommandKit::Options::Version
44
+ include Core::CLI::Help::Banner
42
45
 
43
46
  command_name 'ronin-vulns'
44
47
  version Ronin::Vulns::VERSION
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,7 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
21
+ require_relative 'web_vuln'
22
22
 
23
23
  require 'time'
24
24
 
@@ -114,7 +114,7 @@ module Ronin
114
114
  # @param [Array<String, nil>, String, nil] escape_operator
115
115
  # The optional escape operator character(s) to test.
116
116
  #
117
- # @param [Array<String, nil>, Stirng, nil] terminator
117
+ # @param [Array<String, nil>, String, nil] terminator
118
118
  # The optional command termination character(s) to test.
119
119
  #
120
120
  # @param [Ronin::Support::Network::HTTP, nil] http
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library to blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,7 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
21
+ require_relative '../web_vuln'
22
22
 
23
23
  module Ronin
24
24
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,12 +18,13 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
22
- require 'ronin/vulns/lfi/test_file'
21
+ require_relative 'web_vuln'
22
+ require_relative 'lfi/test_file'
23
23
 
24
24
  require 'ronin/support/text/patterns'
25
25
  require 'ronin/support/crypto'
26
26
  require 'ronin/support/compression'
27
+
27
28
  require 'uri/query_params'
28
29
  require 'base64'
29
30
 
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,7 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
21
+ require_relative 'web_vuln'
22
22
 
23
23
  require 'chars'
24
24
  require 'cgi'
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,7 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
21
+ require_relative '../web_vuln'
22
22
 
23
23
  module Ronin
24
24
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,7 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
21
+ require_relative '../web_vuln'
22
22
 
23
23
  module Ronin
24
24
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,9 +18,9 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
22
- require 'ronin/vulns/reflected_xss/test_string'
23
- require 'ronin/vulns/reflected_xss/context'
21
+ require_relative 'web_vuln'
22
+ require_relative 'reflected_xss/test_string'
23
+ require_relative 'reflected_xss/context'
24
24
 
25
25
  require 'set'
26
26
 
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
22
- require 'ronin/vulns/version'
21
+ require_relative 'web_vuln'
22
+ require_relative 'version'
23
23
 
24
24
  require 'ronin/support/network/http'
25
25
  require 'uri/query_params'
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,7 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
21
+ require_relative '../web_vuln'
22
22
 
23
23
  module Ronin
24
24
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
22
- require 'ronin/vulns/sqli/error_pattern'
21
+ require_relative 'web_vuln'
22
+ require_relative 'sqli/error_pattern'
23
23
 
24
24
  require 'time'
25
25
 
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,7 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
21
+ require_relative '../web_vuln'
22
22
 
23
23
  module Ronin
24
24
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,8 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/web_vuln'
22
- require 'ronin/vulns/ssti/test_expression'
21
+ require_relative 'web_vuln'
22
+ require_relative 'ssti/test_expression'
23
23
 
24
24
  module Ronin
25
25
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,13 +18,13 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/lfi'
22
- require 'ronin/vulns/rfi'
23
- require 'ronin/vulns/sqli'
24
- require 'ronin/vulns/ssti'
25
- require 'ronin/vulns/reflected_xss'
26
- require 'ronin/vulns/open_redirect'
27
- require 'ronin/vulns/command_injection'
21
+ require_relative 'lfi'
22
+ require_relative 'rfi'
23
+ require_relative 'sqli'
24
+ require_relative 'ssti'
25
+ require_relative 'reflected_xss'
26
+ require_relative 'open_redirect'
27
+ require_relative 'command_injection'
28
28
 
29
29
  module Ronin
30
30
  module Vulns
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -21,6 +21,6 @@
21
21
  module Ronin
22
22
  module Vulns
23
23
  # The ronin-vulns version
24
- VERSION = '0.2.0.rc1'
24
+ VERSION = '0.2.1'
25
25
  end
26
26
  end
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,8 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/vuln'
21
+ require_relative '../vuln'
22
+
22
23
  require 'ronin/support/network/http/cookie'
23
24
  require 'ronin/support/network/http/user_agents'
24
25
 
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-vulns - A Ruby library for blind vulnerability testing.
4
4
  #
5
- # Copyright (c) 2022-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-vulns is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,10 +18,10 @@
18
18
  # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/vulns/vuln'
22
- require 'ronin/vulns/web_vuln/http_request'
23
- require 'ronin/support/network/http'
21
+ require_relative 'vuln'
22
+ require_relative 'web_vuln/http_request'
24
23
 
24
+ require 'ronin/support/network/http'
25
25
  require 'chars'
26
26
 
27
27
  module Ronin
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+ #
3
+ # ronin-vulns - A Ruby library for blind vulnerability testing.
4
+ #
5
+ # Copyright (c) 2022-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
+ #
7
+ # ronin-vulns is free software: you can redistribute it and/or modify
8
+ # it under the terms of the GNU Lesser General Public License as published
9
+ # by the Free Software Foundation, either version 3 of the License, or
10
+ # (at your option) any later version.
11
+ #
12
+ # ronin-vulns is distributed in the hope that it will be useful,
13
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ # GNU Lesser General Public License for more details.
16
+ #
17
+ # You should have received a copy of the GNU Lesser General Public License
18
+ # along with ronin-vulns. If not, see <https://www.gnu.org/licenses/>.
19
+ #
20
+
21
+ require_relative 'vulns/vuln'
22
+ require_relative 'vulns/web_vuln'
23
+ require_relative 'vulns/lfi'
24
+ require_relative 'vulns/rfi'
25
+ require_relative 'vulns/sqli'
26
+ require_relative 'vulns/ssti'
27
+ require_relative 'vulns/command_injection'
28
+ require_relative 'vulns/open_redirect'
29
+ require_relative 'vulns/reflected_xss'
30
+ require_relative 'vulns/url_scanner'
31
+ require_relative 'vulns/importer'
32
+ require_relative 'vulns/version'
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ronin-vulns
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0.rc1
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Postmodern
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-06-23 00:00:00.000000000 Z
11
+ date: 2025-02-15 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: base64
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.1'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: ronin-support
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -36,28 +50,28 @@ dependencies:
36
50
  requirements:
37
51
  - - "~>"
38
52
  - !ruby/object:Gem::Version
39
- version: 0.2.0.rc1
53
+ version: '0.2'
40
54
  type: :runtime
41
55
  prerelease: false
42
56
  version_requirements: !ruby/object:Gem::Requirement
43
57
  requirements:
44
58
  - - "~>"
45
59
  - !ruby/object:Gem::Version
46
- version: 0.2.0.rc1
60
+ version: '0.2'
47
61
  - !ruby/object:Gem::Dependency
48
62
  name: ronin-db
49
63
  requirement: !ruby/object:Gem::Requirement
50
64
  requirements:
51
65
  - - "~>"
52
66
  - !ruby/object:Gem::Version
53
- version: 0.2.0.rc1
67
+ version: '0.2'
54
68
  type: :runtime
55
69
  prerelease: false
56
70
  version_requirements: !ruby/object:Gem::Requirement
57
71
  requirements:
58
72
  - - "~>"
59
73
  - !ruby/object:Gem::Version
60
- version: 0.2.0.rc1
74
+ version: '0.2'
61
75
  - !ruby/object:Gem::Dependency
62
76
  name: bundler
63
77
  requirement: !ruby/object:Gem::Requirement
@@ -107,6 +121,7 @@ files:
107
121
  - data/rfi_test.php
108
122
  - data/rfi_test.pl
109
123
  - gemspec.yml
124
+ - lib/ronin/vulns.rb
110
125
  - lib/ronin/vulns/cli.rb
111
126
  - lib/ronin/vulns/cli/command.rb
112
127
  - lib/ronin/vulns/cli/commands/command_injection.rb
@@ -168,7 +183,7 @@ files:
168
183
  - scripts/setup
169
184
  homepage: https://ronin-rb.dev/
170
185
  licenses:
171
- - LGPL-3.0
186
+ - LGPL-3.0-or-later
172
187
  metadata:
173
188
  documentation_uri: https://ronin-rb.dev/docs/ronin-vulns
174
189
  source_code_uri: https://github.com/ronin-rb/ronin-vulns
@@ -190,7 +205,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
190
205
  - !ruby/object:Gem::Version
191
206
  version: '0'
192
207
  requirements: []
193
- rubygems_version: 3.3.27
208
+ rubygems_version: 3.5.22
194
209
  signing_key:
195
210
  specification_version: 4
196
211
  summary: Tests URLs for Local File Inclusion (LFI), Remove File Inclusion (RFI), SQL