ronin 2.1.0 → 2.1.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.
Files changed (106) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +1 -0
  3. data/ChangeLog.md +15 -1
  4. data/README.md +1 -1
  5. data/data/completions/ronin +204 -164
  6. data/gemspec.yml +1 -1
  7. data/lib/ronin/cli/binary_template.rb +1 -1
  8. data/lib/ronin/cli/char_set_options.rb +1 -1
  9. data/lib/ronin/cli/cipher_command.rb +4 -4
  10. data/lib/ronin/cli/command.rb +1 -1
  11. data/lib/ronin/cli/commands/archive.rb +2 -2
  12. data/lib/ronin/cli/commands/asn.rb +2 -2
  13. data/lib/ronin/cli/commands/banner_grab.rb +3 -3
  14. data/lib/ronin/cli/commands/bitflip.rb +3 -3
  15. data/lib/ronin/cli/commands/bitsquat.rb +2 -2
  16. data/lib/ronin/cli/commands/cert_dump.rb +3 -3
  17. data/lib/ronin/cli/commands/cert_gen.rb +2 -2
  18. data/lib/ronin/cli/commands/cert_grab.rb +3 -3
  19. data/lib/ronin/cli/commands/completion.rb +1 -1
  20. data/lib/ronin/cli/commands/decode.rb +16 -13
  21. data/lib/ronin/cli/commands/decrypt.rb +2 -2
  22. data/lib/ronin/cli/commands/dns.rb +3 -3
  23. data/lib/ronin/cli/commands/dns_proxy.rb +2 -2
  24. data/lib/ronin/cli/commands/email_addr.rb +2 -2
  25. data/lib/ronin/cli/commands/encode.rb +15 -12
  26. data/lib/ronin/cli/commands/encrypt.rb +2 -2
  27. data/lib/ronin/cli/commands/entropy.rb +2 -2
  28. data/lib/ronin/cli/commands/escape.rb +10 -10
  29. data/lib/ronin/cli/commands/extract.rb +3 -3
  30. data/lib/ronin/cli/commands/grep.rb +3 -3
  31. data/lib/ronin/cli/commands/hexdump.rb +2 -2
  32. data/lib/ronin/cli/commands/highlight.rb +3 -3
  33. data/lib/ronin/cli/commands/hmac.rb +3 -3
  34. data/lib/ronin/cli/commands/homoglyph.rb +2 -2
  35. data/lib/ronin/cli/commands/host.rb +3 -3
  36. data/lib/ronin/cli/commands/http.rb +9 -7
  37. data/lib/ronin/cli/commands/ip.rb +2 -2
  38. data/lib/ronin/cli/commands/iprange.rb +2 -2
  39. data/lib/ronin/cli/commands/irb.rb +3 -3
  40. data/lib/ronin/cli/commands/md5.rb +2 -2
  41. data/lib/ronin/cli/commands/netcat.rb +2 -2
  42. data/lib/ronin/cli/commands/new/dns_listener.rb +3 -2
  43. data/lib/ronin/cli/commands/new/dns_proxy.rb +3 -2
  44. data/lib/ronin/cli/commands/new/exploit.rb +3 -2
  45. data/lib/ronin/cli/commands/new/http_listener.rb +3 -2
  46. data/lib/ronin/cli/commands/new/nokogiri.rb +3 -2
  47. data/lib/ronin/cli/commands/new/payload.rb +3 -2
  48. data/lib/ronin/cli/commands/new/project.rb +3 -2
  49. data/lib/ronin/cli/commands/new/script.rb +3 -2
  50. data/lib/ronin/cli/commands/new/web_app.rb +3 -2
  51. data/lib/ronin/cli/commands/new/web_server.rb +3 -2
  52. data/lib/ronin/cli/commands/new/web_spider.rb +3 -2
  53. data/lib/ronin/cli/commands/new.rb +2 -2
  54. data/lib/ronin/cli/commands/pack.rb +3 -3
  55. data/lib/ronin/cli/commands/proxy.rb +3 -3
  56. data/lib/ronin/cli/commands/public_suffix_list.rb +2 -2
  57. data/lib/ronin/cli/commands/quote.rb +10 -10
  58. data/lib/ronin/cli/commands/rot.rb +2 -2
  59. data/lib/ronin/cli/commands/sha1.rb +2 -2
  60. data/lib/ronin/cli/commands/sha256.rb +2 -2
  61. data/lib/ronin/cli/commands/sha512.rb +2 -2
  62. data/lib/ronin/cli/commands/strings.rb +3 -3
  63. data/lib/ronin/cli/commands/tips.rb +2 -2
  64. data/lib/ronin/cli/commands/tld_list.rb +2 -2
  65. data/lib/ronin/cli/commands/typo.rb +3 -3
  66. data/lib/ronin/cli/commands/typosquat.rb +3 -3
  67. data/lib/ronin/cli/commands/unarchive.rb +2 -2
  68. data/lib/ronin/cli/commands/unescape.rb +10 -10
  69. data/lib/ronin/cli/commands/unhexdump.rb +2 -2
  70. data/lib/ronin/cli/commands/unpack.rb +3 -3
  71. data/lib/ronin/cli/commands/unquote.rb +10 -10
  72. data/lib/ronin/cli/commands/url.rb +7 -3
  73. data/lib/ronin/cli/commands/xor.rb +3 -3
  74. data/lib/ronin/cli/dns.rb +1 -1
  75. data/lib/ronin/cli/file_processor_command.rb +3 -3
  76. data/lib/ronin/cli/host_and_port.rb +1 -1
  77. data/lib/ronin/cli/http_shell.rb +2 -2
  78. data/lib/ronin/cli/key_options.rb +1 -1
  79. data/lib/ronin/cli/method_options.rb +1 -1
  80. data/lib/ronin/cli/pattern_options.rb +1 -1
  81. data/lib/ronin/cli/printing/http.rb +2 -2
  82. data/lib/ronin/cli/printing/syntax_highlighting.rb +1 -1
  83. data/lib/ronin/cli/ruby_shell.rb +1 -1
  84. data/lib/ronin/cli/string_methods_command.rb +3 -3
  85. data/lib/ronin/cli/string_processor_command.rb +2 -2
  86. data/lib/ronin/cli/typo_options.rb +1 -1
  87. data/lib/ronin/cli/value_processor_command.rb +2 -2
  88. data/lib/ronin/cli.rb +10 -8
  89. data/lib/ronin/root.rb +1 -1
  90. data/lib/ronin/version.rb +2 -2
  91. data/lib/ronin.rb +2 -2
  92. data/man/ronin-decode.1 +3 -3
  93. data/man/ronin-decode.1.md +4 -4
  94. data/man/ronin-encode.1 +4 -4
  95. data/man/ronin-encode.1.md +4 -4
  96. data/man/ronin-escape.1 +4 -4
  97. data/man/ronin-escape.1.md +5 -5
  98. data/man/ronin-quote.1 +4 -4
  99. data/man/ronin-quote.1.md +5 -5
  100. data/man/ronin-unescape.1 +4 -4
  101. data/man/ronin-unescape.1.md +5 -5
  102. data/man/ronin-unquote.1 +3 -3
  103. data/man/ronin-unquote.1.md +4 -4
  104. data/ronin.gemspec +1 -0
  105. metadata +10 -6
  106. data/lib/ronin/ui.rb +0 -22
