pwn 0.5.708 → 0.5.709

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 (434) hide show
  1. checksums.yaml +4 -4
  2. data/documentation/Installation.md +1 -0
  3. data/etc/default_skills/pwn/ai/agent/extrospection/osint/bridges/SKILL.md +30 -8
  4. data/etc/default_skills/pwn/ai/agent/extrospection/osint/social/SKILL.md +30 -8
  5. data/etc/default_skills/pwn/ai/agent/extrospection/osint/social/references/urls.md +1 -1
  6. data/etc/default_skills/pwn/ai/agent/extrospection/references/urls.md +0 -1
  7. data/etc/default_skills/pwn/memory_index/SKILL.md +0 -4
  8. data/etc/default_skills/pwn/plugins/aflplusplus/SKILL.md +48 -0
  9. data/etc/default_skills/pwn/plugins/android/SKILL.md +1 -0
  10. data/etc/default_skills/pwn/plugins/artifact_registry/SKILL.md +49 -0
  11. data/etc/default_skills/pwn/plugins/binary_parser/SKILL.md +54 -0
  12. data/etc/default_skills/pwn/plugins/credential_attack/SKILL.md +51 -0
  13. data/etc/default_skills/pwn/plugins/doctor/SKILL.md +57 -0
  14. data/etc/default_skills/pwn/plugins/exploit_dev/SKILL.md +61 -0
  15. data/etc/default_skills/pwn/plugins/frida/SKILL.md +49 -0
  16. data/etc/default_skills/pwn/plugins/gdb/SKILL.md +52 -0
  17. data/etc/default_skills/pwn/plugins/jobs/SKILL.md +51 -0
  18. data/etc/default_skills/pwn/plugins/nuclei/SKILL.md +48 -0
  19. data/etc/default_skills/pwn/plugins/process_tube/SKILL.md +52 -0
  20. data/etc/default_skills/pwn/plugins/radare2/SKILL.md +59 -0
  21. data/etc/default_skills/pwn/plugins/recon/SKILL.md +55 -0
  22. data/etc/default_skills/pwn/plugins/recon/references/urls.md +5 -0
  23. data/etc/default_skills/pwn/plugins/sqlmap/SKILL.md +48 -0
  24. data/etc/default_skills/pwn/plugins/transparent_browser/SKILL.md +0 -4
  25. data/etc/default_skills/pwn/plugins/volatility/SKILL.md +48 -0
  26. data/lib/pwn/ai/agent/assembly.rb +4 -1
  27. data/lib/pwn/ai/agent/btc.rb +4 -1
  28. data/lib/pwn/ai/agent/burp_suite.rb +5 -2
  29. data/lib/pwn/ai/agent/curriculum.rb +89 -30
  30. data/lib/pwn/ai/agent/dispatch.rb +27 -16
  31. data/lib/pwn/ai/agent/extrospection/osint/bridges.rb +9 -18
  32. data/lib/pwn/ai/agent/extrospection/osint/social.rb +9 -18
  33. data/lib/pwn/ai/agent/extrospection.rb +185 -60
  34. data/lib/pwn/ai/agent/gqrx.rb +4 -1
  35. data/lib/pwn/ai/agent/hacker_one.rb +5 -2
  36. data/lib/pwn/ai/agent/learning.rb +142 -25
  37. data/lib/pwn/ai/agent/loop.rb +53 -46
  38. data/lib/pwn/ai/agent/metrics.rb +133 -23
  39. data/lib/pwn/ai/agent/mistakes.rb +126 -17
  40. data/lib/pwn/ai/agent/open_goal.rb +25 -9
  41. data/lib/pwn/ai/agent/policy.rb +158 -18
  42. data/lib/pwn/ai/agent/prompt_builder.rb +21 -11
  43. data/lib/pwn/ai/agent/prompt_cache.rb +44 -13
  44. data/lib/pwn/ai/agent/reflect.rb +9 -5
  45. data/lib/pwn/ai/agent/registry.rb +65 -12
  46. data/lib/pwn/ai/agent/result.rb +19 -10
  47. data/lib/pwn/ai/agent/reward.rb +150 -32
  48. data/lib/pwn/ai/agent/sast.rb +4 -1
  49. data/lib/pwn/ai/agent/swarm.rb +72 -36
  50. data/lib/pwn/ai/agent/task_summarizer.rb +165 -36
  51. data/lib/pwn/ai/agent/tool_guard.rb +105 -6
  52. data/lib/pwn/ai/agent/transparent_browser.rb +4 -1
  53. data/lib/pwn/ai/agent/turn_finalizer.rb +41 -21
  54. data/lib/pwn/ai/agent/vuln_gen.rb +6 -3
  55. data/lib/pwn/ai/agent.rb +4 -0
  56. data/lib/pwn/ai/anthropic.rb +41 -7
  57. data/lib/pwn/ai/gemini.rb +21 -11
  58. data/lib/pwn/ai/grok.rb +44 -6
  59. data/lib/pwn/ai/http_retry.rb +40 -12
  60. data/lib/pwn/ai/ollama.rb +19 -10
  61. data/lib/pwn/ai/open_ai.rb +81 -30
  62. data/lib/pwn/ai/open_web_ui.rb +20 -14
  63. data/lib/pwn/ai/red_team/agent_protocol_abuse.rb +7 -1
  64. data/lib/pwn/ai/red_team/data_and_model_poisoning.rb +7 -1
  65. data/lib/pwn/ai/red_team/excessive_agency.rb +7 -1
  66. data/lib/pwn/ai/red_team/hidden_context_exposure.rb +7 -1
  67. data/lib/pwn/ai/red_team/insecure_output_handling.rb +7 -1
  68. data/lib/pwn/ai/red_team/jailbreak.rb +7 -1
  69. data/lib/pwn/ai/red_team/memory_poisoning.rb +7 -1
  70. data/lib/pwn/ai/red_team/multimodal_injection.rb +7 -1
  71. data/lib/pwn/ai/red_team/overreliance.rb +7 -1
  72. data/lib/pwn/ai/red_team/payload_splitting.rb +7 -1
  73. data/lib/pwn/ai/red_team/prompt_injection.rb +7 -1
  74. data/lib/pwn/ai/red_team/rag_poisoning.rb +7 -1
  75. data/lib/pwn/ai/red_team/sensitive_information_disclosure.rb +7 -1
  76. data/lib/pwn/ai/red_team/supply_chain.rb +7 -1
  77. data/lib/pwn/ai/red_team/system_prompt_extraction.rb +7 -1
  78. data/lib/pwn/ai/red_team/test_case_engine.rb +12 -9
  79. data/lib/pwn/ai/red_team/token_smuggling.rb +7 -1
  80. data/lib/pwn/ai/red_team/unbounded_consumption.rb +7 -1
  81. data/lib/pwn/ai/red_team/vector_and_embedding_weaknesses.rb +7 -1
  82. data/lib/pwn/ai/red_team.rb +4 -0
  83. data/lib/pwn/ai.rb +4 -0
  84. data/lib/pwn/aws/acm.rb +5 -2
  85. data/lib/pwn/aws/api_gateway.rb +10 -7
  86. data/lib/pwn/aws/app_stream.rb +5 -2
  87. data/lib/pwn/aws/application_auto_scaling.rb +5 -2
  88. data/lib/pwn/aws/application_discovery_service.rb +5 -2
  89. data/lib/pwn/aws/auto_scaling.rb +5 -2
  90. data/lib/pwn/aws/batch.rb +5 -2
  91. data/lib/pwn/aws/budgets.rb +5 -2
  92. data/lib/pwn/aws/cloud_formation.rb +5 -2
  93. data/lib/pwn/aws/cloud_front.rb +7 -4
  94. data/lib/pwn/aws/cloud_hsm.rb +5 -2
  95. data/lib/pwn/aws/cloud_search.rb +5 -2
  96. data/lib/pwn/aws/cloud_search_domain.rb +5 -2
  97. data/lib/pwn/aws/cloud_trail.rb +5 -2
  98. data/lib/pwn/aws/cloud_watch.rb +5 -2
  99. data/lib/pwn/aws/cloud_watch_events.rb +5 -2
  100. data/lib/pwn/aws/cloud_watch_logs.rb +5 -2
  101. data/lib/pwn/aws/code_build.rb +5 -2
  102. data/lib/pwn/aws/code_commit.rb +5 -2
  103. data/lib/pwn/aws/code_deploy.rb +5 -2
  104. data/lib/pwn/aws/code_pipeline.rb +5 -2
  105. data/lib/pwn/aws/cognito_identity.rb +5 -2
  106. data/lib/pwn/aws/cognito_identity_provider.rb +5 -2
  107. data/lib/pwn/aws/cognito_sync.rb +5 -2
  108. data/lib/pwn/aws/config_service.rb +5 -2
  109. data/lib/pwn/aws/data_pipleline.rb +5 -2
  110. data/lib/pwn/aws/database_migration_service.rb +5 -2
  111. data/lib/pwn/aws/device_farm.rb +5 -2
  112. data/lib/pwn/aws/direct_connect.rb +5 -2
  113. data/lib/pwn/aws/directory_service.rb +5 -2
  114. data/lib/pwn/aws/dynamo_db.rb +5 -2
  115. data/lib/pwn/aws/dynamo_db_streams.rb +5 -2
  116. data/lib/pwn/aws/ec2.rb +5 -2
  117. data/lib/pwn/aws/ecr.rb +5 -2
  118. data/lib/pwn/aws/ecs.rb +5 -2
  119. data/lib/pwn/aws/efs.rb +5 -2
  120. data/lib/pwn/aws/elasti_cache.rb +5 -2
  121. data/lib/pwn/aws/elastic_beanstalk.rb +8 -5
  122. data/lib/pwn/aws/elastic_load_balancing.rb +5 -2
  123. data/lib/pwn/aws/elastic_load_balancing_v2.rb +6 -3
  124. data/lib/pwn/aws/elastic_transcoder.rb +5 -2
  125. data/lib/pwn/aws/elasticsearch_service.rb +5 -2
  126. data/lib/pwn/aws/emr.rb +5 -2
  127. data/lib/pwn/aws/firehose.rb +5 -2
  128. data/lib/pwn/aws/game_lift.rb +5 -2
  129. data/lib/pwn/aws/glacier.rb +6 -3
  130. data/lib/pwn/aws/health.rb +5 -2
  131. data/lib/pwn/aws/iam.rb +10 -4
  132. data/lib/pwn/aws/import_export.rb +5 -2
  133. data/lib/pwn/aws/inspector.rb +5 -2
  134. data/lib/pwn/aws/iot.rb +5 -2
  135. data/lib/pwn/aws/iot_data_plane.rb +5 -2
  136. data/lib/pwn/aws/kinesis.rb +5 -2
  137. data/lib/pwn/aws/kinesis_analytics.rb +5 -2
  138. data/lib/pwn/aws/kms.rb +5 -2
  139. data/lib/pwn/aws/lambda.rb +5 -2
  140. data/lib/pwn/aws/lambda_preview.rb +5 -2
  141. data/lib/pwn/aws/lex.rb +5 -2
  142. data/lib/pwn/aws/lightsail.rb +5 -2
  143. data/lib/pwn/aws/machine_learning.rb +5 -2
  144. data/lib/pwn/aws/marketplace_commerce_analytics.rb +5 -2
  145. data/lib/pwn/aws/marketplace_metering.rb +5 -2
  146. data/lib/pwn/aws/ops_works.rb +5 -2
  147. data/lib/pwn/aws/ops_works_cm.rb +5 -2
  148. data/lib/pwn/aws/pinpoint.rb +5 -2
  149. data/lib/pwn/aws/polly.rb +5 -2
  150. data/lib/pwn/aws/rds.rb +5 -2
  151. data/lib/pwn/aws/redshift.rb +5 -2
  152. data/lib/pwn/aws/rekognition.rb +5 -2
  153. data/lib/pwn/aws/route53.rb +5 -2
  154. data/lib/pwn/aws/route53_domains.rb +5 -2
  155. data/lib/pwn/aws/s3.rb +5 -2
  156. data/lib/pwn/aws/service_catalog.rb +5 -2
  157. data/lib/pwn/aws/ses.rb +5 -2
  158. data/lib/pwn/aws/shield.rb +5 -2
  159. data/lib/pwn/aws/simple_db.rb +5 -2
  160. data/lib/pwn/aws/sms.rb +5 -2
  161. data/lib/pwn/aws/snowball.rb +5 -2
  162. data/lib/pwn/aws/sns.rb +5 -2
  163. data/lib/pwn/aws/sqs.rb +5 -2
  164. data/lib/pwn/aws/ssm.rb +5 -2
  165. data/lib/pwn/aws/states.rb +5 -2
  166. data/lib/pwn/aws/storage_gateway.rb +5 -2
  167. data/lib/pwn/aws/sts.rb +4 -1
  168. data/lib/pwn/aws/support.rb +5 -2
  169. data/lib/pwn/aws/swf.rb +5 -2
  170. data/lib/pwn/aws/waf.rb +5 -2
  171. data/lib/pwn/aws/waf_regional.rb +5 -2
  172. data/lib/pwn/aws/workspaces.rb +5 -2
  173. data/lib/pwn/aws/x_ray.rb +5 -2
  174. data/lib/pwn/aws.rb +4 -0
  175. data/lib/pwn/banner/anon.rb +3 -0
  176. data/lib/pwn/banner/bubble.rb +3 -0
  177. data/lib/pwn/banner/cheshire.rb +3 -0
  178. data/lib/pwn/banner/code_cave.rb +3 -0
  179. data/lib/pwn/banner/dont_panic.rb +3 -0
  180. data/lib/pwn/banner/f_society.rb +3 -0
  181. data/lib/pwn/banner/fork_bomb.rb +3 -0
  182. data/lib/pwn/banner/jmp_esp.rb +3 -0
  183. data/lib/pwn/banner/matrix.rb +5 -1
  184. data/lib/pwn/banner/ninja.rb +3 -0
  185. data/lib/pwn/banner/off_the_air.rb +3 -0
  186. data/lib/pwn/banner/pirate.rb +3 -0
  187. data/lib/pwn/banner/radare2.rb +3 -0
  188. data/lib/pwn/banner/radare2_ai.rb +3 -0
  189. data/lib/pwn/banner/white_rabbit.rb +3 -0
  190. data/lib/pwn/banner.rb +6 -2
  191. data/lib/pwn/blockchain/btc.rb +8 -3
  192. data/lib/pwn/blockchain/eth.rb +10 -3
  193. data/lib/pwn/blockchain.rb +4 -0
  194. data/lib/pwn/bounty/lifecycle_authz_replay.rb +46 -27
  195. data/lib/pwn/bounty.rb +4 -0
  196. data/lib/pwn/config.rb +79 -13
  197. data/lib/pwn/cron.rb +297 -20
  198. data/lib/pwn/driver.rb +2 -18
  199. data/lib/pwn/ffi/adalm_pluto.rb +65 -11
  200. data/lib/pwn/ffi/fftw.rb +31 -6
  201. data/lib/pwn/ffi/hack_rf.rb +59 -8
  202. data/lib/pwn/ffi/liquid.rb +63 -10
  203. data/lib/pwn/ffi/rtl_sdr.rb +35 -5
  204. data/lib/pwn/ffi/soapy_sdr.rb +60 -10
  205. data/lib/pwn/ffi/stdio.rb +5 -8
  206. data/lib/pwn/ffi/volk.rb +36 -7
  207. data/lib/pwn/ffi.rb +12 -0
  208. data/lib/pwn/memory.rb +136 -16
  209. data/lib/pwn/memory_index.rb +34 -19
  210. data/lib/pwn/migrate.rb +34 -24
  211. data/lib/pwn/module_skills.rb +39 -8
  212. data/lib/pwn/plugins/aflplusplus.rb +52 -0
  213. data/lib/pwn/plugins/android.rb +65 -245
  214. data/lib/pwn/plugins/artifact_registry.rb +71 -0
  215. data/lib/pwn/plugins/assembly.rb +9 -4
  216. data/lib/pwn/plugins/authentication_helper.rb +8 -5
  217. data/lib/pwn/plugins/baresip.rb +59 -12
  218. data/lib/pwn/plugins/basic_auth.rb +9 -3
  219. data/lib/pwn/plugins/beef.rb +28 -18
  220. data/lib/pwn/plugins/binary_parser.rb +133 -0
  221. data/lib/pwn/plugins/black_duck_binary_analysis.rb +63 -39
  222. data/lib/pwn/plugins/burp_suite.rb +98 -68
  223. data/lib/pwn/plugins/bus_pirate.rb +15 -8
  224. data/lib/pwn/plugins/char.rb +33 -3
  225. data/lib/pwn/plugins/credential_attack.rb +99 -0
  226. data/lib/pwn/plugins/credit_card.rb +6 -1
  227. data/lib/pwn/plugins/dao_ldap.rb +19 -13
  228. data/lib/pwn/plugins/dao_mongo.rb +11 -5
  229. data/lib/pwn/plugins/dao_postgres.rb +28 -19
  230. data/lib/pwn/plugins/dao_sqlite3.rb +15 -6
  231. data/lib/pwn/plugins/defect_dojo.rb +38 -22
  232. data/lib/pwn/plugins/detect_os.rb +5 -0
  233. data/lib/pwn/plugins/doctor.rb +149 -0
  234. data/lib/pwn/plugins/ein.rb +3 -0
  235. data/lib/pwn/plugins/exploit_dev.rb +264 -0
  236. data/lib/pwn/plugins/file_fu.rb +11 -8
  237. data/lib/pwn/plugins/frida.rb +61 -0
  238. data/lib/pwn/plugins/fuzz.rb +9 -6
  239. data/lib/pwn/plugins/gdb.rb +95 -0
  240. data/lib/pwn/plugins/git.rb +19 -14
  241. data/lib/pwn/plugins/github.rb +38 -15
  242. data/lib/pwn/plugins/google_workspace.rb +188 -45
  243. data/lib/pwn/plugins/hacker_one.rb +159 -35
  244. data/lib/pwn/plugins/hunter.rb +6 -3
  245. data/lib/pwn/plugins/ip_info.rb +9 -4
  246. data/lib/pwn/plugins/irc.rb +28 -15
  247. data/lib/pwn/plugins/jenkins.rb +65 -57
  248. data/lib/pwn/plugins/jira_data_center.rb +30 -22
  249. data/lib/pwn/plugins/jobs.rb +109 -0
  250. data/lib/pwn/plugins/json_pathify.rb +9 -5
  251. data/lib/pwn/plugins/log.rb +113 -13
  252. data/lib/pwn/plugins/mail_agent.rb +87 -79
  253. data/lib/pwn/plugins/metasploit.rb +11 -6
  254. data/lib/pwn/plugins/monkey_patch.rb +3 -0
  255. data/lib/pwn/plugins/msr206.rb +42 -28
  256. data/lib/pwn/plugins/nessus_cloud.rb +44 -4
  257. data/lib/pwn/plugins/nexpose_vuln_scan.rb +40 -24
  258. data/lib/pwn/plugins/nmap_it.rb +14 -34
  259. data/lib/pwn/plugins/nuclei.rb +57 -0
  260. data/lib/pwn/plugins/oauth2.rb +11 -5
  261. data/lib/pwn/plugins/ocr.rb +3 -0
  262. data/lib/pwn/plugins/open_api.rb +5 -2
  263. data/lib/pwn/plugins/openvas.rb +33 -25
  264. data/lib/pwn/plugins/packet.rb +152 -31
  265. data/lib/pwn/plugins/pdf_parse.rb +5 -2
  266. data/lib/pwn/plugins/pony.rb +86 -1
  267. data/lib/pwn/plugins/process_tube.rb +120 -0
  268. data/lib/pwn/plugins/ps.rb +7 -1
  269. data/lib/pwn/plugins/pwn_logger.rb +6 -2
  270. data/lib/pwn/plugins/rabbit_mq.rb +12 -7
  271. data/lib/pwn/plugins/radare2.rb +253 -0
  272. data/lib/pwn/plugins/recon.rb +161 -0
  273. data/lib/pwn/plugins/repl.rb +122 -1
  274. data/lib/pwn/plugins/scannable_codes.rb +5 -1
  275. data/lib/pwn/plugins/serial.rb +24 -14
  276. data/lib/pwn/plugins/shodan.rb +54 -35
  277. data/lib/pwn/plugins/slack_client.rb +11 -6
  278. data/lib/pwn/plugins/sock.rb +16 -8
  279. data/lib/pwn/plugins/spider.rb +5 -2
  280. data/lib/pwn/plugins/sqlmap.rb +49 -0
  281. data/lib/pwn/plugins/ssn.rb +3 -0
  282. data/lib/pwn/plugins/thread_pool.rb +6 -9
  283. data/lib/pwn/plugins/tor.rb +9 -4
  284. data/lib/pwn/plugins/transparent_browser.rb +62 -107
  285. data/lib/pwn/plugins/tty_spinner.rb +16 -2
  286. data/lib/pwn/plugins/twitter_api.rb +6 -2
  287. data/lib/pwn/plugins/uri_scheme.rb +4 -1
  288. data/lib/pwn/plugins/vault.rb +12 -3
  289. data/lib/pwn/plugins/vin.rb +24 -12
  290. data/lib/pwn/plugins/voice.rb +7 -2
  291. data/lib/pwn/plugins/volatility.rb +48 -0
  292. data/lib/pwn/plugins/vsphere.rb +9 -5
  293. data/lib/pwn/plugins/xxd.rb +12 -43
  294. data/lib/pwn/plugins/zaproxy.rb +30 -16
  295. data/lib/pwn/plugins.rb +19 -0
  296. data/lib/pwn/reports/ai_red_team.rb +6 -2
  297. data/lib/pwn/reports/csv.rb +8 -1
  298. data/lib/pwn/reports/fuzz.rb +5 -2
  299. data/lib/pwn/reports/html.rb +8 -1
  300. data/lib/pwn/reports/html_footer.rb +4 -3
  301. data/lib/pwn/reports/html_header.rb +6 -2
  302. data/lib/pwn/reports/json.rb +8 -1
  303. data/lib/pwn/reports/markdown.rb +8 -1
  304. data/lib/pwn/reports/pdf.rb +8 -1
  305. data/lib/pwn/reports/phone.rb +5 -2
  306. data/lib/pwn/reports/sast.rb +6 -2
  307. data/lib/pwn/reports/uri_buster.rb +5 -2
  308. data/lib/pwn/reports/xml.rb +8 -1
  309. data/lib/pwn/reports.rb +19 -0
  310. data/lib/pwn/sast/amqp_connect_as_guest.rb +9 -3
  311. data/lib/pwn/sast/apache_file_system_util_api.rb +9 -3
  312. data/lib/pwn/sast/aws.rb +9 -3
  313. data/lib/pwn/sast/banned_function_calls_c.rb +9 -3
  314. data/lib/pwn/sast/base64.rb +9 -3
  315. data/lib/pwn/sast/beef_hook.rb +9 -3
  316. data/lib/pwn/sast/cmd_execution_go_lang.rb +9 -3
  317. data/lib/pwn/sast/cmd_execution_java.rb +9 -3
  318. data/lib/pwn/sast/cmd_execution_python.rb +9 -3
  319. data/lib/pwn/sast/cmd_execution_ruby.rb +9 -3
  320. data/lib/pwn/sast/cmd_execution_scala.rb +9 -3
  321. data/lib/pwn/sast/csrf.rb +9 -3
  322. data/lib/pwn/sast/deserial_java.rb +9 -3
  323. data/lib/pwn/sast/emoticon.rb +9 -3
  324. data/lib/pwn/sast/eval.rb +9 -3
  325. data/lib/pwn/sast/factory.rb +9 -3
  326. data/lib/pwn/sast/http_authorization_header.rb +9 -3
  327. data/lib/pwn/sast/inner_html.rb +9 -3
  328. data/lib/pwn/sast/keystore.rb +9 -3
  329. data/lib/pwn/sast/local_storage.rb +9 -3
  330. data/lib/pwn/sast/location_hash.rb +9 -3
  331. data/lib/pwn/sast/log4j.rb +9 -3
  332. data/lib/pwn/sast/logger.rb +9 -3
  333. data/lib/pwn/sast/md5.rb +9 -3
  334. data/lib/pwn/sast/outer_html.rb +9 -3
  335. data/lib/pwn/sast/padding_oracle.rb +9 -3
  336. data/lib/pwn/sast/password.rb +9 -3
  337. data/lib/pwn/sast/php_input_mechanisms.rb +9 -3
  338. data/lib/pwn/sast/php_type_juggling.rb +9 -3
  339. data/lib/pwn/sast/pom_version.rb +9 -3
  340. data/lib/pwn/sast/port.rb +9 -3
  341. data/lib/pwn/sast/post_message.rb +9 -3
  342. data/lib/pwn/sast/private_key.rb +9 -3
  343. data/lib/pwn/sast/redirect.rb +9 -3
  344. data/lib/pwn/sast/redos.rb +9 -3
  345. data/lib/pwn/sast/shell.rb +9 -3
  346. data/lib/pwn/sast/signature.rb +9 -3
  347. data/lib/pwn/sast/sql.rb +9 -3
  348. data/lib/pwn/sast/ssl.rb +9 -3
  349. data/lib/pwn/sast/sudo.rb +9 -3
  350. data/lib/pwn/sast/task_tag.rb +9 -3
  351. data/lib/pwn/sast/test_case_engine.rb +11 -7
  352. data/lib/pwn/sast/throw_errors.rb +9 -3
  353. data/lib/pwn/sast/token.rb +9 -3
  354. data/lib/pwn/sast/type_script_type_juggling.rb +9 -3
  355. data/lib/pwn/sast/use_after_free.rb +9 -3
  356. data/lib/pwn/sast/version.rb +9 -3
  357. data/lib/pwn/sast/window_location_hash.rb +9 -3
  358. data/lib/pwn/sast.rb +4 -0
  359. data/lib/pwn/sdr/decoder/adsb.rb +36 -5
  360. data/lib/pwn/sdr/decoder/apt.rb +9 -6
  361. data/lib/pwn/sdr/decoder/base.rb +74 -22
  362. data/lib/pwn/sdr/decoder/bluetooth.rb +17 -5
  363. data/lib/pwn/sdr/decoder/dect.rb +12 -3
  364. data/lib/pwn/sdr/decoder/dsp.rb +229 -39
  365. data/lib/pwn/sdr/decoder/flex.rb +59 -11
  366. data/lib/pwn/sdr/decoder/gps.rb +12 -3
  367. data/lib/pwn/sdr/decoder/gsm.rb +24 -4
  368. data/lib/pwn/sdr/decoder/iridium.rb +12 -3
  369. data/lib/pwn/sdr/decoder/lora.rb +13 -4
  370. data/lib/pwn/sdr/decoder/lte.rb +27 -3
  371. data/lib/pwn/sdr/decoder/morse.rb +12 -3
  372. data/lib/pwn/sdr/decoder/p25.rb +12 -3
  373. data/lib/pwn/sdr/decoder/pager.rb +8 -5
  374. data/lib/pwn/sdr/decoder/pocsag.rb +29 -9
  375. data/lib/pwn/sdr/decoder/rds.rb +14 -8
  376. data/lib/pwn/sdr/decoder/rfid.rb +12 -3
  377. data/lib/pwn/sdr/decoder/rtl433.rb +12 -3
  378. data/lib/pwn/sdr/decoder/rtty.rb +8 -5
  379. data/lib/pwn/sdr/decoder/wifi.rb +12 -3
  380. data/lib/pwn/sdr/decoder/zigbee.rb +12 -3
  381. data/lib/pwn/sdr/decoder.rb +9 -0
  382. data/lib/pwn/sdr/flipper_zero.rb +17 -10
  383. data/lib/pwn/sdr/frequency_allocation.rb +4 -1
  384. data/lib/pwn/sdr/gqrx.rb +178 -119
  385. data/lib/pwn/sdr/rfidler.rb +4 -1
  386. data/lib/pwn/sdr/son_micro_rfid.rb +37 -24
  387. data/lib/pwn/sdr.rb +14 -0
  388. data/lib/pwn/sessions.rb +86 -16
  389. data/lib/pwn/setup.rb +94 -37
  390. data/lib/pwn/version.rb +1 -1
  391. data/lib/pwn/www/app_cobalt_io.rb +11 -5
  392. data/lib/pwn/www/bing.rb +10 -5
  393. data/lib/pwn/www/bug_crowd.rb +11 -5
  394. data/lib/pwn/www/checkip.rb +8 -4
  395. data/lib/pwn/www/coinbase_pro.rb +11 -5
  396. data/lib/pwn/www/duckduckgo.rb +12 -6
  397. data/lib/pwn/www/facebook.rb +11 -5
  398. data/lib/pwn/www/github.rb +11 -5
  399. data/lib/pwn/www/google.rb +11 -5
  400. data/lib/pwn/www/hacker_one.rb +20 -9
  401. data/lib/pwn/www/linkedin.rb +11 -5
  402. data/lib/pwn/www/pandora.rb +11 -5
  403. data/lib/pwn/www/pastebin.rb +9 -4
  404. data/lib/pwn/www/paypal.rb +19 -11
  405. data/lib/pwn/www/synack.rb +11 -5
  406. data/lib/pwn/www/torch.rb +13 -8
  407. data/lib/pwn/www/trading_view.rb +11 -5
  408. data/lib/pwn/www/twitter.rb +11 -5
  409. data/lib/pwn/www/uber.rb +11 -5
  410. data/lib/pwn/www/upwork.rb +11 -5
  411. data/lib/pwn/www/wayback_machine.rb +12 -6
  412. data/lib/pwn/www/youtube.rb +10 -5
  413. data/lib/pwn/www.rb +4 -0
  414. data/spec/conventions_spec.rb +118 -2
  415. data/spec/lib/pwn/ai/agent/reward_spec.rb +9 -0
  416. data/spec/lib/pwn/plugins/aflplusplus_spec.rb +13 -0
  417. data/spec/lib/pwn/plugins/artifact_registry_spec.rb +13 -0
  418. data/spec/lib/pwn/plugins/binary_parser_spec.rb +21 -0
  419. data/spec/lib/pwn/plugins/credential_attack_spec.rb +13 -0
  420. data/spec/lib/pwn/plugins/doctor_spec.rb +23 -0
  421. data/spec/lib/pwn/plugins/exploit_dev_spec.rb +23 -0
  422. data/spec/lib/pwn/plugins/frida_spec.rb +13 -0
  423. data/spec/lib/pwn/plugins/gdb_spec.rb +13 -0
  424. data/spec/lib/pwn/plugins/jobs_spec.rb +13 -0
  425. data/spec/lib/pwn/plugins/nuclei_spec.rb +13 -0
  426. data/spec/lib/pwn/plugins/process_tube_spec.rb +13 -0
  427. data/spec/lib/pwn/plugins/radare2_spec.rb +13 -0
  428. data/spec/lib/pwn/plugins/recon_spec.rb +26 -0
  429. data/spec/lib/pwn/plugins/sqlmap_spec.rb +13 -0
  430. data/spec/lib/pwn/plugins/volatility_spec.rb +13 -0
  431. data/third_party/pwn_rdoc.jsonl +126 -5
  432. metadata +47 -3
  433. data/etc/default_skills/pwn/memory_index/references/urls.md +0 -4
  434. data/etc/default_skills/pwn/plugins/transparent_browser/references/urls.md +0 -3
