pwn 0.5.503 → 0.5.504

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fd561ae532d36fea188dbd8a3344d5803912e45f20b100c6d2783441e52c9c7e
4
- data.tar.gz: dec66439bcef3c6d8f05b2b655385923477c90060e3ef2d120858075b4b9aae1
3
+ metadata.gz: 62c1bc05c91ca9fccd91e490059fdd2ca01fb402d92858f08bacae5123f7d874
4
+ data.tar.gz: 0636fbce91309aac818e5b805390cafebcf3538d92af18164632c320ca21cfa1
5
5
  SHA512:
6
- metadata.gz: e24cb600887dba7365f9947c88689fb3d416517594a51deb440fba7fc13c4a5b59352ff99eab10941a70f0114b25268ae45e0aba176eb8b8d14d4ecec0f61003
7
- data.tar.gz: 322e6ed5eefa780c44f5a0f459043d093cbd5d4e6915c42d1039ed6bc984f48fb2dce01894f2974164ba0fa5bb7e2c817b93cce2653d87cd19f187b64ba9a8d7
6
+ metadata.gz: 47556a1d0032c65354d9536a4ace20309d2f958a3d832cfa29cedda089d07345b0b77dbf08c3bf5b1cbb4f67a75499b595f98be4cadd8cab00be774df8e7dee9
7
+ data.tar.gz: 1b7d7de1768368b94a1aa601e53e16bf59a2743b16b7070fbda38ce88ba1c0d41b66d8de1a2b926b647838aea988dbdb2423759acb91250ec1349299c949d4b7
data/.rubocop.yml CHANGED
@@ -18,7 +18,7 @@ Metrics/CyclomaticComplexity:
18
18
  Metrics/MethodLength:
19
19
  Max: 565
20
20
  Metrics/ModuleLength:
21
- Max: 1475
21
+ Max: 1549
22
22
  Metrics/PerceivedComplexity:
23
23
  Max: 157
24
24
  Style/HashEachMethods:
data/Gemfile CHANGED
@@ -82,7 +82,7 @@ gem 'rspec', '3.13.2'
82
82
  gem 'rtesseract', '3.1.4'
83
83
  gem 'rubocop', '1.81.7'
84
84
  gem 'rubocop-rake', '0.7.1'
85
- gem 'rubocop-rspec', '3.7.0'
85
+ gem 'rubocop-rspec', '3.8.0'
86
86
  gem 'ruby-audio', '1.6.1'
87
87
  gem 'ruby-nmap', '1.0.3'
88
88
  gem 'ruby-saml', '1.18.1'
data/README.md CHANGED
@@ -37,7 +37,7 @@ $ cd /opt/pwn
37
37
  $ ./install.sh
38
38
  $ ./install.sh ruby-gem
39
39
  $ pwn
40
- pwn[v0.5.503]:001 >>> PWN.help
40
+ pwn[v0.5.504]:001 >>> PWN.help
41
41
  ```
42
42
 
43
43
  [![Installing the pwn Security Automation Framework](https://raw.githubusercontent.com/0dayInc/pwn/master/documentation/pwn_install.png)](https://youtu.be/G7iLUY4FzsI)
@@ -52,7 +52,7 @@ $ rvm use ruby-3.4.4@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.5.503]:001 >>> PWN.help
55
+ pwn[v0.5.504]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
  If you're using a multi-user install of RVM do:
@@ -62,7 +62,7 @@ $ rvm use ruby-3.4.4@pwn
62
62
  $ rvmsudo gem uninstall --all --executables pwn
63
63
  $ rvmsudo gem install --verbose pwn
64
64
  $ pwn
65
- pwn[v0.5.503]:001 >>> PWN.help
65
+ pwn[v0.5.504]:001 >>> PWN.help
66
66
  ```
67
67
 
68
68
  PWN periodically upgrades to the latest version of Ruby which is reflected in `/opt/pwn/.ruby-version`. The easiest way to upgrade to the latest version of Ruby from a previous PWN installation is to run the following script:
@@ -63,9 +63,9 @@ module PWN
63
63
  if PWN::Env[:ai][:introspection]
