ronin 2.0.0.beta1 → 2.0.0.beta2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +72 -4
  3. data/data/new/project/Rakefile +3 -3
  4. data/data/new/project/project.rb.erb +1 -1
  5. data/gemspec.yml +12 -6
  6. data/lib/ronin/cli/char_set_options.rb +81 -68
  7. data/lib/ronin/cli/commands/dns.rb +3 -95
  8. data/lib/ronin/cli/commands/extract.rb +17 -7
  9. data/lib/ronin/cli/commands/grep.rb +17 -7
  10. data/lib/ronin/cli/commands/hexdump.rb +8 -2
  11. data/lib/ronin/cli/commands/host.rb +6 -88
  12. data/lib/ronin/cli/commands/http.rb +11 -11
  13. data/lib/ronin/cli/commands/public_suffix_list.rb +16 -2
  14. data/lib/ronin/cli/commands/tld_list.rb +16 -2
  15. data/lib/ronin/cli/dns.rb +136 -0
  16. data/lib/ronin/cli/pattern_options.rb +200 -85
  17. data/lib/ronin/cli.rb +5 -0
  18. data/lib/ronin/version.rb +1 -1
  19. data/man/ronin-extract.1 +52 -12
  20. data/man/ronin-extract.1.md +42 -12
  21. data/man/ronin-grep.1 +52 -12
  22. data/man/ronin-grep.1.md +42 -12
  23. data/man/ronin-http.1 +2 -2
  24. data/man/ronin-http.1.md +1 -1
  25. data/ronin.gemspec +2 -1
  26. metadata +15 -25
  27. data/spec/cli/command_spec.rb +0 -10
  28. data/spec/cli/commands/decode_spec.rb +0 -152
  29. data/spec/cli/commands/encode_spec.rb +0 -152
  30. data/spec/cli/commands/escape_spec.rb +0 -128
  31. data/spec/cli/commands/quote_spec.rb +0 -76
  32. data/spec/cli/commands/unescape_spec.rb +0 -128
  33. data/spec/cli/commands/unquote_spec.rb +0 -80
  34. data/spec/cli/fixtures/file.txt +0 -3
  35. data/spec/cli/fixtures/file2.txt +0 -3
  36. data/spec/cli/key_options_spec.rb +0 -56
  37. data/spec/cli/method_options_spec.rb +0 -71
  38. data/spec/cli/string_methods_command_spec.rb +0 -25
  39. data/spec/cli/string_processor_command_spec.rb +0 -258
  40. data/spec/cli/value_processor_command_spec.rb +0 -127
  41. data/spec/spec_helper.rb +0 -5
  42. data/spec/version_spec.rb +0 -11
@@ -43,7 +43,7 @@ module Ronin
43
43
  # --phone-number Searches for all phone numbers
44
44
  # --ssn Searches for all Social Security Numbers (SSNs)
45
45
  # --amex-cc Searches for all AMEX Credit Card numbers
46
- # --discover-cc Searches for all Discord Card numbers
46
+ # --discover-cc Searches for all Discover Card numbers
47
47
  # --mastercard-cc Searches for all MasterCard numbers
48
48
  # --visa-cc Searches for all VISA Credit Card numbers
49
49
  # --visa-mastercard-cc Searches for all VISA MasterCard numbers
@@ -74,8 +74,8 @@ module Ronin
74
74
  # --ec-public-key Searches for all EC public key data
75
75
  # --public-key Searches for all public key data
76
76
  # --aws-access-key-id Searches for all AWS access key IDs
77
- # --aws-secret-access-key Searches for all AWS secret access key
78
- # -A, --api-key Secretes for all API keys
77
+ # --aws-secret-access-key Searches for all AWS secret access keys
78
+ # -A, --api-key Searches for all API keys
79
79
  # --single-quoted-string Searches for all single-quoted strings
80
80
  # --double-quoted-string Searches for all double-quoted strings
