pwn 0.4.516 → 0.4.517

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +2 -2
  3. data/README.md +2 -2
  4. data/lib/pwn/sast/amqp_connect_as_guest.rb +1 -1
  5. data/lib/pwn/sast/apache_file_system_util_api.rb +1 -1
  6. data/lib/pwn/sast/aws.rb +1 -1
  7. data/lib/pwn/sast/banned_function_calls_c.rb +1 -1
  8. data/lib/pwn/sast/base64.rb +1 -1
  9. data/lib/pwn/sast/beef_hook.rb +5 -2
  10. data/lib/pwn/sast/cmd_execution_java.rb +1 -1
  11. data/lib/pwn/sast/cmd_execution_python.rb +1 -1
  12. data/lib/pwn/sast/cmd_execution_ruby.rb +1 -1
  13. data/lib/pwn/sast/cmd_execution_scala.rb +1 -1
  14. data/lib/pwn/sast/csrf.rb +3 -2
  15. data/lib/pwn/sast/deserial_java.rb +12 -2
  16. data/lib/pwn/sast/emoticon.rb +4 -1
  17. data/lib/pwn/sast/eval.rb +3 -2
  18. data/lib/pwn/sast/factory.rb +7 -2
  19. data/lib/pwn/sast/http_authorization_header.rb +1 -1
  20. data/lib/pwn/sast/inner_html.rb +3 -2
  21. data/lib/pwn/sast/keystore.rb +5 -2
  22. data/lib/pwn/sast/location_hash.rb +3 -2
  23. data/lib/pwn/sast/log4j.rb +1 -1
  24. data/lib/pwn/sast/logger.rb +1 -1
  25. data/lib/pwn/sast/outer_html.rb +3 -2
  26. data/lib/pwn/sast/password.rb +1 -1
  27. data/lib/pwn/sast/pom_version.rb +5 -2
  28. data/lib/pwn/sast/port.rb +1 -1
  29. data/lib/pwn/sast/private_key.rb +1 -1
  30. data/lib/pwn/sast/redirect.rb +1 -1
  31. data/lib/pwn/sast/redos.rb +1 -1
  32. data/lib/pwn/sast/shell.rb +1 -1
  33. data/lib/pwn/sast/signature.rb +1 -1
  34. data/lib/pwn/sast/sql.rb +1 -1
  35. data/lib/pwn/sast/ssl.rb +9 -2
  36. data/lib/pwn/sast/sudo.rb +1 -1
  37. data/lib/pwn/sast/task_tag.rb +1 -1
  38. data/lib/pwn/sast/throw_errors.rb +3 -2
  39. data/lib/pwn/sast/token.rb +7 -2
  40. data/lib/pwn/sast/version.rb +6 -2
  41. data/lib/pwn/sast/window_location_hash.rb +3 -2
  42. data/lib/pwn/version.rb +1 -1
  43. metadata +6 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ad76153d92ea2f3a0a50a38ff991a823ae23f464a154db7eb277678dce706c15
4
- data.tar.gz: 1124c4da2fe0ca44691b35d25b6dd5b9a8df9b8d4e369bf751c4fb690f5c6a13
3
+ metadata.gz: c8e3f58022b83a3829453c781e95a45ac2d388795c1b3916a4ecd02ba16da233
4
+ data.tar.gz: efe0ee32060320d6dcee8f93cd0f6cb450066634f7e573e8d839aca2bdabb29b
5
5
  SHA512:
6
- metadata.gz: 25b1acd559f11a62091a23fc6baea38f11e8b36aee451a54eddd112dba59ab9a5c2e110925d8c9f86d23172ed8fb4217ba0ba35153146146014ab114a2203205
7
- data.tar.gz: 6ba27b32c50d28b16723c15c9894cefbeda0ebab27b3a8b9d298b90b3cd4d28697f966954c3d1007d436548f0d6eecef4a2b3dba92167e2311034ef656e1b861
6
+ metadata.gz: c10feee36edd3037ea8a1ca3edccb12ed8629d9f3c64c70eb429cf0706b14721bf6b6900d5ecf08eb231b51b58fc5dcd222a2c7cd5de65ce39367ae23996f5cb
7
+ data.tar.gz: cf61e7be071b16c3ec493bd293f096008cfe4d71b57c0b2d2d2084a649c699bdc9eb25b9266b7f036ec4daa41bce0f0bd6a3e84c6f37c0171f469e83ec98efed
data/Gemfile CHANGED
@@ -60,14 +60,14 @@ gem 'rex', '2.0.13'
60
60
  gem 'rmagick', '4.2.6'
61
61
  gem 'rspec', '3.11.0'
62
62
  gem 'rtesseract', '3.1.2'
