pwn 0.5.83 → 0.5.85

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 69446d2989efc5f4bcca3ceffde6bdf663067b128cd7cccf4050051752e6b1c5
4
- data.tar.gz: e9ad99571be1561a94dbe7e1775300607bb8635fddd3b648ca4b7e7eaf6abb08
3
+ metadata.gz: fb237056a0ee9908b27a0961e1e0683b8d22dacb80442543abc26c5e810faa1c
4
+ data.tar.gz: 4883a7d72288bf56d59b80e1d6fd292cff3245ac8260c9eb899a89378af11d28
5
5
  SHA512:
6
- metadata.gz: a4a6c70717d34bf933326815bf454dbc7732798f766061a053ade2c9cd5dd25a991c5d6aea11520c8f8533914d3b0813f01b756e4794e6b814df68760163a243
7
- data.tar.gz: afaa0614e87d9c4969e1cb3b6a4649db3c65b8086005e66c5b3f84e8ef83d37a30413202b80ae794eb3ffad65cf92facaa253edcf6cf0910334858abc11071f9
6
+ metadata.gz: 512792cf23e0eb392d4e1a56e8e530ec38f99c5c93c99f6535fa861c5091bd391990efaccafa24527a32b8246d49f7c44e5cf89c407a391f3feca428274c1e3e
7
+ data.tar.gz: 9675bb2d5ad1cd1af9dcf4a8396cdf7880478ae739f9b9b606438ed2f7d5dd8c908a5dba45f384cb762c633d5b88beb11d84bcfbb6dd9ba6d5a3d3c4d8d84b41
data/Gemfile CHANGED
@@ -32,6 +32,7 @@ gem 'ffi', '1.16.3'
32
32
  gem 'fftw3', '0.3'
33
33
  gem 'gdb', '1.0.0'
34
34
  gem 'gem-wrappers', '1.4.0'
35
+ gem 'geocoder', '1.8.2'
35
36
  gem 'gist', '6.0.0'
36
37
  gem 'gruff', '0.24.0'
37
38
  # gem 'hidapi', '0.1.9'
@@ -42,11 +43,11 @@ gem 'js-beautify', '0.1.8'
42
43
  gem 'json', '2.7.2'
43
44
  gem 'jsonpath', '1.1.5'
44
45
  gem 'jwt', '2.8.1'
45
- gem 'libusb', '0.6.4'
46
+ gem 'libusb', '0.7.1'
46
47
  gem 'luhn', '1.0.2'
47
48
  gem 'mail', '2.8.1'
48
49
  gem 'metasm', '1.0.5'
49
- # gem 'mongo', '2.19.3'
50
+ gem 'mongo', '2.20.0'
50
51
  gem 'msfrpc-client', '1.1.2'
51
52
  gem 'netaddr', '2.0.6'
52
53
  gem 'net-ldap', '0.19.0'
@@ -66,7 +67,7 @@ gem 'pry', '0.14.2'
66
67
  gem 'pry-doc', '1.5.0'
67
68
  gem 'rake', '13.2.1'
68
69
  gem 'rb-readline', '0.5.5'
69
- gem 'rbvmomi', '3.0.0'
70
+ gem 'rbvmomi2', '3.7.1'
70
71
  gem 'rdoc', '6.6.3.1'
71
72
  gem 'rest-client', '2.1.0'
72
73
  gem 'rex', '2.0.13'
@@ -74,7 +75,7 @@ gem 'rmagick', '5.5.0'
74
75
  gem 'rqrcode', '2.2.0'
75
76
  gem 'rspec', '3.13.0'
76
77
  gem 'rtesseract', '3.1.3'
77
- gem 'rubocop', '1.63.2'
78
+ gem 'rubocop', '1.63.3'
78
79
  gem 'rubocop-rake', '0.6.0'
79
80
  gem 'rubocop-rspec', '2.29.1'
80
81
  gem 'ruby-audio', '1.6.1'
@@ -82,13 +83,13 @@ gem 'ruby-nmap', '1.0.3'
82
83
  gem 'ruby-saml', '1.16.0'
83
84
  gem 'rvm', '1.11.3.9'
84
85
  gem 'savon', '2.15.0'
85
- gem 'selenium-devtools', '0.123.0'
86
+ gem 'selenium-devtools', '0.124.0'
86
87
  gem 'serialport', '1.3.2'
87
88
  # gem 'sinatra', '4.0.0'
88
89
  gem 'slack-ruby-client', '2.3.0'
89
90
  gem 'socksify', '1.7.1'
90
91
  gem 'spreadsheet', '1.3.1'