data/gemspec.yml CHANGED
@@ -9,7 +9,7 @@ description:
9
9
  exploits and/or payloads, running exploits, developing new exploits, managing
10
10
  local databases, fuzzing data, performing recon, and much more.
11
11
 
12
- license: GPL-3.0
12
+ license: GPL-3.0-or-later
13
13
  authors: Postmodern
14
14
  email: postmodern.mod3@gmail.com
15
15
  homepage: https://ronin-rb.dev
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/file_processor_command'
20
- require 'ronin/cli/key_options'
19
+ require_relative 'file_processor_command'
20
+ require_relative 'key_options'
21
21
 
22
22
  require 'ronin/support/crypto/cipher'
23
23
 
@@ -98,7 +98,7 @@ module Ronin
98
98
  #
99
99
  # Opens the file in binary mode.
100
100
  #
101
- # @param [Stirng] path
101
+ # @param [String] path
102
102
  # The path to the file to open.
103
103
  #
104
104
  # @yield [file]
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/file_processor_command'
19
+ require_relative '../file_processor_command'
20
20
  require 'ronin/support/archive'
21
21
 
22
22
  module Ronin
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/command'
19
+ require_relative '../command'
20
20
  require 'ronin/core/cli/logging'
21
21
  require 'ronin/support/network/asn'