81
81
  # -S, --string Searches for all quoted strings
@@ -92,76 +92,124 @@ module Ronin
92
92
  # The command including {PatternOptions}.
93
93
  #
94
94
  def self.included(command)
95
+ define_numeric_options(command)
96
+ define_language_options(command)
97
+ define_network_options(command)
98
+ define_pii_options(command)
99
+ define_file_system_options(command)
100
+ define_source_code_options(command)
101
+ define_crypto_options(command)
102
+ define_credentials_options(command)
103
+
104
+ command.option :regexp, short: '-e',
105
+ value: {type: Regexp},
106
+ desc: 'Custom regular expression to search for' do |regexp|
107
+ @pattern = regexp
108
+ end
109
+ end
110
+
111
+ #
112
+ # Defines numeric pattern options.
113
+ #
114
+ # @param [Class<Command>] command
115
+ # The command including {PatternOptions}.
116
+ #
117
+ def self.define_numeric_options(command)
95
118
  command.option :number, short: '-N',
96
- desc: 'Searches for all numbers' do
97
- @pattern = NUMBER
98
- end
119
+ desc: 'Searches for all numbers' do
120
+ @pattern = NUMBER
121
+ end
99
122
 
100
123
  command.option :hex_number, short: '-X',
101
- desc: 'Searches for all hexadecimal numbers' do
102
- @pattern = NUMBER
103
- end
124
+ desc: 'Searches for all hexadecimal numbers' do
125
+ @pattern = HEX_NUMBER
126
+ end
104
127
 
105
128
  command.option :version_number, short: '-V',
106
129
  desc: 'Searches for all version numbers' do
107
130
  @pattern = VERSION_NUMBER
108
131
  end
109
132
 
133
+ end
134
+
135
+ #
136
+ # Defines language pattern options.
137
+ #
138
+ # @param [Class<Command>] command
139
+ # The command including {PatternOptions}.
140
+ #
141
+ def self.define_language_options(command)
110
142
  command.option :word, short: '-w',
111
- desc: 'Searches for all words' do
112
- @pattern = WORD
113
- end
143
+ desc: 'Searches for all words' do
144
+ @pattern = WORD
145
+ end
146
+ end
114
147
 
148
+ #
149
+ # Defines network pattern options.
150
+ #
151
+ # @param [Class<Command>] command
152
+ # The command including {PatternOptions}.
153
+ #
154
+ def self.define_network_options(command)
115
155
  command.option :mac_addr, desc: 'Searches for all MAC addresses' do
116
156
  @pattern = MAC_ADDR
117
157
  end
118
158
 
119
159
  command.option :ipv4_addr, short: '-4',
120
- desc: 'Searches for all IPv4 addresses' do
121
- @pattern = IPV4_ADDR
122
- end
160
+ desc: 'Searches for all IPv4 addresses' do
161
+ @pattern = IPV4_ADDR
162
+ end
123
163
 
124
164
  command.option :ipv6_addr, short: '-6',
125
- desc: 'Searches for all IPv6 addresses' do
126
- @pattern = IPV6_ADDR
127
- end
165
+ desc: 'Searches for all IPv6 addresses' do
166
+ @pattern = IPV6_ADDR
167
+ end
128
168
 
129
169
  command.option :ip, short: '-I',
130
- desc: 'Searches for all IP addresses' do
131
- @pattern = IP
132
- end
170
+ desc: 'Searches for all IP addresses' do
171
+ @pattern = IP
172
+ end
133
173
 
134
174
  command.option :host, short: '-H',
135
- desc: 'Searches for all host names' do
136
- @pattern = HOST_NAME
137
- end
175
+ desc: 'Searches for all host names' do
176
+ @pattern = HOST_NAME
177
+ end
138
178
 
139
179
  command.option :domain, short: '-D',