91
- gem 'sqlite3', '1.7.3'
92
+ gem 'sqlite3', '2.0.1'
92
93
  gem 'thin', '1.8.2'
93
94
  gem 'tty-prompt', '0.23.1'
94
95
  gem 'tty-spinner', '0.9.3'
data/README.md CHANGED
@@ -37,7 +37,7 @@ $ cd /opt/pwn
37
37
  $ ./install.sh
38
38
  $ ./install.sh ruby-gem
39
39
  $ pwn
40
- pwn[v0.5.83]:001 >>> PWN.help
40
+ pwn[v0.5.85]:001 >>> PWN.help
41
41
  ```
42
42
 
43
43
  [![Installing the pwn Security Automation Framework](https://raw.githubusercontent.com/0dayInc/pwn/master/documentation/pwn_install.png)](https://youtu.be/G7iLUY4FzsI)
@@ -52,7 +52,7 @@ $ rvm use ruby-3.3.0@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.5.83]:001 >>> PWN.help
55
+ pwn[v0.5.85]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
  If you're using a multi-user install of RVM do:
@@ -62,7 +62,7 @@ $ rvm use ruby-3.3.0@pwn
62
62
  $ rvmsudo gem uninstall --all --executables pwn
63
63
  $ rvmsudo gem install --verbose pwn
64
64
  $ pwn
65
- pwn[v0.5.83]:001 >>> PWN.help
65
+ pwn[v0.5.85]:001 >>> PWN.help
66
66
  ```
67
67
 
68
68
  PWN periodically upgrades to the latest version of Ruby which is reflected in `/opt/pwn/.ruby-version`. The easiest way to upgrade to the latest version of Ruby from a previous PWN installation is to run the following script:
data/lib/pwn/aws.rb CHANGED
@@ -96,7 +96,7 @@ module PWN
96
96
  autoload :Workspaces, 'pwn/aws/workspaces'
97
97
  autoload :XRay, 'pwn/aws/x_ray'
98
98
 
99
- # Display a List of Every PWN Plugin
99
+ # Display a List of Every PWN::AWS Module
100
100
 
101
101
  public_class_method def self.help
102
102
  constants.sort
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'ffi'
4
+
5
+ module PWN
6
+ module FFI
7
+ # This plugin is a wrapper for the standard I/O functions in libc.
8
+ module Stdio
9
+ extend FFI::Library
10
+
11
+ ffi_lib FFI::Library::LIBC
12
+
13
+ attach_function(:puts, [:string], :int)
14
+ attach_function(:printf, %i[string varargs], :int, convention: :default)
15
+ attach_function(:scanf, %i[string varargs], :int)
16
+
17
+ # Author(s):: 0day Inc. <request.pentest@0dayinc.com>
18
+
19
+ public_class_method def self.authors
20
+ "AUTHOR(S):
21
+ 0day Inc. <request.pentest@0dayinc.com>
22
+ "
23
+ end
24
+
25
+ # Display Usage for this Module
26
+
27
+ public_class_method def self.help
28
+ puts "USAGE:
29
+ #{self}.puts string
30
+ #{self}.printf(\"format string\", str, int, etc)
31
+
32
+ scanf_buffer = FFI::MemoryPointer.new(:char, 100)
33
+ #{self}.scanf(\"format string\", scanf_buffer)
34
+
35
+ #{self}.authors
36
+ "
37
+ end
38
+ end
39
+ end
40
+ end
data/lib/pwn/ffi.rb CHANGED
@@ -5,9 +5,9 @@ module PWN
5
5
  # into memory only when they're needed. For more information, see:
6
6
  # http://www.rubyinside.com/ruby-techniques-revealed-autoload-1652.html
7
7
  module FFI
8
- # autoload :Sock, 'pwn/ffi/sock'
8
+ autoload :Stdio, 'pwn/ffi/stdio'
9
9
 
10
- # Display a List of Every PWN Report
10
+ # Display a List of Every PWN::FFI Module
11
11
 
12
12
  public_class_method def self.help
13
13
  constants.sort
@@ -135,6 +135,7 @@ module PWN
135
135
 
136
136
  def process
137
137
  pi = pry_instance
138
+ pi.config.color = true
138
139
  pi.config.pwn_asm = false if pi.config.pwn_asm
139
140
  pi.config.pwn_ai = false if pi.config.pwn_ai
140
141
  pi.config.pwn_ai_debug = false if pi.config.pwn_ai_debug
data/lib/pwn/plugins.rb CHANGED
@@ -74,7 +74,7 @@ module PWN
74
74
  autoload :Vsphere, 'pwn/plugins/vsphere'