64
64
  introspection_thread = Thread.new do
65
65
  system_role_content = '
66
- Your expertise lies in dissecting HTTP request/response pairs to identify high-impact vulnerabilities, including but not limited to XSS (reflected, stored, DOM-based), CSRF, SSRF, IDOR, open redirects, CORS misconfigurations, authentication bypasses, SQLi/NoSQLi, command/code injection, business logic flaws, and API abuse. You prioritize zero-days and novel chains, always focusing on exploitability, impact (e.g., account takeover, data exfiltration, RCE), and reproducibility.
66
+ Your expertise lies in dissecting HTTP request/response pairs and WebSocket messages to identify high-impact vulnerabilities, including but not limited to XSS (reflected, stored, DOM-based), CSRF, SSRF, IDOR, open redirects, CORS misconfigurations, authentication bypasses, SQLi/NoSQLi, command/code injection, business logic flaws, race conditions, and API abuse. You prioritize zero-days and novel chains, always focusing on exploitability, impact (e.g., account takeover, data exfiltration, RCE), and reproducibility.
67
67
 
68
- When analyzing HTTP request/response pairs:
68
+ During analysis:
69
69
 
70
70
  1. **Parse and Contextualize Traffic**:
71
71
  - Break down every element: HTTP method, URI (path, query parameters), headers (e.g., Host, User-Agent, Cookies, Authorization, Referer, Origin, Content-Type), request body (e.g., form data, JSON payloads), response status code, response headers, and response body (HTML, JSON, XML, etc.).
@@ -222,10 +222,39 @@ module PWN
222
222
  entry: entry
223
223
  )
224
224
  end
225
+
226
+ websocket_history = get_websocket_history(burp_obj: burp_obj)
227
+ websocket_history.each do |entry|
228
+ next unless entry.key?(:comment) && entry[:comment].to_s.strip.empty?
229
+
230
+ web_socket_id = entry[:web_socket_id]
231
+ direction = entry[:direction]
232
+ payload = entry[:payload]
233
+ next if web_socket_id.nil? || direction.nil? || payload.nil?
234
+
235
+ payload = Base64.strict_decode64(payload)
236
+ websocket_req = PWN::Plugins::Char.force_utf8("WebSocket ID: #{web_socket_id}\nDirection: #{direction}\nPayload:\n#{payload}")
237
+ ai_analysis = PWN::AI::Introspection.reflect_on(
238
+ system_role_content: system_role_content,
239
+ request: websocket_req,
240
+ suppress_pii_warning: true
241
+ )
242
+
243
+ next if ai_analysis.nil? || ai_analysis.strip.empty?
244
+
245
+ entry[:comment] = ai_analysis
246
+ entry[:highlight] = get_highlight_color.call(ai_analysis: ai_analysis)
247
+
248
+ update_websocket_history(
249
+ burp_obj: burp_obj,
250
+ entry: entry
251
+ )
252
+ end
253
+
225
254
  sleep 3
226
255
  end
227
256
  rescue Errno::ECONNREFUSED
228
- puts 'Thread Terminating...'
257
+ puts 'BurpSuite AI Introspection Thread >>> Terminating API Calls...'
229
258
  rescue StandardError => e
230
259
  puts "BurpSuite AI Introspection Thread Error: #{e}"
231
260
  puts e.backtrace
@@ -586,7 +615,7 @@ module PWN
586
615
  keyword = opts[:keyword]
587
616
  return_as = opts[:return_as] ||= :base64
588
617
 
589
- rest_call = "http://#{mitm_rest_api}/proxyhistory"
618
+ rest_call = "http://#{mitm_rest_api}/proxy/history"
590
619
 
