pwn 0.5.508 → 0.5.509

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