140
- desc: 'Searches for all domain names' do
141
- @pattern = DOMAIN
142
- end
180
+ desc: 'Searches for all domain names' do
181
+ @pattern = DOMAIN
182
+ end
143
183
 
144
184
  command.option :uri, desc: 'Searches for all URIs' do
145
185
  @pattern = URI
146
186
  end
147
187
 
148
188
  command.option :url, short: '-U',
149
- desc: 'Searches for all URLs' do
150
- @pattern = URL
151
- end
189
+ desc: 'Searches for all URLs' do
190
+ @pattern = URL
191
+ end
192
+ end
152
193
 
194
+ #
195
+ # Defines PII pattern options.
196
+ #
197
+ # @param [Class<Command>] command
198
+ # The command including {PatternOptions}.
199
+ #
200
+ def self.define_pii_options(command)
153
201
  command.option :user_name, desc: 'Searches for all user names' do
154
202
  @pattern = USER_NAME
155
203
  end
156
204
 
157
205
  command.option :email_addr, short: '-E',
158
- desc: 'Searches for all email addresses' do
159
- @pattern = EMAIL_ADDRESS
160
- end
206
+ desc: 'Searches for all email addresses' do
207
+ @pattern = EMAIL_ADDRESS
208
+ end
161
209
 
162
210
  command.option :obfuscated_email_addr, desc: 'Searches for all obfuscated email addresses' do
163
- @pattern = OBFUSCATED_EMAIL_ADDRESS
164
- end
211
+ @pattern = OBFUSCATED_EMAIL_ADDRESS
212
+ end
165
213
 
166
214
  command.option :phone_number, desc: 'Searches for all phone numbers' do
167
215
  @pattern = PHONE_NUMBER
@@ -175,7 +223,7 @@ module Ronin
175
223
  @pattern = AMEX_CC
176
224
  end
177
225
 
178
- command.option :discover_cc, desc: 'Searches for all Discord Card numbers' do
226
+ command.option :discover_cc, desc: 'Searches for all Discover Card numbers' do
179
227
  @pattern = DISCOVER_CC
180
228
  end
181
229
 
@@ -194,7 +242,15 @@ module Ronin
194
242
  command.option :cc, desc: 'Searches for all Credit Card numbers' do
195
243
  @pattern = CC
196
244
  end
245
+ end
197
246
 
247
+ #
248
+ # Defines File System pattern options.
249
+ #
250
+ # @param [Class<Command>] command
251
+ # The command including {PatternOptions}.
252
+ #
253
+ def self.define_file_system_options(command)
198
254
  command.option :file_name, desc: 'Searches for all file names' do
199
255
  @pattern = FILE_NAME
200
256
  end
@@ -232,22 +288,96 @@ module Ronin
232
288
  end
233
289
 
234
290
  command.option :absolute_path, desc: 'Searches for all absolute paths' do
235
- @pattern = ABSOLUTE_PATHS
291
+ @pattern = ABSOLUTE_PATH
236
292
  end
237
293
 
238
294
  command.option :path, short: '-P',
239
- desc: 'Searches for all paths' do
240
- @pattern = PATH
241
- end
295
+ desc: 'Searches for all paths' do
296
+ @pattern = PATH
297
+ end
298
+ end
299
+
300
+ #
301
+ # Defines source code pattern options.
302
+ #
303
+ # @param [Class<Command>] command
304
+ # The command including {PatternOptions}.
305
+ #
306
+ def self.define_source_code_options(command)
307
+ command.option :identifier, desc: 'Searches for all identifier names' do
308
+ @pattern = IDENTIFIER
309
+ end
242
310
 
243
311
  command.option :variable_name, desc: 'Searches for all variable names' do
244
312
  @pattern = VARIABLE_NAME
245
313
  end
246
314
 
315
+ command.option :variable_assignment, desc: 'Searches for all variable assignments' do
316
+ @pattern = VARIABLE_ASSIGNMENT
317
+ end
318
+
247
319
  command.option :function_name, desc: 'Searches for all function names' do