22
22
  require 'ronin/support/network/asn/list'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/value_processor_command'
20
- require 'ronin/cli/host_and_port'
19
+ require_relative '../value_processor_command'
20
+ require_relative '../host_and_port'
21
21
 
22
22
  require 'ronin/support/network/tcp'
23
23
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/value_processor_command'
20
- require 'ronin/cli/char_set_options'
19
+ require_relative '../value_processor_command'
20
+ require_relative '../char_set_options'
21
21
  require 'ronin/support/binary/bit_flip/core_ext/string'
22
22
  require 'ronin/support/encoding/hex'
23
23
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/value_processor_command'
19
+ require_relative '../value_processor_command'
20
20
 
21
21
  require 'ronin/support/binary/bit_flip/core_ext/string'
22
22
  require 'ronin/support/text/patterns/network'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/value_processor_command'
20
- require 'ronin/cli/host_and_port'
19
+ require_relative '../value_processor_command'
20
+ require_relative '../host_and_port'
21
21
  require 'ronin/support/crypto/cert'
22
22
  require 'ronin/support/network/ssl'
23
23
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/command'
19
+ require_relative '../command'
20
20
  require 'ronin/support/crypto/cert'
21
21
  require 'ronin/support/crypto/key'
22
22
  require 'ronin/support/crypto/key/rsa'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/value_processor_command'
20
- require 'ronin/cli/host_and_port'
19
+ require_relative '../value_processor_command'
20
+ require_relative '../host_and_port'
21
21
  require 'ronin/support/network/ssl'
22
22
 
23
23
  require 'uri'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/string_methods_command'
19
+ require_relative '../string_methods_command'
20
20
 
21
21
  module Ronin
22
22
  class CLI
@@ -39,17 +39,17 @@ module Ronin
39
39
  # -b, --base64=[strict|url] Base64 decodes the data
40
40
  # -z, --zlib Zlib compresses the data
41
41
  # -g, --gzip gzip compresses the data
42
- # -c, --c Encodes the data as a C string
42
+ # -c, --c Decodes the data as a C string
43
43
  # -X, --hex Hex decode the data (ex: "414141...")
44
44
  # -H, --html HTML decodes the data
45
45
  # -u, --uri URI decodes the data
46
46
  # --http HTTP decodes the data
47
- # -j, --js JavaScript decodes the data
48
- # -S, --shell Encodes the data as a Shell String
49
- # -P, --powershell Encodes the data as a PowerShell String
47
+ # -j, --js Decodes the data as a JavaScript string
48
+ # -S, --shell Decodes the data as a Shell string
49
+ # -P, --powershell Decodes the data as a PowerShell string
50
50
  # --punycode Decodes the data as Punycode
51
51
  # -Q, --quoted-printable Decodes the data as Quoted Printable
52
- # -R, --ruby Ruby decodes the data
52
+ # -R, --ruby Decodes the data as a Ruby string
53
53
  # --uudecode uudecodes the data
54
54
  # -x, --xml XML decodes the data
55
55
  # -h, --help Print help information
@@ -73,13 +73,16 @@ module Ronin
73
73
  option :base64, short: '-b',
74
74
  equals: true,
75
75
  value: {
76
- type: [:strict, :url],
76
+ type: {
77
+ 'strict' => :strict,
78
+ 'url' => :url_safe
79
+ },
77
80
  required: false
78
81
  },
79
82
  desc: 'Base64 decodes the data' do |mode=nil|
80
83
  require 'ronin/support/encoding/base64'
81
84
  @method_calls << if mode
82
- [:base64_decode, [mode]]
85
+ [:base64_decode, [], {mode: mode}]
83
86
  else
84
87
  :base64_decode
85
88
  end
@@ -127,19 +130,19 @@ module Ronin
127
130
  end
128
131
 
129
132
  option :js, short: '-j',
130
- desc: 'JavaScript decodes the data' do
133
+ desc: 'Decodes the data as a JavaScript string' do
131
134
  require 'ronin/support/encoding/js'
