pwn 0.4.693 → 0.4.695
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +3 -2
- data/README.md +2 -2
- data/bin/pwn_diff_xml_files +51 -0
- data/lib/pwn/plugins/burp_suite.rb +1 -1
- data/lib/pwn/version.rb +1 -1
- metadata +22 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 70b5ba0004d7791378ec5fcd656c39cca71f3a074e80a64eaf3aed243634ca6a
|
4
|
+
data.tar.gz: a01badbcbe18333492f4b563bedd6c20b6c4604645dd773e0acf72bd71b500cc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0fd88ba55522c645f697e69da1ecfbb867b0cc0a90f206272221a0ba8f5d29fdde8720d181494062b6a8d614209ef5a2c67b7e4d036424f5dc57547269f4e728
|
7
|
+
data.tar.gz: fb1bd375593ca142ce9b52ee0956f5b5e9090a3c300271128bc5546111a24743df8df273c8e3d538c2288e1554e641a0c5dc7d7e101721da0234666e67fafc81
|
data/Gemfile
CHANGED
@@ -42,12 +42,13 @@ gem 'luhn', '1.0.2'
|
|
42
42
|
gem 'mail', '2.8.1'
|
43
43
|
gem 'mongo', '2.18.2'
|
44
44
|
gem 'msfrpc-client', '1.1.2'
|
45
|
+
gem 'neovim', '0.9.0'
|
45
46
|
gem 'netaddr', '2.0.6'
|
46
47
|
gem 'net-ldap', '0.18.0'
|
47
48
|
gem 'net-openvpn', '0.8.7'
|
48
49
|
gem 'net-smtp', '0.3.3'
|
49
50
|
gem 'nexpose', '7.3.0'
|
50
|
-
gem 'nokogiri', '1.
|
51
|
+
gem 'nokogiri', '1.15.0'
|
51
52
|
gem 'oily_png', '1.2.1'
|
52
53
|
gem 'os', '1.1.4'
|
53
54
|
gem 'packetfu', '1.1.13'
|
@@ -64,7 +65,7 @@ gem 'rex', '2.0.13'
|
|
64
65
|
gem 'rmagick', '5.2.0'
|
65
66
|
gem 'rspec', '3.12.0'
|
66
67
|
gem 'rtesseract', '3.1.2'
|
67
|
-
gem 'rubocop', '1.
|
68
|
+
gem 'rubocop', '1.51.0'
|
68
69
|
gem 'rubocop-rake', '0.6.0'
|
69
70
|
gem 'rubocop-rspec', '2.22.0'
|
70
71
|
gem 'ruby-audio', '1.6.1'
|
data/README.md
CHANGED
@@ -37,7 +37,7 @@ $ rvm use ruby-3.2.2@pwn
|
|
37
37
|
$ rvm list gemsets
|
38
38
|
$ gem install --verbose pwn
|
39
39
|
$ pwn
|
40
|
-
pwn[v0.4.
|
40
|
+
pwn[v0.4.695]: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.2.2@pwn
|
|
52
52
|
$ gem uninstall --all --executables pwn
|
53
53
|
$ gem install --verbose pwn
|
54
54
|
$ pwn
|
55
|
-
pwn[v0.4.
|
55
|
+
pwn[v0.4.695]:001 >>> PWN.help
|
56
56
|
```
|
57
57
|
|
58
58
|
|
@@ -0,0 +1,51 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
require 'nokogiri'
|
5
|
+
require 'optparse'
|
6
|
+
|
7
|
+
opts = {}
|
8
|
+
OptionParser.new do |options|
|
9
|
+
options.on('-aXML', '--xml-a=XML', '<Required - First XML to Compare)>') do |x1|
|
10
|
+
opts[:x1_path] = x1
|
11
|
+
end
|
12
|
+
|
13
|
+
options.on('-bXML', '--xml-b=XML', '<Required - Second XML to Compare)>') do |x2|
|
14
|
+
opts[:x2_path] = x2
|
15
|
+
end
|
16
|
+
|
17
|
+
options.on('-dDIFF', '--xml-diff=DIFF', '<Required - Path of XML Diff to Generate)>') do |d|
|
18
|
+
opts[:diff_path] = d
|
19
|
+
end
|
20
|
+
end.parse!
|
21
|
+
|
22
|
+
if opts.empty?
|
23
|
+
puts `#{$PROGRAM_NAME} --help`
|
24
|
+
exit 1
|
25
|
+
end
|
26
|
+
|
27
|
+
# Compare the diff of two XML files using the nokogiri gem in Ruby
|
28
|
+
# and output the diff to a new XML file using the same format as the
|
29
|
+
# the original XML files.
|
30
|
+
begin
|
31
|
+
x1_path = opts[:x1_path]
|
32
|
+
x2_path = opts[:x2_path]
|
33
|
+
diff_path = opts[:diff_path]
|
34
|
+
|
35
|
+
x1 = Nokogiri::XML(File.open(x1_path))
|
36
|
+
x2 = Nokogiri::XML(File.open(x2_path))
|
37
|
+
|
38
|
+
diff = x1.diff(x2)
|
39
|
+
diff_xml = Nokogiri::XML::Builder.new do |xml|
|
40
|
+
xml.diff do
|
41
|
+
diff.each do |change|
|
42
|
+
xml.send(change.action, change.node.to_xml) unless change.action == '='
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
File.write(diff_path, diff_xml.to_xml)
|
48
|
+
rescue StandardError => e
|
49
|
+
puts "Error: #{e.message}"
|
50
|
+
exit 1
|
51
|
+
end
|
@@ -256,7 +256,7 @@ module PWN
|
|
256
256
|
# "http://#{burpbuddy_api}/scanreport/#{report_url}"
|
257
257
|
# )
|
258
258
|
File.open(output_path, 'w') do |f|
|
259
|
-
f.puts(report_resp.body)
|
259
|
+
f.puts(report_resp.body.gsub(/\r\n/, "\n"))
|
260
260
|
end
|
261
261
|
rescue StandardError => e
|
262
262
|
stop(burp_obj: burp_obj) unless burp_obj.nil?
|
data/lib/pwn/version.rb
CHANGED
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.4.
|
4
|
+
version: 0.4.695
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- 0day Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-05-
|
11
|
+
date: 2023-05-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -444,6 +444,20 @@ dependencies:
|
|
444
444
|
- - '='
|
445
445
|
- !ruby/object:Gem::Version
|
446
446
|
version: 1.1.2
|
447
|
+
- !ruby/object:Gem::Dependency
|
448
|
+
name: neovim
|
449
|
+
requirement: !ruby/object:Gem::Requirement
|
450
|
+
requirements:
|
451
|
+
- - '='
|
452
|
+
- !ruby/object:Gem::Version
|
453
|
+
version: 0.9.0
|
454
|
+
type: :runtime
|
455
|
+
prerelease: false
|
456
|
+
version_requirements: !ruby/object:Gem::Requirement
|
457
|
+
requirements:
|
458
|
+
- - '='
|
459
|
+
- !ruby/object:Gem::Version
|
460
|
+
version: 0.9.0
|
447
461
|
- !ruby/object:Gem::Dependency
|
448
462
|
name: netaddr
|
449
463
|
requirement: !ruby/object:Gem::Requirement
|
@@ -520,14 +534,14 @@ dependencies:
|
|
520
534
|
requirements:
|
521
535
|
- - '='
|
522
536
|
- !ruby/object:Gem::Version
|
523
|
-
version: 1.
|
537
|
+
version: 1.15.0
|
524
538
|
type: :runtime
|
525
539
|
prerelease: false
|
526
540
|
version_requirements: !ruby/object:Gem::Requirement
|
527
541
|
requirements:
|
528
542
|
- - '='
|
529
543
|
- !ruby/object:Gem::Version
|
530
|
-
version: 1.
|
544
|
+
version: 1.15.0
|
531
545
|
- !ruby/object:Gem::Dependency
|
532
546
|
name: oily_png
|
533
547
|
requirement: !ruby/object:Gem::Requirement
|
@@ -758,14 +772,14 @@ dependencies:
|
|
758
772
|
requirements:
|
759
773
|
- - '='
|
760
774
|
- !ruby/object:Gem::Version
|
761
|
-
version: 1.
|
775
|
+
version: 1.51.0
|
762
776
|
type: :runtime
|
763
777
|
prerelease: false
|
764
778
|
version_requirements: !ruby/object:Gem::Requirement
|
765
779
|
requirements:
|
766
780
|
- - '='
|
767
781
|
- !ruby/object:Gem::Version
|
768
|
-
version: 1.
|
782
|
+
version: 1.51.0
|
769
783
|
- !ruby/object:Gem::Dependency
|
770
784
|
name: rubocop-rake
|
771
785
|
requirement: !ruby/object:Gem::Requirement
|
@@ -1109,6 +1123,7 @@ executables:
|
|
1109
1123
|
- pwn_defectdojo_importscan
|
1110
1124
|
- pwn_defectdojo_reimportscan
|
1111
1125
|
- pwn_diff_csv_files_w_column_exclude
|
1126
|
+
- pwn_diff_xml_files
|
1112
1127
|
- pwn_domain_reversewhois
|
1113
1128
|
- pwn_fuzz_net_app_proto
|
1114
1129
|
- pwn_ibm_appscan_enterprise
|
@@ -1176,6 +1191,7 @@ files:
|
|
1176
1191
|
- bin/pwn_defectdojo_importscan
|
1177
1192
|
- bin/pwn_defectdojo_reimportscan
|
1178
1193
|
- bin/pwn_diff_csv_files_w_column_exclude
|
1194
|
+
- bin/pwn_diff_xml_files
|
1179
1195
|
- bin/pwn_domain_reversewhois
|
1180
1196
|
- bin/pwn_fuzz_net_app_proto
|
1181
1197
|
- bin/pwn_ibm_appscan_enterprise
|