248
320
  @pattern = FUNCTION_NAME
249
321
  end
250
322
 
323
+ command.option :single_quoted_string, desc: 'Searches for all single-quoted strings' do
324
+ @pattern = SINGLE_QUOTED_STRING
325
+ end
326
+
327
+ command.option :double_quoted_string, desc: 'Searches for all double-quoted strings' do
328
+ @pattern = DOUBLE_QUOTED_STRING
329
+ end
330
+
331
+ command.option :string, short: '-S',
332
+ desc: 'Searches for all quoted strings' do
333
+ @pattern = STRING
334
+ end
335
+
336
+ command.option :base64, short: '-B',
337
+ desc: 'Searches for all Base64 strings' do
338
+ @pattern = BASE64
339
+ end
340
+
341
+ command.option :c_comment, desc: 'Searches for all C comments' do
342
+ @pattern = C_COMMENT
343
+ end
344
+
345
+ command.option :cpp_comment, desc: 'Searches for all C++ comments' do
346
+ @pattern = CPP_COMMENT
347
+ end
348
+
349
+ command.option :java_comment, desc: 'Searches for all Java comments' do
350
+ @pattern = JAVA_COMMENT
351
+ end
352
+
353
+ command.option :javascript_comment, desc: 'Searches for all JavaScript comments' do
354
+ @pattern = JAVASCRIPT_COMMENT
355
+ end
356
+
357
+ command.option :shell_comment, desc: 'Searches for all Shell comments' do
358
+ @pattern = SHELL_COMMENT
359
+ end
360
+
361
+ command.option :ruby_comment, desc: 'Searches for all Ruby comments' do
362
+ @pattern = RUBY_COMMENT
363
+ end
364
+
365
+ command.option :python_comment, desc: 'Searches for all Python comments' do
366
+ @pattern = PYTHON_COMMENT
367
+ end
368
+
369
+ command.option :comment, desc: 'Searches for all comments' do
370
+ @pattern = COMMENT
371
+ end
372
+ end
373
+
374
+ #
375
+ # Defines cryptographic pattern options.
376
+ #
377
+ # @param [Class<Command>] command
378
+ # The command including {PatternOptions}.
379
+ #
380
+ def self.define_crypto_options(command)
251
381
  command.option :md5, desc: 'Searches for all MD5 hashes' do
252
382
  @pattern = MD5
253
383
  end
@@ -268,76 +398,61 @@ module Ronin
268
398
  @pattern = HASH
269
399
  end
270
400
 
271
- command.option :ssh_private_key, desc: 'Searches for all SSH private key data' do
272
- @pattern = SSH_PRIVATE_KEY
273
- end
274
-
275
401
  command.option :ssh_public_key, desc: 'Searches for all SSH public key data' do
276
402
  @pattern = SSH_PUBLIC_KEY
277
403
  end
278
404
 
279
- command.option :private_key, short: '-K',
280
- desc: 'Searches for all private key data' do
281
- @pattern = PRIVATE_KEY
282
- end
283
-
284
- command.option :rsa_public_key, desc: 'Searches for all RSA public key data' do
285
- @pattern = RSA_PUBLIC_KEY
405
+ command.option :public_key, desc: 'Searches for all public key data' do
406
+ @pattern = PUBLIC_KEY
286
407
  end
408
+ end
287
409
 
288
- command.option :dsa_public_key, desc: 'Searches for all DSA public key data' do
289
- @pattern = DSA_PUBLIC_KEY
410
+ #
411
+ # Defines credentials pattern options.
412
+ #
413
+ # @param [Class<Command>] command
414
+ # The command including {PatternOptions}.
415
+ #
416
+ def self.define_credentials_options(command)
417
+ command.option :ssh_private_key, desc: 'Searches for all SSH private key data' do
418
+ @pattern = SSH_PRIVATE_KEY
290
419
  end
