Class: Ronin::Exploits::XSS
- Inherits:
-
ClientSideWebVuln
- Object
- Exploit
- Web
- WebVuln
- ClientSideWebVuln
- Ronin::Exploits::XSS
- Includes:
- Mixins::HTML
- Defined in:
- lib/ronin/exploits/xss.rb
Overview
Represents a Cross Site Scripting (XSS) exploit.
Example
require 'ronin/exploits/xss'
module Ronin
module Exploits
class MyExploit < XSS
register 'my_exploit'
base_path '/path/to/page.php'
query_param 'title'
end
end
end
Constant Summary
Constants included from Mixins::HTTP
Mixins::HTTP::HTTP_USER_AGENT_ALIASES
Instance Attribute Summary
Attributes included from Mixins::HasPayload
Class Method Summary collapse
-
.exploit_type ⇒ Symbol
private
Returns the type or kind of exploit.
Instance Method Summary collapse
-
#initialize(payload: Payloads::Test::XSS.new, **kwargs) ⇒ XSS
constructor
Initializes the XSS exploit and defaults the Mixins::HasPayload#payload to a XSS test payload.
-
#vuln ⇒ Ronin::Vulns::ReflectedXSS
The XSS vulnerability to exploit.
Methods included from Mixins::HTML
#attr, #attr_list, #attr_name, #tag, #tag_name
Methods inherited from ClientSideWebVuln
Methods inherited from WebVuln
base_path, cookie, #cookie, cookie_param, form_data, #form_data, form_param, header_name, headers, #headers, query_param, referer, #referer, request_method, #test, #url, #web_vuln_kwargs
Methods included from Mixins::HasPayload
included, #perform_build, #perform_cleanup, #perform_launch, #perform_validate
Methods included from Mixins::HTTP
#http, #http_allowed_methods, #http_cookie, #http_copy, #http_delete, #http_get, #http_get_body, #http_get_cookies, #http_get_headers, #http_head, #http_headers, #http_lock, #http_mkcol, #http_move, #http_ok?, #http_options, #http_password, #http_patch, #http_post, #http_post_body, #http_post_headers, #http_powered_by_header, #http_propfind, #http_proppatch, #http_proxy, #http_put, #http_request, #http_response_body, #http_response_headers, #http_response_status, #http_server_header, #http_trace, #http_unlock, #http_user, #http_user_agent, included
Methods inherited from Exploit
#NotVulnerable, #Unknown, #Vulnerable, advisories, advisory, #build, #cleanup, disclosed?, disclosure_date, exploit, #exploit, #fail, #launch, #perform_build, #perform_cleanup, #perform_launch, #perform_test, #perform_validate, quality, register, release_date, released?, software, software_versions, #test, #validate
Constructor Details
#initialize(payload: Payloads::Test::XSS.new, **kwargs) ⇒ XSS
Initializes the XSS exploit and defaults the Mixins::HasPayload#payload to a XSS test payload.
74 75 76 |
# File 'lib/ronin/exploits/xss.rb', line 74 def initialize(payload: Payloads::Test::XSS.new, **kwargs) super(payload: payload, **kwargs) end |
Class Method Details
.exploit_type ⇒ Symbol
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
This is used internally to map an exploit class to a printable type.
Returns the type or kind of exploit.
88 89 90 |
# File 'lib/ronin/exploits/xss.rb', line 88 def self.exploit_type :xss end |
Instance Method Details
#vuln ⇒ Ronin::Vulns::ReflectedXSS
The XSS vulnerability to exploit.
97 98 99 |
# File 'lib/ronin/exploits/xss.rb', line 97 def vuln @vuln ||= Vulns::ReflectedXSS.new(url,**web_vuln_kwargs) end |