pwn 0.5.708 → 0.5.710

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