@@ -63,13 +63,19 @@ module PWN
63
63
 
64
64
  public_class_method def self.help
65
65
  puts "USAGE:
66
- sast_arr = #{self}.scan(
67
- dir_path: 'optional path to dir defaults to .',
68
- git_repo_root_uri: 'optional http uri of git repo scanned'
66
+ # Run scan and return its result
67
+ #{self}.scan(
68
+ dir_path: 'optional - optional path to dir defaults to .',
69
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
69
70
  )
70
71
 
72
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
73
+ #{self}.security_references
74
+
75
+ # Print the AUTHOR(S) string for this module.
71
76
  #{self}.authors
72
77
  "
78
+ constants.sort
73
79
  end
74
80
  end
75
81
  end
@@ -62,13 +62,19 @@ module PWN
62
62
 
63
63
  public_class_method def self.help
64
64
  puts "USAGE:
65
- sast_arr = #{self}.scan(
66
- dir_path: 'optional path to dir defaults to .',
67
- git_repo_root_uri: 'optional http uri of git repo scanned'
65
+ # Run scan and return its result
66
+ #{self}.scan(
67
+ dir_path: 'optional - optional path to dir defaults to .',
68
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
68
69
  )
69
70
 
71
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
72
+ #{self}.security_references
73
+
74
+ # Print the AUTHOR(S) string for this module.
70
75
  #{self}.authors
