Class: Ronin::Vulns::CLI::Commands::Lfi Private

Inherits:
WebVulnCommand show all
Defined in:
lib/ronin/vulns/cli/commands/lfi.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Scans URL(s) for Local File Inclusion (LFI) vulnerabilities

Usage

ronin-vulns lfi [options] {URL ... | --input FILE}

Options

    --first                      Only find the first vulnerability for each URL
-A, --all                        Find all vulnerabilities for each URL
-H, --header "Name: value"       Sets an additional header
-C, --cookie COOKIE              Sets the raw Cookie header
-c, --cookie-param NAME=VALUE    Sets an additional cookie param
-R, --referer URL                Sets the Referer header
-F, --form-param NAME=VALUE      Sets an additional form param
    --test-query-param NAME      Tests the URL query param name
    --test-all-query-params      Test all URL query param names
    --test-header-name NAME      Tests the HTTP Header name
    --test-cookie-param NAME     Tests the HTTP Cookie name
    --test-all-cookie-params     Test all Cookie param names
    --test-form-param NAME       Tests the form param name
-i, --input FILE                 Reads URLs from the list file
-O, --os unix|windows            Sets the OS to test for
-D, --depth COUNT                Sets the directory depth to escape up
-B null_byte|double_escape|base64|rot13|zlib,
    --filter-bypass              Sets the filter bypass strategy to use
-h, --help                       Print help information

Arguments

[URL ...]                        The URL(s) to scan

Constant Summary

Constants included from Logging

Logging::VULN_TYPES

Instance Attribute Summary

Attributes inherited from WebVulnCommand

#scan_kwargs, #scan_mode

Instance Method Summary collapse

Methods inherited from WebVulnCommand

#cookie, #form_data, #headers, #initialize, #process_url, #referer, #referer=, #run, #test_cookie_params, #test_cookie_params=, #test_form_params, #test_header_names, #test_query_params, #test_query_params=

Methods included from Logging

#log_vuln, #vuln_type

Constructor Details

This class inherits a constructor from Ronin::Vulns::CLI::WebVulnCommand

Instance Method Details

#scan_url(url) {|vuln| ... } ⇒ Object

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.

Scans a URL for LFI vulnerabilities.

Parameters:

  • url (String)

    The URL to scan.

Yields:

  • (vuln)

    The given block will be passed each discovered LFI vulnerability.

Yield Parameters:

  • vuln (Vulns::LFI)

    A LFI vulnerability discovered on the URL.



112
113
114
# File 'lib/ronin/vulns/cli/commands/lfi.rb', line 112

def scan_url(url,&block)
  Vulns::LFI.scan(url,**scan_kwargs,&block)
end

#test_url(url, &block) ⇒ Vulns::LFI?

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.

Tests a URL for LFI vulnerabilities.

Parameters:

  • url (String)

    The URL to test.

Returns:

  • (Vulns::LFI, nil)

    The first LFI vulnerability discovered on the URL.



125
126
127
# File 'lib/ronin/vulns/cli/commands/lfi.rb', line 125

def test_url(url,&block)
  Vulns::LFI.test(url,**scan_kwargs)
end