63
- gem 'rubocop', '1.32.0'
63
+ gem 'rubocop', '1.33.0'
64
64
  gem 'rubocop-rake', '0.6.0'
65
65
  gem 'rubocop-rspec', '2.12.1'
66
66
  gem 'ruby-audio', '1.6.1'
67
67
  gem 'ruby-nmap', '0.10.0'
68
68
  gem 'ruby-saml', '1.14.0'
69
69
  gem 'rvm', '1.11.3.9'
70
- gem 'savon', '2.12.1'
70
+ gem 'savon', '2.13.0'
71
71
  gem 'selenium-devtools', '0.104.0'
72
72
  gem 'serialport', '1.3.2'
73
73
  gem 'sinatra', '2.2.2'
data/README.md CHANGED
@@ -37,7 +37,7 @@ $ rvm use ruby-3.1.2@pwn
37
37
  $ rvm list gemsets
38
38
  $ gem install --verbose pwn
39
39
  $ pwn
40
- pwn[v0.4.516]:001 >>> PWN.help
40
+ pwn[v0.4.517]: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.1.2@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.4.516]:001 >>> PWN.help
55
+ pwn[v0.4.517]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
 
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
26
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
data/lib/pwn/sast/aws.rb CHANGED
@@ -21,7 +21,7 @@ module PWN
21
21
  logger_results = ''
22
22
 
23
23
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
24
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
24
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
25
25
  line_no_and_contents_arr = []
26
26
  entry_beautified = false
27
27
 
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.c' || File.extname(entry) == '.cpp' || File.extname(entry) == '.c++' || File.extname(entry) == '.cxx' || File.extname(entry) == '.h' || File.extname(entry) == '.hpp' || File.extname(entry) == '.h++' || File.extname(entry) == '.hh' || File.extname(entry) == '.hxx' || File.extname(entry) == '.ii' || File.extname(entry) == '.ixx' || File.extname(entry) == '.ipp' || File.extname(entry) == '.inl' || File.extname(entry) == '.txx' || File.extname(entry) == '.tpp' || File.extname(entry) == '.tpl')
26
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.c' || File.extname(entry) == '.cpp' || File.extname(entry) == '.c++' || File.extname(entry) == '.cxx' || File.extname(entry) == '.h' || File.extname(entry) == '.hpp' || File.extname(entry) == '.h++' || File.extname(entry) == '.hh' || File.extname(entry) == '.hxx' || File.extname(entry) == '.ii' || File.extname(entry) == '.ixx' || File.extname(entry) == '.ipp' || File.extname(entry) == '.inl' || File.extname(entry) == '.txx' || File.extname(entry) == '.tpp' || File.extname(entry) == '.tpl') && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -32,7 +32,10 @@ module PWN
32
32
  entry_beautified = true
33
33
  end
34
34
 
35
- test_case_filter = "grep -Fin 'hook.js' #{entry}"
35
+ test_case_filter = "
36
+ grep -Fin \
37
+ -e 'hook.js' #{entry}
38
+ "
36
39
 
37
40
  str = `#{test_case_filter}`.to_s.scrub
38
41
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && File.extname(entry) == '.java'
25
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && File.extname(entry) == '.java' && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.py' || File.extname(entry) == '.pyc' || File.extname(entry) == '.pyo' || File.extname(entry) == '.pyd')
25
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.py' || File.extname(entry) == '.pyc' || File.extname(entry) == '.pyo' || File.extname(entry) == '.pyd') && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.rb' || File.extname(entry) == '.rbw')
25
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.rb' || File.extname(entry) == '.rbw') && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && File.extname(entry) == '.scala'
25
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && File.extname(entry) == '.scala' && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
data/lib/pwn/sast/csrf.rb CHANGED
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
26
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -34,7 +34,8 @@ module PWN
34
34
  end
35
35
 
36
36
  test_case_filter = "
37
- grep -ni 'csrf' #{entry}
37
+ grep -ni \
38
+ -e 'csrf' #{entry}
38
39
  "
39
40
 
40
41
  str = `#{test_case_filter}`.to_s.scrub
@@ -24,7 +24,7 @@ module PWN
24
24
  logger_results = ''
25
25
 
26
26
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
27
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.scala' || File.extname(entry) == '.java')
27
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.scala' || File.extname(entry) == '.java') && entry !~ /test/i
28
28
  line_no_and_contents_arr = []
29
29
  entry_beautified = false
30
30
 
@@ -34,7 +34,17 @@ module PWN
34
34
  entry_beautified = true
35
35
  end
36
36
 