71
76
  "
77
+ constants.sort
72
78
  end
73
79
  end
74
80
  end
@@ -64,13 +64,19 @@ module PWN
64
64
 
65
65
  public_class_method def self.help
66
66
  puts "USAGE:
67
- sast_arr = #{self}.scan(
68
- dir_path: 'optional path to dir defaults to .',
69
- git_repo_root_uri: 'optional http uri of git repo scanned'
67
+ # Run scan and return its result
68
+ #{self}.scan(
69
+ dir_path: 'optional - optional path to dir defaults to .',
70
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
70
71
  )
71
72
 
73
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
74
+ #{self}.security_references
75
+
76
+ # Print the AUTHOR(S) string for this module.
72
77
  #{self}.authors
73
78
  "
79
+ constants.sort
74
80
  end
75
81
  end
76
82
  end
@@ -63,13 +63,19 @@ module PWN
63
63
 
64
64
  public_class_method def self.help
65
65
  puts "USAGE:
66
- sast_arr = #{self}.scan(
67
- dir_path: 'optional path to dir defaults to .',
68
- git_repo_root_uri: 'optional http uri of git repo scanned'
66
+ # Run scan and return its result
67
+ #{self}.scan(
68
+ dir_path: 'optional - optional path to dir defaults to .',
69
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
69
70
  )
