pwn 0.5.83 → 0.5.85
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +7 -6
- data/README.md +3 -3
- data/lib/pwn/aws.rb +1 -1
- data/lib/pwn/ffi/stdio.rb +40 -0
- data/lib/pwn/ffi.rb +2 -2
- data/lib/pwn/plugins/repl.rb +1 -0
- data/lib/pwn/plugins.rb +1 -1
- data/lib/pwn/reports.rb +1 -1
- data/lib/pwn/sast.rb +1 -1
- data/lib/pwn/version.rb +1 -1
- data/lib/pwn/www.rb +1 -1
- data/lib/pwn.rb +1 -1
- data/spec/lib/pwn/ffi/stdio_spec.rb +15 -0
- metadata +43 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fb237056a0ee9908b27a0961e1e0683b8d22dacb80442543abc26c5e810faa1c
|
4
|
+
data.tar.gz: 4883a7d72288bf56d59b80e1d6fd292cff3245ac8260c9eb899a89378af11d28
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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.
|
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
|
-
|
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 '
|
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.
|
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.
|
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', '
|
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.
|
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.
|
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.
|
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
@@ -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
|
-
|
8
|
+
autoload :Stdio, 'pwn/ffi/stdio'
|
9
9
|
|
10
|
-
# Display a List of Every PWN
|
10
|
+
# Display a List of Every PWN::FFI Module
|
11
11
|
|
12
12
|
public_class_method def self.help
|
13
13
|
constants.sort
|
data/lib/pwn/plugins/repl.rb
CHANGED
data/lib/pwn/plugins.rb
CHANGED
data/lib/pwn/reports.rb
CHANGED
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
|
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
data/lib/pwn/www.rb
CHANGED
data/lib/pwn.rb
CHANGED
@@ -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.
|
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-
|
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.
|
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.
|
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:
|
770
|
+
name: rbvmomi2
|
743
771
|
requirement: !ruby/object:Gem::Requirement
|
744
772
|
requirements:
|
745
773
|
- - '='
|
746
774
|
- !ruby/object:Gem::Version
|
747
|
-
version: 3.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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:
|
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:
|
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
|