75
75
  autoload :XXD, 'pwn/plugins/xxd'
76
76
 
77
- # Display a List of Every PWN Plugin
77
+ # Display a List of Every PWN::Plugins Module
78
78
 
79
79
  public_class_method def self.help
80
80
  constants.sort
data/lib/pwn/reports.rb CHANGED
@@ -14,7 +14,7 @@ module PWN
14
14
  autoload :URIBuster, 'pwn/reports/uri_buster'
15
15
  # autoload :XML, 'pwn/reports/xml'
16
16
 
17
- # Display a List of Every PWN Report
17
+ # Display a List of Every PWN::Reports Module
18
18
 
19
19
  public_class_method def self.help
20
20
  constants.sort
data/lib/pwn/sast.rb CHANGED
@@ -50,7 +50,7 @@ module PWN
50
50
  autoload :Version, 'pwn/sast/version'
51
51
  autoload :WindowLocationHash, 'pwn/sast/window_location_hash'
52
52
 
53
- # Display a List of Each Static Code Anti-Pattern Matching Module
53
+ # Display a List of Every PWN::SAST Module
54
54
 
55
55
  public_class_method def self.help
56
56
  constants.sort
data/lib/pwn/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PWN
4
- VERSION = '0.5.83'
4
+ VERSION = '0.5.85'
5
5
  end
data/lib/pwn/www.rb CHANGED
@@ -26,7 +26,7 @@ module PWN
26
26
  autoload :Upwork, 'pwn/www/upwork'
27
27
  autoload :Youtube, 'pwn/www/youtube'
28
28
 
29
- # Display a List of Every PWN WWW module
29
+ # Display a List of Every PWN::WWW Module
30
30
 
31
31
  public_class_method def self.help
32
32
  constants.sort
data/lib/pwn.rb CHANGED
@@ -17,7 +17,7 @@ module PWN
17
17
  autoload :SAST, 'pwn/sast'
18
18
  autoload :WWW, 'pwn/www'
19
19
 
20
- # Display Usage for the PWN Framework ~
20
+ # Display a List of Every PWN Module
21
21
 
22
22
  public_class_method def self.help
23
23
  constants.sort
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe PWN::FFI::Stdio do
6
+ it 'should display information for authors' do
7
+ authors_response = PWN::FFI::Stdio
8
+ expect(authors_response).to respond_to :authors
9
+ end
10
+
11
+ it 'should display information for existing help method' do
12
+ help_response = PWN::FFI::Stdio
13
+ expect(help_response).to respond_to :help
14
+ end
15
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pwn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.83
4
+ version: 0.5.85
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-16 00:00:00.000000000 Z
11
+ date: 2024-04-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -290,6 +290,20 @@ dependencies:
290
290
  - - '='
291
291
  - !ruby/object:Gem::Version
292
292
  version: 1.4.0
293
+ - !ruby/object:Gem::Dependency
294
+ name: geocoder
295
+ requirement: !ruby/object:Gem::Requirement
296
+ requirements:
297
+ - - '='
298
+ - !ruby/object:Gem::Version
299
+ version: 1.8.2
300
+ type: :runtime
301
+ prerelease: false
302
+ version_requirements: !ruby/object:Gem::Requirement
303
+ requirements:
304
+ - - '='
305
+ - !ruby/object:Gem::Version
306
+ version: 1.8.2
293
307
  - !ruby/object:Gem::Dependency
294
308
  name: gist
295
309
  requirement: !ruby/object:Gem::Requirement
@@ -422,14 +436,14 @@ dependencies:
422
436
  requirements:
423
437
  - - '='
424
438
  - !ruby/object:Gem::Version
425
- version: 0.6.4
439
+ version: 0.7.1
426
440
  type: :runtime
427
441
  prerelease: false
428
442
  version_requirements: !ruby/object:Gem::Requirement
429
443
  requirements:
430
444
  - - '='
431
445
  - !ruby/object:Gem::Version
432
- version: 0.6.4
446
+ version: 0.7.1
433
447
  - !ruby/object:Gem::Dependency
434
448
  name: luhn
435
449
  requirement: !ruby/object:Gem::Requirement
@@ -472,6 +486,20 @@ dependencies:
472
486
  - - '='
473
487
  - !ruby/object:Gem::Version
474
488
  version: 1.0.5
