ronin 2.0.0.beta3 → 2.0.0.beta5

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 (62) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +1 -0
  3. data/README.md +613 -1
  4. data/gemspec.yml +4 -4
  5. data/lib/ronin/cli/commands/asn.rb +2 -2
  6. data/lib/ronin/cli/commands/bitflip.rb +1 -1
  7. data/lib/ronin/cli/commands/decode.rb +39 -0
  8. data/lib/ronin/cli/commands/encode.rb +39 -0
  9. data/lib/ronin/cli/commands/escape.rb +7 -0
  10. data/lib/ronin/cli/commands/grep.rb +1 -1
  11. data/lib/ronin/cli/commands/highlight.rb +1 -1
  12. data/lib/ronin/cli/commands/http.rb +23 -13
  13. data/lib/ronin/cli/commands/irb.rb +3 -2
  14. data/lib/ronin/cli/commands/netcat.rb +6 -2
  15. data/lib/ronin/cli/commands/tips.rb +1 -1
  16. data/lib/ronin/cli/commands/typosquat.rb +1 -1
  17. data/lib/ronin/cli/commands/unescape.rb +7 -0
  18. data/lib/ronin/cli/commands/unhexdump.rb +8 -5
  19. data/lib/ronin/cli/http_shell.rb +1 -1
  20. data/lib/ronin/cli/printing/http.rb +9 -8
  21. data/lib/ronin/cli/ruby_shell.rb +47 -0
  22. data/lib/ronin/cli/string_processor_command.rb +2 -2
  23. data/lib/ronin/cli.rb +1 -0
  24. data/lib/ronin/version.rb +1 -1
  25. data/lib/ronin.rb +2 -1
  26. data/man/ronin-asn.1 +2 -2
  27. data/man/ronin-asn.1.md +2 -2
  28. data/man/ronin-cert-dump.1 +6 -6
  29. data/man/ronin-cert-dump.1.md +6 -6
  30. data/man/ronin-cert-gen.1 +5 -5
  31. data/man/ronin-cert-gen.1.md +5 -5
  32. data/man/ronin-cert-grab.1 +3 -3
  33. data/man/ronin-cert-grab.1.md +3 -3
  34. data/man/ronin-decode.1 +24 -0
  35. data/man/ronin-decode.1.md +18 -0
  36. data/man/ronin-email-addr.1 +2 -2
  37. data/man/ronin-email-addr.1.md +2 -2
  38. data/man/ronin-encode.1 +24 -0
  39. data/man/ronin-encode.1.md +18 -0
  40. data/man/ronin-escape.1 +4 -0
  41. data/man/ronin-escape.1.md +3 -0
  42. data/man/ronin-hexdump.1 +189 -0
  43. data/man/ronin-hexdump.1.md +129 -0
  44. data/man/ronin-http.1 +1 -1
  45. data/man/ronin-http.1.md +1 -1
  46. data/man/ronin-ip.1 +1 -1
  47. data/man/ronin-ip.1.md +1 -1
  48. data/man/ronin-netcat.1 +1 -1
  49. data/man/ronin-netcat.1.md +1 -1
  50. data/man/ronin-new-project.1 +30 -0
  51. data/man/ronin-new-project.1.md +18 -0
  52. data/man/ronin-new-script.1 +9 -0
  53. data/man/ronin-new-script.1.md +6 -0
  54. data/man/ronin-new.1 +16 -0
  55. data/man/ronin-new.1.md +10 -0
  56. data/man/ronin-proxy.1 +13 -7
  57. data/man/ronin-proxy.1.md +9 -7
  58. data/man/ronin-unescape.1 +4 -0
  59. data/man/ronin-unescape.1.md +3 -0
  60. data/man/ronin-unhexdump.1 +27 -0
  61. data/man/ronin-unhexdump.1.md +17 -0
  62. metadata +11 -10
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6ca928a3d7ce237881c54bf6649026aac76a69691cb40454f38a499b633b41ba
4
- data.tar.gz: 255f1be3a019826e4707bfc8f29b99ab8df36508f6877169c9064df57d548b9e
3
+ metadata.gz: cb9de0474fa609d9ea978a63c3a24a6c2c365acc13db40dbfdc60d86e90571bb
4
+ data.tar.gz: c0503139e4f1b5fddf7319e4438a160b3b43200ce8c081e2a408d9fe0a458218
5
5
  SHA512:
6
- metadata.gz: d0cada45a152ee3a40ad72865a95cada0b5ebe634e4a264073a62b32327475b46749b9636409ea918a41113f43509bf64b01cd13644bee1c3187eccb4df0bf43
7
- data.tar.gz: 88383a6afa352328f9d716aca814158a07e239296cda1d980de517c44adaad05b3771a837d347c9c9dbf06f03e71c98a4055850d914fed2da25f61fbdc512a22
6
+ metadata.gz: b2e44b4023cabd18f04156ea5b3c2627697ea6878906d45c4ec371d9e5f5dcf832de97f9969415c1ed2860deaa15662ceb227378866b75c90b1fb2dea473cbe5
7
+ data.tar.gz: 964c7fd654dc78ee26d757138b47f26aa57cc5dd6210cfcfa0bb1e401b80c5acc331aa12230e4ccf741eea8eda583b90ea80c285113547cbbbea39239b6b86fb
@@ -21,6 +21,7 @@ jobs:
21
21
  uses: ruby/setup-ruby@v1
22
22
  with:
23
23
  ruby-version: ${{ matrix.ruby }}
24
+ bundler-cache: true
24
25
  - name: Install libsqlite3
25
26
  run: |
26
27
  sudo apt update -y && \
data/README.md CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  [![CI](https://github.com/ronin-rb/ronin/actions/workflows/ruby.yml/badge.svg)](https://github.com/ronin-rb/ronin/actions/workflows/ruby.yml)
4
4
  [![Code Climate](https://codeclimate.com/github/ronin-rb/ronin.svg)](https://codeclimate.com/github/ronin-rb/ronin)
5
+ [![Gem Version](https://badge.fury.io/rb/ronin.svg)](https://badge.fury.io/rb/ronin)
5
6
 
6
7
  * [Website](https://ronin-rb.dev)
7
8
  * [Source](https://github.com/ronin-rb/ronin)
@@ -14,7 +15,7 @@
14
15
  ## Description
15
16
 
16
17
  [Ronin][website] is a free and Open Source [Ruby] toolkit for security research
17
- and development. Ronin contains many different [CLI commands](#snopsis) and
18
+ and development. Ronin contains many different [CLI commands](#synopsis) and
18
19
  [Ruby libraries][ronin-rb] for a variety of security tasks, such as
19
20
  encoding/decoding data, filter IPs/hosts/URLs, querying ASNs, querying DNS,
20
21
  HTTP, [scanning for web vulnerabilities][ronin-vulns-synopsis],
@@ -150,6 +151,617 @@ Open the Ronin Ruby REPL:
150
151
  $ ronin irb
151
152
  ```
152
153
 
154
+ Generate a new Ruby script with [ronin-support] preloaded:
155
+
156
+ ```shell
157
+ $ ronin new script foo.rb
158
+ ```
159
+
160
+ Generate a new Ruby project with a `Gemfile`:
161
+
162
+ ```shell
163
+ $ ronin new project foo
164
+ ```
165
+
166
+ ### Binary
167
+
168
+ Hexdumps data in a variety of formats:
169
+
170
+ ```shell
171
+ $ ronin hexdump /bin/ls
172
+ ```
173
+
174
+ Un-hexdumps a hexdump file back into it's original raw binary data:
175
+
176
+ ```shell
177
+ $ ronin unhexdump -o data.bin hexdump.txt
178
+ ```
179
+
180
+ Print all printable strings from a file:
181
+
182
+ ```shell
183
+ $ ronin strings /bin/ls
184
+ ```
185
+
186
+ Print all alphabetic strings from a file:
187
+
188
+ ```shell
189
+ $ ronin strings --alpha /bin/ls
190
+ ```
191
+
192
+ Print all alpha-numeric strings from a file:
193
+
194
+ ```shell
195
+ $ ronin strings --alpha-num /bin/ls
196
+ ```
197
+
198
+ Print all numeric strings from a file:
199
+
200
+ ```shell
201
+ $ ronin strings --numeric /bin/ls
202
+ ```
203
+
204
+ Print all hexadecimal strings from a file:
205
+
206
+ ```shell
207
+ $ ronin strings --hex /bin/ls
208
+ ```
209
+
210
+ Enumerate through all of the Bit-flips of a domain name:
211
+
212
+ ```shell
213
+ $ ronin bitflip microsoft --alpha-num --append .com
214
+ licrosoft.com
215
+ oicrosoft.com
216
+ iicrosoft.com
217
+ eicrosoft.com
218
+ Microsoft.com
219
+ mhcrosoft.com
220
+ mkcrosoft.com
221
+ mmcrosoft.com
222
+ macrosoft.com
223
+ mycrosoft.com
224
+ ...
225
+ ```
226
+
227
+ ### Encoding
228
+
229
+ Base64 encode a string:
230
+
231
+ ```shell
232
+ $ ronin encode --base64 --string "foo bar baz"
233
+ Zm9vIGJhciBiYXo=
234
+ ```
235
+
236
+ Zlib compresses, Base64 encodes, and then URI encode a string:
237
+
238
+ ```shell
239
+ $ ronin encode --zlib --base64 --uri --string "foo bar"
240
+ %65%4A%78%4C%79%38%39%58%53%45%6F%73%41%67%41%4B%63%41%4B%61%0A
241
+ ```
242
+
243
+ Base64 decode a string:
244
+
245
+ ```shell
246
+ $ ronin decode --base64 --string "Zm9vIGJhciBiYXo="
247
+ foo bar baz
248
+ ```
249
+
250
+ URI decode, Base64 decode, and then zlib inflates a string:
251
+
252
+ ```shell
253
+ $ ronin decode --uri --base64 --zlib --string "%65%4A%78%4C%79%38%39%58%53%45%6F%73%41%67%41%4B%63%41%4B%61%0A"
254
+ foo bar
255
+ ```
256
+
257
+ URI escape a string:
258
+
259
+ ```shell
260
+ $ ronin escape --uri --string "foo bar"
261
+ foo%20bar
262
+ ```
263
+
264
+ URI unescape a string:
265
+
266
+ ```shell
267
+ $ ronin unescape --uri --string "foo%20bar"
268
+ foo bar
269
+ ```
270
+
271
+ Convert a file into a quoted C string:
272
+
273
+ ```shell
274
+ $ ronin quote --c file.bin
275
+ "..."
276
+ ```
277
+
278
+ Convert a file into a quoted JavaScript string:
279
+
280
+ ```shell
281
+ $ ronin quote --js file.bin
282
+ ```
283
+
284
+ Unquote a C string:
285
+
286
+ ```shell
287
+ $ ronin unquote --c --string '"\x66\x6f\x6f\x20\x62\x61\x72"'
288
+ foo bar
289
+ ```
290
+
291
+ ### Text
292
+
293
+ De-obfuscate an email address:
294
+
295
+ ```shell
296
+ $ ronin email-addr --deobfuscate "john [dot] smith [at] example [dot] com"
297
+ john.smith@example.com
298
+ ```
299
+
300
+ Enumerate through all of the obfuscations of an email address:
301
+
302
+ ```shell
303
+ $ ronin email-addr --enum-obfuscations john.smith@example.com
304
+ john.smith @ example.com
305
+ john.smith AT example.com
306
+ john.smith at example.com
307
+ john.smith[AT]example.com
308
+ john.smith[at]example.com
309
+ ...
310
+ ```
311
+
312
+ Extract high-entropy data from a file:
313
+
314
+ ```shell
315
+ $ ronin entropy -e 5.0 index.html
316
+ ```
317
+
318
+ Grep for common patterns of data:
319
+
320
+ ```shell
321
+ $ ronin grep --hash index.html
322
+ ```
323
+
324
+ Extract common patterns from data:
325
+
326
+ ```shell
327
+ $ ronin extract --hash index.html
328
+ ```
329
+
330
+ Generate a random typo of a word:
331
+
332
+ ```shell
333
+ $ ronin typo microsoft
334
+ microssoft
335
+ ```
336
+
337
+ Enumerate over every typo variation of a word:
338
+
339
+ ```shell
340
+ $ ronin typo --enum microsoft
341
+ microosoft
342
+ microsooft
343
+ microssoft
344
+ ```
345
+
346
+ Generate a random homoglyph version of a word:
347
+
348
+ ```shell
349
+ $ ronin homoglyph CEO
350
+ CEO
351
+ ```
352
+
353
+ Enumerate over every homoglyph variation of a word:
354
+
355
+ ```shell
356
+ $ ronin homoglyph --enum CEO
357
+ ϹEO
358
+ СEO
359
+ ⅭEO
360
+ CEO
361
+ CΕO
362
+ CЕO
363
+ CEO
364
+ CEΟ
365
+ CEО
366
+ CEO
367
+ ```
368
+
369
+ Syntax-highlights a file:
370
+
371
+ ```shell
372
+ $ ronin highlight index.html
373
+ ```
374
+
375
+ ### Cryptography
376
+
377
+ AES-256 encrypt a file:
378
+
379
+ ```shell
380
+ $ ronin encrypt --cipher aes-256-cbc --password "..." file.txt > encrypted.bin
381
+ ```
382
+
383
+ Decrypt data:
384
+
385
+ ```shell
386
+ $ ronin decrypt --cipher aes-256-cbc --password "..." encrypted.bin
387
+ ```
388
+
389
+ Generates an HMAC for a file:
390
+
391
+ ```shell
392
+ $ ronin hmac --hash sha1 --password "too many secrets" data.txt
393
+ ```
394
+
395
+ Generates an HMAC for a string:
396
+
397
+ ```shell
398
+ $ ronin hmac --hash sha1 --password "too many secrets" --string "..."
399
+ ```
400
+
401
+ Calculate an MD5 checksum of a string:
402
+
403
+ ```shell
404
+ $ ronin md5 --string "hello world"
405
+ 5eb63bbbe01eeed093cb22bb8f5acdc3
406
+ ```
407
+
408
+ Calculate the MD5 checksum of a file:
409
+
410
+ ```shell
411
+ $ ronin md5 file.txt
412
+ ```
413
+
414
+ Calculate the MD5 checksum of every line in a file:
415
+
416
+ ```shell
417
+ $ ronin md5 --multiline file.txt
418
+ ```
419
+
420
+ Calculate an SHA1 checksum of a string:
421
+
422
+ ```shell
423
+ $ ronin sha1 --string "hello world"
424
+ 2aae6c35c94fcfb415dbe95f408b9ce91ee846ed
425
+ ```
426
+
427
+ Calculate the SHA1 checksum of a file:
428
+
429
+ ```shell
430
+ $ ronin sha1 file.txt
431
+ ```
432
+
433
+ Calculate the SHA1 checksum of every line in a file:
434
+
435
+ ```shell
436
+ $ ronin sha1 --multiline file.txt
437
+ ```
438
+
439
+ Calculate an SHA256 checksum of a string:
440
+
441
+ ```shell
442
+ $ ronin sha256 --string "hello world"
443
+ b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
444
+ ```
445
+
446
+ Calculate the SHA256 checksum of a file:
447
+
448
+ ```shell
449
+ $ ronin sha256 file.txt
450
+ ```
451
+
452
+ Calculate the SHA256 checksum of every line in a file:
453
+
454
+ ```shell
455
+ $ ronin sha256 --multiline file.txt
456
+ ```
457
+
458
+ Calculate an SHA512 checksum of a string:
459
+
460
+ ```shell
461
+ $ ronin sha512 --string "hello world"
462
+ 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f
463
+ ```
464
+
465
+ Calculate the SHA512 checksum of a file:
466
+
467
+ ```shell
468
+ $ ronin sha512 file.txt
469
+ ```
470
+
471
+ Calculate the SHA512 checksum of every line in a file:
472
+
473
+ ```shell
474
+ $ ronin sha512 --multiline file.txt
475
+ ```
476
+
477
+ ROT-13 encodes a string:
478
+
479
+ ```shell
480
+ $ ronin rot --string "The quick brown fox jumps over the lazy dog"
481
+ Gur dhvpx oebja sbk whzcf bire gur ynml qbt
482
+ ```
483
+
484
+ XOR encodes a string:
485
+
486
+ ```shell
487
+ $ ronin xor --key ABC --string "The quick brown fox jumps over the lazy dog"
488
+ "\x15*&a36(!(a 1.5-a$,9b)4/32b,7'1a6+$b/ 8:a&,&"
489
+ ```
490
+
491
+ ### Networking
492
+
493
+ Query the ASN of an IP address:
494
+
495
+ ```shell
496
+ $ ronin asn -I 4.2.2.1
497
+ 4.0.0.0/9 AS3356 (US) LEVEL3
498
+ ```
499
+
500
+ Get the system's external/public IP address:
501
+
502
+ ```shell
503
+ $ ronin ip --public
504
+ ```
505
+
506
+ Convert an IP address to decimal format:
507
+
508
+ ```shell
509
+ $ ronin ip --decimal 127.0.0.1
510
+ 2130706433
511
+ ```
512
+
513
+ Convert a file of IP addresses into URLs:
514
+
515
+ ```shell
516
+ $ ronin ip --file targets.txt --http
517
+ ```
518
+
519
+ Enumerate over every IP address in the IP CIDR range:
520
+
521
+ ```shell
522
+ $ ronin iprange 10.1.0.0/15
523
+ 10.0.0.1
524
+ 10.0.0.2
525
+ 10.0.0.3
526
+ 10.0.0.4
527
+ 10.0.0.5
528
+ 10.0.0.6
529
+ 10.0.0.7
530
+ 10.0.0.8
531
+ 10.0.0.9
532
+ ...
533
+ ```
534
+
535
+ Enumerate over every IP address in the IP glob range:
536
+
537
+ ```shell
538
+ $ ronin iprange 10.1-3.0.*
539
+ 10.1.0.1
540
+ 10.1.0.2
541
+ 10.1.0.3
542
+ 10.1.0.4
543
+ 10.1.0.5
544
+ 10.1.0.6
545
+ 10.1.0.7
546
+ 10.1.0.8
547
+ 10.1.0.9
548
+ 10.1.0.10
549
+ ...
550
+ ```
551
+
552
+ Enumerate over every IP address between two IP addresses:
553
+
554
+ ```shell
555
+ $ ronin iprange --start 10.0.0.1 --stop 10.0.3.33
556
+ 10.0.0.1
557
+ 10.0.0.2
558
+ 10.0.0.3
559
+ 10.0.0.4
560
+ 10.0.0.5
561
+ 10.0.0.6
562
+ 10.0.0.7
563
+ 10.0.0.8
564
+ 10.0.0.9
565
+ 10.0.0.10
566
+ ```
567
+
568
+ Connect to a remote TCP service:
569
+
570
+ ```shell
571
+ $ ronin netcat -v example.com 80
572
+ ```
573
+
574
+ Listen on a local TCP port:
575
+
576
+ ```shell
577
+ $ ronin netcat -v -l 1337
578
+ ```
579
+
580
+ Connect to a remote SSL/TLS service:
581
+
582
+ ```shell
583
+ $ ronin netcat -v --ssl example.com 443
584
+ ```
585
+
586
+ Connect to a remote UDP service:
587
+
588
+ ```shell
589
+ $ ronin netcat -v -u example.com 1337
590
+ ```
591
+
592
+ Listen on a local UDP port:
593
+
594
+ ```shell
595
+ $ ronin netcat -v -u -l 1337
596
+ ```
597
+
598
+ Opens a UNIX socket:
599
+
600
+ ```shell
601
+ $ ronin netcat -v --unix /path/to/unix.socket
602
+ ```
603
+
604
+ Hexdump all data received from a socket:
605
+
606
+ ```shell
607
+ $ ronin netcat --hexdump example.com 80
608
+ GET / HTTP/1.1
609
+ Host: example.com
610
+ User-Agent: Ruby
611
+
612
+ 00000000 48 54 54 50 2f 31 2e 31 20 32 30 30 20 4f 4b 0d |HTTP/1.1 200 OK.|
613
+ 00000010 0a 41 67 65 3a 20 32 35 30 38 30 36 0d 0a 43 61 |.Age: 250806..Ca|
614
+ 00000020 63 68 65 2d 43 6f 6e 74 72 6f 6c 3a 20 6d 61 78 |che-Control: max|
615
+ 00000030 2d 61 67 65 3d 36 30 34 38 30 30 0d 0a 43 6f 6e |-age=604800..Con|
616
+ 00000040 74 65 6e 74 2d 54 79 70 65 3a 20 74 65 78 74 2f |tent-Type: text/|
617
+ 00000050 68 74 6d 6c 3b 20 63 68 61 72 73 65 74 3d 55 54 |html; charset=UT|
618
+ ...
619
+ ```
620
+
621
+ #### DNS
622
+
623
+ Query DNS records:
624
+
625
+ ```shell
626
+ $ ronin dns -t TXT github.com
627
+ ```
628
+
629
+ Find all registered TLDs for a host name:
630
+
631
+ ```shell
632
+ $ ronin host --enum-tlds --registered github.com
633
+ github.ac
634
+ github.actor
635
+ github.ae
636
+ github.africa
637
+ github.agency
638
+ github.ai
639
+ ...
640
+ ```
641
+
642
+ Find all registered public suffixes for a host name:
643
+
644
+ ```shell
645
+ $ ronin host --enum-suffix --registered github.com
646
+ example.com.ag
647
+ example.ai
648
+ example.al
649
+ example.am
650
+ example.com.ar
651
+ example.at
652
+ example.co.at
653
+ example.or.at
654
+ example.com.au
655
+ example.be
656
+ example.com.bh
657
+ ...
658
+ ```
659
+
660
+ Enumerate over every possible typosquat variation of a domain:
661
+
662
+ ```shell
663
+ $ ronin typosquat microsoft.com
664
+ microosoft.com
665
+ microsooft.com
666
+ microssoft.com
667
+ ```
668
+
669
+ Find all of the registered typosquat domains for a valid domain:
670
+
671
+ ```shell
672
+ $ ronin typosquat --registered microsoft.com
673
+ ```
674
+
675
+ Find all of the typosquat domains with addresses for a valid domain:
676
+
677
+ ```shell
678
+ $ ronin typosquat --has-addresses microsoft.com
679
+ ```
680
+
681
+ Find all of the unregistered typosquat domains for a valid domain:
682
+
683
+ ```shell
684
+ $ ronin typosquat --unregistered microsoft.com
685
+ ```
686
+
687
+ #### SSL/TLS Certs
688
+
689
+ Dump information about a SSL/TLS certificate:
690
+
691
+ ```shell
692
+ $ ronin cert-dump https://example.com/
693
+ ```
694
+
695
+ Download a SSL/TLS certificate from a host and port:
696
+
697
+ ```shell
698
+ $ ronin cert-grab github.com:443
699
+ ```
700
+
701
+ Generate a new SSL/TLS certificate:
702
+
703
+ ```shell
704
+ $ ronin cert-gen -c test.com -O "Test Co" -U "Test Dept" \
705
+ -L "Test City" -S NY -C US
706
+ ```
707
+
708
+ #### HTTP
709
+
710
+ Perform an HTTP `GET` request (with syntax highlighting):
711
+
712
+ ```shell
713
+ $ ronin http https://example.com/
714
+ ```
715
+
716
+ Send an HTTP request with additional headers:
717
+
718
+ ```shell
719
+ $ ronin http --post --header "Authorization: ..." https://foo.bar/
720
+ ```
721
+
722
+ Send an HTTP request with a known `User-Agent` string:
723
+
724
+ ```shell
725
+ $ ronin http --post --user-agent chrome-android https://foo.bar/
726
+ ```
727
+
728
+ Send an HTTP request with a custom `User-Agent` string:
729
+
730
+ ```shell
731
+ $ ronin http --post --user-agent-string "..." https://foo.bar/
732
+ ```
733
+
734
+ Open an interactive HTTP shell:
735
+
736
+ ```shell
737
+ $ ronin http --shell https://example.com/
738
+ https://example.com/> help
739
+ help [COMMAND] Prints the list of commands or additional help
740
+ get PATH[?QUERY] [BODY] Performs a GET request
741
+ head PATH[?QUERY] Performs a HEAD request
742
+ patch PATH[?QUERY] [BODY] Performs a PATCH request
743
+ post PATH[?QUERY] [BODY] Performs a POST request
744
+ put PATH [BODY] Performs a PUT request
745
+ copy PATH DEST Performs a COPY request
746
+ delete PATH[?QUERY] Performs a DELETE request
747
+ lock PATH[?QUERY] Performs a LOCK request
748
+ options PATH[?QUERY] Performs a OPTIONS request
749
+ mkcol PATH[?QUERY] Performs a MKCOL request
750
+ move PATH[?QUERY] DEST Performs a MOVE request
751
+ propfind PATH[?QUERY] Performs a PROPFIND request
752
+ proppatch PATH[?QUERY] Performs a PROPPATCH request
753
+ trace PATH[?QUERY] Performs a TRACE request
754
+ unlock PATH[?QUERY] Performs a UNLOCK request
755
+ cd PATH Changes the base URL path
756
+ headers [{set | unset} NAME [VALUE]] Manages the request headers
757
+ ```
758
+
759
+ Print the HTTP status of every URL in a file:
760
+
761
+ ```shell
762
+ $ ronin url --file urls.txt --status
763
+ ```
764
+
153
765
  ### See Also
154
766
 
155
767
  * [ronin-repos](https://github.com/ronin-rb/ronin-repos#synopsis)
data/gemspec.yml CHANGED
@@ -96,12 +96,12 @@ dependencies:
96
96
  async-io: ~> 1.0
97
97
  wordlist: ~> 1.0
98
98
  # Ronin dependencies:
99
- ronin-support: ~> 1.0.0.beta2
99
+ ronin-support: ~> 1.0.0.beta3
100
100
  ronin-core: ~> 0.1.0.beta1
101
101
  ronin-repos: ~> 0.1.0.beta1
102
- ronin-db: ~> 0.1.0.beta2
103
- ronin-fuzzer: ~> 0.1.0.beta1
104
- ronin-web: ~> 1.0.0.beta2
102
+ ronin-db: ~> 0.1.0.beta3
103
+ ronin-fuzzer: ~> 0.1.0.beta2
104
+ ronin-web: ~> 1.0.0.beta4
105
105
  ronin-code-asm: ~> 1.0.0.beta1
106
106
  ronin-code-sql: ~> 2.0.0.beta1
107
107
  ronin-payloads: ~> 0.1.0.beta1
@@ -40,7 +40,7 @@ module Ronin
40
40
  # -f, --file FILE Overrides the default ASN list file (Default: ~/.cache/ronin/ronin-support/ip2asn-combined.tsv.gz)
41
41
  # -u, --update Updates the ASN list file
42
42
  # -n, --number NUM|AS... Searches for all ASN records with the AS number
43
- # -C XX|None|Uknown, Searches for all ASN records with the country code
43
+ # -C XX|None|Unknown, Searches for all ASN records with the country code
44
44
  # --country-code
45
45
  # -N, --name NAME Searches for all ASN records with the matching name
46
46
  # -I, --ip IP Queries the ASN record for the IP
@@ -96,7 +96,7 @@ module Ronin
96
96
  option :country_code, short: '-C',
97
97
  value: {
98
98
  type: /[A-Z]{2}|None|Unknown/,
99
- usage: 'XX|None|Uknown'
99
+ usage: 'XX|None|Unknown'
100
100
  },
101
101
  desc: 'Searches for all ASN records with the country code'
102
102
 
@@ -107,7 +107,7 @@ module Ronin
107
107
  end
108
108
 
109
109
  #
110
- # Formats a bit-fipped string.
110
+ # Formats a bit-flipped string.
111
111
  #
112
112
  # @param [String] string
113
113
  # The bit-flipped String.