pwn 0.5.509 → 0.5.510

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 (1057) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +1 -0
  3. data/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
  4. data/.gitignore +65 -0
  5. data/.rubocop.yml +35 -0
  6. data/.rubocop_todo.yml +178 -0
  7. data/.ruby-gemset +1 -0
  8. data/.ruby-version +1 -0
  9. data/.travis.yml +24 -0
  10. data/CHANGELOG_BETWEEN_TAGS.txt +185 -0
  11. data/CODE_OF_CONDUCT.md +46 -0
  12. data/CONTRIBUTING.md +13 -0
  13. data/Gemfile +107 -0
  14. data/LICENSE.txt +22 -0
  15. data/README.md +100 -0
  16. data/Rakefile +20 -0
  17. data/Vagrantfile +250 -0
  18. data/bin/pwn +30 -0
  19. data/bin/pwn_android_war_dialer +151 -0
  20. data/bin/pwn_autoinc_version +58 -0
  21. data/bin/pwn_aws_describe_resources +717 -0
  22. data/bin/pwn_bdba_groups +107 -0
  23. data/bin/pwn_bdba_scan +198 -0
  24. data/bin/pwn_burp_suite_pro_active_rest_api_scan +167 -0
  25. data/bin/pwn_burp_suite_pro_active_scan +132 -0
  26. data/bin/pwn_char_base64_encoding +15 -0
  27. data/bin/pwn_char_dec_encoding +14 -0
  28. data/bin/pwn_char_hex_escaped_encoding +17 -0
  29. data/bin/pwn_char_html_entity_encoding +15 -0
  30. data/bin/pwn_char_unicode_escaped_encoding +14 -0
  31. data/bin/pwn_char_url_encoding +15 -0
  32. data/bin/pwn_crt_sh +73 -0
  33. data/bin/pwn_defectdojo_engagement_create +148 -0
  34. data/bin/pwn_defectdojo_importscan +130 -0
  35. data/bin/pwn_defectdojo_reimportscan +118 -0
  36. data/bin/pwn_diff_csv_files_w_column_exclude +171 -0
  37. data/bin/pwn_domain_reversewhois +76 -0
  38. data/bin/pwn_fuzz_net_app_proto +170 -0
  39. data/bin/pwn_gqrx_scanner +196 -0
  40. data/bin/pwn_jenkins_create_job +58 -0
  41. data/bin/pwn_jenkins_create_view +58 -0
  42. data/bin/pwn_jenkins_install_plugin +83 -0
  43. data/bin/pwn_jenkins_thinBackup_aws_s3 +113 -0
  44. data/bin/pwn_jenkins_update_plugins +77 -0
  45. data/bin/pwn_jenkins_useradd +76 -0
  46. data/bin/pwn_mail_agent +114 -0
  47. data/bin/pwn_msf_postgres_login +28 -0
  48. data/bin/pwn_nessus_cloud_scan_crud +334 -0
  49. data/bin/pwn_nessus_cloud_vulnscan +87 -0
  50. data/bin/pwn_nexpose +42 -0
  51. data/bin/pwn_nmap_discover_tcp_udp +353 -0
  52. data/bin/pwn_openvas_vulnscan +104 -0
  53. data/bin/pwn_pastebin_sample_filter +47 -0
  54. data/bin/pwn_phone +129 -0
  55. data/bin/pwn_rdoc_to_jsonl +83 -0
  56. data/bin/pwn_sast +183 -0
  57. data/bin/pwn_serial_check_voicemail +56 -0
  58. data/bin/pwn_serial_msr206 +168 -0
  59. data/bin/pwn_serial_qualcomm_commands +16 -0
  60. data/bin/pwn_serial_son_micro_sm132_rfid +188 -0
  61. data/bin/pwn_shodan_graphql_introspection +304 -0
  62. data/bin/pwn_shodan_search +90 -0
  63. data/bin/pwn_simple_http_server +44 -0
  64. data/bin/pwn_web_cache_deception +205 -0
  65. data/bin/pwn_www_checkip +77 -0
  66. data/bin/pwn_www_uri_buster +363 -0
  67. data/bin/pwn_xss_dom_vectors +149 -0
  68. data/bin/pwn_zaproxy_active_rest_api_scan +159 -0
  69. data/bin/pwn_zaproxy_active_scan +130 -0
  70. data/build_pwn_gem.sh +33 -0
  71. data/documentation/PWN.png +0 -0
  72. data/documentation/PWN_Contributors_and_Users.png +0 -0
  73. data/documentation/fax-spectrogram.png +0 -0
  74. data/documentation/fax-waveform.png +0 -0
  75. data/documentation/frozen_string_literal_files_changed_from_false_to_true.txt +54 -0
  76. data/documentation/pwn_android_war_dialer_session.png +0 -0
  77. data/documentation/pwn_install.png +0 -0
  78. data/documentation/pwn_wallpaper.jpg +0 -0
  79. data/documentation/ringing-spectrogram.png +0 -0
  80. data/documentation/ringing-waveform.png +0 -0
  81. data/etc/systemd/msfrpcd.service +12 -0
  82. data/etc/systemd/openvas.service +14 -0
  83. data/etc/userland/aws/apache2/jenkins_443.conf +90 -0
  84. data/etc/userland/aws/apache2/jenkins_80.conf +7 -0
  85. data/etc/userland/aws/apache2/openvas_443.conf +87 -0
  86. data/etc/userland/aws/apache2/openvas_80.conf +7 -0
  87. data/etc/userland/aws/apache2/sast_443.conf +87 -0
  88. data/etc/userland/aws/apache2/sast_80.conf +9 -0
  89. data/etc/userland/aws/apache2/vagrant.yaml.EXAMPLE +9 -0
  90. data/etc/userland/aws/arachni/navigation-REST.instruct.EXAMPLE +29 -0
  91. data/etc/userland/aws/arachni/navigation.instruct.EXAMPLE +3 -0
  92. data/etc/userland/aws/burpsuite/navigation.instruct.EXAMPLE +3 -0
  93. data/etc/userland/aws/burpsuite/vagrant.yaml.EXAMPLE +2 -0
  94. data/etc/userland/aws/defectdojo/vagrant.yaml.EXAMPLE +3 -0
  95. data/etc/userland/aws/jenkins/inject_build_envs.sh +15 -0
  96. data/etc/userland/aws/jenkins/jenkins +81 -0
  97. data/etc/userland/aws/jenkins/jobs/pipeline-pwntemplate.xml +298 -0
  98. data/etc/userland/aws/jenkins/jobs/pipeline-selfupdate.xml +462 -0
  99. data/etc/userland/aws/jenkins/jobs/pwntemplate-DOMAIN-burpsuite.xml +44 -0
  100. data/etc/userland/aws/jenkins/jobs/pwntemplate-DOMAIN-owasp_zap.xml +35 -0
  101. data/etc/userland/aws/jenkins/jobs/pwntemplate-DOMAIN-ssllabs-scan.xml +45 -0
  102. data/etc/userland/aws/jenkins/jobs/pwntemplate-GITREPO_BRANCH-sast.xml +71 -0
  103. data/etc/userland/aws/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_discovery_scan_tcp_udp_65k.xml +56 -0
  104. data/etc/userland/aws/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_xml_results_searchsploit.xml +59 -0
  105. data/etc/userland/aws/jenkins/jobs/pwntemplate-NETWORKRANGE-openvas.xml +45 -0
  106. data/etc/userland/aws/jenkins/jobs/selfupdate-exploit-db.xml +43 -0
  107. data/etc/userland/aws/jenkins/jobs/selfupdate-gem.xml +42 -0
  108. data/etc/userland/aws/jenkins/jobs/selfupdate-jenkins_plugins.xml +42 -0
  109. data/etc/userland/aws/jenkins/jobs/selfupdate-metasploit.xml +42 -0
  110. data/etc/userland/aws/jenkins/jobs/selfupdate-nmap_all_live_hosts.xml +42 -0
  111. data/etc/userland/aws/jenkins/jobs/selfupdate-openvas_sync.xml +42 -0
  112. data/etc/userland/aws/jenkins/jobs/selfupdate-openvas_wrappers.xml +42 -0
  113. data/etc/userland/aws/jenkins/jobs/selfupdate-os.xml +42 -0
  114. data/etc/userland/aws/jenkins/jobs/selfupdate-pwn.xml +42 -0
  115. data/etc/userland/aws/jenkins/jobs/selfupdate-rvm.xml +42 -0
  116. data/etc/userland/aws/jenkins/jobs/selfupdate-ssllabs-scan.xml +42 -0
  117. data/etc/userland/aws/jenkins/jobs/selfupdate-wpscan.xml +42 -0
  118. data/etc/userland/aws/jenkins/jobs_userland/.gitkeep +0 -0
  119. data/etc/userland/aws/jenkins/log_parser_rules/arachni.rules +5 -0
  120. data/etc/userland/aws/jenkins/log_parser_rules/sast.rules +2 -0
  121. data/etc/userland/aws/jenkins/log_parser_rules/self_update.rules +14 -0
  122. data/etc/userland/aws/jenkins/log_parser_rules/ssllabs-scan.rules +8 -0
  123. data/etc/userland/aws/jenkins/log_parser_rules/system_maintenance.rules +9 -0
  124. data/etc/userland/aws/jenkins/log_parser_rules/wpscan.rules +2 -0
  125. data/etc/userland/aws/jenkins/vagrant.yaml.EXAMPLE +8 -0
  126. data/etc/userland/aws/letsencrypt/vagrant.yaml.EXAMPLE +5 -0
  127. data/etc/userland/aws/metasploit/vagrant.yaml.EXAMPLE +4 -0
  128. data/etc/userland/aws/nessus/vagrant.yaml.EXAMPLE +15 -0
  129. data/etc/userland/aws/openvas/vagrant.yaml.EXAMPLE +2 -0
  130. data/etc/userland/aws/owasp_zap/navigation.instruct.EXAMPLE +3 -0
  131. data/etc/userland/aws/postgres/vagrant.yaml.EXAMPLE +2 -0
  132. data/etc/userland/aws/recon-ng/vagrant.yaml.EXAMPLE +52 -0
  133. data/etc/userland/aws/vagrant.yaml.EXAMPLE +35 -0
  134. data/etc/userland/docker/apache2/jenkins_443.conf +90 -0
  135. data/etc/userland/docker/apache2/jenkins_80.conf +7 -0
  136. data/etc/userland/docker/apache2/openvas_443.conf +87 -0
  137. data/etc/userland/docker/apache2/openvas_80.conf +7 -0
  138. data/etc/userland/docker/apache2/sast_443.conf +87 -0
  139. data/etc/userland/docker/apache2/sast_80.conf +9 -0
  140. data/etc/userland/docker/apache2/vagrant.yaml.EXAMPLE +9 -0
  141. data/etc/userland/docker/arachni/navigation-REST.instruct.EXAMPLE +29 -0
  142. data/etc/userland/docker/arachni/navigation.instruct.EXAMPLE +3 -0
  143. data/etc/userland/docker/burpsuite/navigation.instruct.EXAMPLE +3 -0
  144. data/etc/userland/docker/burpsuite/vagrant.yaml.EXAMPLE +2 -0
  145. data/etc/userland/docker/defectdojo/vagrant.yaml.EXAMPLE +3 -0
  146. data/etc/userland/docker/jenkins/inject_build_envs.sh +15 -0
  147. data/etc/userland/docker/jenkins/jenkins +81 -0
  148. data/etc/userland/docker/jenkins/jobs/pipeline-pwntemplate.xml +298 -0
  149. data/etc/userland/docker/jenkins/jobs/pipeline-selfupdate.xml +462 -0
  150. data/etc/userland/docker/jenkins/jobs/pwntemplate-DOMAIN-burpsuite.xml +44 -0
  151. data/etc/userland/docker/jenkins/jobs/pwntemplate-DOMAIN-owasp_zap.xml +35 -0
  152. data/etc/userland/docker/jenkins/jobs/pwntemplate-DOMAIN-ssllabs-scan.xml +45 -0
  153. data/etc/userland/docker/jenkins/jobs/pwntemplate-GITREPO_BRANCH-sast.xml +71 -0
  154. data/etc/userland/docker/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_discovery_scan_tcp_udp_65k.xml +56 -0
  155. data/etc/userland/docker/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_xml_results_searchsploit.xml +59 -0
  156. data/etc/userland/docker/jenkins/jobs/pwntemplate-NETWORKRANGE-openvas.xml +45 -0
  157. data/etc/userland/docker/jenkins/jobs/selfupdate-exploit-db.xml +43 -0
  158. data/etc/userland/docker/jenkins/jobs/selfupdate-gem.xml +42 -0
  159. data/etc/userland/docker/jenkins/jobs/selfupdate-jenkins_plugins.xml +42 -0
  160. data/etc/userland/docker/jenkins/jobs/selfupdate-metasploit.xml +42 -0
  161. data/etc/userland/docker/jenkins/jobs/selfupdate-nmap_all_live_hosts.xml +42 -0
  162. data/etc/userland/docker/jenkins/jobs/selfupdate-openvas_sync.xml +42 -0
  163. data/etc/userland/docker/jenkins/jobs/selfupdate-openvas_wrappers.xml +42 -0
  164. data/etc/userland/docker/jenkins/jobs/selfupdate-os.xml +42 -0
  165. data/etc/userland/docker/jenkins/jobs/selfupdate-pwn.xml +42 -0
  166. data/etc/userland/docker/jenkins/jobs/selfupdate-rvm.xml +42 -0
  167. data/etc/userland/docker/jenkins/jobs/selfupdate-ssllabs-scan.xml +42 -0
  168. data/etc/userland/docker/jenkins/jobs/selfupdate-wpscan.xml +42 -0
  169. data/etc/userland/docker/jenkins/jobs_userland/.gitkeep +0 -0
  170. data/etc/userland/docker/jenkins/log_parser_rules/arachni.rules +5 -0
  171. data/etc/userland/docker/jenkins/log_parser_rules/sast.rules +2 -0
  172. data/etc/userland/docker/jenkins/log_parser_rules/self_update.rules +14 -0
  173. data/etc/userland/docker/jenkins/log_parser_rules/ssllabs-scan.rules +8 -0
  174. data/etc/userland/docker/jenkins/log_parser_rules/system_maintenance.rules +9 -0
  175. data/etc/userland/docker/jenkins/log_parser_rules/wpscan.rules +2 -0
  176. data/etc/userland/docker/jenkins/vagrant.yaml.EXAMPLE +8 -0
  177. data/etc/userland/docker/letsencrypt/vagrant.yaml.EXAMPLE +5 -0
  178. data/etc/userland/docker/metasploit/vagrant.yaml.EXAMPLE +4 -0
  179. data/etc/userland/docker/nessus/vagrant.yaml.EXAMPLE +15 -0
  180. data/etc/userland/docker/openvas/vagrant.yaml.EXAMPLE +2 -0
  181. data/etc/userland/docker/owasp_zap/navigation.instruct.EXAMPLE +3 -0
  182. data/etc/userland/docker/postgres/vagrant.yaml.EXAMPLE +2 -0
  183. data/etc/userland/docker/recon-ng/vagrant.yaml.EXAMPLE +52 -0
  184. data/etc/userland/qemu/apache2/jenkins_443.conf +90 -0
  185. data/etc/userland/qemu/apache2/jenkins_80.conf +7 -0
  186. data/etc/userland/qemu/apache2/openvas_443.conf +87 -0
  187. data/etc/userland/qemu/apache2/openvas_80.conf +7 -0
  188. data/etc/userland/qemu/apache2/sast_443.conf +87 -0
  189. data/etc/userland/qemu/apache2/sast_80.conf +9 -0
  190. data/etc/userland/qemu/apache2/vagrant.yaml.EXAMPLE +9 -0
  191. data/etc/userland/qemu/arachni/navigation-REST.instruct.EXAMPLE +29 -0
  192. data/etc/userland/qemu/arachni/navigation.instruct.EXAMPLE +3 -0
  193. data/etc/userland/qemu/burpsuite/navigation.instruct.EXAMPLE +3 -0
  194. data/etc/userland/qemu/burpsuite/vagrant.yaml.EXAMPLE +2 -0
  195. data/etc/userland/qemu/defectdojo/vagrant.yaml.EXAMPLE +3 -0
  196. data/etc/userland/qemu/jenkins/inject_build_envs.sh +15 -0
  197. data/etc/userland/qemu/jenkins/jenkins +81 -0
  198. data/etc/userland/qemu/jenkins/jobs/pipeline-pwntemplate.xml +298 -0
  199. data/etc/userland/qemu/jenkins/jobs/pipeline-selfupdate.xml +462 -0
  200. data/etc/userland/qemu/jenkins/jobs/pwntemplate-DOMAIN-burpsuite.xml +44 -0
  201. data/etc/userland/qemu/jenkins/jobs/pwntemplate-DOMAIN-owasp_zap.xml +35 -0
  202. data/etc/userland/qemu/jenkins/jobs/pwntemplate-DOMAIN-ssllabs-scan.xml +45 -0
  203. data/etc/userland/qemu/jenkins/jobs/pwntemplate-GITREPO_BRANCH-sast.xml +71 -0
  204. data/etc/userland/qemu/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_discovery_scan_tcp_udp_65k.xml +56 -0
  205. data/etc/userland/qemu/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_xml_results_searchsploit.xml +59 -0
  206. data/etc/userland/qemu/jenkins/jobs/pwntemplate-NETWORKRANGE-openvas.xml +45 -0
  207. data/etc/userland/qemu/jenkins/jobs/selfupdate-exploit-db.xml +43 -0
  208. data/etc/userland/qemu/jenkins/jobs/selfupdate-gem.xml +42 -0
  209. data/etc/userland/qemu/jenkins/jobs/selfupdate-jenkins_plugins.xml +42 -0
  210. data/etc/userland/qemu/jenkins/jobs/selfupdate-metasploit.xml +42 -0
  211. data/etc/userland/qemu/jenkins/jobs/selfupdate-nmap_all_live_hosts.xml +42 -0
  212. data/etc/userland/qemu/jenkins/jobs/selfupdate-openvas_sync.xml +42 -0
  213. data/etc/userland/qemu/jenkins/jobs/selfupdate-openvas_wrappers.xml +42 -0
  214. data/etc/userland/qemu/jenkins/jobs/selfupdate-os.xml +42 -0
  215. data/etc/userland/qemu/jenkins/jobs/selfupdate-pwn.xml +42 -0
  216. data/etc/userland/qemu/jenkins/jobs/selfupdate-rvm.xml +42 -0
  217. data/etc/userland/qemu/jenkins/jobs/selfupdate-ssllabs-scan.xml +42 -0
  218. data/etc/userland/qemu/jenkins/jobs/selfupdate-wpscan.xml +42 -0
  219. data/etc/userland/qemu/jenkins/jobs_userland/.gitkeep +0 -0
  220. data/etc/userland/qemu/jenkins/log_parser_rules/arachni.rules +5 -0
  221. data/etc/userland/qemu/jenkins/log_parser_rules/sast.rules +2 -0
  222. data/etc/userland/qemu/jenkins/log_parser_rules/self_update.rules +14 -0
  223. data/etc/userland/qemu/jenkins/log_parser_rules/ssllabs-scan.rules +8 -0
  224. data/etc/userland/qemu/jenkins/log_parser_rules/system_maintenance.rules +9 -0
  225. data/etc/userland/qemu/jenkins/log_parser_rules/wpscan.rules +2 -0
  226. data/etc/userland/qemu/jenkins/vagrant.yaml.EXAMPLE +8 -0
  227. data/etc/userland/qemu/letsencrypt/vagrant.yaml.EXAMPLE +5 -0
  228. data/etc/userland/qemu/metasploit/vagrant.yaml.EXAMPLE +4 -0
  229. data/etc/userland/qemu/nessus/vagrant.yaml.EXAMPLE +15 -0
  230. data/etc/userland/qemu/openvas/vagrant.yaml.EXAMPLE +2 -0
  231. data/etc/userland/qemu/owasp_zap/navigation.instruct.EXAMPLE +3 -0
  232. data/etc/userland/qemu/postgres/vagrant.yaml.EXAMPLE +2 -0
  233. data/etc/userland/qemu/recon-ng/vagrant.yaml.EXAMPLE +52 -0
  234. data/etc/userland/ruby-gem/apache2/jenkins_443.conf +90 -0
  235. data/etc/userland/ruby-gem/apache2/jenkins_80.conf +7 -0
  236. data/etc/userland/ruby-gem/apache2/openvas_443.conf +87 -0
  237. data/etc/userland/ruby-gem/apache2/openvas_80.conf +7 -0
  238. data/etc/userland/ruby-gem/apache2/sast_443.conf +87 -0
  239. data/etc/userland/ruby-gem/apache2/sast_80.conf +9 -0
  240. data/etc/userland/ruby-gem/apache2/vagrant.yaml.EXAMPLE +9 -0
  241. data/etc/userland/ruby-gem/arachni/navigation-REST.instruct.EXAMPLE +29 -0
  242. data/etc/userland/ruby-gem/arachni/navigation.instruct.EXAMPLE +3 -0
  243. data/etc/userland/ruby-gem/burpsuite/navigation.instruct.EXAMPLE +3 -0
  244. data/etc/userland/ruby-gem/burpsuite/vagrant.yaml.EXAMPLE +2 -0
  245. data/etc/userland/ruby-gem/defectdojo/vagrant.yaml.EXAMPLE +3 -0
  246. data/etc/userland/ruby-gem/jenkins/inject_build_envs.sh +15 -0
  247. data/etc/userland/ruby-gem/jenkins/jenkins +81 -0
  248. data/etc/userland/ruby-gem/jenkins/jobs/pipeline-pwntemplate.xml +298 -0
  249. data/etc/userland/ruby-gem/jenkins/jobs/pipeline-selfupdate.xml +462 -0
  250. data/etc/userland/ruby-gem/jenkins/jobs/pwntemplate-DOMAIN-burpsuite.xml +44 -0
  251. data/etc/userland/ruby-gem/jenkins/jobs/pwntemplate-DOMAIN-owasp_zap.xml +35 -0
  252. data/etc/userland/ruby-gem/jenkins/jobs/pwntemplate-DOMAIN-ssllabs-scan.xml +45 -0
  253. data/etc/userland/ruby-gem/jenkins/jobs/pwntemplate-GITREPO_BRANCH-sast.xml +71 -0
  254. data/etc/userland/ruby-gem/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_discovery_scan_tcp_udp_65k.xml +56 -0
  255. data/etc/userland/ruby-gem/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_xml_results_searchsploit.xml +59 -0
  256. data/etc/userland/ruby-gem/jenkins/jobs/pwntemplate-NETWORKRANGE-openvas.xml +45 -0
  257. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-exploit-db.xml +43 -0
  258. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-gem.xml +42 -0
  259. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-jenkins_plugins.xml +42 -0
  260. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-metasploit.xml +42 -0
  261. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-nmap_all_live_hosts.xml +42 -0
  262. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-openvas_sync.xml +42 -0
  263. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-openvas_wrappers.xml +42 -0
  264. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-os.xml +42 -0
  265. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-pwn.xml +42 -0
  266. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-rvm.xml +42 -0
  267. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-ssllabs-scan.xml +42 -0
  268. data/etc/userland/ruby-gem/jenkins/jobs/selfupdate-wpscan.xml +42 -0
  269. data/etc/userland/ruby-gem/jenkins/jobs_userland/.gitkeep +0 -0
  270. data/etc/userland/ruby-gem/jenkins/log_parser_rules/arachni.rules +5 -0
  271. data/etc/userland/ruby-gem/jenkins/log_parser_rules/sast.rules +2 -0
  272. data/etc/userland/ruby-gem/jenkins/log_parser_rules/self_update.rules +14 -0
  273. data/etc/userland/ruby-gem/jenkins/log_parser_rules/ssllabs-scan.rules +8 -0
  274. data/etc/userland/ruby-gem/jenkins/log_parser_rules/system_maintenance.rules +9 -0
  275. data/etc/userland/ruby-gem/jenkins/log_parser_rules/wpscan.rules +2 -0
  276. data/etc/userland/ruby-gem/jenkins/vagrant.yaml.EXAMPLE +8 -0
  277. data/etc/userland/ruby-gem/letsencrypt/vagrant.yaml.EXAMPLE +5 -0
  278. data/etc/userland/ruby-gem/metasploit/vagrant.yaml.EXAMPLE +4 -0
  279. data/etc/userland/ruby-gem/nessus/vagrant.yaml.EXAMPLE +15 -0
  280. data/etc/userland/ruby-gem/openvas/vagrant.yaml.EXAMPLE +2 -0
  281. data/etc/userland/ruby-gem/owasp_zap/navigation.instruct.EXAMPLE +3 -0
  282. data/etc/userland/ruby-gem/postgres/vagrant.yaml.EXAMPLE +2 -0
  283. data/etc/userland/ruby-gem/recon-ng/vagrant.yaml.EXAMPLE +52 -0
  284. data/etc/userland/virtualbox/apache2/jenkins_443.conf +90 -0
  285. data/etc/userland/virtualbox/apache2/jenkins_80.conf +7 -0
  286. data/etc/userland/virtualbox/apache2/openvas_443.conf +87 -0
  287. data/etc/userland/virtualbox/apache2/openvas_80.conf +7 -0
  288. data/etc/userland/virtualbox/apache2/sast_443.conf +87 -0
  289. data/etc/userland/virtualbox/apache2/sast_80.conf +9 -0
  290. data/etc/userland/virtualbox/apache2/vagrant.yaml.EXAMPLE +9 -0
  291. data/etc/userland/virtualbox/arachni/navigation-REST.instruct.EXAMPLE +29 -0
  292. data/etc/userland/virtualbox/arachni/navigation.instruct.EXAMPLE +3 -0
  293. data/etc/userland/virtualbox/burpsuite/navigation.instruct.EXAMPLE +3 -0
  294. data/etc/userland/virtualbox/burpsuite/vagrant.yaml.EXAMPLE +2 -0
  295. data/etc/userland/virtualbox/defectdojo/vagrant.yaml.EXAMPLE +3 -0
  296. data/etc/userland/virtualbox/jenkins/inject_build_envs.sh +15 -0
  297. data/etc/userland/virtualbox/jenkins/jenkins +81 -0
  298. data/etc/userland/virtualbox/jenkins/jobs/pipeline-pwntemplate.xml +298 -0
  299. data/etc/userland/virtualbox/jenkins/jobs/pipeline-selfupdate.xml +462 -0
  300. data/etc/userland/virtualbox/jenkins/jobs/pwntemplate-DOMAIN-burpsuite.xml +44 -0
  301. data/etc/userland/virtualbox/jenkins/jobs/pwntemplate-DOMAIN-owasp_zap.xml +35 -0
  302. data/etc/userland/virtualbox/jenkins/jobs/pwntemplate-DOMAIN-ssllabs-scan.xml +45 -0
  303. data/etc/userland/virtualbox/jenkins/jobs/pwntemplate-GITREPO_BRANCH-sast.xml +71 -0
  304. data/etc/userland/virtualbox/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_discovery_scan_tcp_udp_65k.xml +56 -0
  305. data/etc/userland/virtualbox/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_xml_results_searchsploit.xml +59 -0
  306. data/etc/userland/virtualbox/jenkins/jobs/pwntemplate-NETWORKRANGE-openvas.xml +45 -0
  307. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-exploit-db.xml +43 -0
  308. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-gem.xml +42 -0
  309. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-jenkins_plugins.xml +42 -0
  310. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-metasploit.xml +42 -0
  311. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-nmap_all_live_hosts.xml +42 -0
  312. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-openvas_sync.xml +42 -0
  313. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-openvas_wrappers.xml +42 -0
  314. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-os.xml +42 -0
  315. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-pwn.xml +42 -0
  316. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-rvm.xml +42 -0
  317. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-ssllabs-scan.xml +42 -0
  318. data/etc/userland/virtualbox/jenkins/jobs/selfupdate-wpscan.xml +42 -0
  319. data/etc/userland/virtualbox/jenkins/jobs_userland/.gitkeep +0 -0
  320. data/etc/userland/virtualbox/jenkins/log_parser_rules/arachni.rules +5 -0
  321. data/etc/userland/virtualbox/jenkins/log_parser_rules/sast.rules +2 -0
  322. data/etc/userland/virtualbox/jenkins/log_parser_rules/self_update.rules +14 -0
  323. data/etc/userland/virtualbox/jenkins/log_parser_rules/ssllabs-scan.rules +8 -0
  324. data/etc/userland/virtualbox/jenkins/log_parser_rules/system_maintenance.rules +9 -0
  325. data/etc/userland/virtualbox/jenkins/log_parser_rules/wpscan.rules +2 -0
  326. data/etc/userland/virtualbox/jenkins/vagrant.yaml.EXAMPLE +8 -0
  327. data/etc/userland/virtualbox/letsencrypt/vagrant.yaml.EXAMPLE +5 -0
  328. data/etc/userland/virtualbox/metasploit/vagrant.yaml.EXAMPLE +4 -0
  329. data/etc/userland/virtualbox/nessus/vagrant.yaml.EXAMPLE +15 -0
  330. data/etc/userland/virtualbox/openvas/vagrant.yaml.EXAMPLE +2 -0
  331. data/etc/userland/virtualbox/owasp_zap/navigation.instruct.EXAMPLE +3 -0
  332. data/etc/userland/virtualbox/postgres/vagrant.yaml.EXAMPLE +2 -0
  333. data/etc/userland/virtualbox/recon-ng/vagrant.yaml.EXAMPLE +52 -0
  334. data/etc/userland/virtualbox/vagrant.yaml.EXAMPLE +4 -0
  335. data/etc/userland/vmware/apache2/jenkins_443.conf +90 -0
  336. data/etc/userland/vmware/apache2/jenkins_80.conf +7 -0
  337. data/etc/userland/vmware/apache2/openvas_443.conf +87 -0
  338. data/etc/userland/vmware/apache2/openvas_80.conf +7 -0
  339. data/etc/userland/vmware/apache2/sast_443.conf +87 -0
  340. data/etc/userland/vmware/apache2/sast_80.conf +9 -0
  341. data/etc/userland/vmware/apache2/vagrant.yaml.EXAMPLE +9 -0
  342. data/etc/userland/vmware/arachni/navigation-REST.instruct.EXAMPLE +29 -0
  343. data/etc/userland/vmware/arachni/navigation.instruct.EXAMPLE +3 -0
  344. data/etc/userland/vmware/burpsuite/navigation.instruct.EXAMPLE +3 -0
  345. data/etc/userland/vmware/burpsuite/vagrant.yaml.EXAMPLE +2 -0
  346. data/etc/userland/vmware/defectdojo/vagrant.yaml.EXAMPLE +3 -0
  347. data/etc/userland/vmware/jenkins/inject_build_envs.sh +15 -0
  348. data/etc/userland/vmware/jenkins/jenkins +81 -0
  349. data/etc/userland/vmware/jenkins/jobs/pipeline-pwntemplate.xml +298 -0
  350. data/etc/userland/vmware/jenkins/jobs/pipeline-selfupdate.xml +462 -0
  351. data/etc/userland/vmware/jenkins/jobs/pwntemplate-DOMAIN-burpsuite.xml +44 -0
  352. data/etc/userland/vmware/jenkins/jobs/pwntemplate-DOMAIN-owasp_zap.xml +35 -0
  353. data/etc/userland/vmware/jenkins/jobs/pwntemplate-DOMAIN-ssllabs-scan.xml +45 -0
  354. data/etc/userland/vmware/jenkins/jobs/pwntemplate-GITREPO_BRANCH-sast.xml +71 -0
  355. data/etc/userland/vmware/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_discovery_scan_tcp_udp_65k.xml +56 -0
  356. data/etc/userland/vmware/jenkins/jobs/pwntemplate-NETWORKRANGE-nmap_xml_results_searchsploit.xml +59 -0
  357. data/etc/userland/vmware/jenkins/jobs/pwntemplate-NETWORKRANGE-openvas.xml +45 -0
  358. data/etc/userland/vmware/jenkins/jobs/selfupdate-exploit-db.xml +43 -0
  359. data/etc/userland/vmware/jenkins/jobs/selfupdate-gem.xml +42 -0
  360. data/etc/userland/vmware/jenkins/jobs/selfupdate-jenkins_plugins.xml +42 -0
  361. data/etc/userland/vmware/jenkins/jobs/selfupdate-metasploit.xml +42 -0
  362. data/etc/userland/vmware/jenkins/jobs/selfupdate-nmap_all_live_hosts.xml +42 -0
  363. data/etc/userland/vmware/jenkins/jobs/selfupdate-openvas_sync.xml +42 -0
  364. data/etc/userland/vmware/jenkins/jobs/selfupdate-openvas_wrappers.xml +42 -0
  365. data/etc/userland/vmware/jenkins/jobs/selfupdate-os.xml +42 -0
  366. data/etc/userland/vmware/jenkins/jobs/selfupdate-pwn.xml +42 -0
  367. data/etc/userland/vmware/jenkins/jobs/selfupdate-rvm.xml +42 -0
  368. data/etc/userland/vmware/jenkins/jobs/selfupdate-ssllabs-scan.xml +42 -0
  369. data/etc/userland/vmware/jenkins/jobs/selfupdate-wpscan.xml +42 -0
  370. data/etc/userland/vmware/jenkins/jobs_userland/.gitkeep +0 -0
  371. data/etc/userland/vmware/jenkins/log_parser_rules/arachni.rules +5 -0
  372. data/etc/userland/vmware/jenkins/log_parser_rules/sast.rules +2 -0
  373. data/etc/userland/vmware/jenkins/log_parser_rules/self_update.rules +14 -0
  374. data/etc/userland/vmware/jenkins/log_parser_rules/ssllabs-scan.rules +8 -0
  375. data/etc/userland/vmware/jenkins/log_parser_rules/system_maintenance.rules +9 -0
  376. data/etc/userland/vmware/jenkins/log_parser_rules/wpscan.rules +2 -0
  377. data/etc/userland/vmware/jenkins/vagrant.yaml.EXAMPLE +8 -0
  378. data/etc/userland/vmware/letsencrypt/vagrant.yaml.EXAMPLE +5 -0
  379. data/etc/userland/vmware/metasploit/vagrant.yaml.EXAMPLE +4 -0
  380. data/etc/userland/vmware/nessus/vagrant.yaml.EXAMPLE +15 -0
  381. data/etc/userland/vmware/openvas/vagrant.yaml.EXAMPLE +2 -0
  382. data/etc/userland/vmware/owasp_zap/navigation.instruct.EXAMPLE +3 -0
  383. data/etc/userland/vmware/postgres/vagrant.yaml.EXAMPLE +2 -0
  384. data/etc/userland/vmware/recon-ng/vagrant.yaml.EXAMPLE +52 -0
  385. data/etc/userland/vmware/vagrant.yaml.EXAMPLE +5 -0
  386. data/find_latest_gem_versions_per_Gemfile.sh +19 -0
  387. data/git_commit_test_reinit_gem.sh +57 -0
  388. data/install.sh +177 -0
  389. data/lib/pwn/ai/grok.rb +258 -0
  390. data/lib/pwn/ai/introspection.rb +100 -0
  391. data/lib/pwn/ai/ollama.rb +260 -0
  392. data/lib/pwn/ai/open_ai.rb +807 -0
  393. data/lib/pwn/ai.rb +19 -0
  394. data/lib/pwn/aws/acm.rb +92 -0
  395. data/lib/pwn/aws/api_gateway.rb +92 -0
  396. data/lib/pwn/aws/app_stream.rb +92 -0
  397. data/lib/pwn/aws/application_auto_scaling.rb +92 -0
  398. data/lib/pwn/aws/application_discovery_service.rb +92 -0
  399. data/lib/pwn/aws/auto_scaling.rb +92 -0
  400. data/lib/pwn/aws/batch.rb +92 -0
  401. data/lib/pwn/aws/budgets.rb +92 -0
  402. data/lib/pwn/aws/cloud_formation.rb +92 -0
  403. data/lib/pwn/aws/cloud_front.rb +92 -0
  404. data/lib/pwn/aws/cloud_hsm.rb +92 -0
  405. data/lib/pwn/aws/cloud_search.rb +92 -0
  406. data/lib/pwn/aws/cloud_search_domain.rb +92 -0
  407. data/lib/pwn/aws/cloud_trail.rb +92 -0
  408. data/lib/pwn/aws/cloud_watch.rb +92 -0
  409. data/lib/pwn/aws/cloud_watch_events.rb +92 -0
  410. data/lib/pwn/aws/cloud_watch_logs.rb +92 -0
  411. data/lib/pwn/aws/code_build.rb +92 -0
  412. data/lib/pwn/aws/code_commit.rb +92 -0
  413. data/lib/pwn/aws/code_deploy.rb +92 -0
  414. data/lib/pwn/aws/code_pipeline.rb +92 -0
  415. data/lib/pwn/aws/cognito_identity.rb +92 -0
  416. data/lib/pwn/aws/cognito_identity_provider.rb +92 -0
  417. data/lib/pwn/aws/cognito_sync.rb +92 -0
  418. data/lib/pwn/aws/config_service.rb +92 -0
  419. data/lib/pwn/aws/data_pipleline.rb +92 -0
  420. data/lib/pwn/aws/database_migration_service.rb +92 -0
  421. data/lib/pwn/aws/device_farm.rb +92 -0
  422. data/lib/pwn/aws/direct_connect.rb +92 -0
  423. data/lib/pwn/aws/directory_service.rb +92 -0
  424. data/lib/pwn/aws/dynamo_db.rb +92 -0
  425. data/lib/pwn/aws/dynamo_db_streams.rb +92 -0
  426. data/lib/pwn/aws/ec2.rb +92 -0
  427. data/lib/pwn/aws/ecr.rb +92 -0
  428. data/lib/pwn/aws/ecs.rb +92 -0
  429. data/lib/pwn/aws/efs.rb +92 -0
  430. data/lib/pwn/aws/elasti_cache.rb +92 -0
  431. data/lib/pwn/aws/elastic_beanstalk.rb +89 -0
  432. data/lib/pwn/aws/elastic_load_balancing.rb +92 -0
  433. data/lib/pwn/aws/elastic_load_balancing_v2.rb +92 -0
  434. data/lib/pwn/aws/elastic_transcoder.rb +92 -0
  435. data/lib/pwn/aws/elasticsearch_service.rb +92 -0
  436. data/lib/pwn/aws/emr.rb +92 -0
  437. data/lib/pwn/aws/firehose.rb +92 -0
  438. data/lib/pwn/aws/game_lift.rb +92 -0
  439. data/lib/pwn/aws/glacier.rb +92 -0
  440. data/lib/pwn/aws/health.rb +92 -0
  441. data/lib/pwn/aws/iam.rb +200 -0
  442. data/lib/pwn/aws/import_export.rb +92 -0
  443. data/lib/pwn/aws/inspector.rb +92 -0
  444. data/lib/pwn/aws/iot.rb +92 -0
  445. data/lib/pwn/aws/iot_data_plane.rb +92 -0
  446. data/lib/pwn/aws/kinesis.rb +92 -0
  447. data/lib/pwn/aws/kinesis_analytics.rb +92 -0
  448. data/lib/pwn/aws/kms.rb +92 -0
  449. data/lib/pwn/aws/lambda.rb +92 -0
  450. data/lib/pwn/aws/lambda_preview.rb +92 -0
  451. data/lib/pwn/aws/lex.rb +92 -0
  452. data/lib/pwn/aws/lightsail.rb +92 -0
  453. data/lib/pwn/aws/machine_learning.rb +92 -0
  454. data/lib/pwn/aws/marketplace_commerce_analytics.rb +92 -0
  455. data/lib/pwn/aws/marketplace_metering.rb +92 -0
  456. data/lib/pwn/aws/ops_works.rb +92 -0
  457. data/lib/pwn/aws/ops_works_cm.rb +92 -0
  458. data/lib/pwn/aws/pinpoint.rb +92 -0
  459. data/lib/pwn/aws/polly.rb +92 -0
  460. data/lib/pwn/aws/rds.rb +92 -0
  461. data/lib/pwn/aws/redshift.rb +92 -0
  462. data/lib/pwn/aws/rekognition.rb +92 -0
  463. data/lib/pwn/aws/route53.rb +92 -0
  464. data/lib/pwn/aws/route53_domains.rb +92 -0
  465. data/lib/pwn/aws/s3.rb +92 -0
  466. data/lib/pwn/aws/service_catalog.rb +92 -0
  467. data/lib/pwn/aws/ses.rb +92 -0
  468. data/lib/pwn/aws/shield.rb +92 -0
  469. data/lib/pwn/aws/simple_db.rb +92 -0
  470. data/lib/pwn/aws/sms.rb +92 -0
  471. data/lib/pwn/aws/snowball.rb +92 -0
  472. data/lib/pwn/aws/sns.rb +92 -0
  473. data/lib/pwn/aws/sqs.rb +92 -0
  474. data/lib/pwn/aws/ssm.rb +92 -0
  475. data/lib/pwn/aws/states.rb +92 -0
  476. data/lib/pwn/aws/storage_gateway.rb +92 -0
  477. data/lib/pwn/aws/sts.rb +63 -0
  478. data/lib/pwn/aws/support.rb +92 -0
  479. data/lib/pwn/aws/swf.rb +92 -0
  480. data/lib/pwn/aws/waf.rb +92 -0
  481. data/lib/pwn/aws/waf_regional.rb +92 -0
  482. data/lib/pwn/aws/workspaces.rb +92 -0
  483. data/lib/pwn/aws/x_ray.rb +92 -0
  484. data/lib/pwn/aws.rb +105 -0
  485. data/lib/pwn/banner/anon.rb +50 -0
  486. data/lib/pwn/banner/bubble.rb +42 -0
  487. data/lib/pwn/banner/cheshire.rb +58 -0
  488. data/lib/pwn/banner/code_cave.rb +1035 -0
  489. data/lib/pwn/banner/dont_panic.rb +52 -0
  490. data/lib/pwn/banner/f_society.rb +60 -0
  491. data/lib/pwn/banner/fork_bomb.rb +39 -0
  492. data/lib/pwn/banner/jmp_esp.rb +44 -0
  493. data/lib/pwn/banner/matrix.rb +206 -0
  494. data/lib/pwn/banner/ninja.rb +55 -0
  495. data/lib/pwn/banner/off_the_air.rb +73 -0
  496. data/lib/pwn/banner/pirate.rb +62 -0
  497. data/lib/pwn/banner/radare2.rb +41 -0
  498. data/lib/pwn/banner/radare2_ai.rb +116 -0
  499. data/lib/pwn/banner/white_rabbit.rb +55 -0
  500. data/lib/pwn/banner.rb +108 -0
  501. data/lib/pwn/blockchain/btc.rb +282 -0
  502. data/lib/pwn/blockchain/eth.rb +160 -0
  503. data/lib/pwn/blockchain.rb +17 -0
  504. data/lib/pwn/config.rb +304 -0
  505. data/lib/pwn/driver.rb +85 -0
  506. data/lib/pwn/ffi/stdio.rb +41 -0
  507. data/lib/pwn/ffi.rb +16 -0
  508. data/lib/pwn/plugins/android.rb +1617 -0
  509. data/lib/pwn/plugins/assembly.rb +275 -0
  510. data/lib/pwn/plugins/authentication_helper.rb +86 -0
  511. data/lib/pwn/plugins/baresip.rb +708 -0
  512. data/lib/pwn/plugins/basic_auth.rb +63 -0
  513. data/lib/pwn/plugins/beef.rb +312 -0
  514. data/lib/pwn/plugins/black_duck_binary_analysis.rb +790 -0
  515. data/lib/pwn/plugins/burp_suite.rb +2208 -0
  516. data/lib/pwn/plugins/bus_pirate.rb +147 -0
  517. data/lib/pwn/plugins/char.rb +474 -0
  518. data/lib/pwn/plugins/credit_card.rb +105 -0
  519. data/lib/pwn/plugins/dao_ldap.rb +131 -0
  520. data/lib/pwn/plugins/dao_mongo.rb +96 -0
  521. data/lib/pwn/plugins/dao_postgres.rb +224 -0
  522. data/lib/pwn/plugins/dao_sqlite3.rb +125 -0
  523. data/lib/pwn/plugins/defect_dojo.rb +841 -0
  524. data/lib/pwn/plugins/detect_os.rb +71 -0
  525. data/lib/pwn/plugins/ein.rb +141 -0
  526. data/lib/pwn/plugins/file_fu.rb +93 -0
  527. data/lib/pwn/plugins/fuzz.rb +204 -0
  528. data/lib/pwn/plugins/git.rb +159 -0
  529. data/lib/pwn/plugins/github.rb +137 -0
  530. data/lib/pwn/plugins/hacker_one.rb +154 -0
  531. data/lib/pwn/plugins/hunter.rb +160 -0
  532. data/lib/pwn/plugins/ip_info.rb +264 -0
  533. data/lib/pwn/plugins/irc.rb +312 -0
  534. data/lib/pwn/plugins/jenkins.rb +537 -0
  535. data/lib/pwn/plugins/jira_data_center.rb +676 -0
  536. data/lib/pwn/plugins/json_pathify.rb +46 -0
  537. data/lib/pwn/plugins/log.rb +123 -0
  538. data/lib/pwn/plugins/mail_agent.rb +344 -0
  539. data/lib/pwn/plugins/metasploit.rb +151 -0
  540. data/lib/pwn/plugins/monkey_patch.rb +182 -0
  541. data/lib/pwn/plugins/msr206.rb +1257 -0
  542. data/lib/pwn/plugins/nessus_cloud.rb +847 -0
  543. data/lib/pwn/plugins/nexpose_vuln_scan.rb +356 -0
  544. data/lib/pwn/plugins/nmap_it.rb +136 -0
  545. data/lib/pwn/plugins/oauth2.rb +67 -0
  546. data/lib/pwn/plugins/ocr.rb +43 -0
  547. data/lib/pwn/plugins/open_api.rb +896 -0
  548. data/lib/pwn/plugins/openvas.rb +314 -0
  549. data/lib/pwn/plugins/packet.rb +1313 -0
  550. data/lib/pwn/plugins/pdf_parse.rb +53 -0
  551. data/lib/pwn/plugins/pony.rb +281 -0
  552. data/lib/pwn/plugins/ps.rb +90 -0
  553. data/lib/pwn/plugins/pwn_logger.rb +64 -0
  554. data/lib/pwn/plugins/rabbit_mq.rb +70 -0
  555. data/lib/pwn/plugins/repl.rb +999 -0
  556. data/lib/pwn/plugins/scannable_codes.rb +87 -0
  557. data/lib/pwn/plugins/serial.rb +273 -0
  558. data/lib/pwn/plugins/shodan.rb +629 -0
  559. data/lib/pwn/plugins/slack_client.rb +104 -0
  560. data/lib/pwn/plugins/sock.rb +289 -0
  561. data/lib/pwn/plugins/spider.rb +78 -0
  562. data/lib/pwn/plugins/ssn.rb +52 -0
  563. data/lib/pwn/plugins/thread_pool.rb +80 -0
  564. data/lib/pwn/plugins/tor.rb +273 -0
  565. data/lib/pwn/plugins/transparent_browser.rb +1738 -0
  566. data/lib/pwn/plugins/twitter_api.rb +151 -0
  567. data/lib/pwn/plugins/uri_scheme.rb +328 -0
  568. data/lib/pwn/plugins/vault.rb +305 -0
  569. data/lib/pwn/plugins/vin.rb +361 -0
  570. data/lib/pwn/plugins/voice.rb +145 -0
  571. data/lib/pwn/plugins/vsphere.rb +81 -0
  572. data/lib/pwn/plugins/xxd.rb +298 -0
  573. data/lib/pwn/plugins/zaproxy.rb +837 -0
  574. data/lib/pwn/plugins.rb +81 -0
  575. data/lib/pwn/reports/fuzz.rb +328 -0
  576. data/lib/pwn/reports/html_footer.rb +160 -0
  577. data/lib/pwn/reports/html_header.rb +271 -0
  578. data/lib/pwn/reports/phone.rb +384 -0
  579. data/lib/pwn/reports/sast.rb +435 -0
  580. data/lib/pwn/reports/uri_buster.rb +335 -0
  581. data/lib/pwn/reports.rb +25 -0
  582. data/lib/pwn/sast/amqp_connect_as_guest.rb +78 -0
  583. data/lib/pwn/sast/apache_file_system_util_api.rb +76 -0
  584. data/lib/pwn/sast/aws.rb +77 -0
  585. data/lib/pwn/sast/banned_function_calls_c.rb +207 -0
  586. data/lib/pwn/sast/base64.rb +74 -0
  587. data/lib/pwn/sast/beef_hook.rb +75 -0
  588. data/lib/pwn/sast/cmd_execution_go_lang.rb +83 -0
  589. data/lib/pwn/sast/cmd_execution_java.rb +80 -0
  590. data/lib/pwn/sast/cmd_execution_python.rb +82 -0
  591. data/lib/pwn/sast/cmd_execution_ruby.rb +90 -0
  592. data/lib/pwn/sast/cmd_execution_scala.rb +80 -0
  593. data/lib/pwn/sast/csrf.rb +74 -0
  594. data/lib/pwn/sast/deserial_java.rb +85 -0
  595. data/lib/pwn/sast/emoticon.rb +82 -0
  596. data/lib/pwn/sast/eval.rb +76 -0
  597. data/lib/pwn/sast/factory.rb +79 -0
  598. data/lib/pwn/sast/http_authorization_header.rb +80 -0
  599. data/lib/pwn/sast/inner_html.rb +76 -0
  600. data/lib/pwn/sast/keystore.rb +75 -0
  601. data/lib/pwn/sast/local_storage.rb +77 -0
  602. data/lib/pwn/sast/location_hash.rb +76 -0
  603. data/lib/pwn/sast/log4j.rb +78 -0
  604. data/lib/pwn/sast/logger.rb +90 -0
  605. data/lib/pwn/sast/md5.rb +75 -0
  606. data/lib/pwn/sast/outer_html.rb +76 -0
  607. data/lib/pwn/sast/padding_oracle.rb +72 -0
  608. data/lib/pwn/sast/password.rb +75 -0
  609. data/lib/pwn/sast/php_input_mechanisms.rb +84 -0
  610. data/lib/pwn/sast/php_type_juggling.rb +82 -0
  611. data/lib/pwn/sast/pom_version.rb +164 -0
  612. data/lib/pwn/sast/port.rb +82 -0
  613. data/lib/pwn/sast/post_message.rb +76 -0
  614. data/lib/pwn/sast/private_key.rb +75 -0
  615. data/lib/pwn/sast/redirect.rb +77 -0
  616. data/lib/pwn/sast/redos.rb +82 -0
  617. data/lib/pwn/sast/shell.rb +83 -0
  618. data/lib/pwn/sast/signature.rb +75 -0
  619. data/lib/pwn/sast/sql.rb +85 -0
  620. data/lib/pwn/sast/ssl.rb +79 -0
  621. data/lib/pwn/sast/sudo.rb +75 -0
  622. data/lib/pwn/sast/task_tag.rb +89 -0
  623. data/lib/pwn/sast/test_case_engine.rb +189 -0
  624. data/lib/pwn/sast/throw_errors.rb +78 -0
  625. data/lib/pwn/sast/token.rb +77 -0
  626. data/lib/pwn/sast/type_script_type_juggling.rb +82 -0
  627. data/lib/pwn/sast/use_after_free.rb +82 -0
  628. data/lib/pwn/sast/version.rb +76 -0
  629. data/lib/pwn/sast/window_location_hash.rb +75 -0
  630. data/lib/pwn/sast.rb +67 -0
  631. data/lib/pwn/sdr/decoder/gsm.rb +231 -0
  632. data/lib/pwn/sdr/decoder.rb +19 -0
  633. data/lib/pwn/sdr/flipper_zero.rb +128 -0
  634. data/lib/pwn/sdr/frequency_allocation.rb +702 -0
  635. data/lib/pwn/sdr/gqrx.rb +655 -0
  636. data/lib/pwn/sdr/rfidler.rb +56 -0
  637. data/lib/pwn/sdr/son_micro_rfid.rb +773 -0
  638. data/lib/pwn/sdr.rb +21 -0
  639. data/lib/pwn/version.rb +5 -0
  640. data/lib/pwn/www/app_cobalt_io.rb +139 -0
  641. data/lib/pwn/www/bing.rb +88 -0
  642. data/lib/pwn/www/bug_crowd.rb +136 -0
  643. data/lib/pwn/www/checkip.rb +69 -0
  644. data/lib/pwn/www/coinbase_pro.rb +136 -0
  645. data/lib/pwn/www/duckduckgo.rb +114 -0
  646. data/lib/pwn/www/facebook.rb +124 -0
  647. data/lib/pwn/www/google.rb +114 -0
  648. data/lib/pwn/www/hacker_one.rb +649 -0
  649. data/lib/pwn/www/linkedin.rb +124 -0
  650. data/lib/pwn/www/pandora.rb +124 -0
  651. data/lib/pwn/www/pastebin.rb +84 -0
  652. data/lib/pwn/www/paypal.rb +208 -0
  653. data/lib/pwn/www/synack.rb +136 -0
  654. data/lib/pwn/www/torch.rb +107 -0
  655. data/lib/pwn/www/trading_view.rb +127 -0
  656. data/lib/pwn/www/twitter.rb +138 -0
  657. data/lib/pwn/www/uber.rb +124 -0
  658. data/lib/pwn/www/upwork.rb +124 -0
  659. data/lib/pwn/www/wayback_machine.rb +113 -0
  660. data/lib/pwn/www/youtube.rb +88 -0
  661. data/lib/pwn/www.rb +36 -0
  662. data/lib/pwn.rb +39 -0
  663. data/packer/daemons/msfrpcd.rb +64 -0
  664. data/packer/daemons/openvas.rb +51 -0
  665. data/packer/deploy_docker_containers.sh +9 -0
  666. data/packer/deploy_packer_box.sh +87 -0
  667. data/packer/docker/kali_rolling_docker_pwn_fuzz_net_app_proto.json +44 -0
  668. data/packer/docker/kali_rolling_docker_pwn_prototyper.json +48 -0
  669. data/packer/docker/kali_rolling_docker_pwn_sast.json +44 -0
  670. data/packer/docker/kali_rolling_docker_pwn_transparent_browser.json +46 -0
  671. data/packer/docker/kali_rolling_docker_pwn_www_checkip.json +34 -0
  672. data/packer/http/kali_rolling_preseed.cfg +81 -0
  673. data/packer/kali_rolling_aws_ami.json +139 -0
  674. data/packer/kali_rolling_qemu_kvm.json +159 -0
  675. data/packer/kali_rolling_virtualbox.json +186 -0
  676. data/packer/kali_rolling_vmware.json +167 -0
  677. data/packer/packer_secrets.json.EXAMPLE +9 -0
  678. data/packer/provisioners/PayloadsAllTheThings.sh +5 -0
  679. data/packer/provisioners/SecLists.sh +5 -0
  680. data/packer/provisioners/afl.sh +28 -0
  681. data/packer/provisioners/aliases.rb +23 -0
  682. data/packer/provisioners/amass.sh +5 -0
  683. data/packer/provisioners/android.sh +18 -0
  684. data/packer/provisioners/ansible.sh +5 -0
  685. data/packer/provisioners/apache2.sh +24 -0
  686. data/packer/provisioners/arachni.sh +28 -0
  687. data/packer/provisioners/awscli.sh +5 -0
  688. data/packer/provisioners/bashrc.sh +13 -0
  689. data/packer/provisioners/beef.rb +23 -0
  690. data/packer/provisioners/burpsuite.sh +24 -0
  691. data/packer/provisioners/chrome.sh +11 -0
  692. data/packer/provisioners/coreutils.sh +6 -0
  693. data/packer/provisioners/curl.sh +6 -0
  694. data/packer/provisioners/docker.sh +43 -0
  695. data/packer/provisioners/docker_bashrc.sh +2 -0
  696. data/packer/provisioners/docker_rvm.sh +22 -0
  697. data/packer/provisioners/eyewitness.sh +5 -0
  698. data/packer/provisioners/ffmpeg.sh +6 -0
  699. data/packer/provisioners/firefox.sh +7 -0
  700. data/packer/provisioners/fuzzdb.sh +5 -0
  701. data/packer/provisioners/gdb.sh +5 -0
  702. data/packer/provisioners/geckodriver.sh +9 -0
  703. data/packer/provisioners/ghidra.sh +5 -0
  704. data/packer/provisioners/git.sh +6 -0
  705. data/packer/provisioners/init_image.sh +103 -0
  706. data/packer/provisioners/install_vagrant_ssh_key.sh +15 -0
  707. data/packer/provisioners/irc.sh +13 -0
  708. data/packer/provisioners/jenkins.sh +77 -0
  709. data/packer/provisioners/metasploit.rb +59 -0
  710. data/packer/provisioners/nmap.sh +5 -0
  711. data/packer/provisioners/openvas.sh +23 -0
  712. data/packer/provisioners/openvas_wrappers.sh +4 -0
  713. data/packer/provisioners/openvpn.sh +7 -0
  714. data/packer/provisioners/peda.sh +4 -0
  715. data/packer/provisioners/phantomjs.rb +28 -0
  716. data/packer/provisioners/phantomjs_wrapper.sh +22 -0
  717. data/packer/provisioners/post_install.sh +41 -0
  718. data/packer/provisioners/postgresql.sh +49 -0
  719. data/packer/provisioners/preeny.sh +8 -0
  720. data/packer/provisioners/pwn.sh +100 -0
  721. data/packer/provisioners/pwntools.sh +13 -0
  722. data/packer/provisioners/radamsa.sh +7 -0
  723. data/packer/provisioners/radare2.sh +29 -0
  724. data/packer/provisioners/rc.local.sh +16 -0
  725. data/packer/provisioners/reboot_os.sh +7 -0
  726. data/packer/provisioners/ruby.sh +35 -0
  727. data/packer/provisioners/rvm.sh +32 -0
  728. data/packer/provisioners/scapy.sh +5 -0
  729. data/packer/provisioners/scout2.sh +5 -0
  730. data/packer/provisioners/sox.sh +5 -0
  731. data/packer/provisioners/ssllabs-scan.sh +9 -0
  732. data/packer/provisioners/strace.sh +5 -0
  733. data/packer/provisioners/sublist3r.sh +5 -0
  734. data/packer/provisioners/terminator.sh +5 -0
  735. data/packer/provisioners/toggle_tor.sh +2 -0
  736. data/packer/provisioners/tor.sh +5 -0
  737. data/packer/provisioners/twinkle.sh +6 -0
  738. data/packer/provisioners/update_os.sh +108 -0
  739. data/packer/provisioners/upload_globals.sh +63 -0
  740. data/packer/provisioners/vim.sh +23 -0
  741. data/packer/provisioners/virtualbox_guest_additions.sh +20 -0
  742. data/packer/provisioners/vmware_tools.sh +8 -0
  743. data/packer/provisioners/wpscan.rb +23 -0
  744. data/packer/provisioners/xrdp.sh +23 -0
  745. data/packer/provisioners/zzuf.sh +5 -0
  746. data/pwn.gemspec +77 -0
  747. data/reinstall_pwn_gemset.sh +30 -0
  748. data/spec/lib/pwn/ai/grok_spec.rb +15 -0
  749. data/spec/lib/pwn/ai/introspection_spec.rb +15 -0
  750. data/spec/lib/pwn/ai/ollama_spec.rb +15 -0
  751. data/spec/lib/pwn/ai/open_ai_spec.rb +15 -0
  752. data/spec/lib/pwn/ai_spec.rb +10 -0
  753. data/spec/lib/pwn/aws/acm_spec.rb +15 -0
  754. data/spec/lib/pwn/aws/api_gateway_spec.rb +15 -0
  755. data/spec/lib/pwn/aws/app_stream_spec.rb +15 -0
  756. data/spec/lib/pwn/aws/application_auto_scaling_spec.rb +15 -0
  757. data/spec/lib/pwn/aws/application_discovery_service_spec.rb +15 -0
  758. data/spec/lib/pwn/aws/auto_scaling_spec.rb +15 -0
  759. data/spec/lib/pwn/aws/batch_spec.rb +15 -0
  760. data/spec/lib/pwn/aws/budgets_spec.rb +15 -0
  761. data/spec/lib/pwn/aws/cloud_formation_spec.rb +15 -0
  762. data/spec/lib/pwn/aws/cloud_front_spec.rb +15 -0
  763. data/spec/lib/pwn/aws/cloud_hsm_spec.rb +15 -0
  764. data/spec/lib/pwn/aws/cloud_search_domain_spec.rb +15 -0
  765. data/spec/lib/pwn/aws/cloud_search_spec.rb +15 -0
  766. data/spec/lib/pwn/aws/cloud_trail_spec.rb +15 -0
  767. data/spec/lib/pwn/aws/cloud_watch_events_spec.rb +15 -0
  768. data/spec/lib/pwn/aws/cloud_watch_logs_spec.rb +15 -0
  769. data/spec/lib/pwn/aws/cloud_watch_spec.rb +15 -0
  770. data/spec/lib/pwn/aws/code_build_spec.rb +15 -0
  771. data/spec/lib/pwn/aws/code_commit_spec.rb +15 -0
  772. data/spec/lib/pwn/aws/code_deploy_spec.rb +15 -0
  773. data/spec/lib/pwn/aws/code_pipeline_spec.rb +15 -0
  774. data/spec/lib/pwn/aws/cognito_identity_provider_spec.rb +15 -0
  775. data/spec/lib/pwn/aws/cognito_identity_spec.rb +15 -0
  776. data/spec/lib/pwn/aws/cognito_sync_spec.rb +15 -0
  777. data/spec/lib/pwn/aws/config_service_spec.rb +15 -0
  778. data/spec/lib/pwn/aws/data_pipleline_spec.rb +15 -0
  779. data/spec/lib/pwn/aws/database_migration_service_spec.rb +15 -0
  780. data/spec/lib/pwn/aws/device_farm_spec.rb +15 -0
  781. data/spec/lib/pwn/aws/direct_connect_spec.rb +15 -0
  782. data/spec/lib/pwn/aws/directory_service_spec.rb +15 -0
  783. data/spec/lib/pwn/aws/dynamo_db_spec.rb +15 -0
  784. data/spec/lib/pwn/aws/dynamo_db_streams_spec.rb +15 -0
  785. data/spec/lib/pwn/aws/ec2_spec.rb +15 -0
  786. data/spec/lib/pwn/aws/ecr_spec.rb +15 -0
  787. data/spec/lib/pwn/aws/ecs_spec.rb +15 -0
  788. data/spec/lib/pwn/aws/efs_spec.rb +15 -0
  789. data/spec/lib/pwn/aws/elasti_cache_spec.rb +15 -0
  790. data/spec/lib/pwn/aws/elastic_beanstalk_spec.rb +15 -0
  791. data/spec/lib/pwn/aws/elastic_load_balancing_spec.rb +15 -0
  792. data/spec/lib/pwn/aws/elastic_load_balancing_v2_spec.rb +15 -0
  793. data/spec/lib/pwn/aws/elastic_transcoder_spec.rb +15 -0
  794. data/spec/lib/pwn/aws/elasticsearch_service_spec.rb +15 -0
  795. data/spec/lib/pwn/aws/emr_spec.rb +15 -0
  796. data/spec/lib/pwn/aws/firehose_spec.rb +15 -0
  797. data/spec/lib/pwn/aws/game_lift_spec.rb +15 -0
  798. data/spec/lib/pwn/aws/glacier_spec.rb +15 -0
  799. data/spec/lib/pwn/aws/health_spec.rb +15 -0
  800. data/spec/lib/pwn/aws/iam_spec.rb +15 -0
  801. data/spec/lib/pwn/aws/import_export_spec.rb +15 -0
  802. data/spec/lib/pwn/aws/inspector_spec.rb +15 -0
  803. data/spec/lib/pwn/aws/iot_data_plane_spec.rb +15 -0
  804. data/spec/lib/pwn/aws/iot_spec.rb +15 -0
  805. data/spec/lib/pwn/aws/kinesis_analytics_spec.rb +15 -0
  806. data/spec/lib/pwn/aws/kinesis_spec.rb +15 -0
  807. data/spec/lib/pwn/aws/kms_spec.rb +15 -0
  808. data/spec/lib/pwn/aws/lambda_preview_spec.rb +15 -0
  809. data/spec/lib/pwn/aws/lambda_spec.rb +15 -0
  810. data/spec/lib/pwn/aws/lex_spec.rb +15 -0
  811. data/spec/lib/pwn/aws/lightsail_spec.rb +15 -0
  812. data/spec/lib/pwn/aws/machine_learning_spec.rb +15 -0
  813. data/spec/lib/pwn/aws/marketplace_commerce_analytics_spec.rb +15 -0
  814. data/spec/lib/pwn/aws/marketplace_metering_spec.rb +15 -0
  815. data/spec/lib/pwn/aws/ops_works_cm_spec.rb +15 -0
  816. data/spec/lib/pwn/aws/ops_works_spec.rb +15 -0
  817. data/spec/lib/pwn/aws/pinpoint_spec.rb +15 -0
  818. data/spec/lib/pwn/aws/polly_spec.rb +15 -0
  819. data/spec/lib/pwn/aws/rds_spec.rb +15 -0
  820. data/spec/lib/pwn/aws/redshift_spec.rb +15 -0
  821. data/spec/lib/pwn/aws/rekognition_spec.rb +15 -0
  822. data/spec/lib/pwn/aws/route53_domains_spec.rb +15 -0
  823. data/spec/lib/pwn/aws/route53_spec.rb +15 -0
  824. data/spec/lib/pwn/aws/s3_spec.rb +15 -0
  825. data/spec/lib/pwn/aws/service_catalog_spec.rb +15 -0
  826. data/spec/lib/pwn/aws/ses_spec.rb +15 -0
  827. data/spec/lib/pwn/aws/shield_spec.rb +15 -0
  828. data/spec/lib/pwn/aws/simple_db_spec.rb +15 -0
  829. data/spec/lib/pwn/aws/sms_spec.rb +15 -0
  830. data/spec/lib/pwn/aws/snowball_spec.rb +15 -0
  831. data/spec/lib/pwn/aws/sns_spec.rb +15 -0
  832. data/spec/lib/pwn/aws/sqs_spec.rb +15 -0
  833. data/spec/lib/pwn/aws/ssm_spec.rb +15 -0
  834. data/spec/lib/pwn/aws/states_spec.rb +15 -0
  835. data/spec/lib/pwn/aws/storage_gateway_spec.rb +15 -0
  836. data/spec/lib/pwn/aws/sts_spec.rb +15 -0
  837. data/spec/lib/pwn/aws/support_spec.rb +15 -0
  838. data/spec/lib/pwn/aws/swf_spec.rb +15 -0
  839. data/spec/lib/pwn/aws/waf_regional_spec.rb +15 -0
  840. data/spec/lib/pwn/aws/waf_spec.rb +15 -0
  841. data/spec/lib/pwn/aws/workspaces_spec.rb +15 -0
  842. data/spec/lib/pwn/aws/x_ray_spec.rb +15 -0
  843. data/spec/lib/pwn/aws_spec.rb +10 -0
  844. data/spec/lib/pwn/banner/anon_spec.rb +20 -0
  845. data/spec/lib/pwn/banner/bubble_spec.rb +20 -0
  846. data/spec/lib/pwn/banner/cheshire_spec.rb +20 -0
  847. data/spec/lib/pwn/banner/code_cave_spec.rb +20 -0
  848. data/spec/lib/pwn/banner/dont_panic_spec.rb +20 -0
  849. data/spec/lib/pwn/banner/f_society_spec.rb +20 -0
  850. data/spec/lib/pwn/banner/fork_bomb_spec.rb +20 -0
  851. data/spec/lib/pwn/banner/jmp_esp_spec.rb +20 -0
  852. data/spec/lib/pwn/banner/matrix_spec.rb +20 -0
  853. data/spec/lib/pwn/banner/ninja_spec.rb +20 -0
  854. data/spec/lib/pwn/banner/off_the_air_spec.rb +20 -0
  855. data/spec/lib/pwn/banner/pirate_spec.rb +20 -0
  856. data/spec/lib/pwn/banner/radare2_ai_spec.rb +20 -0
  857. data/spec/lib/pwn/banner/radare2_spec.rb +20 -0
  858. data/spec/lib/pwn/banner/white_rabbit_spec.rb +20 -0
  859. data/spec/lib/pwn/banner_spec.rb +15 -0
  860. data/spec/lib/pwn/blockchain/btc_spec.rb +15 -0
  861. data/spec/lib/pwn/blockchain/eth_spec.rb +15 -0
  862. data/spec/lib/pwn/blockchain_spec.rb +10 -0
  863. data/spec/lib/pwn/config_spec.rb +15 -0
  864. data/spec/lib/pwn/driver_spec.rb +15 -0
  865. data/spec/lib/pwn/ffi/stdio_spec.rb +15 -0
  866. data/spec/lib/pwn/ffi_spec.rb +10 -0
  867. data/spec/lib/pwn/plugins/android_spec.rb +15 -0
  868. data/spec/lib/pwn/plugins/assembly_spec.rb +15 -0
  869. data/spec/lib/pwn/plugins/authentication_helper_spec.rb +15 -0
  870. data/spec/lib/pwn/plugins/baresip_spec.rb +15 -0
  871. data/spec/lib/pwn/plugins/basic_auth_spec.rb +15 -0
  872. data/spec/lib/pwn/plugins/beef_spec.rb +15 -0
  873. data/spec/lib/pwn/plugins/black_duck_binary_analysis_spec.rb +15 -0
  874. data/spec/lib/pwn/plugins/burp_suite_spec.rb +15 -0
  875. data/spec/lib/pwn/plugins/bus_pirate_spec.rb +15 -0
  876. data/spec/lib/pwn/plugins/char_spec.rb +15 -0
  877. data/spec/lib/pwn/plugins/credit_card_spec.rb +15 -0
  878. data/spec/lib/pwn/plugins/dao_ldap_spec.rb +15 -0
  879. data/spec/lib/pwn/plugins/dao_mongo_spec.rb +15 -0
  880. data/spec/lib/pwn/plugins/dao_postgres_spec.rb +15 -0
  881. data/spec/lib/pwn/plugins/dao_sqlite3_spec.rb +15 -0
  882. data/spec/lib/pwn/plugins/defect_dojo_spec.rb +15 -0
  883. data/spec/lib/pwn/plugins/detect_os_spec.rb +15 -0
  884. data/spec/lib/pwn/plugins/ein_spec.rb +15 -0
  885. data/spec/lib/pwn/plugins/file_fu_spec.rb +15 -0
  886. data/spec/lib/pwn/plugins/fuzz_spec.rb +15 -0
  887. data/spec/lib/pwn/plugins/git_spec.rb +15 -0
  888. data/spec/lib/pwn/plugins/github_spec.rb +15 -0
  889. data/spec/lib/pwn/plugins/hacker_one_spec.rb +15 -0
  890. data/spec/lib/pwn/plugins/hunter_spec.rb +15 -0
  891. data/spec/lib/pwn/plugins/ip_info_spec.rb +15 -0
  892. data/spec/lib/pwn/plugins/irc_spec.rb +15 -0
  893. data/spec/lib/pwn/plugins/jenkins_spec.rb +15 -0
  894. data/spec/lib/pwn/plugins/jira_data_center_spec.rb +15 -0
  895. data/spec/lib/pwn/plugins/json_pathify_spec.rb +15 -0
  896. data/spec/lib/pwn/plugins/log_spec.rb +15 -0
  897. data/spec/lib/pwn/plugins/mail_agent_spec.rb +15 -0
  898. data/spec/lib/pwn/plugins/metasploit_spec.rb +15 -0
  899. data/spec/lib/pwn/plugins/monkey_patch_spec.rb +15 -0
  900. data/spec/lib/pwn/plugins/msr206_spec.rb +15 -0
  901. data/spec/lib/pwn/plugins/nessus_cloud_spec.rb +15 -0
  902. data/spec/lib/pwn/plugins/nexpose_vuln_scan_spec.rb +15 -0
  903. data/spec/lib/pwn/plugins/nmap_it_spec.rb +15 -0
  904. data/spec/lib/pwn/plugins/oauth2_spec.rb +15 -0
  905. data/spec/lib/pwn/plugins/ocr_spec.rb +15 -0
  906. data/spec/lib/pwn/plugins/open_api_spec.rb +15 -0
  907. data/spec/lib/pwn/plugins/openvas_spec.rb +15 -0
  908. data/spec/lib/pwn/plugins/packet_spec.rb +15 -0
  909. data/spec/lib/pwn/plugins/pdf_parse_spec.rb +15 -0
  910. data/spec/lib/pwn/plugins/pony_spec.rb +15 -0
  911. data/spec/lib/pwn/plugins/ps_spec.rb +15 -0
  912. data/spec/lib/pwn/plugins/pwn_logger_spec.rb +15 -0
  913. data/spec/lib/pwn/plugins/rabbit_mq_spec.rb +15 -0
  914. data/spec/lib/pwn/plugins/repl_spec.rb +15 -0
  915. data/spec/lib/pwn/plugins/scannable_codes_spec.rb +15 -0
  916. data/spec/lib/pwn/plugins/serial_spec.rb +15 -0
  917. data/spec/lib/pwn/plugins/shodan_spec.rb +15 -0
  918. data/spec/lib/pwn/plugins/slack_client_spec.rb +15 -0
  919. data/spec/lib/pwn/plugins/sock_spec.rb +15 -0
  920. data/spec/lib/pwn/plugins/spider_spec.rb +15 -0
  921. data/spec/lib/pwn/plugins/ssn_spec.rb +15 -0
  922. data/spec/lib/pwn/plugins/thread_pool_spec.rb +15 -0
  923. data/spec/lib/pwn/plugins/tor_spec.rb +15 -0
  924. data/spec/lib/pwn/plugins/transparent_browser_spec.rb +15 -0
  925. data/spec/lib/pwn/plugins/twitter_api_spec.rb +15 -0
  926. data/spec/lib/pwn/plugins/uri_scheme_spec.rb +15 -0
  927. data/spec/lib/pwn/plugins/vault_spec.rb +15 -0
  928. data/spec/lib/pwn/plugins/vin_spec.rb +15 -0
  929. data/spec/lib/pwn/plugins/voice_spec.rb +15 -0
  930. data/spec/lib/pwn/plugins/vsphere_spec.rb +15 -0
  931. data/spec/lib/pwn/plugins/xxd_spec.rb +15 -0
  932. data/spec/lib/pwn/plugins/zaproxy_spec.rb +15 -0
  933. data/spec/lib/pwn/plugins_spec.rb +10 -0
  934. data/spec/lib/pwn/reports/fuzz_spec.rb +15 -0
  935. data/spec/lib/pwn/reports/html_footer_spec.rb +15 -0
  936. data/spec/lib/pwn/reports/html_header_spec.rb +15 -0
  937. data/spec/lib/pwn/reports/phone_spec.rb +15 -0
  938. data/spec/lib/pwn/reports/sast_spec.rb +15 -0
  939. data/spec/lib/pwn/reports/uri_buster_spec.rb +15 -0
  940. data/spec/lib/pwn/reports_spec.rb +10 -0
  941. data/spec/lib/pwn/sast/amqp_connect_as_guest_spec.rb +25 -0
  942. data/spec/lib/pwn/sast/apache_file_system_util_api_spec.rb +25 -0
  943. data/spec/lib/pwn/sast/aws_spec.rb +25 -0
  944. data/spec/lib/pwn/sast/banned_function_calls_c_spec.rb +25 -0
  945. data/spec/lib/pwn/sast/base64_spec.rb +25 -0
  946. data/spec/lib/pwn/sast/beef_hook_spec.rb +25 -0
  947. data/spec/lib/pwn/sast/cmd_execution_go_lang_spec.rb +25 -0
  948. data/spec/lib/pwn/sast/cmd_execution_java_spec.rb +25 -0
  949. data/spec/lib/pwn/sast/cmd_execution_python_spec.rb +25 -0
  950. data/spec/lib/pwn/sast/cmd_execution_ruby_spec.rb +25 -0
  951. data/spec/lib/pwn/sast/cmd_execution_scala_spec.rb +25 -0
  952. data/spec/lib/pwn/sast/csrf_spec.rb +25 -0
  953. data/spec/lib/pwn/sast/deserial_java_spec.rb +25 -0
  954. data/spec/lib/pwn/sast/emoticon_spec.rb +25 -0
  955. data/spec/lib/pwn/sast/eval_spec.rb +25 -0
  956. data/spec/lib/pwn/sast/factory_spec.rb +25 -0
  957. data/spec/lib/pwn/sast/http_authorization_header_spec.rb +25 -0
  958. data/spec/lib/pwn/sast/inner_html_spec.rb +25 -0
  959. data/spec/lib/pwn/sast/keystore_spec.rb +25 -0
  960. data/spec/lib/pwn/sast/local_storage_spec.rb +25 -0
  961. data/spec/lib/pwn/sast/location_hash_spec.rb +25 -0
  962. data/spec/lib/pwn/sast/log4j_spec.rb +25 -0
  963. data/spec/lib/pwn/sast/logger_spec.rb +25 -0
  964. data/spec/lib/pwn/sast/md5_spec.rb +25 -0
  965. data/spec/lib/pwn/sast/outer_html_spec.rb +25 -0
  966. data/spec/lib/pwn/sast/padding_oracle_spec.rb +25 -0
  967. data/spec/lib/pwn/sast/password_spec.rb +25 -0
  968. data/spec/lib/pwn/sast/php_input_mechanisms_spec.rb +25 -0
  969. data/spec/lib/pwn/sast/php_type_juggling_spec.rb +25 -0
  970. data/spec/lib/pwn/sast/pom_version_spec.rb +25 -0
  971. data/spec/lib/pwn/sast/port_spec.rb +25 -0
  972. data/spec/lib/pwn/sast/post_message_spec.rb +25 -0
  973. data/spec/lib/pwn/sast/private_key_spec.rb +25 -0
  974. data/spec/lib/pwn/sast/redirect_spec.rb +25 -0
  975. data/spec/lib/pwn/sast/redos_spec.rb +25 -0
  976. data/spec/lib/pwn/sast/shell_spec.rb +25 -0
  977. data/spec/lib/pwn/sast/signature_spec.rb +25 -0
  978. data/spec/lib/pwn/sast/sql_spec.rb +25 -0
  979. data/spec/lib/pwn/sast/ssl_spec.rb +25 -0
  980. data/spec/lib/pwn/sast/sudo_spec.rb +25 -0
  981. data/spec/lib/pwn/sast/task_tag_spec.rb +25 -0
  982. data/spec/lib/pwn/sast/test_case_engine_spec.rb +20 -0
  983. data/spec/lib/pwn/sast/throw_errors_spec.rb +25 -0
  984. data/spec/lib/pwn/sast/token_spec.rb +25 -0
  985. data/spec/lib/pwn/sast/type_script_type_juggling_spec.rb +25 -0
  986. data/spec/lib/pwn/sast/use_after_free_spec.rb +25 -0
  987. data/spec/lib/pwn/sast/version_spec.rb +25 -0
  988. data/spec/lib/pwn/sast/window_location_hash_spec.rb +25 -0
  989. data/spec/lib/pwn/sast_spec.rb +10 -0
  990. data/spec/lib/pwn/sdr/decoder/gsm_spec.rb +15 -0
  991. data/spec/lib/pwn/sdr/decoder_spec.rb +10 -0
  992. data/spec/lib/pwn/sdr/flipper_zero_spec.rb +15 -0
  993. data/spec/lib/pwn/sdr/frequency_allocation_spec.rb +15 -0
  994. data/spec/lib/pwn/sdr/gqrx_spec.rb +15 -0
  995. data/spec/lib/pwn/sdr/rfidler_spec.rb +15 -0
  996. data/spec/lib/pwn/sdr/son_micro_rfid_spec.rb +15 -0
  997. data/spec/lib/pwn/sdr_spec.rb +10 -0
  998. data/spec/lib/pwn/version_spec.rb +17 -0
  999. data/spec/lib/pwn/www/app_cobalt_io_spec.rb +15 -0
  1000. data/spec/lib/pwn/www/bing_spec.rb +15 -0
  1001. data/spec/lib/pwn/www/bug_crowd_spec.rb +15 -0
  1002. data/spec/lib/pwn/www/checkip_spec.rb +15 -0
  1003. data/spec/lib/pwn/www/coinbase_pro_spec.rb +15 -0
  1004. data/spec/lib/pwn/www/duckduckgo_spec.rb +15 -0
  1005. data/spec/lib/pwn/www/facebook_spec.rb +15 -0
  1006. data/spec/lib/pwn/www/google_spec.rb +15 -0
  1007. data/spec/lib/pwn/www/hacker_one_spec.rb +15 -0
  1008. data/spec/lib/pwn/www/linkedin_spec.rb +15 -0
  1009. data/spec/lib/pwn/www/pandora_spec.rb +15 -0
  1010. data/spec/lib/pwn/www/pastebin_spec.rb +15 -0
  1011. data/spec/lib/pwn/www/paypal_spec.rb +15 -0
  1012. data/spec/lib/pwn/www/synack_spec.rb +15 -0
  1013. data/spec/lib/pwn/www/torch_spec.rb +15 -0
  1014. data/spec/lib/pwn/www/trading_view_spec.rb +15 -0
  1015. data/spec/lib/pwn/www/twitter_spec.rb +15 -0
  1016. data/spec/lib/pwn/www/uber_spec.rb +15 -0
  1017. data/spec/lib/pwn/www/upwork_spec.rb +15 -0
  1018. data/spec/lib/pwn/www/wayback_machine_spec.rb +15 -0
  1019. data/spec/lib/pwn/www/youtube_spec.rb +15 -0
  1020. data/spec/lib/pwn/www_spec.rb +10 -0
  1021. data/spec/lib/pwn_spec.rb +10 -0
  1022. data/spec/spec_helper.rb +3 -0
  1023. data/third_party/.gitkeep +0 -0
  1024. data/third_party/http-request-headers-fields-large.txt +1185 -0
  1025. data/third_party/pwn_rdoc.jsonl +1445 -0
  1026. data/third_party/r2-pwn-layout +1 -0
  1027. data/update_pwn.sh +9 -0
  1028. data/upgrade_ruby.sh +42 -0
  1029. data/vagrant/provisioners/apache2.sh +76 -0
  1030. data/vagrant/provisioners/beef.rb +30 -0
  1031. data/vagrant/provisioners/burpsuite_pro.rb +37 -0
  1032. data/vagrant/provisioners/exploit-db.sh +2 -0
  1033. data/vagrant/provisioners/gem.sh +4 -0
  1034. data/vagrant/provisioners/init_env.sh +22 -0
  1035. data/vagrant/provisioners/jenkins.sh +87 -0
  1036. data/vagrant/provisioners/jenkins_ssh-keygen.rb +86 -0
  1037. data/vagrant/provisioners/kali_customize.rb +130 -0
  1038. data/vagrant/provisioners/letsencrypt.rb +35 -0
  1039. data/vagrant/provisioners/metasploit.rb +25 -0
  1040. data/vagrant/provisioners/nmap_all_live_hosts.sh +2 -0
  1041. data/vagrant/provisioners/openvas.sh +23 -0
  1042. data/vagrant/provisioners/openvas_wrappers.sh +2 -0
  1043. data/vagrant/provisioners/post_install.sh +14 -0
  1044. data/vagrant/provisioners/postgres.sh +22 -0
  1045. data/vagrant/provisioners/pwn.sh +13 -0
  1046. data/vagrant/provisioners/rvm.sh +18 -0
  1047. data/vagrant/provisioners/ssllabs-scan.sh +10 -0
  1048. data/vagrant/provisioners/toggle_tor.sh +2 -0
  1049. data/vagrant/provisioners/update_jenkins_plugins.rb +30 -0
  1050. data/vagrant/provisioners/update_os.sh +108 -0
  1051. data/vagrant/provisioners/upload_globals.sh +63 -0
  1052. data/vagrant/provisioners/userland_fdisk.sh +22 -0
  1053. data/vagrant/provisioners/userland_lvm.sh +5 -0
  1054. data/vagrant/provisioners/wpscan.rb +25 -0
  1055. data/vagrant_rsync_third_party.lst +1 -0
  1056. data/vagrant_rsync_userland_template.lst +8 -0
  1057. metadata +1112 -5
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'aws-sdk'
4
+
5
+ module PWN
6
+ module AWS
7
+ # This module provides a client for making API requests to Amazon Cognito Identity.
8
+ module CognitoIdentity
9
+ @@logger = PWN::Plugins::PWNLogger.create
10
+
11
+ # Supported Method Parameters::
12
+ # PWN::AWS::CognitoIdentity.connect(
13
+ # region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
14
+ # access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
15
+ # secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
16
+ # sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
17
+ # )
18
+
19
+ public_class_method def self.connect(opts = {})
20
+ region = opts[:region].to_s.scrub.chomp.strip
21
+ access_key_id = opts[:access_key_id].to_s.scrub.chomp.strip
22
+ secret_access_key = opts[:secret_access_key].to_s.scrub.chomp.strip
23
+ sts_session_token = opts[:sts_session_token].to_s.scrub.chomp.strip
24
+
25
+ @@logger.info('Connecting to AWS CognitoIdentity...')
26
+ if sts_session_token == ''
27
+ cognito_identity_obj = Aws::CognitoIdentity::Client.new(
28
+ region: region,
29
+ access_key_id: access_key_id,
30
+ secret_access_key: secret_access_key
31
+ )
32
+ else
33
+ cognito_identity_obj = Aws::CognitoIdentity::Client.new(
34
+ region: region,
35
+ access_key_id: access_key_id,
36
+ secret_access_key: secret_access_key,
37
+ session_token: sts_session_token
38
+ )
39
+ end
40
+ @@logger.info("complete.\n")
41
+
42
+ cognito_identity_obj
43
+ rescue StandardError => e
44
+ raise e
45
+ end
46
+
47
+ # Supported Method Parameters::
48
+ # PWN::AWS::CognitoIdentity.disconnect(
49
+ # cognito_identity_obj: 'required - cognito_identity_obj returned from #connect method'
50
+ # )
51
+
52
+ public_class_method def self.disconnect(opts = {})
53
+ cognito_identity_obj = opts[:cognito_identity_obj]
54
+ @@logger.info('Disconnecting...')
55
+ cognito_identity_obj = nil
56
+ @@logger.info("complete.\n")
57
+
58
+ cognito_identity_obj
59
+ rescue StandardError => e
60
+ raise e
61
+ end
62
+
63
+ # Author(s):: 0day Inc. <support@0dayinc.com>
64
+
65
+ public_class_method def self.authors
66
+ "AUTHOR(S):
67
+ 0day Inc. <support@0dayinc.com>
68
+ "
69
+ end
70
+
71
+ # Display Usage for this Module
72
+
73
+ public_class_method def self.help
74
+ puts "USAGE:
75
+ cognito_identity_obj = #{self}.connect(
76
+ region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
77
+ access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
78
+ secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
79
+ sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
80
+ )
81
+ puts cognito_identity_obj.public_methods
82
+
83
+ #{self}.disconnect(
84
+ cognito_identity_obj: 'required - cognito_identity_obj returned from #connect method'
85
+ )
86
+
87
+ #{self}.authors
88
+ "
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'aws-sdk'
4
+
5
+ module PWN
6
+ module AWS
7
+ # This module provides a client for making API requests to Amazon Cognito Identity Provider.
8
+ module CognitoIdentityProvider
9
+ @@logger = PWN::Plugins::PWNLogger.create
10
+
11
+ # Supported Method Parameters::
12
+ # PWN::AWS::CognitoIdentityProvider.connect(
13
+ # region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
14
+ # access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
15
+ # secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
16
+ # sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
17
+ # )
18
+
19
+ public_class_method def self.connect(opts = {})
20
+ region = opts[:region].to_s.scrub.chomp.strip
21
+ access_key_id = opts[:access_key_id].to_s.scrub.chomp.strip
22
+ secret_access_key = opts[:secret_access_key].to_s.scrub.chomp.strip
23
+ sts_session_token = opts[:sts_session_token].to_s.scrub.chomp.strip
24
+
25
+ @@logger.info('Connecting to AWS CognitoIdentityProvider...')
26
+ if sts_session_token == ''
27
+ cognito_identity_prov_obj = Aws::CognitoIdentityProvider::Client.new(
28
+ region: region,
29
+ access_key_id: access_key_id,
30
+ secret_access_key: secret_access_key
31
+ )
32
+ else
33
+ cognito_identity_prov_obj = Aws::CognitoIdentityProvider::Client.new(
34
+ region: region,
35
+ access_key_id: access_key_id,
36
+ secret_access_key: secret_access_key,
37
+ session_token: sts_session_token
38
+ )
39
+ end
40
+ @@logger.info("complete.\n")
41
+
42
+ cognito_identity_prov_obj
43
+ rescue StandardError => e
44
+ raise e
45
+ end
46
+
47
+ # Supported Method Parameters::
48
+ # PWN::AWS::CognitoIdentityProvider.disconnect(
49
+ # cognito_identity_prov_obj: 'required - cognito_identity_prov_obj returned from #connect method'
50
+ # )
51
+
52
+ public_class_method def self.disconnect(opts = {})
53
+ cognito_identity_prov_obj = opts[:cognito_identity_prov_obj]
54
+ @@logger.info('Disconnecting...')
55
+ cognito_identity_prov_obj = nil
56
+ @@logger.info("complete.\n")
57
+
58
+ cognito_identity_prov_obj
59
+ rescue StandardError => e
60
+ raise e
61
+ end
62
+
63
+ # Author(s):: 0day Inc. <support@0dayinc.com>
64
+
65
+ public_class_method def self.authors
66
+ "AUTHOR(S):
67
+ 0day Inc. <support@0dayinc.com>
68
+ "
69
+ end
70
+
71
+ # Display Usage for this Module
72
+
73
+ public_class_method def self.help
74
+ puts "USAGE:
75
+ cognito_identity_prov_obj = #{self}.connect(
76
+ region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
77
+ access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
78
+ secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
79
+ sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
80
+ )
81
+ puts cognito_identity_prov_obj.public_methods
82
+
83
+ #{self}.disconnect(
84
+ cognito_identity_prov_obj: 'required - cognito_identity_prov_obj returned from #connect method'
85
+ )
86
+
87
+ #{self}.authors
88
+ "
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'aws-sdk'
4
+
5
+ module PWN
6
+ module AWS
7
+ # This module provides a client for making API requests to Amazon Cognito Sync.
8
+ module CognitoSync
9
+ @@logger = PWN::Plugins::PWNLogger.create
10
+
11
+ # Supported Method Parameters::
12
+ # PWN::AWS::CognitoSync.connect(
13
+ # region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
14
+ # access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
15
+ # secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
16
+ # sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
17
+ # )
18
+
19
+ public_class_method def self.connect(opts = {})
20
+ region = opts[:region].to_s.scrub.chomp.strip
21
+ access_key_id = opts[:access_key_id].to_s.scrub.chomp.strip
22
+ secret_access_key = opts[:secret_access_key].to_s.scrub.chomp.strip
23
+ sts_session_token = opts[:sts_session_token].to_s.scrub.chomp.strip
24
+
25
+ @@logger.info('Connecting to AWS CognitoSync...')
26
+ if sts_session_token == ''
27
+ cognito_sync_obj = Aws::CognitoSync::Client.new(
28
+ region: region,
29
+ access_key_id: access_key_id,
30
+ secret_access_key: secret_access_key
31
+ )
32
+ else
33
+ cognito_sync_obj = Aws::CognitoSync::Client.new(
34
+ region: region,
35
+ access_key_id: access_key_id,
36
+ secret_access_key: secret_access_key,
37
+ session_token: sts_session_token
38
+ )
39
+ end
40
+ @@logger.info("complete.\n")
41
+
42
+ cognito_sync_obj
43
+ rescue StandardError => e
44
+ raise e
45
+ end
46
+
47
+ # Supported Method Parameters::
48
+ # PWN::AWS::CognitoSync.disconnect(
49
+ # cognito_sync_obj: 'required - cognito_sync_obj returned from #connect method'
50
+ # )
51
+
52
+ public_class_method def self.disconnect(opts = {})
53
+ cognito_sync_obj = opts[:cognito_sync_obj]
54
+ @@logger.info('Disconnecting...')
55
+ cognito_sync_obj = nil
56
+ @@logger.info("complete.\n")
57
+
58
+ cognito_sync_obj
59
+ rescue StandardError => e
60
+ raise e
61
+ end
62
+
63
+ # Author(s):: 0day Inc. <support@0dayinc.com>
64
+
65
+ public_class_method def self.authors
66
+ "AUTHOR(S):
67
+ 0day Inc. <support@0dayinc.com>
68
+ "
69
+ end
70
+
71
+ # Display Usage for this Module
72
+
73
+ public_class_method def self.help
74
+ puts "USAGE:
75
+ cognito_sync_obj = #{self}.connect(
76
+ region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
77
+ access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
78
+ secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
79
+ sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
80
+ )
81
+ puts cognito_sync_obj.public_methods
82
+
83
+ #{self}.disconnect(
84
+ cognito_sync_obj: 'required - cognito_sync_obj returned from #connect method'
85
+ )
86
+
87
+ #{self}.authors
88
+ "
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'aws-sdk'
4
+
5
+ module PWN
6
+ module AWS
7
+ # This module provides a client for making API requests to AWS Config.
8
+ module ConfigService
9
+ @@logger = PWN::Plugins::PWNLogger.create
10
+
11
+ # Supported Method Parameters::
12
+ # PWN::AWS::ConfigService.connect(
13
+ # region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
14
+ # access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
15
+ # secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
16
+ # sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
17
+ # )
18
+
19
+ public_class_method def self.connect(opts = {})
20
+ region = opts[:region].to_s.scrub.chomp.strip
21
+ access_key_id = opts[:access_key_id].to_s.scrub.chomp.strip
22
+ secret_access_key = opts[:secret_access_key].to_s.scrub.chomp.strip
23
+ sts_session_token = opts[:sts_session_token].to_s.scrub.chomp.strip
24
+
25
+ @@logger.info('Connecting to AWS ConfigService...')
26
+ if sts_session_token == ''
27
+ config_service_obj = Aws::ConfigService::Client.new(
28
+ region: region,
29
+ access_key_id: access_key_id,
30
+ secret_access_key: secret_access_key
31
+ )
32
+ else
33
+ config_service_obj = Aws::ConfigService::Client.new(
34
+ region: region,
35
+ access_key_id: access_key_id,
36
+ secret_access_key: secret_access_key,
37
+ session_token: sts_session_token
38
+ )
39
+ end
40
+ @@logger.info("complete.\n")
41
+
42
+ config_service_obj
43
+ rescue StandardError => e
44
+ raise e
45
+ end
46
+
47
+ # Supported Method Parameters::
48
+ # PWN::AWS::ConfigService.disconnect(
49
+ # config_service_obj: 'required - config_service_obj returned from #connect method'
50
+ # )
51
+
52
+ public_class_method def self.disconnect(opts = {})
53
+ config_service_obj = opts[:config_service_obj]
54
+ @@logger.info('Disconnecting...')
55
+ config_service_obj = nil
56
+ @@logger.info("complete.\n")
57
+
58
+ config_service_obj
59
+ rescue StandardError => e
60
+ raise e
61
+ end
62
+
63
+ # Author(s):: 0day Inc. <support@0dayinc.com>
64
+
65
+ public_class_method def self.authors
66
+ "AUTHOR(S):
67
+ 0day Inc. <support@0dayinc.com>
68
+ "
69
+ end
70
+
71
+ # Display Usage for this Module
72
+
73
+ public_class_method def self.help
74
+ puts "USAGE:
75
+ config_service_obj = #{self}.connect(
76
+ region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
77
+ access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
78
+ secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
79
+ sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
80
+ )
81
+ puts config_service_obj.public_methods
82
+
83
+ #{self}.disconnect(
84
+ config_service_obj: 'required - config_service_obj returned from #connect method'
85
+ )
86
+
87
+ #{self}.authors
88
+ "
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'aws-sdk'
4
+
5
+ module PWN
6
+ module AWS
7
+ # This module provides a client for making API requests to AWS Data Pipeline.
8
+ module DataPipeline
9
+ @@logger = PWN::Plugins::PWNLogger.create
10
+
11
+ # Supported Method Parameters::
12
+ # PWN::AWS::DataPipeline.connect(
13
+ # region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
14
+ # access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
15
+ # secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
16
+ # sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
17
+ # )
18
+
19
+ public_class_method def self.connect(opts = {})
20
+ region = opts[:region].to_s.scrub.chomp.strip
21
+ access_key_id = opts[:access_key_id].to_s.scrub.chomp.strip
22
+ secret_access_key = opts[:secret_access_key].to_s.scrub.chomp.strip
23
+ sts_session_token = opts[:sts_session_token].to_s.scrub.chomp.strip
24
+
25
+ @@logger.info('Connecting to AWS DataPipeline...')
26
+ if sts_session_token == ''
27
+ data_pipeline_obj = Aws::DataPipeline::Client.new(
28
+ region: region,
29
+ access_key_id: access_key_id,
30
+ secret_access_key: secret_access_key
31
+ )
32
+ else
33
+ data_pipeline_obj = Aws::DataPipeline::Client.new(
34
+ region: region,
35
+ access_key_id: access_key_id,
36
+ secret_access_key: secret_access_key,
37
+ session_token: sts_session_token
38
+ )
39
+ end
40
+ @@logger.info("complete.\n")
41
+
42
+ data_pipeline_obj
43
+ rescue StandardError => e
44
+ raise e
45
+ end
46
+
47
+ # Supported Method Parameters::
48
+ # PWN::AWS::DataPipeline.disconnect(
49
+ # data_pipeline_obj: 'required - data_pipeline_obj returned from #connect method'
50
+ # )
51
+
52
+ public_class_method def self.disconnect(opts = {})
53
+ data_pipeline_obj = opts[:data_pipeline_obj]
54
+ @@logger.info('Disconnecting...')
55
+ data_pipeline_obj = nil
56
+ @@logger.info("complete.\n")
57
+
58
+ data_pipeline_obj
59
+ rescue StandardError => e
60
+ raise e
61
+ end
62
+
63
+ # Author(s):: 0day Inc. <support@0dayinc.com>
64
+
65
+ public_class_method def self.authors
66
+ "AUTHOR(S):
67
+ 0day Inc. <support@0dayinc.com>
68
+ "
69
+ end
70
+
71
+ # Display Usage for this Module
72
+
73
+ public_class_method def self.help
74
+ puts "USAGE:
75
+ data_pipeline_obj = #{self}.connect(
76
+ region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
77
+ access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
78
+ secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
79
+ sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
80
+ )
81
+ puts data_pipeline_obj.public_methods
82
+
83
+ #{self}.disconnect(
84
+ data_pipeline_obj: 'required - data_pipeline_obj returned from #connect method'
85
+ )
86
+
87
+ #{self}.authors
88
+ "
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'aws-sdk'
4
+
5
+ module PWN
6
+ module AWS
7
+ # This module provides a client for making API requests to AWS Database Migration Service.
8
+ module DatabaseMigrationService
9
+ @@logger = PWN::Plugins::PWNLogger.create
10
+
11
+ # Supported Method Parameters::
12
+ # PWN::AWS::DatabaseMigrationService.connect(
13
+ # region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
14
+ # access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
15
+ # secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
16
+ # sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
17
+ # )
18
+
19
+ public_class_method def self.connect(opts = {})
20
+ region = opts[:region].to_s.scrub.chomp.strip
21
+ access_key_id = opts[:access_key_id].to_s.scrub.chomp.strip
22
+ secret_access_key = opts[:secret_access_key].to_s.scrub.chomp.strip
23
+ sts_session_token = opts[:sts_session_token].to_s.scrub.chomp.strip
24
+
25
+ @@logger.info('Connecting to AWS DatabaseMigrationService...')
26
+ if sts_session_token == ''
27
+ db_migration_svc_obj = Aws::DatabaseMigrationService::Client.new(
28
+ region: region,
29
+ access_key_id: access_key_id,
30
+ secret_access_key: secret_access_key
31
+ )
32
+ else
33
+ db_migration_svc_obj = Aws::DatabaseMigrationService::Client.new(
34
+ region: region,
35
+ access_key_id: access_key_id,
36
+ secret_access_key: secret_access_key,
37
+ session_token: sts_session_token
38
+ )
39
+ end
40
+ @@logger.info("complete.\n")
41
+
42
+ db_migration_svc_obj
43
+ rescue StandardError => e
44
+ raise e
45
+ end
46
+
47
+ # Supported Method Parameters::
48
+ # PWN::AWS::DatabaseMigrationService.disconnect(
49
+ # db_migration_svc_obj: 'required - db_migration_svc_obj returned from #connect method'
50
+ # )
51
+
52
+ public_class_method def self.disconnect(opts = {})
53
+ db_migration_svc_obj = opts[:db_migration_svc_obj]
54
+ @@logger.info('Disconnecting...')
55
+ db_migration_svc_obj = nil
56
+ @@logger.info("complete.\n")
57
+
58
+ db_migration_svc_obj
59
+ rescue StandardError => e
60
+ raise e
61
+ end
62
+
63
+ # Author(s):: 0day Inc. <support@0dayinc.com>
64
+
65
+ public_class_method def self.authors
66
+ "AUTHOR(S):
67
+ 0day Inc. <support@0dayinc.com>
68
+ "
69
+ end
70
+
71
+ # Display Usage for this Module
72
+
73
+ public_class_method def self.help
74
+ puts "USAGE:
75
+ db_migration_svc_obj = #{self}.connect(
76
+ region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
77
+ access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
78
+ secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
79
+ sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
80
+ )
81
+ puts db_migration_svc_obj.public_methods
82
+
83
+ #{self}.disconnect(
84
+ db_migration_svc_obj: 'required - db_migration_svc_obj returned from #connect method'
85
+ )
86
+
87
+ #{self}.authors
88
+ "
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'aws-sdk'
4
+
5
+ module PWN
6
+ module AWS
7
+ # This module provides a client for making API requests to AWS Device Farm.
8
+ module DeviceFarm
9
+ @@logger = PWN::Plugins::PWNLogger.create
10
+
11
+ # Supported Method Parameters::
12
+ # PWN::AWS::DeviceFarm.connect(
13
+ # region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
14
+ # access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
15
+ # secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
16
+ # sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
17
+ # )
18
+
19
+ public_class_method def self.connect(opts = {})
20
+ region = opts[:region].to_s.scrub.chomp.strip
21
+ access_key_id = opts[:access_key_id].to_s.scrub.chomp.strip
22
+ secret_access_key = opts[:secret_access_key].to_s.scrub.chomp.strip
23
+ sts_session_token = opts[:sts_session_token].to_s.scrub.chomp.strip
24
+
25
+ @@logger.info('Connecting to AWS DeviceFarm...')
26
+ if sts_session_token == ''
27
+ device_farm_obj = Aws::DeviceFarm::Client.new(
28
+ region: region,
29
+ access_key_id: access_key_id,
30
+ secret_access_key: secret_access_key
31
+ )
32
+ else
33
+ device_farm_obj = Aws::DeviceFarm::Client.new(
34
+ region: region,
35
+ access_key_id: access_key_id,
36
+ secret_access_key: secret_access_key,
37
+ session_token: sts_session_token
38
+ )
39
+ end
40
+ @@logger.info("complete.\n")
41
+
42
+ device_farm_obj
43
+ rescue StandardError => e
44
+ raise e
45
+ end
46
+
47
+ # Supported Method Parameters::
48
+ # PWN::AWS::DeviceFarm.disconnect(
49
+ # device_farm_obj: 'required - device_farm_obj returned from #connect method'
50
+ # )
51
+
52
+ public_class_method def self.disconnect(opts = {})
53
+ device_farm_obj = opts[:device_farm_obj]
54
+ @@logger.info('Disconnecting...')
55
+ device_farm_obj = nil
56
+ @@logger.info("complete.\n")
57
+
58
+ device_farm_obj
59
+ rescue StandardError => e
60
+ raise e
61
+ end
62
+
63
+ # Author(s):: 0day Inc. <support@0dayinc.com>
64
+
65
+ public_class_method def self.authors
66
+ "AUTHOR(S):
67
+ 0day Inc. <support@0dayinc.com>
68
+ "
69
+ end
70
+
71
+ # Display Usage for this Module
72
+
73
+ public_class_method def self.help
74
+ puts "USAGE:
75
+ device_farm_obj = #{self}.connect(
76
+ region: 'required - region name to connect (eu-west-1, ap-southeast-1, ap-southeast-2, eu-central-1, ap-northeast-2, ap-northeast-1, us-east-1, sa-east-1, us-west-1, us-west-2)',
77
+ access_key_id: 'required - Use AWS STS for best privacy (i.e. temporary access key id)',
78
+ secret_access_key: 'required - Use AWS STS for best privacy (i.e. temporary secret access key',
79
+ sts_session_token: 'optional - Temporary token returned by STS client for best privacy'
80
+ )
81
+ puts device_farm_obj.public_methods
82
+
83
+ #{self}.disconnect(
84
+ device_farm_obj: 'required - device_farm_obj returned from #connect method'
85
+ )
86
+
87
+ #{self}.authors
88
+ "
89
+ end
90
+ end
91
+ end
92
+ end