291
420
 
292
- command.option :ec_public_key, desc: 'Searches for all EC public key data' do
293
- @pattern = EC_PUBLIC_KEY
421
+ command.option :dsa_private_key, desc: 'Searches for all DSA private key data' do
422
+ @pattern = DSA_PRIVATE_KEY
294
423
  end
295
424
 
296
- command.option :ssh_public_key, desc: 'Searches for all SSH public key data' do
297
- @pattern = SSH_PUBLIC_KEY
425
+ command.option :ec_private_key, desc: 'Searches for all EC private key data' do
426
+ @pattern = EC_PRIVATE_KEY
298
427
  end
299
428
 
300
- command.option :public_key, desc: 'Searches for all public key data' do
301
- @pattern = PUBLIC_KEY
429
+ command.option :rsa_private_key, desc: 'Searches for all RSA private key data' do
430
+ @pattern = RSA_PRIVATE_KEY
302
431
  end
303
432
 
433
+ command.option :private_key, short: '-K',
434
+ desc: 'Searches for all private key data' do
435
+ @pattern = PRIVATE_KEY
436
+ end
437
+
304
438
  command.option :aws_access_key_id, desc: 'Searches for all AWS access key IDs' do
305
439
  @pattern = AWS_ACCESS_KEY_ID
306
440
  end
307
441
 
308
- command.option :aws_secret_access_key, desc: 'Searches for all AWS secret access key' do
442
+ command.option :aws_secret_access_key, desc: 'Searches for all AWS secret access keys' do
309
443
  @pattern = AWS_SECRET_ACCESS_KEY
310
444
  end
311
445
 
312
446
  command.option :api_key, short: '-A',
313
- desc: 'Secretes for all API keys' do
447
+ desc: 'Searches for all API keys' do
314
448
  @pattern = API_KEY
315
449
  end
316
-
317
- command.option :single_quoted_string, desc: 'Searches for all single-quoted strings' do
318
- @pattern = SINGLE_QUOTED_STRING
319
- end
320
-
321
- command.option :double_quoted_string, desc: 'Searches for all double-quoted strings' do
322
- @pattern = DOUBLE_QUOTED_STRING
323
- end
324
-
325
- command.option :string, short: '-S',
326
- desc: 'Searches for all quoted strings' do
327
- @pattern = STRING
328
- end
329
-
330
- command.option :base64, short: '-B',
331
- desc: 'Searches for all Base64 strings' do
332
- @pattern = BASE64
333
- end
334
-
335
- command.option :regexp, short: '-e',
336
- value: {type: Regexp},
337
- desc: 'Custom regular expression to search for' do |regexp|
338
- @pattern = regexp
339
- end
340
450
  end
451
+
452
+ # The pattern to search for.
453
+ #
454
+ # @return [Regexp, nil]
455
+ attr_reader :pattern
341
456
  end
342
457
  end
343
458
  end
data/lib/ronin/cli.rb CHANGED
@@ -16,8 +16,11 @@
16
16
  # along with Ronin. If not, see <https://www.gnu.org/licenses/>.
17
17
  #
18
18
 
19
+ require 'ronin/version'
20
+
19
21
  require 'command_kit/commands'
20
22
  require 'command_kit/commands/auto_load'
23
+ require 'command_kit/options/version'
21
24
 
22
25
  module Ronin
23
26
  #
@@ -34,8 +37,10 @@ module Ronin
34
37
  dir: "#{__dir__}/cli/commands",
35
38
  namespace: "#{self}::Commands"
36
39
  )
40
+ include CommandKit::Options::Version
37
41
 
38
42
  command_name 'ronin'
43
+ version Ronin::VERSION
39
44
 
40
45
  command_aliases['enc'] = 'encode'
41
46
  command_aliases['dec'] = 'decode'
data/lib/ronin/version.rb CHANGED
@@ -18,5 +18,5 @@
18
18
 