70
71
 
72
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
73
+ #{self}.security_references
74
+
75
+ # Print the AUTHOR(S) string for this module.
71
76
  #{self}.authors
72
77
  "
78
+ constants.sort
73
79
  end
74
80
  end
75
81
  end
@@ -65,13 +65,19 @@ module PWN
65
65
 
66
66
  public_class_method def self.help
67
67
  puts "USAGE:
68
- sast_arr = #{self}.scan(
69
- :dir_path => 'optional path to dir defaults to .',
70
- :git_repo_root_uri => 'optional http uri of git repo scanned'
68
+ # Run scan and return its result
69
+ #{self}.scan(
70
+ dir_path: 'optional - optional path to dir defaults to .',
71
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
71
72
  )
72
73
 
74
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
75
+ #{self}.security_references
76
+
77
+ # Print the AUTHOR(S) string for this module.
73
78
  #{self}.authors
74
79
  "
80
+ constants.sort
75
81
  end
76
82
  end
77
83
  end
@@ -77,13 +77,19 @@ module PWN
77
77
 
78
78
  public_class_method def self.help
79
79
  puts "USAGE:
80
- sast_arr = #{self}.scan(
81
- dir_path: 'optional path to dir defaults to .',
82
- git_repo_root_uri: 'optional http uri of git repo scanned'
80
+ # Run scan and return its result
81
+ #{self}.scan(
82
+ dir_path: 'optional - optional path to dir defaults to .',
83
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
83
84
  )
