ronin-web 2.0.0.rc1 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +1 -0
- data/.ruby-version +1 -1
- data/ChangeLog.md +18 -3
- data/README.md +1 -1
- data/data/completions/ronin-web +80 -68
- data/gemspec.yml +8 -8
- data/lib/ronin/web/cli/browser_options.rb +1 -1
- data/lib/ronin/web/cli/browser_shell.rb +3 -2
- data/lib/ronin/web/cli/command.rb +3 -3
- data/lib/ronin/web/cli/commands/browser.rb +5 -5
- data/lib/ronin/web/cli/commands/completion.rb +3 -2
- data/lib/ronin/web/cli/commands/diff.rb +3 -3
- data/lib/ronin/web/cli/commands/html.rb +3 -3
- data/lib/ronin/web/cli/commands/irb.rb +3 -3
- data/lib/ronin/web/cli/commands/new/app.rb +3 -3
- data/lib/ronin/web/cli/commands/new/nokogiri.rb +3 -3
- data/lib/ronin/web/cli/commands/new/server.rb +3 -3
- data/lib/ronin/web/cli/commands/new/spider.rb +3 -3
- data/lib/ronin/web/cli/commands/new.rb +3 -2
- data/lib/ronin/web/cli/commands/reverse_proxy.rb +3 -2
- data/lib/ronin/web/cli/commands/screenshot.rb +3 -3
- data/lib/ronin/web/cli/commands/server.rb +4 -3
- data/lib/ronin/web/cli/commands/session_cookie.rb +3 -2
- data/lib/ronin/web/cli/commands/spider.rb +4 -3
- data/lib/ronin/web/cli/commands/user_agent.rb +3 -2
- data/lib/ronin/web/cli/commands/vulns.rb +4 -3
- data/lib/ronin/web/cli/commands/wordlist.rb +4 -4
- data/lib/ronin/web/cli/commands/xml.rb +3 -3
- data/lib/ronin/web/cli/js_shell.rb +1 -1
- data/lib/ronin/web/cli/ruby_shell.rb +1 -1
- data/lib/ronin/web/cli/spider_options.rb +1 -1
- data/lib/ronin/web/cli.rb +3 -2
- data/lib/ronin/web/root.rb +1 -1
- data/lib/ronin/web/version.rb +2 -2
- data/lib/ronin/web.rb +4 -2
- data/man/ronin-web-xml.1 +1 -1
- data/man/ronin-web-xml.1.md +1 -1
- data/ronin-web.gemspec +1 -0
- metadata +24 -21
- data/lib/ronin/web/html.rb +0 -86
- data/lib/ronin/web/xml.rb +0 -86
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c49b1797684e1ac9ca6e158ee6824ff7352804ab9914543824527ba89ab57a98
|
4
|
+
data.tar.gz: 443f7a5344f9a16ee8ec1e3904aab4a165be8bcad47eae45a4eb1cddccaa44a3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ff88d3d3e069383c427ebbb874cbc1e2e4abeae71f768958a19f810f33fdcd8ab9a02ba16d9c014e41a6235392313605b86bfe2c87cce8534e3aa0bb56dfa4c6
|
7
|
+
data.tar.gz: d113ad11be8cdab75cd68b028e96c5d3fd87eef348fb24b852acea6dcdbe1edbfb947e8afcbcb6e288b23513d6536bf7f3d6352aa761ae6104039a20c964e69e
|
data/.github/workflows/ruby.yml
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ruby-3.
|
1
|
+
ruby-3.3
|
data/ChangeLog.md
CHANGED
@@ -1,4 +1,19 @@
|
|
1
|
-
### 2.0.
|
1
|
+
### 2.0.1 / 2025-02-14
|
2
|
+
|
3
|
+
* Removed legacy 1.x Ruby files:
|
4
|
+
* `ronin/web/html` - This file was moved to [ronin-support-web] and renamed to
|
5
|
+
`ronin/support/web/html`.
|
6
|
+
* `ronin/web/xml` - This file was moved to [ronin-support-web] and renamed to
|
7
|
+
`ronin/support/web/xml`.
|
8
|
+
* Require all other `ronin-web-*` libraries in `ronin/web`.
|
9
|
+
* Use `require_relative` to improve load times.
|
10
|
+
|
11
|
+
#### CLI
|
12
|
+
|
13
|
+
* Fixed a bug in the `ronin-web server` command where the query params of
|
14
|
+
requests were not being displayed.
|
15
|
+
|
16
|
+
### 2.0.0 / 2024-07-22
|
2
17
|
|
3
18
|
* Require [wordlist] ~> 1.0, >= 1.0.1.
|
4
19
|
* Require [ronin-support-web] ~> 0.1.
|
@@ -69,8 +84,8 @@
|
|
69
84
|
* Added the `ronin-web reverse-proxy` command.
|
70
85
|
* Added the `ronin-web server` command.
|
71
86
|
* Added the `ronin-web spider` command.
|
72
|
-
* Added
|
73
|
-
* Added
|
87
|
+
* Added `Ronin::Web::HTML`.
|
88
|
+
* Added `Ronin::Web::XML`.
|
74
89
|
|
75
90
|
[nokogiri-ext]: https://github.com/postmodern/nokogiri-ext#readme
|
76
91
|
[nokogiri-diff]: https://github.com/postmodern/nokogiri-diff#readme
|
data/README.md
CHANGED
@@ -624,7 +624,7 @@ $ gem install ronin-web
|
|
624
624
|
|
625
625
|
ronin-web - A collection of useful web helper methods and commands.
|
626
626
|
|
627
|
-
Copyright (c) 2006-
|
627
|
+
Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
628
628
|
|
629
629
|
ronin-web is free software: you can redistribute it and/or modify
|
630
630
|
it under the terms of the GNU General Public License as published by
|
data/data/completions/ronin-web
CHANGED
@@ -11,7 +11,7 @@ _ronin-web_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")
|
@@ -29,175 +29,187 @@ _ronin-web_completions() {
|
|
29
29
|
|
30
30
|
case "$compline" in
|
31
31
|
'browser'*'--inject-js-file')
|
32
|
-
while read -r; do COMPREPLY+=(
|
32
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
|
33
33
|
;;
|
34
34
|
|
35
|
-
'
|
36
|
-
while read -r; do COMPREPLY+=(
|
35
|
+
'wordlist'*'--ignore-host')
|
36
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
37
37
|
;;
|
38
38
|
|
39
|
-
'
|
40
|
-
while read -r; do COMPREPLY+=(
|
39
|
+
'screenshot'*'--directory')
|
40
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A directory -- "$cur")
|
41
41
|
;;
|
42
42
|
|
43
43
|
'wordlist'*'--visit-host')
|
44
|
-
while read -r; do COMPREPLY+=(
|
44
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
45
45
|
;;
|
46
46
|
|
47
|
-
'
|
48
|
-
while read -r; do COMPREPLY+=(
|
47
|
+
'spider'*'--git-archive')
|
48
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A directory -- "$cur")
|
49
49
|
;;
|
50
50
|
|
51
51
|
'spider'*'--ignore-host')
|
52
|
-
while read -r; do COMPREPLY+=(
|
52
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
53
53
|
;;
|
54
54
|
|
55
|
-
'
|
56
|
-
while read -r; do COMPREPLY+=(
|
55
|
+
'reverse-proxy'*'--host')
|
56
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
57
57
|
;;
|
58
58
|
|
59
59
|
'spider'*'--visit-host')
|
60
|
-
while read -r; do COMPREPLY+=(
|
60
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
61
61
|
;;
|
62
62
|
|
63
63
|
'vulns'*'--ignore-host')
|
64
|
-
while read -r; do COMPREPLY+=(
|
64
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
65
65
|
;;
|
66
66
|
|
67
67
|
'vulns'*'--visit-host')
|
68
|
-
while read -r; do COMPREPLY+=(
|
68
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
69
69
|
;;
|
70
70
|
|
71
71
|
'screenshot'*'--file')
|
72
|
-
while read -r; do COMPREPLY+=(
|
72
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
|
73
|
+
;;
|
74
|
+
|
75
|
+
'wordlist'*'--output')
|
76
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
|
77
|
+
;;
|
78
|
+
|
79
|
+
'spider'*'--archive')
|
80
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A directory -- "$cur")
|
73
81
|
;;
|
74
82
|
|
75
83
|
'reverse-proxy'*'-H')
|
76
|
-
while read -r; do COMPREPLY+=(
|
84
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
77
85
|
;;
|
78
86
|
|
79
87
|
'spider'*'--history')
|
80
|
-
while read -r; do COMPREPLY+=(
|
88
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
|
81
89
|
;;
|
82
90
|
|
83
|
-
'
|
84
|
-
while read -r; do COMPREPLY+=(
|
91
|
+
'wordlist'*'--host')
|
92
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
85
93
|
;;
|
86
94
|
|
87
|
-
'
|
88
|
-
while read -r; do COMPREPLY+=(
|
95
|
+
'vulns'*'--db-file')
|
96
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
|
89
97
|
;;
|
90
98
|
|
91
99
|
'session_cookie'*)
|
92
|
-
while read -r; do COMPREPLY+=(
|
100
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--verbose -v --format -F")" -- "$cur")
|
93
101
|
;;
|
94
102
|
|
95
|
-
'
|
96
|
-
while read -r; do COMPREPLY+=(
|
103
|
+
'spider'*'--host')
|
104
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
97
105
|
;;
|
98
106
|
|
99
|
-
'
|
100
|
-
while read -r; do COMPREPLY+=(
|
107
|
+
'server'*'--root')
|
108
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A directory -- "$cur")
|
109
|
+
;;
|
110
|
+
|
111
|
+
'server'*'--host')
|
112
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
101
113
|
;;
|
102
114
|
|
103
115
|
'screenshot'*'-d')
|
104
|
-
while read -r; do COMPREPLY+=(
|
116
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A directory -- "$cur")
|
105
117
|
;;
|
106
118
|
|
107
|
-
'
|
108
|
-
while read -r; do COMPREPLY+=(
|
119
|
+
'screenshot'*'-f')
|
120
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
|
109
121
|
;;
|
110
122
|
|
111
|
-
'
|
112
|
-
while read -r; do COMPREPLY+=(
|
123
|
+
'reverse-proxy'*)
|
124
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--host -H --port -p --show-body -b --rewrite-requests --rewrite-responses")" -- "$cur")
|
113
125
|
;;
|
114
126
|
|
115
|
-
'
|
116
|
-
while read -r; do COMPREPLY+=(
|
127
|
+
'vulns'*'--host')
|
128
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
117
129
|
;;
|
118
130
|
|
119
131
|
'new nokogiri'*)
|
120
|
-
while read -r; do COMPREPLY+=(
|
132
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -W "$(_ronin-web_completions_filter "--url -U")" -- "$cur")
|
121
133
|
;;
|
122
134
|
|
123
|
-
'
|
124
|
-
while read -r; do COMPREPLY+=(
|
135
|
+
'wordlist'*'-o')
|
136
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
|
125
137
|
;;
|
126
138
|
|
127
|
-
'
|
128
|
-
while read -r; do COMPREPLY+=(
|
139
|
+
'user_agent'*)
|
140
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--browser -B --chrome-version --firefox-version --linux-distro -D --arch -A --os -O --os-version")" -- "$cur")
|
129
141
|
;;
|
130
142
|
|
131
143
|
'new server'*)
|
132
|
-
while read -r; do COMPREPLY+=(
|
144
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -W "$(_ronin-web_completions_filter "--host -H --port -p")" -- "$cur")
|
133
145
|
;;
|
134
146
|
|
135
|
-
'
|
136
|
-
while read -r; do COMPREPLY+=(
|
147
|
+
'completion'*)
|
148
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--print --install --uninstall")" -- "$cur")
|
137
149
|
;;
|
138
150
|
|
139
151
|
'screenshot'*)
|
140
|
-
while read -r; do COMPREPLY+=(
|
152
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--browser -B --width -W --height -H --file -f --format -F --directory -d --full --css-path -C")" -- "$cur")
|
141
153
|
;;
|
142
154
|
|
143
|
-
'
|
144
|
-
while read -r; do COMPREPLY+=(
|
145
|
-
;;
|
146
|
-
|
147
|
-
'server'*'-H')
|
148
|
-
while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
|
155
|
+
'new spider'*)
|
156
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -W "$(_ronin-web_completions_filter "--host --domain --site --every-link --every-url --every-failed-url --every-url-like --all-headers --every-page --every-ok-page --every-redirect-page --every-timedout-page --every-bad-request-page --every-unauthorized-page --every-forbidden-page --every-missing-page --every-internal-server-error-page --every-txt-page --every-html-page --every-xml-page --every-xsl-page --every-javascript-page --every-css-page --every-rss-page --every-atom-page --every-ms-word-page --every-pdf-page --every-zip-page --every-doc --every-html-doc --every-xml-doc --every-xsl-doc --every-rss-doc --every-atom-doc")" -- "$cur")
|
149
157
|
;;
|
150
158
|
|
151
159
|
'server'*'-r')
|
152
|
-
while read -r; do COMPREPLY+=(
|
160
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A directory -- "$cur")
|
153
161
|
;;
|
154
162
|
|
155
|
-
'
|
156
|
-
while read -r; do COMPREPLY+=(
|
163
|
+
'server'*'-H')
|
164
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
|
157
165
|
;;
|
158
166
|
|
159
|
-
'
|
160
|
-
while read -r; do COMPREPLY+=(
|
167
|
+
'wordlist'*)
|
168
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--host --domain --site --open-timeout --read-timeout --ssl-timeout --continue-timeout --keep-alive-timeout --proxy -P --header -H --host-header --user-agent-string -U --user-agent -u --referer -R --delay -d --limit -l --max-depth -d --enqueue --visited --strip-fragments --strip-query --visit-scheme --visit-schemes-like --ignore-scheme --ignore-schemes-like --visit-host --visit-hosts-like --ignore-host --ignore-hosts-like --visit-port --visit-ports-like --ignore-port --ignore-ports-like --visit-link --visit-links-like --ignore-link --ignore-links-like --visit-ext --visit-exts-like --ignore-ext --ignore-exts-like --robots -r --output -o --content-xpath -X --content-css-path -C --meta-tags --no-meta-tags --comments --no-comments --alt-tags --no-alt-tags --paths --query-params-names --query-param-values --only-paths --only-query-param --only-query-param-values --format -f --append -A --lang -L --stop-word --ignore-word --digits --no-digits --special-char --numbers --no-numbers --acronyms --no-acronyms --normalize-case --no-normalize-case --normalize-apostrophes --no-normalize-apostrophes --normalize-acronyms --no-normalize-acronyms")" -- "$cur")
|
161
169
|
;;
|
162
170
|
|
163
171
|
'new app'*)
|
164
|
-
while read -r; do COMPREPLY+=(
|
172
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A directory -W "$(_ronin-web_completions_filter "--port --ruby-version --git --dockerfile -D")" -- "$cur")
|
165
173
|
;;
|
166
174
|
|
167
|
-
'
|
168
|
-
while read -r; do COMPREPLY+=(
|
175
|
+
'browser'*)
|
176
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--browser -B --width -W --height -H --headless --visible --x -x --y -y --inject-js --inject-js-file --bypass-csp --print-urls --print-status --print-requests --print-responses --print-traffic --print-headers --print-cookies --print-body --shell --js-shell")" -- "$cur")
|
169
177
|
;;
|
170
178
|
|
171
179
|
'spider'*)
|
172
|
-
while read -r; do COMPREPLY+=(
|
180
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--host --domain --site --open-timeout --read-timeout --ssl-timeout --continue-timeout --keep-alive-timeout --proxy -P --header -H --host-header --user-agent-string -U --user-agent -u --referer -R --delay -d --limit -l --max-depth -d --enqueue --visited --strip-fragments --strip-query --visit-scheme --visit-schemes-like --ignore-scheme --ignore-schemes-like --visit-host --visit-hosts-like --ignore-host --ignore-hosts-like --visit-port --visit-ports-like --ignore-port --ignore-ports-like --visit-link --visit-links-like --ignore-link --ignore-links-like --visit-ext --visit-exts-like --ignore-ext --ignore-exts-like --robots -r --verbose -v --print-stauts --print-headers --print-header --history --archive --git-archive --xpath -X --css-path -C --print-hosts --print-certs --save-certs --print-js-strings --print-js-url-strings --print-js-path-strings --print-js-absolute-path-strings --print-js-relative-path-strings --print-html-comments --print-js-comments --print-comments")" -- "$cur")
|
173
181
|
;;
|
174
182
|
|
175
|
-
'
|
176
|
-
while read -r; do COMPREPLY+=(
|
183
|
+
'server'*)
|
184
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--host -H --port -p --basic-auth -A --dir -d --file -f --root -r --redirect -R")" -- "$cur")
|
177
185
|
;;
|
178
186
|
|
179
|
-
'
|
180
|
-
while read -r; do COMPREPLY+=(
|
187
|
+
'vulns'*)
|
188
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--host --domain --site --open-timeout --read-timeout --ssl-timeout --continue-timeout --keep-alive-timeout --proxy -P --header -H --host-header --user-agent-string -U --user-agent -u --referer -R --delay -d --limit -l --max-depth -d --enqueue --visited --strip-fragments --strip-query --visit-scheme --visit-schemes-like --ignore-scheme --ignore-schemes-like --visit-host --visit-hosts-like --ignore-host --ignore-hosts-like --visit-port --visit-ports-like --ignore-port --ignore-ports-like --visit-link --visit-links-like --ignore-link --ignore-links-like --visit-ext --visit-exts-like --ignore-ext --ignore-exts-like --robots -r --db --db-uri --db-file --first -F --all -A --print-curl --print-http --import --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")
|
181
189
|
;;
|
182
190
|
|
183
191
|
'html'*)
|
184
|
-
while read -r; do COMPREPLY+=(
|
192
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--xpath -X --first -F --text -t --css-path -C --meta-tags -M --links -l --style -S --stylesheet-urls -s --javascript -J --javascript-urls -j --form-urls -f --urls -u")" -- "$cur")
|
185
193
|
;;
|
186
194
|
|
187
|
-
'
|
188
|
-
while read -r; do COMPREPLY+=(
|
195
|
+
'diff'*)
|
196
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--format -f")" -- "$cur")
|
189
197
|
;;
|
190
198
|
|
191
199
|
'xml'*)
|
192
|
-
while read -r; do COMPREPLY+=(
|
200
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--xpath -X --first -F --text -t")" -- "$cur")
|
201
|
+
;;
|
202
|
+
|
203
|
+
'new'*)
|
204
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "help app nokogiri server spider")" -- "$cur")
|
193
205
|
;;
|
194
206
|
|
195
207
|
*)
|
196
|
-
while read -r; do COMPREPLY+=(
|
208
|
+
while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-web_completions_filter "--version -V help browser completion diff html irb new reverse-proxy screenshot server session-cookie spider user-agent vulns wordlist xml")" -- "$cur")
|
197
209
|
;;
|
198
210
|
|
199
211
|
esac
|
200
212
|
} &&
|
201
|
-
complete -F _ronin-web_completions ronin-web
|
213
|
+
complete -F _ronin-web_completions ronin-web
|
202
214
|
|
203
215
|
# ex: filetype=sh
|
data/gemspec.yml
CHANGED
@@ -4,7 +4,7 @@ description:
|
|
4
4
|
ronin-web is a Ruby library that provides common web security commands and
|
5
5
|
additional libraries.
|
6
6
|
|
7
|
-
license: GPL-3.0
|
7
|
+
license: GPL-3.0-or-later
|
8
8
|
authors: Postmodern
|
9
9
|
email: postmodern.mod3@gmail.com
|
10
10
|
homepage: https://github.com/ronin-rb/ronin-web#readme
|
@@ -49,15 +49,15 @@ dependencies:
|
|
49
49
|
open_namespace: ~> 0.4
|
50
50
|
wordlist: ~> 1.0, >= 1.0.1
|
51
51
|
# Ronin dependencies:
|
52
|
-
ronin-support: ~> 1.1
|
53
|
-
ronin-support-web: ~> 0.1
|
54
|
-
ronin-web-browser: ~> 0.1
|
52
|
+
ronin-support: ~> 1.1
|
53
|
+
ronin-support-web: ~> 0.1
|
54
|
+
ronin-web-browser: ~> 0.1
|
55
55
|
ronin-web-server: ~> 0.1, >= 0.1.1
|
56
|
-
ronin-web-spider: ~> 0.2
|
56
|
+
ronin-web-spider: ~> 0.2
|
57
57
|
ronin-web-user_agents: ~> 0.1
|
58
|
-
ronin-web-session_cookie: ~> 0.1
|
59
|
-
ronin-core: ~> 0.2
|
60
|
-
ronin-vulns: ~> 0.2
|
58
|
+
ronin-web-session_cookie: ~> 0.1
|
59
|
+
ronin-core: ~> 0.2
|
60
|
+
ronin-vulns: ~> 0.2
|
61
61
|
|
62
62
|
development_dependencies:
|
63
63
|
bundler: ~> 2.0
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
# ronin-web - A collection of useful web helper methods and commands.
|
4
4
|
#
|
5
|
-
# Copyright (c) 2006-
|
5
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
6
6
|
#
|
7
7
|
# ronin-web is free software: you can redistribute it and/or modify
|
8
8
|
# it under the terms of the GNU General Public License as published by
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
# ronin-web - A collection of useful web helper methods and commands.
|
4
4
|
#
|
5
|
-
# Copyright (c) 2006-
|
5
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
6
6
|
#
|
7
7
|
# ronin-web is free software: you can redistribute it and/or modify
|
8
8
|
# it under the terms of the GNU General Public License as published by
|
@@ -19,9 +19,10 @@
|
|
19
19
|
#
|
20
20
|
|
21
21
|
require 'ronin/core/cli/command_shell'
|
22
|
-
require 'ronin/web/cli/js_shell'
|
23
22
|
require 'ronin/web/browser'
|
24
23
|
|
24
|
+
require_relative 'js_shell'
|
25
|
+
|
25
26
|
module Ronin
|
26
27
|
module Web
|
27
28
|
class CLI
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
# ronin-web - A collection of useful web helper methods and commands.
|
4
4
|
#
|
5
|
-
# Copyright (c) 2006-
|
5
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
6
6
|
#
|
7
7
|
# ronin-web is free software: you can redistribute it and/or modify
|
8
8
|
# it under the terms of the GNU General Public License as published by
|
@@ -18,10 +18,10 @@
|
|
18
18
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
19
19
|
#
|
20
20
|
|
21
|
-
require 'ronin/web/root'
|
22
|
-
|
23
21
|
require 'ronin/core/cli/command'
|
24
22
|
|
23
|
+
require_relative '../root'
|
24
|
+
|
25
25
|
module Ronin
|
26
26
|
module Web
|
27
27
|
class CLI
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
# ronin-web - A collection of useful web helper methods and commands.
|
4
4
|
#
|
5
|
-
# Copyright (c) 2006-
|
5
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
6
6
|
#
|
7
7
|
# ronin-web is free software: you can redistribute it and/or modify
|
8
8
|
# it under the terms of the GNU General Public License as published by
|
@@ -18,10 +18,10 @@
|
|
18
18
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
19
19
|
#
|
20
20
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
21
|
+
require_relative '../command'
|
22
|
+
require_relative '../browser_options'
|
23
|
+
require_relative '../browser_shell'
|
24
|
+
require_relative '../js_shell'
|
25
25
|
|
26
26
|
require 'command_kit/colors'
|
27
27
|
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
# ronin-web - A collection of useful web helper methods and commands.
|
4
4
|
#
|
5
|
-
# Copyright (c) 2006-
|
5
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
6
6
|
#
|
7
7
|
# ronin-web is free software: you can redistribute it and/or modify
|
8
8
|
# it under the terms of the GNU General Public License as published by
|
@@ -18,9 +18,10 @@
|
|
18
18
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
19
19
|
#
|
20
20
|
|
21
|
-
require 'ronin/web/root'
|
22
21
|
require 'ronin/core/cli/completion_command'
|
23
22
|
|
23
|
+
require_relative '../../root'
|
24
|
+
|
24
25
|
module Ronin
|
25
26
|
module Web
|
26
27
|
class CLI
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
# ronin-web - A collection of useful web helper methods and commands.
|
4
4
|
#
|
5
|
-
# Copyright (c) 2006-
|
5
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
6
6
|
#
|
7
7
|
# ronin-web is free software: you can redistribute it and/or modify
|
8
8
|
# it under the terms of the GNU General Public License as published by
|
@@ -18,9 +18,9 @@
|
|
18
18
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
19
19
|
#
|
20
20
|
|
21
|
-
|
22
|
-
require 'ronin/support/network/http'
|
21
|
+
require_relative '../command'
|
23
22
|
|
23
|
+
require 'ronin/support/network/http'
|
24
24
|
require 'command_kit/colors'
|
25
25
|
require 'nokogiri/diff'
|
26
26
|
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
# ronin-web - A collection of useful web helper methods and commands.
|
4
4
|
#
|
5
|
-
# Copyright (c) 2006-
|
5
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
6
6
|
#
|
7
7
|
# ronin-web is free software: you can redistribute it and/or modify
|
8
8
|
# it under the terms of the GNU General Public License as published by
|
@@ -18,9 +18,9 @@
|
|
18
18
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
19
19
|
#
|
20
20
|
|
21
|
-
|
22
|
-
require 'ronin/support/network/http'
|
21
|
+
require_relative 'xml'
|
23
22
|
|
23
|
+
require 'ronin/support/network/http'
|
24
24
|
require 'nokogiri'
|
25
25
|
|
26
26
|
module Ronin
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
# ronin-web - A collection of useful web helper methods and commands.
|
4
4
|
#
|
5
|
-
# Copyright (c) 2006-
|
5
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
6
6
|
#
|
7
7
|
# ronin-web is free software: you can redistribute it and/or modify
|
8
8
|
# it under the terms of the GNU General Public License as published by
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
19
19
|
#
|
20
20
|
|
21
|
-
|
22
|
-
|
21
|
+
require_relative '../command'
|
22
|
+
require_relative '../ruby_shell'
|
23
23
|
|
24
24
|
module Ronin
|
25
25
|
module Web
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
#
|
3
|
-
# Copyright (c) 2006-
|
3
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
4
4
|
#
|
5
5
|
# ronin-web is free software: you can redistribute it and/or modify
|
6
6
|
# it under the terms of the GNU General Public License as published by
|
@@ -16,8 +16,8 @@
|
|
16
16
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
17
17
|
#
|
18
18
|
|
19
|
-
|
20
|
-
|
19
|
+
require_relative '../../command'
|
20
|
+
require_relative '../../../root'
|
21
21
|
|
22
22
|
require 'ronin/core/cli/generator'
|
23
23
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
#
|
3
|
-
# Copyright (c) 2006-
|
3
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
4
4
|
#
|
5
5
|
# ronin-web is free software: you can redistribute it and/or modify
|
6
6
|
# it under the terms of the GNU General Public License as published by
|
@@ -16,8 +16,8 @@
|
|
16
16
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
17
17
|
#
|
18
18
|
|
19
|
-
|
20
|
-
|
19
|
+
require_relative '../../command'
|
20
|
+
require_relative '../../../root'
|
21
21
|
|
22
22
|
require 'ronin/core/cli/generator'
|
23
23
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
#
|
3
|
-
# Copyright (c) 2006-
|
3
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
4
4
|
#
|
5
5
|
# ronin-web is free software: you can redistribute it and/or modify
|
6
6
|
# it under the terms of the GNU General Public License as published by
|
@@ -16,8 +16,8 @@
|
|
16
16
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
17
17
|
#
|
18
18
|
|
19
|
-
|
20
|
-
|
19
|
+
require_relative '../../command'
|
20
|
+
require_relative '../../../root'
|
21
21
|
|
22
22
|
require 'ronin/core/cli/generator'
|
23
23
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
#
|
3
|
-
# Copyright (c) 2006-
|
3
|
+
# Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
|
4
4
|
#
|
5
5
|
# ronin-web is free software: you can redistribute it and/or modify
|
6
6
|
# it under the terms of the GNU General Public License as published by
|
@@ -16,8 +16,8 @@
|
|
16
16
|
# along with ronin-web. If not, see <https://www.gnu.org/licenses/>.
|
17
17
|
#
|
18
18
|
|
19
|
-
|
20
|
-
|
19
|
+
require_relative '../../command'
|
20
|
+
require_relative '../../../root'
|
21
21
|
|
22
22
|
require 'ronin/core/cli/generator'
|
23
23
|
|