19
19
  module Ronin
20
20
  # ronin version
21
- VERSION = '2.0.0.beta1'
21
+ VERSION = '2.0.0.beta2'
22
22
  end
data/man/ronin-extract.1 CHANGED
@@ -95,7 +95,7 @@ Searches for all AMEX Credit Card numbers\.
95
95
  .LP
96
96
  .TP
97
97
  \fB--discover-cc\fR
98
- Searches for all Discord Card numbers\.
98
+ Searches for all Discover Card numbers\.
99
99
  .LP
100
100
  .TP
101
101
  \fB--mastercard-cc\fR
@@ -158,10 +158,18 @@ Searches for all absolute paths\.
158
158
  Searches for all paths\.
159
159
  .LP
160
160
  .TP
161
+ \fB--identifier\fR
162
+ Searches for all identifier names\.
163
+ .LP
164
+ .TP
161
165
  \fB--variable-name\fR
162
166
  Searches for all variable names\.
163
167
  .LP
164
168
  .TP
169
+ \fB--variable-assignment\fR
170
+ Searches for all variable assignments\.
171
+ .LP
172
+ .TP
165
173
  \fB--function-name\fR
166
174
  Searches for all function names\.
167
175
  .LP
@@ -190,24 +198,24 @@ Searches for all hashes\.
190
198
  Searches for all SSH private key data\.
191
199
  .LP
192
200
  .TP
193
- \fB--ssh-public-key\fR
194
- Searches for all SSH public key data\.
201
+ \fB--dsa-private-key\fR
202
+ Searches for all DSA private key data\.
195
203
  .LP
196
204
  .TP
197
- \fB-K\fR, \fB--private-key\fR
198
- Searches for all private key data\.
205
+ \fB--ec-private-key\fR
206
+ Searches for all EC private key data\.
199
207
  .LP
200
208
  .TP
201
- \fB--rsa-public-key\fR
202
- Searches for all RSA public key data\.
209
+ \fB--rsa-private-key\fR
210
+ Searches for all RSA private key data\.
203
211
  .LP
204
212
  .TP
205
- \fB--dsa-public-key\fR
206
- Searches for all DSA public key data\.
213
+ \fB-K\fR, \fB--private-key\fR
214
+ Searches for all private key data\.
207
215
  .LP
208
216
  .TP
209
- \fB--ec-public-key\fR
210
- Searches for all EC public key data\.
217
+ \fB--ssh-public-key\fR
218
+ Searches for all SSH public key data\.
211
219
  .LP
212
220
  .TP
213
221
  \fB--public-key\fR
@@ -219,7 +227,7 @@ Searches for all AWS access key IDs\.
219
227
  .LP
220
228
  .TP
221
229
  \fB--aws-secret-access-key\fR
222
- Searches for all AWS secret access key\.
230
+ Searches for all AWS secret access keys\.
223
231
  .LP
224
232
  .TP
225
233
  \fB-A\fR, \fB--api-key\fR
@@ -242,6 +250,38 @@ Searches for all quoted strings\.
242
250
  \fB-B\fR, \fB--base64\fR
243
251
  Searches for all Base64 strings\.
244
252
  .LP
253
+ .TP
254
+ \fB--c-comment\fR
255
+ Searches for all C comments\.
256
+ .LP
257
+ .TP
258
+ \fB--cpp-comment\fR
259
+ Searches for all C\[pl]\[pl] comments\.
260
+ .LP
261
+ .TP
262
+ \fB--java-comment\fR
263
+ Searches for all Java comments\.
264
+ .LP
265
+ .TP
266
+ \fB--javascript-comment\fR
267
+ Searches for all JavaScript comments\.
268
+ .LP
269
+ .TP
270
+ \fB--shell-comment\fR
271
+ Searches for all Shell comments\.
272
+ .LP
273
+ .TP
274
+ \fB--ruby-comment\fR
275
+ Searches for all Ruby comments\.
276
+ .LP
277
+ .TP
278
+ \fB--python-comment\fR
279
+ Searches for all Python comments\.
280
+ .LP
281
+ .TP
282
+ \fB--comment\fR
283
+ Searches for all comments\.
284
+ .LP
245
285
  .HP