591
620
  sitemap = rest_browser.get(
592
621
  rest_call,
@@ -780,7 +809,78 @@ module PWN
780
809
  put_body = entry.to_json
781
810
 
782
811
  proxy_history_resp = rest_browser.put(
783
- "http://#{mitm_rest_api}/proxyhistory/#{id}",
812
+ "http://#{mitm_rest_api}/proxy/history/#{id}",
813
+ put_body,
814
+ content_type: 'application/json; charset=UTF8'
815
+ )
816
+
817
+ JSON.parse(proxy_history_resp, symbolize_names: true)
818
+ rescue StandardError => e
819
+ raise e
820
+ end
821
+
822
+ # Supported Method Parameters::
823
+ # json_web_socket_history = PWN::Plugins::BurpSuite.get_websocket_history(
824
+ # burp_obj: 'required - burp_obj returned by #start method',
825
+ # keyword: 'optional - keyword to filter websocket history entries (default: nil)'
826
+ # )
827
+
828
+ public_class_method def self.get_websocket_history(opts = {})
829
+ burp_obj = opts[:burp_obj]
830
+ rest_browser = burp_obj[:rest_browser]
831
+ mitm_rest_api = burp_obj[:mitm_rest_api]
832
+ keyword = opts[:keyword]
833
+
834
+ rest_call = "http://#{mitm_rest_api}/websocket/history"
835
+
836
+ sitemap = rest_browser.get(
837
+ rest_call,
838
+ content_type: 'application/json; charset=UTF8'
839
+ )
840
+
841
+ sitemap_arr = JSON.parse(sitemap, symbolize_names: true)
842
+
843
+ if keyword
844
+ sitemap_arr = sitemap_arr.select do |site|
845
+ decoded_request = Base64.strict_decode64(site[:request])
846
+ decoded_request.include?(keyword)
847
+ end
848
+ end
849
+
850
+ sitemap_arr.uniq
851
+ rescue StandardError => e
852
+ stop(burp_obj: burp_obj) unless burp_obj.nil?
853
+ raise e
854
+ end
855
+
856
+ # Supported Method Parameters::
857
+ # json_proxy_history = PWN::Plugins::BurpSuite.update_proxy_history(
858
+ # burp_obj: 'required - burp_obj returned by #start method',
859
+ # entry: 'required - hash of the websocket history entry to update'
860
+ # )
861
+
862
+ public_class_method def self.update_websocket_history(opts = {})
863
+ burp_obj = opts[:burp_obj]
864
+ raise 'ERROR: burp_obj parameter is required' unless burp_obj.is_a?(Hash)
865
+
866
+ entry = opts[:entry]
867
+ raise 'ERROR: entry parameter is required and must be a hash' unless entry.is_a?(Hash)
868
+
869
+ id = entry[:id]
870
+ raise 'ERROR: id key value pair is required within entry hash' if id.nil?
871
+
872
+ rest_browser = burp_obj[:rest_browser]
873
+ mitm_rest_api = burp_obj[:mitm_rest_api]
874
+
875
+ # Only allow updating of comment and highlight fields
876
+ entry.delete(:web_socket_id)
877
+ entry.delete(:direction)
878
+ entry.delete(:payload)
879
+
880
+ put_body = entry.to_json
881
+
882
+ proxy_history_resp = rest_browser.put(
883
+ "http://#{mitm_rest_api}/websocket/history/#{id}",
784
884
  put_body,
785
885
  content_type: 'application/json; charset=UTF8'
786
886
  )
@@ -1981,6 +2081,16 @@ module PWN
1981
2081
  entry: 'required - proxy history entry hash to update'
1982
2082
  )
1983
2083
 
2084
+ json_proxy_history = #{self}.get_websocket_history(
2085
+ burp_obj: 'required - burp_obj returned by #start method',
2086
+ keyword: 'optional - keyword to filter websocket history results (default: nil)'
2087
+ )
2088
+
2089
+ json_proxy_history = #{self}.update_websocket_history(
2090
+ burp_obj: 'required - burp_obj returned by #start method',
2091
+ entry: 'required - websocket history entry hash to update'
2092
+ )
2093
+
1984
2094
  json_sitemap = #{self}.get_sitemap(
1985
2095
  burp_obj: 'required - burp_obj returned by #start method',
1986
2096
  keyword: 'optional - keyword to filter sitemap results (default: nil)',
data/lib/pwn/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PWN
4
- VERSION = '0.5.503'
4
+ VERSION = '0.5.504'
5
5
  end