132
135
  @method_calls << :js_decode
133
136
  end
134
137
 
135
138
  option :shell, short: '-S',
136
- desc: 'Decodes the data as a Shell String' do
139
+ desc: 'Decodes the data as a Shell string' do
137
140
  require 'ronin/support/encoding/shell'
138
141
  @method_calls << :shell_decode
139
142
  end
140
143
 
141
144
  option :powershell, short: '-P',
142
- desc: 'Decodes the data as a PowerShell String' do
145
+ desc: 'Decodes the data as a PowerShell string' do
143
146
  require 'ronin/support/encoding/powershell'
144
147
  @method_calls << :powershell_decode
145
148
  end
@@ -156,7 +159,7 @@ module Ronin
156
159
  end
157
160
 
158
161
  option :ruby, short: '-R',
159
- desc: 'Ruby decodes the data' do
162
+ desc: 'Decodes the data as a Ruby string' do
160
163
  require 'ronin/support/encoding/ruby'
161
164
  @method_calls << :ruby_decode
162
165
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/cipher_command'
19
+ require_relative '../cipher_command'
20
20
 
21
21
  module Ronin
22
22
  class CLI
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/value_processor_command'
20
- require 'ronin/cli/dns'
19
+ require_relative '../value_processor_command'
20
+ require_relative '../dns'
21
21
  require 'ronin/support/network/dns'
22
22
 
23
23
  module Ronin
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/command'
19
+ require_relative '../command'
20
20
  require 'ronin/core/cli/logging'
21
21
  require 'ronin/dns/proxy'
22
22
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/value_processor_command'
19
+ require_relative '../value_processor_command'
20
20
 
21
21
  require 'ronin/support/network/email_address'
22
22
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/string_methods_command'
19
+ require_relative '../string_methods_command'
20
20
 
21
21
  module Ronin
22
22
  class CLI
@@ -44,12 +44,12 @@ module Ronin
44
44
  # -H, --html HTML encodes the data
45
45
  # -u, --uri URI encodes the data
46
46
  # --http HTTP encodes the data
47
- # -j, --js JavaScript encodes the data
48
- # -S, --shell Encodes the data as a Shell String
49
- # -P, --powershell Encodes the data as a PowerShell String
47
+ # -j, --js Encodes the data as a JavaScript string
48
+ # -S, --shell Encodes the data as a Shell string
49
+ # -P, --powershell Encodes the data as a PowerShell string
50
50
  # --punycode Encodes the data as Punycode
51
51
  # -Q, --quoted-printable Encodes the data as Quoted Printable
52
- # -R, --ruby Encodes the data as a Ruby String
52
+ # -R, --ruby Encodes the data as a Ruby string
53
53
  # --uuencode uuencodes the data
54
54
  # -x, --xml XML encodes the data
55
55
  # -h, --help Print help information
@@ -73,13 +73,16 @@ module Ronin
73
73
  option :base64, short: '-b',
74
74
  equals: true,
75
75
  value: {
76
- type: [:strict, :url],
76
+ type: {
77
+ 'strict' => :strict,
78
+ 'url' => :url_safe
79
+ },
77
80
  required: false
78
81
  },
79
82
  desc: 'Base64 encodes the data' do |mode=nil|
80
83
  require 'ronin/support/encoding/base64'
81
84
  @method_calls << if mode
82
- [:base64_encode, [mode]]
85
+ [:base64_encode, [], {mode: mode}]
83
86
  else
84
87
  :base64_encode
85
88
  end
@@ -127,19 +130,19 @@ module Ronin
127
130
  end
128
131
 
129
132
  option :js, short: '-j',
130
- desc: 'JavaScript encodes the data' do
133
+ desc: 'Encodes the data as a JavaScript string' do
131
134
  require 'ronin/support/encoding/js'
132
135
  @method_calls << :js_encode
133
136
  end
134
137
 
135
138
  option :shell, short: '-S',
136
- desc: 'Encodes the data as a Shell String' do
139
+ desc: 'Encodes the data as a Shell string' do
137
140
  require 'ronin/support/encoding/shell'
138
141
  @method_calls << :shell_encode
139
142
  end
140
143
 
141
144
  option :powershell, short: '-P',