489
+ - !ruby/object:Gem::Dependency
490
+ name: mongo
491
+ requirement: !ruby/object:Gem::Requirement
492
+ requirements:
493
+ - - '='
494
+ - !ruby/object:Gem::Version
495
+ version: 2.20.0
496
+ type: :runtime
497
+ prerelease: false
498
+ version_requirements: !ruby/object:Gem::Requirement
499
+ requirements:
500
+ - - '='
501
+ - !ruby/object:Gem::Version
502
+ version: 2.20.0
475
503
  - !ruby/object:Gem::Dependency
476
504
  name: msfrpc-client
477
505
  requirement: !ruby/object:Gem::Requirement
@@ -739,19 +767,19 @@ dependencies:
739
767
  - !ruby/object:Gem::Version
740
768
  version: 0.5.5
741
769
  - !ruby/object:Gem::Dependency
742
- name: rbvmomi
770
+ name: rbvmomi2
743
771
  requirement: !ruby/object:Gem::Requirement
744
772
  requirements:
745
773
  - - '='
746
774
  - !ruby/object:Gem::Version
747
- version: 3.0.0
775
+ version: 3.7.1
748
776
  type: :runtime
749
777
  prerelease: false
750
778
  version_requirements: !ruby/object:Gem::Requirement
751
779
  requirements:
752
780
  - - '='
753
781
  - !ruby/object:Gem::Version
754
- version: 3.0.0
782
+ version: 3.7.1
755
783
  - !ruby/object:Gem::Dependency
756
784
  name: rdoc
757
785
  requirement: !ruby/object:Gem::Requirement
@@ -856,14 +884,14 @@ dependencies:
856
884
  requirements:
857
885
  - - '='
858
886
  - !ruby/object:Gem::Version
859
- version: 1.63.2
887
+ version: 1.63.3
860
888
  type: :runtime
861
889
  prerelease: false
862
890
  version_requirements: !ruby/object:Gem::Requirement
863
891
  requirements:
864
892
  - - '='
865
893
  - !ruby/object:Gem::Version
866
- version: 1.63.2
894
+ version: 1.63.3
867
895
  - !ruby/object:Gem::Dependency
868
896
  name: rubocop-rake
869
897
  requirement: !ruby/object:Gem::Requirement
@@ -968,14 +996,14 @@ dependencies:
968
996
  requirements:
969
997
  - - '='
970
998
  - !ruby/object:Gem::Version
971
- version: 0.123.0
999
+ version: 0.124.0
972
1000
  type: :runtime
973
1001
  prerelease: false
974
1002
  version_requirements: !ruby/object:Gem::Requirement
975
1003
  requirements:
976
1004
  - - '='
977
1005
  - !ruby/object:Gem::Version
978
- version: 0.123.0
1006
+ version: 0.124.0
979
1007
  - !ruby/object:Gem::Dependency
980
1008
  name: serialport
981
1009
  requirement: !ruby/object:Gem::Requirement
@@ -1038,14 +1066,14 @@ dependencies:
1038
1066
  requirements:
1039
1067
  - - '='
1040
1068
  - !ruby/object:Gem::Version
1041
- version: 1.7.3
1069
+ version: 2.0.1
1042
1070
  type: :runtime
1043
1071
  prerelease: false
1044
1072
  version_requirements: !ruby/object:Gem::Requirement
1045
1073
  requirements:
1046
1074
  - - '='
1047
1075
  - !ruby/object:Gem::Version
1048
- version: 1.7.3
1076
+ version: 2.0.1
1049
1077
  - !ruby/object:Gem::Dependency
1050
1078
  name: thin
1051
1079
  requirement: !ruby/object:Gem::Requirement
@@ -1735,6 +1763,7 @@ files:
1735
1763
  - lib/pwn/banner/radare2.rb
1736
1764
  - lib/pwn/banner/white_rabbit.rb
1737
1765
  - lib/pwn/ffi.rb
1766
+ - lib/pwn/ffi/stdio.rb
1738
1767
  - lib/pwn/plugins.rb
1739
1768
  - lib/pwn/plugins/android.rb
1740
1769
  - lib/pwn/plugins/assembly.rb
@@ -2065,6 +2094,7 @@ files:
2065
2094
  - spec/lib/pwn/banner/radare2_spec.rb
2066
2095
  - spec/lib/pwn/banner/white_rabbit_spec.rb
2067
2096
  - spec/lib/pwn/banner_spec.rb
2097
+ - spec/lib/pwn/ffi/stdio_spec.rb
2068
2098
  - spec/lib/pwn/ffi_spec.rb
2069
2099
  - spec/lib/pwn/plugins/android_spec.rb
2070
2100
  - spec/lib/pwn/plugins/assembly_spec.rb