@@ -1,15 +1,15 @@
1
1
  {"messages":[{"role":"user","content":"PWN.help Usage"},{"role":"assistant","content":"`PWN.help`: "}]}
2
2
  {"messages":[{"role":"user","content":"PWN::AI.help Usage"},{"role":"assistant","content":"`PWN::AI.help`: "}]}
3
3
  {"messages":[{"role":"user","content":"PWN::AI::Grok.authors Usage"},{"role":"assistant","content":"`PWN::AI::Grok.authors`: Author(s)\n\n0day Inc. <support@0dayinc.com>\n"}]}
4
- {"messages":[{"role":"user","content":"PWN::AI::Grok.chat Usage"},{"role":"assistant","content":"`PWN::AI::Grok.chat`: Supported Method Parameters\n\nresponse = PWN::AI::Grok.chat(\n\nrequest: 'required - message to ChatGPT'\nmodel: 'optional - model to use for text generation (defaults to PWN::Env[:ai][:grok][:model])',\ntemp: 'optional - creative response float (deafults to PWN::Env[:ai][:grok][:temp])',\nsystem_role_content: 'optional - context to set up the model behavior for conversation (Default: PWN::Env[:ai][:grok][:system_role_content])',\nresponse_history: 'optional - pass response back in to have a conversation',\nspeak_answer: 'optional speak answer using PWN::Plugins::Voice.text_to_speech (Default: nil)',\ntimeout: 'optional timeout in seconds (defaults to 300)',\nspinner: 'optional - display spinner (defaults to false)'\n\n)\n"}]}
4
+ {"messages":[{"role":"user","content":"PWN::AI::Grok.chat Usage"},{"role":"assistant","content":"`PWN::AI::Grok.chat`: Supported Method Parameters\n\nresponse = PWN::AI::Grok.chat(\n\nrequest: 'required - message to Grok'\nmodel: 'optional - model to use for text generation (defaults to PWN::Env[:ai][:grok][:model])',\ntemp: 'optional - creative response float (deafults to PWN::Env[:ai][:grok][:temp])',\nsystem_role_content: 'optional - context to set up the model behavior for conversation (Default: PWN::Env[:ai][:grok][:system_role_content])',\nresponse_history: 'optional - pass response back in to have a conversation',\nspeak_answer: 'optional speak answer using PWN::Plugins::Voice.text_to_speech (Default: nil)',\ntimeout: 'optional timeout in seconds (defaults to 300)',\nspinner: 'optional - display spinner (defaults to false)'\n\n)\n"}]}
5
5
  {"messages":[{"role":"user","content":"PWN::AI::Grok.get_models Usage"},{"role":"assistant","content":"`PWN::AI::Grok.get_models`: Supported Method Parameters\n\nmodels = PWN::AI::Grok.get_models\n"}]}
6
6
  {"messages":[{"role":"user","content":"PWN::AI::Grok.grok_rest_call Usage"},{"role":"assistant","content":"`PWN::AI::Grok.grok_rest_call`: Supported Method Parameters\n\ngrok_ai_rest_call(\n\ntoken: 'required - grok_ai bearer token',\nhttp_method: 'optional HTTP method (defaults to GET)\nbase_uri: 'optional base grok api URI (defaults to https://api.x.ai/v1)',\nrest_call: 'required rest call to make per the schema',\nparams: 'optional params passed in the URI or HTTP Headers',\nhttp_body: 'optional HTTP body sent in HTTP methods that support it e.g. POST',\ntimeout: 'optional timeout in seconds (defaults to 180)',\nspinner: 'optional - display spinner (defaults to false)'\n\n)\n"}]}
7
7
  {"messages":[{"role":"user","content":"PWN::AI::Grok.help Usage"},{"role":"assistant","content":"`PWN::AI::Grok.help`: "}]}
8
8
  {"messages":[{"role":"user","content":"PWN::AI::Introspection.authors Usage"},{"role":"assistant","content":"`PWN::AI::Introspection.authors`: Author(s)\n\n0day Inc. <support@0dayinc.com>\n"}]}
