Class: Ronin::Exploits::RFI
- Includes:
- Mixins::HasPayload
- Defined in:
- lib/ronin/exploits/rfi.rb
Overview
Represents a Remote File Inclusion (RFI) exploit.
Example
require 'ronin/exploits/rfi'
module Ronin
module Exploits
class MyExploit < RFI
register 'my_exploit'
base_path '/path/to/page.php'
query_param 'template'
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
-
#launch ⇒ Object
Launches the RFI exploit with the payload.
-
#vuln ⇒ Ronin::Vulns::RFI
The RFI vulnerability to exploit.
Methods included from Mixins::HasPayload
included, #initialize, #perform_build, #perform_cleanup, #perform_launch, #perform_validate
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::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, #initialize, #perform_build, #perform_cleanup, #perform_launch, #perform_test, #perform_validate, quality, register, release_date, released?, software, software_versions, #test, #validate
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.
83 84 85 |
# File 'lib/ronin/exploits/rfi.rb', line 83 def self.exploit_type :rfi end |
Instance Method Details
#launch ⇒ Object
Launches the RFI exploit with the payload.
103 104 105 |
# File 'lib/ronin/exploits/rfi.rb', line 103 def launch vuln.exploit(@payload) end |
#vuln ⇒ Ronin::Vulns::RFI
The RFI vulnerability to exploit.
92 93 94 95 96 97 98 |
# File 'lib/ronin/exploits/rfi.rb', line 92 def vuln @vuln ||= Vulns::RFI.new( url, test_script_url: params[:test_script_url], filter_bypass: params[:filter_bypass], **web_vuln_kwargs ) end |