37
- test_case_filter = "grep -in -e readObject -e XMLdecoder -e fromXML -e readObjectNodData -e readResolve -e readExternal -e readUnshared -e Serializable #{entry}"
37
+ test_case_filter = "
38
+ grep -in \
39
+ -e readObject \
40
+ -e XMLdecoder \
41
+ -e fromXML \
42
+ -e readObjectNodData \
43
+ -e readResolve \
44
+ -e readExternal \
45
+ -e readUnshared \
46
+ -e Serializable #{entry}
47
+ "
38
48
 
39
49
  str = `#{test_case_filter}`.to_s.scrub
40
50
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -38,6 +38,9 @@ module PWN
38
38
  -e ';-)' \
39
39
  -e ':-P' \
40
40
  -e ':-D' \
41
+ -e '\_o_/' \
42
+ -e '\_O_/' \
43
+ -e '\_0_/' \
41
44
  -e ':-O' #{entry}
42
45
  "
43
46
 
data/lib/pwn/sast/eval.rb CHANGED
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
26
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -34,7 +34,8 @@ module PWN
34
34
  end
35
35
 
36
36
  test_case_filter = "
37
- grep -n 'eval(' #{entry}
37
+ grep -n \
38
+ -e 'eval(' #{entry}
38
39
  "
39
40
 
40
41
  str = `#{test_case_filter}`.to_s.scrub
@@ -24,7 +24,7 @@ module PWN
24
24
  logger_results = ''
25
25
 
26
26
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
27
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.scala' || File.extname(entry) == '.java')
27
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.scala' || File.extname(entry) == '.java') && entry !~ /test/i
28
28
  line_no_and_contents_arr = []
29
29
  entry_beautified = false
30
30
 
@@ -34,7 +34,12 @@ module PWN
34
34
  entry_beautified = true
35
35
  end
36
36
 
37
- test_case_filter = "grep -in -e DocumentBuilderFactory -e XMLInputFactory -e SAXParserFactory #{entry}"
37
+ test_case_filter = "
38
+ grep -in \
39
+ -e DocumentBuilderFactory \
40
+ -e XMLInputFactory \
41
+ -e SAXParserFactory #{entry}
42
+ "
38
43
 
39
44
  str = `#{test_case_filter}`.to_s.scrub
40
45
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
26
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -34,7 +34,8 @@ module PWN
34
34
  end
35
35
 
36
36
  test_case_filter = "
37
- grep -n 'innerHTML' #{entry}
37
+ grep -n \
38
+ -e 'innerHTML' #{entry}
38
39
  "
39
40
 
40
41
  str = `#{test_case_filter}`.to_s.scrub
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -32,7 +32,10 @@ module PWN
32
32
  entry_beautified = true
33
33
  end
34
34
 
35
- test_case_filter = "grep -Fin 'keystore' #{entry}"
35
+ test_case_filter = "
36
+ grep -Fin \
37
+ -e 'keystore' #{entry}
38
+ "
36
39
 
37
40
  str = `#{test_case_filter}`.to_s.scrub
38
41
 
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
26
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -34,7 +34,8 @@ module PWN
34
34
  end
35
35
 
36
36
  test_case_filter = "
37
- grep -n 'location.hash' #{entry}
37
+ grep -n \
38
+ -e 'location.hash' #{entry}
38
39
  "
39
40
 
40
41
  str = `#{test_case_filter}`.to_s.scrub
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && File.extname(entry) == '.java'
25
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && File.extname(entry) == '.java' && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.scala' || File.extname(entry) == '.java')
26
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.scala' || File.extname(entry) == '.java') && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
26
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -34,7 +34,8 @@ module PWN
34
34
  end
35
35
 
36
36
  test_case_filter = "
37
- grep -n 'outerHTML' #{entry}
37
+ grep -n \
38
+ -e 'outerHTML' #{entry}
38
39
  "
39
40
 
40
41
  str = `#{test_case_filter}`.to_s.scrub
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) == 'pom.xml'
26
+ if File.file?(entry) && File.basename(entry) == 'pom.xml' && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -33,7 +33,10 @@ module PWN
33
33
  entry_beautified = true
34
34
  end
35
35
 
36
- test_case_filter = "grep -in -B2 'version' #{entry}"
36
+ test_case_filter = "
37
+ grep -in -B2 \
38
+ -e 'version' #{entry}
39
+ "
37
40
 
38
41
  str = `#{test_case_filter}`.to_s.scrub
39
42
 
data/lib/pwn/sast/port.rb CHANGED
@@ -24,7 +24,7 @@ module PWN
24
24
  logger_results = ''
25
25
 
26
26
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
27
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
27
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
28
28
  line_no_and_contents_arr = []
29
29
  entry_beautified = false
30
30
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
26
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
data/lib/pwn/sast/sql.rb CHANGED
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
26
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
data/lib/pwn/sast/ssl.rb CHANGED
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -32,7 +32,14 @@ module PWN
32
32
  entry_beautified = true
33
33
  end
34
34
 