246
286
  \fB-e\fR, \fB--regexp\fR \[sl]\fIREGEXP\fP\[sl]
247
287
  Custom regular expression to search for\.
@@ -71,7 +71,7 @@ Extract common patterns in the given file(s) or input stream.
71
71
  Searches for all AMEX Credit Card numbers.
72
72
 
73
73
  `--discover-cc`
74
- Searches for all Discord Card numbers.
74
+ Searches for all Discover Card numbers.
75
75
 
76
76
  `--mastercard-cc`
77
77
  Searches for all MasterCard numbers.
@@ -118,9 +118,15 @@ Extract common patterns in the given file(s) or input stream.
118
118
  `-P`, `--path`
119
119
  Searches for all paths.
120
120
 
121
+ `--identifier`
122
+ Searches for all identifier names.
123
+
121
124
  `--variable-name`
122
125
  Searches for all variable names.
123
126
 
127
+ `--variable-assignment`
128
+ Searches for all variable assignments.
129
+
124
130
  `--function-name`
125
131
  Searches for all function names.
126
132
 
@@ -142,20 +148,20 @@ Extract common patterns in the given file(s) or input stream.
142
148
  `--ssh-private-key`
143
149
  Searches for all SSH private key data.
144
150
 
145
- `--ssh-public-key`
146
- Searches for all SSH public key data.
151
+ `--dsa-private-key`
152
+ Searches for all DSA private key data.
147
153
 
148
- `-K`, `--private-key`
149
- Searches for all private key data.
154
+ `--ec-private-key`
155
+ Searches for all EC private key data.
150
156
 
151
- `--rsa-public-key`
152
- Searches for all RSA public key data.
157
+ `--rsa-private-key`
158
+ Searches for all RSA private key data.
153
159
 
154
- `--dsa-public-key`
155
- Searches for all DSA public key data.
160
+ `-K`, `--private-key`
161
+ Searches for all private key data.
156
162
 
157
- `--ec-public-key`
158
- Searches for all EC public key data.
163
+ `--ssh-public-key`
164
+ Searches for all SSH public key data.
159
165
 
160
166
  `--public-key`
161
167
  Searches for all public key data.
@@ -164,7 +170,7 @@ Extract common patterns in the given file(s) or input stream.
164
170
  Searches for all AWS access key IDs.
165
171
 
166
172
  `--aws-secret-access-key`
167
- Searches for all AWS secret access key.
173
+ Searches for all AWS secret access keys.
168
174
 
169
175
  `-A`, `--api-key`
170
176
  Searches for all API keys (MD5, SHA1, SHA256, SHA512, AWS access key ID, or
@@ -182,6 +188,30 @@ Extract common patterns in the given file(s) or input stream.
182
188
  `-B`, `--base64`
183
189
  Searches for all Base64 strings.
184
190
 
191
+ `--c-comment`
192
+ Searches for all C comments.
193
+
194
+ `--cpp-comment`
195
+ Searches for all C++ comments.
196
+
197
+ `--java-comment`
198
+ Searches for all Java comments.
199
+
200
+ `--javascript-comment`
201
+ Searches for all JavaScript comments.
202
+
203
+ `--shell-comment`
204
+ Searches for all Shell comments.
205
+
206
+ `--ruby-comment`
207
+ Searches for all Ruby comments.
208
+
209
+ `--python-comment`
210
+ Searches for all Python comments.
211
+
212
+ `--comment`
213
+ Searches for all comments.
214
+
185
215
  `-e`, `--regexp` /*REGEXP*/
186
216
  Custom regular expression to search for.
187
217