142
- desc: 'Encodes the data as a PowerShell String' do
145
+ desc: 'Encodes the data as a PowerShell string' do
143
146
  require 'ronin/support/encoding/powershell'
144
147
  @method_calls << :powershell_encode
145
148
  end
@@ -156,7 +159,7 @@ module Ronin
156
159
  end
157
160
 
158
161
  option :ruby, short: '-R',
159
- desc: 'Encodes the data as a Ruby String' do
162
+ desc: 'Encodes the data as a Ruby string' do
160
163
  require 'ronin/support/encoding/ruby'
161
164
  @method_calls << :ruby_encode
162
165
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/cipher_command'
19
+ require_relative '../cipher_command'
20
20
 
21
21
  module Ronin
22
22
  class CLI
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/file_processor_command'
19
+ require_relative '../file_processor_command'
20
20
 
21
21
  require 'ronin/support/text/patterns'
22
22
  require 'ronin/support/text/entropy'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/string_methods_command'
19
+ require_relative '../string_methods_command'
20
20
 
21
21
  module Ronin
22
22
  class CLI
@@ -39,11 +39,11 @@ module Ronin
39
39
  # -H, --html HTML escapes the data
40
40
  # -u, --uri URI escapes the data
41
41
  # --http HTTP escapes the data
42
- # -j, --js JavaScript escapes the data
43
- # -S, --shell Escapes the data as a Shell String
44
- # -P, --powershell Escapes the data as a PowerShell String
42
+ # -j, --js Encodes the data as a JavaScript string
43
+ # -S, --shell Escapes the data as a Shell string
44
+ # -P, --powershell Escapes the data as a PowerShell string
45
45
  # -Q, --quoted-printable Escapes the data as Quoted Printable
46
- # -R, --ruby Escapes the data as a Ruby String
46
+ # -R, --ruby Escapes the data as a Ruby string
47
47
  # -x, --xml XML escapes the data
48
48
  # -h, --help Print help information
49
49
  #
@@ -83,19 +83,19 @@ module Ronin
83
83
  end
84
84
 
85
85
  option :js, short: '-j',
86
- desc: 'JavaScript escapes the data' do
86
+ desc: 'Encodes the data as a JavaScript string' do
87
87
  require 'ronin/support/encoding/js'
88
88
  @method_calls << :js_escape
89
89
  end
90
90
 
91
91
  option :shell, short: '-S',
92
- desc: 'Escapes the data as a Shell String' do
92
+ desc: 'Escapes the data as a Shell string' do
93
93
  require 'ronin/support/encoding/shell'
94
94
  @method_calls << :shell_escape
95
95
  end
96
96
 
97
97
  option :powershell, short: '-P',
98
- desc: 'Escapes the data as a PowerShell String' do
98
+ desc: 'Escapes the data as a PowerShell string' do
99
99
  require 'ronin/support/encoding/powershell'
100
100
  @method_calls << :powershell_escape
101
101
  end
@@ -107,7 +107,7 @@ module Ronin
107
107
  end
108
108
 
109
109
  option :ruby, short: '-R',
110
- desc: 'Escapes the data as a Ruby String' do
110
+ desc: 'Escapes the data as a Ruby string' do
111
111
  require 'ronin/support/encoding/ruby'
112
112
  @method_calls << :ruby_escape
113
113
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/file_processor_command'
20
- require 'ronin/cli/pattern_options'
19
+ require_relative '../file_processor_command'
20
+ require_relative '../pattern_options'
21
21
 
22
22
  module Ronin
23
23
  class CLI
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/file_processor_command'
20
- require 'ronin/cli/pattern_options'
19
+ require_relative '../file_processor_command'
20
+ require_relative '../pattern_options'
21
21
 
22
22
  require 'command_kit/colors'
23
23
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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,7 +16,7 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/file_processor_command'
19
+ require_relative '../file_processor_command'
20
20
 
21
21
  require 'hexdump'
22
22
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  #
3
- # Copyright (c) 2006-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
3
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
4
4
  #
5
5
  # Ronin 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. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
- require 'ronin/cli/file_processor_command'
20
- require 'ronin/cli/printing/syntax_highlighting'
19
+ require_relative '../file_processor_command'
20
+ require_relative '../printing/syntax_highlighting'
21
21
 
22
22
  require 'command_kit/pager'
23
23