35
- test_case_filter = "grep -Fin -e 'ssl' -e 'tls' -e 'trustAll' -e 'trustmanager' -e 'ssl_version' #{entry}"
35
+ test_case_filter = "
36
+ grep -Fin \
37
+ -e 'ssl' \
38
+ -e 'tls' \
39
+ -e 'trustAll' \
40
+ -e 'trustmanager' \
41
+ -e 'ssl_version' #{entry}
42
+ "
36
43
 
37
44
  str = `#{test_case_filter}`.to_s.scrub
38
45
 
data/lib/pwn/sast/sudo.rb CHANGED
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -23,7 +23,7 @@ module PWN
23
23
  logger_results = ''
24
24
 
25
25
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
26
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
26
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
27
27
  line_no_and_contents_arr = []
28
28
  entry_beautified = false
29
29
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.scala' || File.extname(entry) == '.java')
25
+ if (File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/) && (File.extname(entry) == '.scala' || File.extname(entry) == '.java') && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -33,7 +33,8 @@ module PWN
33
33
  end
34
34
 
35
35
  test_case_filter = %(
36
- grep -in throw #{entry} | grep '"'
36
+ grep -in \
37
+ -e throw #{entry} | grep '"'
37
38
  )
38
39
 
39
40
  str = `#{test_case_filter}`.to_s.scrub
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -32,7 +32,12 @@ module PWN
32
32
  entry_beautified = true
33
33
  end
34
34
 
35
- test_case_filter = "grep -Fin -e 'token' -e 'oauth' -e 'decodeAndVerify' #{entry}"
35
+ test_case_filter = "
36
+ grep -Fin \
37
+ -e 'token' \
38
+ -e 'oauth' \
39
+ -e 'decodeAndVerify' #{entry}
40
+ "
36
41
 
37
42
  str = `#{test_case_filter}`.to_s.scrub
38
43
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -32,7 +32,11 @@ module PWN
32
32
  entry_beautified = true
33
33
  end
34
34
 
35
- test_case_filter = %(grep -in "version\\s=\\s" #{entry} | grep -F '"')
35
+ test_case_filter = %(
36
+ grep -in \
37
+ -e "version\\s=\\s" #{entry} | \
38
+ grep -F '"'
39
+ )
36
40
 
37
41
  str = `#{test_case_filter}`.to_s.scrub
38
42
 
@@ -22,7 +22,7 @@ module PWN
22
22
  logger_results = ''
23
23
 
24
24
  PWN::Plugins::FileFu.recurse_dir(dir_path: dir_path) do |entry|
25
- if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/
25
+ if File.file?(entry) && File.basename(entry) !~ /^pwn.+(html|json|db)$/ && File.basename(entry) !~ /\.JS-BEAUTIFIED$/ && entry !~ /test/i
26
26
  line_no_and_contents_arr = []
27
27
  entry_beautified = false
28
28
 
@@ -33,7 +33,8 @@ module PWN
33
33
  end
34
34
 
35
35
  test_case_filter = "
36
- grep -n 'window.location.hash' #{entry}
36
+ grep -n \
37
+ -e 'window.location.hash' #{entry}
37
38
  "
38
39
 
39
40
  str = `#{test_case_filter}`.to_s.scrub
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.4.516'
4
+ VERSION = '0.4.517'
5
5
  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.4.516
4
+ version: 0.4.517
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-08-03 00:00:00.000000000 Z
11
+ date: 2022-08-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -688,14 +688,14 @@ dependencies:
688
688
  requirements:
689
689
  - - '='
690
690
  - !ruby/object:Gem::Version
691
- version: 1.32.0
691
+ version: 1.33.0
692
692
  type: :runtime
693
693
  prerelease: false
694
694
  version_requirements: !ruby/object:Gem::Requirement
695
695
  requirements:
696
696
  - - '='
697
697
  - !ruby/object:Gem::Version
698
- version: 1.32.0
698
+ version: 1.33.0
699
699
  - !ruby/object:Gem::Dependency
700
700
  name: rubocop-rake
701
701
  requirement: !ruby/object:Gem::Requirement
@@ -786,14 +786,14 @@ dependencies:
786
786
  requirements:
787
787
  - - '='
788
788
  - !ruby/object:Gem::Version
789
- version: 2.12.1
789
+ version: 2.13.0
790
790
  type: :runtime
791
791
  prerelease: false
792
792
  version_requirements: !ruby/object:Gem::Requirement
793
793
  requirements:
794
794
  - - '='
795
795
  - !ruby/object:Gem::Version
796
- version: 2.12.1
796
+ version: 2.13.0
797
797
  - !ruby/object:Gem::Dependency
798
798
  name: selenium-devtools
799
799
  requirement: !ruby/object:Gem::Requirement