84
85
 
86
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
87
+ #{self}.security_references
88
+
89
+ # Print the AUTHOR(S) string for this module.
85
90
  #{self}.authors
86
91
  "
92
+ constants.sort
87
93
  end
88
94
  end
89
95
  end
data/lib/pwn/sast/md5.rb CHANGED
@@ -62,13 +62,19 @@ module PWN
62
62
 
63
63
  public_class_method def self.help
64
64
  puts "USAGE:
65
- sast_arr = #{self}.scan(
66
- dir_path: 'optional path to dir defaults to .',
67
- git_repo_root_uri: 'optional http uri of git repo scanned'
65
+ # Run scan and return its result
66
+ #{self}.scan(
67
+ dir_path: 'optional - optional path to dir defaults to .',
68
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
68
69
  )
69
70
 
71
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
72
+ #{self}.security_references
73
+
74
+ # Print the AUTHOR(S) string for this module.
70
75
  #{self}.authors
71
76
  "
77
+ constants.sort
72
78
  end
73
79
  end
74
80
  end
@@ -63,13 +63,19 @@ module PWN
63
63
 
64
64
  public_class_method def self.help
65
65
  puts "USAGE:
66
- sast_arr = #{self}.scan(
67
- dir_path: 'optional path to dir defaults to .',
68
- git_repo_root_uri: 'optional http uri of git repo scanned'
66
+ # Run scan and return its result
67
+ #{self}.scan(
68
+ dir_path: 'optional - optional path to dir defaults to .',
69
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
69
70
  )