9
9
  {"messages":[{"role":"user","content":"PWN::AI::Introspection.help Usage"},{"role":"assistant","content":"`PWN::AI::Introspection.help`: "}]}
10
- {"messages":[{"role":"user","content":"PWN::AI::Introspection.reflect_on Usage"},{"role":"assistant","content":"`PWN::AI::Introspection.reflect_on`: Supported Method Parameters\n\nresponse = PWN::AI::Introspection.reflect_on(\n\nrequest: 'required - String - What you want the AI to reflect on',\nsystem_role_content: 'optional - context to set up the model behavior for reflection',\nspinner: 'optional - Boolean - Display spinner during operation (default: false)'\n\n)\n"}]}
10
+ {"messages":[{"role":"user","content":"PWN::AI::Introspection.reflect_on Usage"},{"role":"assistant","content":"`PWN::AI::Introspection.reflect_on`: Supported Method Parameters\n\nresponse = PWN::AI::Introspection.reflect_on(\n\nrequest: 'required - String - What you want the AI to reflect on',\nsystem_role_content: 'optional - context to set up the model behavior for reflection',\nspinner: 'optional - Boolean - Display spinner during operation (default: false)',\nsuppress_pii_warning: 'optional - Boolean - Suppress PII Warnings (default: false)'\n\n)\n"}]}
11
11
  {"messages":[{"role":"user","content":"PWN::AI::Ollama.authors Usage"},{"role":"assistant","content":"`PWN::AI::Ollama.authors`: Author(s)\n\n0day Inc. <support@0dayinc.com>\n"}]}
12
- {"messages":[{"role":"user","content":"PWN::AI::Ollama.chat Usage"},{"role":"assistant","content":"`PWN::AI::Ollama.chat`: Supported Method Parameters\n\nresponse = PWN::AI::Ollama.chat(\n\nrequest: 'required - message to ChatGPT'\nmodel: 'optional - model to use for text generation (defaults to PWN::Env[:ai][:ollama][:model])',\ntemp: 'optional - creative response float (deafults to PWN::Env[:ai][:ollama][:temp])',\nsystem_role_content: 'optional - context to set up the model behavior for conversation (Default: PWN::Env[:ai][:ollama][:system_role_content])',\nresponse_history: 'optional - pass response back in to have a conversation',\nspeak_answer: 'optional speak answer using PWN::Plugins::Voice.text_to_speech (Default: nil)',\ntimeout: 'optional timeout in seconds (defaults to 300)',\nspinner: 'optional - display spinner (defaults to false)'\n\n)\n"}]}
12
+ {"messages":[{"role":"user","content":"PWN::AI::Ollama.chat Usage"},{"role":"assistant","content":"`PWN::AI::Ollama.chat`: Supported Method Parameters\n\nresponse = PWN::AI::Ollama.chat(\n\nrequest: 'required - message to Ollama'\nmodel: 'optional - model to use for text generation (defaults to PWN::Env[:ai][:ollama][:model])',\ntemp: 'optional - creative response float (deafults to PWN::Env[:ai][:ollama][:temp])',\nsystem_role_content: 'optional - context to set up the model behavior for conversation (Default: PWN::Env[:ai][:ollama][:system_role_content])',\nresponse_history: 'optional - pass response back in to have a conversation',\nspeak_answer: 'optional speak answer using PWN::Plugins::Voice.text_to_speech (Default: nil)',\ntimeout: 'optional timeout in seconds (defaults to 300)',\nspinner: 'optional - display spinner (defaults to false)'\n\n)\n"}]}
13
13
  {"messages":[{"role":"user","content":"PWN::AI::Ollama.get_models Usage"},{"role":"assistant","content":"`PWN::AI::Ollama.get_models`: Supported Method Parameters\n\nresponse = PWN::AI::Ollama.get_models\n"}]}
14
14
  {"messages":[{"role":"user","content":"PWN::AI::Ollama.help Usage"},{"role":"assistant","content":"`PWN::AI::Ollama.help`: "}]}
15
15
  {"messages":[{"role":"user","content":"PWN::AI::Ollama.ollama_rest_call Usage"},{"role":"assistant","content":"`PWN::AI::Ollama.ollama_rest_call`: Supported Method Parameters\n\nollama_rest_call(\n\nbase_uri: 'required - base URI for the Ollama API',\ntoken: 'required - ollama bearer token',\nhttp_method: 'optional HTTP method (defaults to GET)\nrest_call: 'required rest call to make per the schema',\nparams: 'optional params passed in the URI or HTTP Headers',\nhttp_body: 'optional HTTP body sent in HTTP methods that support it e.g. POST',\ntimeout: 'optional timeout in seconds (defaults to 300)',\nspinner: 'optional - display spinner (defaults to false)'\n\n)\n"}]}
@@ -562,6 +562,7 @@
562
562
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.format_uri_from_sitemap_resp Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.format_uri_from_sitemap_resp`: Supported Method Parameters\n\nuri = PWN::Plugins::BurpSuite.format_uri_from_sitemap_resp(\n\nscheme: 'required - scheme of the URI (http|https)',\nhost: 'required - host of the URI',\nport: 'optional - port of the URI',\npath: 'optional - path of the URI',\nquery: 'optional - query string of the URI'\n\n)\n"}]}
563
563
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.generate_scan_report Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.generate_scan_report`: Supported Method Parameters\n\nPWN::Plugins::BurpSuite.generate_scan_report(\n\nburp_obj: 'required - burp_obj returned by #start method',\ntarget_url: 'required - target_url passed to #active_scan method',\noutput_dir: 'required - directory to save the report',\nreport_type: required - <:html|:xml>'\n\n)\n"}]}
564
564
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.get_all_repeater_tabs Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.get_all_repeater_tabs`: Supported Method Parameters\n\nrepeater_tabs = PWN::Plugins::BurpSuite.get_all_repeater_tabs(\n\nburp_obj: 'required - burp_obj returned by #start method'\n\n)\n"}]}
565
+ {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.get_proxy_history Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.get_proxy_history`: Supported Method Parameters\n\njson_proxy_history = PWN::Plugins::BurpSuite.get_proxy_history(\n\nburp_obj: 'required - burp_obj returned by #start method',\nkeyword: 'optional - keyword to filter proxy history entries (default: nil)',\nreturn_as: 'optional - :base64 or :har (defaults to :base64)'\n\n)\n"}]}
565
566
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.get_proxy_listeners Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.get_proxy_listeners`: Supported Method Parameters\n\njson_proxy_listeners = PWN::Plugins::BurpSuite.get_proxy_listeners(\n\nburp_obj: 'required - burp_obj returned by #start method'\n\n)\n"}]}
566
567
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.get_repeater_tab Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.get_repeater_tab`: Supported Method Parameters\n\nrepeater_tab = PWN::Plugins::BurpSuite.get_repeater_tab(\n\nburp_obj: 'required - burp_obj returned by #start method',\nid: 'required - id of the repeater tab to get'\n\n)\n"}]}
567
568
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.get_scan_issues Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.get_scan_issues`: Supported Method Parameters\n\njson_scan_issues = PWN::Plugins::BurpSuite.get_scan_issues(\n\nburp_obj: 'required - burp_obj returned by #start method'\n\n)\n"}]}
@@ -569,13 +570,16 @@
569
570
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.help Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.help`: "}]}
570
571
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.import_openapi_to_sitemap Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.import_openapi_to_sitemap`: "}]}
571
572
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.in_scope Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.in_scope`: Supported Method Parameters\n\nuri_in_scope = PWN::Plugins::BurpSuite.in_scope(\n\nburp_obj: 'required - burp_obj returned by #start method',\nuri: 'required - URI to determine if in scope'\n\n)\n"}]}
573
+ {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.init_introspection_thread Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.init_introspection_thread`: Supported Method Parameters\n\nburp_obj = PWN::Plugins::BurpSuite.init_introspection_thread(\n\nburp_obj: 'required - burp_obj returned by #start method',\nenumerable_array: 'required - array of items to process in the thread'\n\n)\n"}]}
572
574
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.send_repeater_request Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.send_repeater_request`: Supported Method Parameters\n\nrepeater_resp = PWN::Plugins::BurpSuite.send_repeater_request(\n\nburp_obj: 'required - burp_obj returned by #start method',\nid: 'required - id of the repeater tab to send'\n\n)\n"}]}
573
575
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.spider Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.spider`: Supported Method Parameters\n\njson_spider = PWN::Plugins::BurpSuite.spider(\n\nburp_obj: 'required - burp_obj returned by #start method',\ntarget_url: 'required - target url to add to crawl / spider'\n\n)\n"}]}
574
576
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.start Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.start`: Supported Method Parameters\n\nburp_obj1 = PWN::Plugins::BurpSuite.start(\n\nburp_jar_path: 'optional - path of burp suite pro jar file (defaults to /opt/burpsuite/burpsuite_pro.jar)',\nheadless: 'optional - run burp headless if set to true',\nbrowser_type: 'optional - defaults to :firefox. See PWN::Plugins::TransparentBrowser.help for a list of types',\nburp_ip: 'optional - IP address for the Burp proxy (defaults to 127.0.0.1)',\nburp_port: 'optional - port for the Burp proxy (defaults to a random unused port)',\npwn_burp_ip: 'optional - IP address for the PWN Burp API (defaults to 127.0.0.1)',\npwn_burp_port: 'optional - port for the PWN Burp API (defaults to a random unused port)'\n\n)\n"}]}
575
577
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.stop Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.stop`: Supported Method Parameters\n\nPWN::Plugins::BurpSuite.stop(\n\nburp_obj: 'required - burp_obj returned by #start method'\n\n)\n"}]}
576
578
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.update_burp_jar Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.update_burp_jar`: Supported Method Parameters\n\nPWN::Plugins::BurpSuite.update_burp_jar( )\n"}]}
579
+ {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.update_proxy_history Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.update_proxy_history`: Supported Method Parameters\n\njson_proxy_history = PWN::Plugins::BurpSuite.update_proxy_history(\n\nburp_obj: 'required - burp_obj returned by #start method',\nentry: 'required - hash of the proxy history entry to update'\n\n)\n"}]}
577
580
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.update_proxy_listener Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.update_proxy_listener`: Supported Method Parameters\n\njson_proxy_listener = PWN::Plugins::BurpSuite.update_proxy_listener(\n\nburp_obj: 'required - burp_obj returned by #start method',\nid: 'optional - ID of the proxy listener (defaults to 0)',\nbindAddress: 'optional - bind address for the proxy listener (defaults to value of existing listener)',\nport: 'optional - port for the proxy listener (defaults to value of existing listener)',\nenabled: 'optional - enable or disable the listener (defaults to value of existing listener)'\n\n)\n"}]}
578
581
  {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.update_repeater_tab Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.update_repeater_tab`: Supported Method Parameters\n\nrepeater_obj = PWN::Plugins::BurpSuite.update_repeater_tab(\n\nburp_obj: 'required - burp_obj returned by #start method',\nid: 'required - id of the repeater tab to update',\nname: 'required - name of the repeater tab (max 30 characters)',\nrequest: 'required - base64 encoded HTTP request string'\n\n)\n"}]}
582
+ {"messages":[{"role":"user","content":"PWN::Plugins::BurpSuite.update_sitemap Usage"},{"role":"assistant","content":"`PWN::Plugins::BurpSuite.update_sitemap`: Supported Method Parameters\n\njson_sitemap = PWN::Plugins::BurpSuite.update_sitemap(\n\nburp_obj: 'required - burp_obj returned by #start method',\nentry: 'required - hash of the sitemap entry to update'\n\n)\n"}]}
579
583
  {"messages":[{"role":"user","content":"PWN::Plugins::BusPirate.authors Usage"},{"role":"assistant","content":"`PWN::Plugins::BusPirate.authors`: Author(s)\n\n0day Inc. <support@0dayinc.com>\n"}]}
580
584
  {"messages":[{"role":"user","content":"PWN::Plugins::BusPirate.connect Usage"},{"role":"assistant","content":"`PWN::Plugins::BusPirate.connect`: Supported Method Parameters\n\nbus_pirate_obj = PWN::Plugins::BusPirate.connect(\n\nblock_dev: 'optional serial block device path (defaults to /dev/ttyUSB0)',\nbaud: 'optional (defaults to 9600)',\ndata_bits: 'optional (defaults to 8)',\nstop_bits: 'optional (defaults to 1)',\nparity: 'optional (defaults to SerialPort::NONE)',\nflow_control: 'optional (defaults to SerialPort::HARD) SerialPort::NONE|SerialPort::SOFT|SerialPort::HARD'\n\n)\n"}]}
581
585
  {"messages":[{"role":"user","content":"PWN::Plugins::BusPirate.connect_via_screen Usage"},{"role":"assistant","content":"`PWN::Plugins::BusPirate.connect_via_screen`: Supported Method Parameters\n\nPWN::Plugins::BusPirate.connect_via_screen(\n\nblock_dev: 'optional - serial block device path (defaults to /dev/ttyUSB0)'\n\n)\n"}]}
@@ -594,6 +598,7 @@
594
598
  {"messages":[{"role":"user","content":"PWN::Plugins::Char.cyrillic_supplement Usage"},{"role":"assistant","content":"`PWN::Plugins::Char.cyrillic_supplement`: Supported Method Parameters\n\nPWN::Plugins::Char.cyrillic_supplement\n"}]}
595
599
  {"messages":[{"role":"user","content":"PWN::Plugins::Char.diacritical_marks Usage"},{"role":"assistant","content":"`PWN::Plugins::Char.diacritical_marks`: Supported Method Parameters\n\nPWN::Plugins::Char.diacritical_marks\n"}]}
596
600
  {"messages":[{"role":"user","content":"PWN::Plugins::Char.dingbats Usage"},{"role":"assistant","content":"`PWN::Plugins::Char.dingbats`: Supported Method Parameters\n\nPWN::Plugins::Char.dingbats\n"}]}
601
+ {"messages":[{"role":"user","content":"PWN::Plugins::Char.force_utf8 Usage"},{"role":"assistant","content":"`PWN::Plugins::Char.force_utf8`: Supported Method Parameters\n\nPWN::Plugins::Char.force_utf8(\n\nobj: 'required - object to force to UTF-8'\n)\n"}]}
597
602
  {"messages":[{"role":"user","content":"PWN::Plugins::Char.generate_by_range Usage"},{"role":"assistant","content":"`PWN::Plugins::Char.generate_by_range`: Supported Method Parameters\n\nPWN::Plugins::Char.generate_by_range(\n\nfrom: 'required - integer to start from',\nto: 'required - integer to end UTF-8 generation'\n\n)\n"}]}
598
603
  {"messages":[{"role":"user","content":"PWN::Plugins::Char.generate_encoded_files Usage"},{"role":"assistant","content":"`PWN::Plugins::Char.generate_encoded_files`: Supported Method Parameters\n\nPWN::Plugins::Char.generate_encoded_files(\n\nfrom: 'required - integer to start from',\nto: 'required - integer to end UTF-8 generation',\noutput_dir: 'required - folder to create files'\n\n)\n"}]}
599
604
  {"messages":[{"role":"user","content":"PWN::Plugins::Char.geometric_shapes Usage"},{"role":"assistant","content":"`PWN::Plugins::Char.geometric_shapes`: Supported Method Parameters\n\nPWN::Plugins::Char.geometric_shapes\n"}]}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pwn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.503
4
+ version: 0.5.504
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
@@ -995,14 +995,14 @@ dependencies:
995
995
  requirements:
996
996
  - - '='
997
997
  - !ruby/object:Gem::Version
998
- version: 3.7.0
998
+ version: 3.8.0
999
999
  type: :runtime
1000
1000
  prerelease: false
1001
1001
  version_requirements: !ruby/object:Gem::Requirement
1002
1002
  requirements:
1003
1003
  - - '='
1004
1004
  - !ruby/object:Gem::Version
1005
- version: 3.7.0
1005
+ version: 3.8.0
1006
1006
  - !ruby/object:Gem::Dependency
1007
1007
  name: ruby-audio
1008
1008
  requirement: !ruby/object:Gem::Requirement