70
71
 
72
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
73
+ #{self}.security_references
74
+
75
+ # Print the AUTHOR(S) string for this module.
71
76
  #{self}.authors
72
77
  "
78
+ constants.sort
73
79
  end
74
80
  end
75
81
  end
@@ -59,13 +59,19 @@ module PWN
59
59
 
60
60
  public_class_method def self.help
61
61
  puts "USAGE:
62
- sast_arr = #{self}.scan(
63
- dir_path: 'optional path to dir defaults to .',
64
- git_repo_root_uri: 'optional http uri of git repo scanned'
62
+ # Run scan and return its result
63
+ #{self}.scan(
64
+ dir_path: 'optional - optional path to dir defaults to .',
65
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
65
66
  )
66
67
 
68
+ # Used to dictate Security Control Requirements for a Given SAST module
69
+ #{self}.security_references
70
+
71
+ # Print the AUTHOR(S) string for this module.
67
72
  #{self}.authors
68
73
  "
74
+ constants.sort
69
75
  end
70
76
  end
71
77
  end
@@ -62,13 +62,19 @@ module PWN
62
62
 
63
63
  public_class_method def self.help
64
64
  puts "USAGE:
65
- sast_arr = #{self}.scan(
66
- :dir_path => 'optional path to dir defaults to .',
67
- :git_repo_root_uri => 'optional http uri of git repo scanned'
65
+ # :dir_path => optional path to dir defaults to .
66
+ #{self}.scan(
67
+ dir_path: 'optional - dir path value consumed by #scan',
68
+ git_repo_root_uri: 'optional - git repo root uri value consumed by #scan'
68
69
  )
69
70
 
71
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
72
+ #{self}.security_references
73
+
74
+ # Print the AUTHOR(S) string for this module.
70
75
  #{self}.authors
71
76
  "
77
+ constants.sort
72
78
  end
73
79
  end
74
80
  end
@@ -71,13 +71,19 @@ module PWN
71
71
 
72
72
  public_class_method def self.help
73
73
  puts "USAGE:
74
- sast_arr = #{self}.scan(
75
- :dir_path => 'optional path to dir defaults to .',
76
- :git_repo_root_uri => 'optional http uri of git repo scanned'
74
+ # Run scan and return its result
75
+ #{self}.scan(
76
+ dir_path: 'optional - optional path to dir defaults to .',
77
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
77
78
  )
78
79
 
80
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
81
+ #{self}.security_references
82
+
83
+ # Print the AUTHOR(S) string for this module.
79
84
  #{self}.authors
80
85
  "
86
+ constants.sort
81
87
  end
82
88
  end
83
89
  end
@@ -69,13 +69,19 @@ module PWN
69
69
 
70
70
  public_class_method def self.help
71
71
  puts "USAGE:
72
- sast_arr = #{self}.scan(
73
- :dir_path => 'optional path to dir defaults to .',
74
- :git_repo_root_uri => 'optional http uri of git repo scanned'
72
+ # Run scan and return its result
73
+ #{self}.scan(
74
+ dir_path: 'optional - optional path to dir defaults to .',
75
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
75
76
  )
76
77
 
78
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
79
+ #{self}.security_references
80
+
81
+ # Print the AUTHOR(S) string for this module.
77
82
  #{self}.authors
78
83
  "
84
+ constants.sort
79
85
  end
80
86
  end
81
87
  end
@@ -148,13 +148,19 @@ module PWN
148
148
 
149
149
  public_class_method def self.help
150
150
  puts "USAGE:
151
- sast_arr = #{self}.scan(
152
- dir_path: 'optional path to dir defaults to .',
153
- git_repo_root_uri: 'optional http uri of git repo scanned'
151
+ # Run scan and return its result
152
+ #{self}.scan(
153
+ dir_path: 'optional - optional path to dir defaults to .',
154
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
154
155
  )
155
156
 
157
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
158
+ #{self}.security_references
159
+
160
+ # Print the AUTHOR(S) string for this module.
156
161
  #{self}.authors
157
162
  "
163
+ constants.sort
158
164
  end
159
165
  end
160
166
  end
data/lib/pwn/sast/port.rb CHANGED
@@ -69,13 +69,19 @@ module PWN
69
69
 
70
70
  public_class_method def self.help
71
71
  puts "USAGE:
72
- sast_arr = #{self}.scan(
73
- dir_path: 'optional path to dir defaults to .',
74
- git_repo_root_uri: 'optional http uri of git repo scanned'
72
+ # Run scan and return its result
73
+ #{self}.scan(
74
+ dir_path: 'optional - optional path to dir defaults to .',
75
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
75
76
  )
76
77
 
78
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
79
+ #{self}.security_references
80
+
81
+ # Print the AUTHOR(S) string for this module.
77
82
  #{self}.authors
78
83
  "
84
+ constants.sort
79
85
  end
80
86
  end
81
87
  end
@@ -63,13 +63,19 @@ module PWN
63
63
 
64
64
  public_class_method def self.help
65
65
  puts "USAGE:
66
- sast_arr = #{self}.scan(
67
- dir_path: 'optional path to dir defaults to .',
68
- git_repo_root_uri: 'optional http uri of git repo scanned'
66
+ # Run scan and return its result
67
+ #{self}.scan(
68
+ dir_path: 'optional - optional path to dir defaults to .',
69
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
69
70
  )
70
71
 
72
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
73
+ #{self}.security_references
74
+
75
+ # Print the AUTHOR(S) string for this module.
71
76
  #{self}.authors
72
77
  "
78
+ constants.sort
73
79
  end
74
80
  end
75
81
  end
@@ -62,13 +62,19 @@ module PWN
62
62
 
63
63
  public_class_method def self.help
64
64
  puts "USAGE:
65
- sast_arr = #{self}.scan(
66
- dir_path: 'optional path to dir defaults to .',
67
- git_repo_root_uri: 'optional http uri of git repo scanned'
65
+ # Run scan and return its result
66
+ #{self}.scan(
67
+ dir_path: 'optional - optional path to dir defaults to .',
68
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
68
69
  )
69
70
 
71
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
72
+ #{self}.security_references
73
+
74
+ # Print the AUTHOR(S) string for this module.
70
75
  #{self}.authors
71
76
  "
77
+ constants.sort
72
78
  end
73
79
  end
74
80
  end
@@ -64,13 +64,19 @@ module PWN
64
64
 
65
65
  public_class_method def self.help
66
66
  puts "USAGE:
67
- sast_arr = #{self}.scan(
68
- dir_path: 'optional path to dir defaults to .',
69
- git_repo_root_uri: 'optional http uri of git repo scanned'
67
+ # Run scan and return its result
68
+ #{self}.scan(
69
+ dir_path: 'optional - optional path to dir defaults to .',
70
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
70
71
  )
71
72
 
73
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
74
+ #{self}.security_references
75
+
76
+ # Print the AUTHOR(S) string for this module.
72
77
  #{self}.authors
73
78
  "
79
+ constants.sort
74
80
  end
75
81
  end
76
82
  end
@@ -69,13 +69,19 @@ module PWN
69
69
 
70
70
  public_class_method def self.help
71
71
  puts "USAGE:
72
- sast_arr = #{self}.scan(
73
- :dir_path => 'optional path to dir defaults to .',
74
- :git_repo_root_uri => 'optional http uri of git repo scanned'
72
+ # Run scan and return its result
73
+ #{self}.scan(
74
+ dir_path: 'optional - optional path to dir defaults to .',
75
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
75
76
  )
76
77
 
78
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
79
+ #{self}.security_references
80
+
81
+ # Print the AUTHOR(S) string for this module.
77
82
  #{self}.authors
78
83
  "
84
+ constants.sort
79
85
  end
80
86
  end
81
87
  end
@@ -70,13 +70,19 @@ module PWN
70
70
 
71
71
  public_class_method def self.help
72
72
  puts "USAGE:
73
- sast_arr = #{self}.scan(
74
- dir_path: 'optional path to dir defaults to .',
75
- git_repo_root_uri: 'optional http uri of git repo scanned'
73
+ # Run scan and return its result
74
+ #{self}.scan(
75
+ dir_path: 'optional - optional path to dir defaults to .',
76
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
76
77
  )
77
78
 
79
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
80
+ #{self}.security_references
81
+
82
+ # Print the AUTHOR(S) string for this module.
78
83
  #{self}.authors
79
84
  "
85
+ constants.sort
80
86
  end
81
87
  end
82
88
  end
@@ -62,13 +62,19 @@ module PWN
62
62
 
63
63
  public_class_method def self.help
64
64
  puts "USAGE:
65
- sast_arr = #{self}.scan(
66
- dir_path: 'optional path to dir defaults to .',
67
- git_repo_root_uri: 'optional http uri of git repo scanned'
65
+ # Run scan and return its result
66
+ #{self}.scan(
67
+ dir_path: 'optional - optional path to dir defaults to .',
68
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
68
69
  )
69
70
 
71
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
72
+ #{self}.security_references
73
+
74
+ # Print the AUTHOR(S) string for this module.
70
75
  #{self}.authors
71
76
  "
77
+ constants.sort
72
78
  end
73
79
  end
74
80
  end
data/lib/pwn/sast/sql.rb CHANGED
@@ -72,13 +72,19 @@ module PWN
72
72
 
73
73
  public_class_method def self.help
74
74
  puts "USAGE:
75
- sast_arr = #{self}.scan(
76
- dir_path: 'optional path to dir defaults to .',
77
- git_repo_root_uri: 'optional http uri of git repo scanned'
75
+ # Run scan and return its result
76
+ #{self}.scan(
77
+ dir_path: 'optional - optional path to dir defaults to .',
78
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
78
79
  )
79
80
 
81
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
82
+ #{self}.security_references
83
+
84
+ # Print the AUTHOR(S) string for this module.
80
85
  #{self}.authors
81
86
  "
87
+ constants.sort
82
88
  end
83
89
  end
84
90
  end
data/lib/pwn/sast/ssl.rb CHANGED
@@ -66,13 +66,19 @@ module PWN
66
66
 
67
67
  public_class_method def self.help
68
68
  puts "USAGE:
69
- sast_arr = #{self}.scan(
70
- dir_path: 'optional path to dir defaults to .',
71
- git_repo_root_uri: 'optional http uri of git repo scanned'
69
+ # Run scan and return its result
70
+ #{self}.scan(
71
+ dir_path: 'optional - optional path to dir defaults to .',
72
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
72
73
  )
73
74
 
75
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
76
+ #{self}.security_references
77
+
78
+ # Print the AUTHOR(S) string for this module.
74
79
  #{self}.authors
75
80
  "
81
+ constants.sort
76
82
  end
77
83
  end
78
84
  end
data/lib/pwn/sast/sudo.rb CHANGED
@@ -62,13 +62,19 @@ module PWN
62
62
 
63
63
  public_class_method def self.help
64
64
  puts "USAGE:
65
- sast_arr = #{self}.scan(
66
- dir_path: 'optional path to dir defaults to .',
67
- git_repo_root_uri: 'optional http uri of git repo scanned'
65
+ # Run scan and return its result
66
+ #{self}.scan(
67
+ dir_path: 'optional - optional path to dir defaults to .',
68
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
68
69
  )
69
70
 
71
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
72
+ #{self}.security_references
73
+
74
+ # Print the AUTHOR(S) string for this module.
70
75
  #{self}.authors
71
76
  "
77
+ constants.sort
72
78
  end
73
79
  end
74
80
  end
@@ -76,13 +76,19 @@ module PWN
76
76
 
77
77
  public_class_method def self.help
78
78
  puts "USAGE:
79
- sast_arr = #{self}.scan(
80
- dir_path: 'optional path to dir defaults to .',
81
- git_repo_root_uri: 'optional http uri of git repo scanned'
79
+ # Run scan and return its result
80
+ #{self}.scan(
81
+ dir_path: 'optional - optional path to dir defaults to .',
82
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
82
83
  )
83
84
 
85
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
86
+ #{self}.security_references
87
+
88
+ # Print the AUTHOR(S) string for this module.
84
89
  #{self}.authors
85
90
  "
91
+ constants.sort
86
92
  end
87
93
  end
88
94
  end
@@ -169,17 +169,21 @@ module PWN
169
169
 
170
170
  public_class_method def self.help
171
171
  puts "USAGE:
172
- sast_arr = #{self}.execute(
173
- test_case_filter: 'required grep command to filter results',
174
- security_references: 'required Hash with keys :sast_module, :section, :nist_800_53_uri, :cwe_id, :cwe_uri',
175
- dir_path: 'optional path to dir defaults to .',
176
- include_extensions: 'optional array of file extensions to search for in scan (Defaults to all file types / i.e. [])',
177
- exclude_extensions: 'optional array of file extensions to exclude from scan (Defaults to [.bin, .dat, .JS-BEAUTIFIED, .o, .test, .png, .jpg, .jpeg, .gif, .svg, .ico, .so, .spec, .zip, .tar, .gz, .tgz, .7z, .mp3, .mp4, .mov, .avi, .wmv, .flv, .mkv])',
178
- git_repo_root_uri: 'optional http uri of git repo scanned'
172
+ # Run execute and return its result
173
+ #{self}.execute(
174
+ test_case_filter: 'required - grep command to filter results',
175
+ security_references: 'required - Hash with keys :sast_module, :section, :nist_800_53_uri, :cwe_id, :cwe_uri',
176
+ dir_path: 'optional - path to dir defaults to .',
177
+ include_extensions: 'optional - array of file extensions to search for in scan (Defaults to all file types / i.e. [])',
178
+ exclude_extensions: 'optional - array of file extensions to exclude from scan (Defaults to [.bin, .dat, .JS-BEAUTIFIED, .o, .test, .png, .jpg, .jpeg, .gif, .svg, .ico, .so, .spec, .zip, .tar, .gz, .tgz, .7z, .mp3, .mp4, .mov, .avi, .wmv, .flv, .mkv])',
179
+ git_repo_root_uri: 'optional - http uri of git repo scanned',
180
+ exclude_extentions: 'optional - exclude extentions value consumed by #execute'
179
181
  )
180
182
 
183
+ # Print the AUTHOR(S) string for this module.
181
184
  #{self}.authors
182
185
  "
186
+ constants.sort
183
187
  end
184
188
  end
185
189
  end
@@ -65,13 +65,19 @@ module PWN
65
65
 
66
66
  public_class_method def self.help
67
67
  puts "USAGE:
68
- sast_arr = #{self}.scan(
69
- dir_path: 'optional path to dir defaults to .',
70
- git_repo_root_uri: 'optional http uri of git repo scanned'
68
+ # Run scan and return its result
69
+ #{self}.scan(
70
+ dir_path: 'optional - optional path to dir defaults to .',
71
+ git_repo_root_uri: 'optional - optional http uri of git repo scanned'
71
72
  )
72
73
 
74
+ # Used primarily to map NIST 800-53 Revision 4 Security Controls
75
+ #{self}.security_references
76
+
77
+ # Print the AUTHOR(S) string for this module.
73
78
  #{self}.authors
74
79
  "
80
+ constants.sort
75
81
  end
76
82
  end
77
83
  end