1280 lines
57 KiB
HTML
1280 lines
57 KiB
HTML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||
<head>
|
||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
|
||
|
||
<title>Class: WpscanOptions</title>
|
||
|
||
<link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
|
||
|
||
<script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
|
||
<script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
|
||
<script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
|
||
<script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
|
||
|
||
</head>
|
||
<body id="top" class="class">
|
||
|
||
<div id="metadata">
|
||
<div id="home-metadata">
|
||
<div id="home-section" class="section">
|
||
<h3 class="section-header">
|
||
<a href="./index.html">Home</a>
|
||
<a href="./index.html#classes">Classes</a>
|
||
<a href="./index.html#methods">Methods</a>
|
||
</h3>
|
||
</div>
|
||
</div>
|
||
|
||
<div id="file-metadata">
|
||
<div id="file-list-section" class="section">
|
||
<h3 class="section-header">In Files</h3>
|
||
<div class="section-body">
|
||
<ul>
|
||
|
||
<li><a href="./lib/wpscan/wpscan_options_rb.html?TB_iframe=true&height=550&width=785"
|
||
class="thickbox" title="lib/wpscan/wpscan_options.rb">lib/wpscan/wpscan_options.rb</a></li>
|
||
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
<div id="class-metadata">
|
||
|
||
<!-- Parent Class -->
|
||
<div id="parent-class-section" class="section">
|
||
<h3 class="section-header">Parent</h3>
|
||
|
||
<p class="link"><a href="Object.html">Object</a></p>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<!-- Method Quickref -->
|
||
<div id="method-list-section" class="section">
|
||
<h3 class="section-header">Methods</h3>
|
||
<ul class="link-list">
|
||
|
||
<li><a href="#method-c-clean_option">::clean_option</a></li>
|
||
|
||
<li><a href="#method-c-get_opt_long">::get_opt_long</a></li>
|
||
|
||
<li><a href="#method-c-is_long_option-3F">::is_long_option?</a></li>
|
||
|
||
<li><a href="#method-c-load_from_arguments">::load_from_arguments</a></li>
|
||
|
||
<li><a href="#method-c-new">::new</a></li>
|
||
|
||
<li><a href="#method-c-option_to_instance_variable_setter">::option_to_instance_variable_setter</a></li>
|
||
|
||
<li><a href="#method-i-basic_auth-3D">#basic_auth=</a></li>
|
||
|
||
<li><a href="#method-i-debug_output-3D">#debug_output=</a></li>
|
||
|
||
<li><a href="#method-i-enumerate_all_plugins-3D">#enumerate_all_plugins=</a></li>
|
||
|
||
<li><a href="#method-i-enumerate_all_themes-3D">#enumerate_all_themes=</a></li>
|
||
|
||
<li><a href="#method-i-enumerate_only_vulnerable_plugins-3D">#enumerate_only_vulnerable_plugins=</a></li>
|
||
|
||
<li><a href="#method-i-enumerate_only_vulnerable_themes-3D">#enumerate_only_vulnerable_themes=</a></li>
|
||
|
||
<li><a href="#method-i-enumerate_options_from_string">#enumerate_options_from_string</a></li>
|
||
|
||
<li><a href="#method-i-enumerate_plugins-3D">#enumerate_plugins=</a></li>
|
||
|
||
<li><a href="#method-i-enumerate_themes-3D">#enumerate_themes=</a></li>
|
||
|
||
<li><a href="#method-i-has_options-3F">#has_options?</a></li>
|
||
|
||
<li><a href="#method-i-proxy-3D">#proxy=</a></li>
|
||
|
||
<li><a href="#method-i-proxy_auth-3D">#proxy_auth=</a></li>
|
||
|
||
<li><a href="#method-i-set_option_from_cli">#set_option_from_cli</a></li>
|
||
|
||
<li><a href="#method-i-threads-3D">#threads=</a></li>
|
||
|
||
<li><a href="#method-i-to_h">#to_h</a></li>
|
||
|
||
<li><a href="#method-i-url-3D">#url=</a></li>
|
||
|
||
<li><a href="#method-i-wordlist-3D">#wordlist=</a></li>
|
||
|
||
</ul>
|
||
</div>
|
||
|
||
|
||
|
||
</div>
|
||
|
||
<div id="project-metadata">
|
||
|
||
|
||
<div id="fileindex-section" class="section project-section">
|
||
<h3 class="section-header">Files</h3>
|
||
<ul>
|
||
|
||
<li class="file"><a href="./CREDITS.html">CREDITS</a></li>
|
||
|
||
<li class="file"><a href="./Gemfile.html">Gemfile</a></li>
|
||
|
||
<li class="file"><a href="./LICENSE.html">LICENSE</a></li>
|
||
|
||
<li class="file"><a href="./README.html">README</a></li>
|
||
|
||
</ul>
|
||
</div>
|
||
|
||
|
||
<div id="classindex-section" class="section project-section">
|
||
<h3 class="section-header">Class/Module Index
|
||
<span class="search-toggle"><img src="./images/find.png"
|
||
height="16" width="16" alt="[+]"
|
||
title="show/hide quicksearch" /></span></h3>
|
||
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
|
||
<fieldset>
|
||
<legend>Quicksearch</legend>
|
||
<input type="text" name="quicksearch" value=""
|
||
class="quicksearch-field" />
|
||
</fieldset>
|
||
</form>
|
||
|
||
<ul class="link-list">
|
||
|
||
<li><a href="./WpTarget.html">WpTarget</a></li>
|
||
|
||
<li><a href="./WpTarget/InterestingHeaders.html">WpTarget::InterestingHeaders</a></li>
|
||
|
||
<li><a href="./WpTarget/Malwares.html">WpTarget::Malwares</a></li>
|
||
|
||
<li><a href="./WpTarget/WpConfigBackup.html">WpTarget::WpConfigBackup</a></li>
|
||
|
||
<li><a href="./WpTarget/WpCustomDirectories.html">WpTarget::WpCustomDirectories</a></li>
|
||
|
||
<li><a href="./WpTarget/WpFullPathDisclosure.html">WpTarget::WpFullPathDisclosure</a></li>
|
||
|
||
<li><a href="./WpTarget/WpLoginProtection.html">WpTarget::WpLoginProtection</a></li>
|
||
|
||
<li><a href="./WpTarget/WpReadme.html">WpTarget::WpReadme</a></li>
|
||
|
||
<li><a href="./WpTarget/WpRegistrable.html">WpTarget::WpRegistrable</a></li>
|
||
|
||
<li><a href="./WpItem.html">WpItem</a></li>
|
||
|
||
<li><a href="./WpItem/Existable.html">WpItem::Existable</a></li>
|
||
|
||
<li><a href="./WpItem/Findable.html">WpItem::Findable</a></li>
|
||
|
||
<li><a href="./WpItem/Infos.html">WpItem::Infos</a></li>
|
||
|
||
<li><a href="./WpItem/Output.html">WpItem::Output</a></li>
|
||
|
||
<li><a href="./WpItem/Versionable.html">WpItem::Versionable</a></li>
|
||
|
||
<li><a href="./WpItem/Vulnerable.html">WpItem::Vulnerable</a></li>
|
||
|
||
<li><a href="./Typhoeus.html">Typhoeus</a></li>
|
||
|
||
<li><a href="./Typhoeus/Request.html">Typhoeus::Request</a></li>
|
||
|
||
<li><a href="./Typhoeus/Request/Cacheable.html">Typhoeus::Request::Cacheable</a></li>
|
||
|
||
<li><a href="./Typhoeus/Response.html">Typhoeus::Response</a></li>
|
||
|
||
<li><a href="./WpTheme.html">WpTheme</a></li>
|
||
|
||
<li><a href="./WpTheme/Findable.html">WpTheme::Findable</a></li>
|
||
|
||
<li><a href="./WpTheme/Versionable.html">WpTheme::Versionable</a></li>
|
||
|
||
<li><a href="./WpTheme/Vulnerable.html">WpTheme::Vulnerable</a></li>
|
||
|
||
<li><a href="./WpTimthumb.html">WpTimthumb</a></li>
|
||
|
||
<li><a href="./WpTimthumb/Existable.html">WpTimthumb::Existable</a></li>
|
||
|
||
<li><a href="./WpTimthumb/Output.html">WpTimthumb::Output</a></li>
|
||
|
||
<li><a href="./WpTimthumb/Versionable.html">WpTimthumb::Versionable</a></li>
|
||
|
||
<li><a href="./WpUsers.html">WpUsers</a></li>
|
||
|
||
<li><a href="./WpUsers/BruteForcable.html">WpUsers::BruteForcable</a></li>
|
||
|
||
<li><a href="./WpUsers/Detectable.html">WpUsers::Detectable</a></li>
|
||
|
||
<li><a href="./WpUsers/Output.html">WpUsers::Output</a></li>
|
||
|
||
<li><a href="./WpVersion.html">WpVersion</a></li>
|
||
|
||
<li><a href="./WpVersion/Findable.html">WpVersion::Findable</a></li>
|
||
|
||
<li><a href="./WpVersion/Output.html">WpVersion::Output</a></li>
|
||
|
||
<li><a href="./WpVersion/Vulnerable.html">WpVersion::Vulnerable</a></li>
|
||
|
||
<li><a href="./Browser.html">Browser</a></li>
|
||
|
||
<li><a href="./Browser/Actions.html">Browser::Actions</a></li>
|
||
|
||
<li><a href="./Browser/Options.html">Browser::Options</a></li>
|
||
|
||
<li><a href="./Terminal.html">Terminal</a></li>
|
||
|
||
<li><a href="./Terminal/Table.html">Terminal::Table</a></li>
|
||
|
||
<li><a href="./Terminal/Table/Style.html">Terminal::Table::Style</a></li>
|
||
|
||
<li><a href="./WpItems.html">WpItems</a></li>
|
||
|
||
<li><a href="./WpItems/Detectable.html">WpItems::Detectable</a></li>
|
||
|
||
<li><a href="./WpItems/Output.html">WpItems::Output</a></li>
|
||
|
||
<li><a href="./WpUser.html">WpUser</a></li>
|
||
|
||
<li><a href="./WpUser/BruteForcable.html">WpUser::BruteForcable</a></li>
|
||
|
||
<li><a href="./WpUser/Existable.html">WpUser::Existable</a></li>
|
||
|
||
<li><a href="./Vulnerabilities.html">Vulnerabilities</a></li>
|
||
|
||
<li><a href="./Vulnerabilities/Output.html">Vulnerabilities::Output</a></li>
|
||
|
||
<li><a href="./Vulnerability.html">Vulnerability</a></li>
|
||
|
||
<li><a href="./Vulnerability/Output.html">Vulnerability::Output</a></li>
|
||
|
||
<li><a href="./WpPlugin.html">WpPlugin</a></li>
|
||
|
||
<li><a href="./WpPlugin/Vulnerable.html">WpPlugin::Vulnerable</a></li>
|
||
|
||
<li><a href="./WpPlugins.html">WpPlugins</a></li>
|
||
|
||
<li><a href="./WpPlugins/Detectable.html">WpPlugins::Detectable</a></li>
|
||
|
||
<li><a href="./WpThemes.html">WpThemes</a></li>
|
||
|
||
<li><a href="./WpThemes/Detectable.html">WpThemes::Detectable</a></li>
|
||
|
||
<li><a href="./WpTimthumbs.html">WpTimthumbs</a></li>
|
||
|
||
<li><a href="./WpTimthumbs/Detectable.html">WpTimthumbs::Detectable</a></li>
|
||
|
||
<li><a href="./Array.html">Array</a></li>
|
||
|
||
<li><a href="./CacheFileStore.html">CacheFileStore</a></li>
|
||
|
||
<li><a href="./CheckerPlugin.html">CheckerPlugin</a></li>
|
||
|
||
<li><a href="./CustomOptionParser.html">CustomOptionParser</a></li>
|
||
|
||
<li><a href="./File.html">File</a></li>
|
||
|
||
<li><a href="./GenerateList.html">GenerateList</a></li>
|
||
|
||
<li><a href="./GitUpdater.html">GitUpdater</a></li>
|
||
|
||
<li><a href="./ListGeneratorPlugin.html">ListGeneratorPlugin</a></li>
|
||
|
||
<li><a href="./Object.html">Object</a></li>
|
||
|
||
<li><a href="./Plugin.html">Plugin</a></li>
|
||
|
||
<li><a href="./Plugins.html">Plugins</a></li>
|
||
|
||
<li><a href="./StatsPlugin.html">StatsPlugin</a></li>
|
||
|
||
<li><a href="./SvnParser.html">SvnParser</a></li>
|
||
|
||
<li><a href="./SvnUpdater.html">SvnUpdater</a></li>
|
||
|
||
<li><a href="./TyphoeusCache.html">TyphoeusCache</a></li>
|
||
|
||
<li><a href="./URI.html">URI</a></li>
|
||
|
||
<li><a href="./Updater.html">Updater</a></li>
|
||
|
||
<li><a href="./UpdaterFactory.html">UpdaterFactory</a></li>
|
||
|
||
<li><a href="./VersionCompare.html">VersionCompare</a></li>
|
||
|
||
<li><a href="./WebSite.html">WebSite</a></li>
|
||
|
||
<li><a href="./WpscanOptions.html">WpscanOptions</a></li>
|
||
|
||
</ul>
|
||
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div id="documentation">
|
||
<h1 class="class">WpscanOptions</h1>
|
||
|
||
<div id="description" class="description">
|
||
|
||
</div><!-- description -->
|
||
|
||
|
||
|
||
|
||
<div id="5Buntitled-5D" class="documentation-section">
|
||
|
||
|
||
|
||
|
||
|
||
<!-- Constants -->
|
||
<div id="constants-list" class="section">
|
||
<h3 class="section-header">Constants</h3>
|
||
<dl>
|
||
|
||
<dt><a name="ACCESSOR_OPTIONS">ACCESSOR_OPTIONS</a></dt>
|
||
|
||
<dd class="description"></dd>
|
||
|
||
|
||
</dl>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
<!-- Methods -->
|
||
|
||
<div id="public-class-method-details" class="method-section section">
|
||
<h3 class="section-header">Public Class Methods</h3>
|
||
|
||
|
||
<div id="load_from_arguments-method" class="method-detail ">
|
||
<a name="method-c-load_from_arguments"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">load_from_arguments</span><span
|
||
class="method-args">()</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
<p>Will load the options from ARGV return <a
|
||
href="WpscanOptions.html">WpscanOptions</a></p>
|
||
|
||
|
||
|
||
<div class="method-source-code" id="load_from_arguments-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 153</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">load_from_arguments</span>
|
||
<span class="ruby-identifier">wpscan_options</span> = <span class="ruby-constant">WpscanOptions</span>.<span class="ruby-identifier">new</span>
|
||
|
||
<span class="ruby-keyword">if</span> <span class="ruby-constant">ARGV</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||
<span class="ruby-constant">WpscanOptions</span>.<span class="ruby-identifier">get_opt_long</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">opt</span>, <span class="ruby-identifier">arg</span><span class="ruby-operator">|</span>
|
||
<span class="ruby-identifier">wpscan_options</span>.<span class="ruby-identifier">set_option_from_cli</span>(<span class="ruby-identifier">opt</span>, <span class="ruby-identifier">arg</span>)
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span>
|
||
|
||
<span class="ruby-identifier">wpscan_options</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- load_from_arguments-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- load_from_arguments-method -->
|
||
|
||
|
||
<div id="new-method" class="method-detail ">
|
||
<a name="method-c-new"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">new</span><span
|
||
class="method-args">()</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="new-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 36</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
|
||
<span class="ruby-constant">ACCESSOR_OPTIONS</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">option</span><span class="ruby-operator">|</span>
|
||
<span class="ruby-identifier">instance_variable_set</span>(<span class="ruby-node">"@#{option}"</span>, <span class="ruby-keyword">nil</span>)
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- new-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- new-method -->
|
||
|
||
|
||
</div><!-- public-class-method-details -->
|
||
|
||
<div id="protected-class-method-details" class="method-section section">
|
||
<h3 class="section-header">Protected Class Methods</h3>
|
||
|
||
|
||
<div id="clean_option-method" class="method-detail ">
|
||
<a name="method-c-clean_option"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">clean_option</span><span
|
||
class="method-args">(option)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
<p>Will removed the ‘-’ or ‘–’ chars at the beginning of option and replace
|
||
any remaining ‘-’ by ‘_’</p>
|
||
|
||
<p>param string option return string</p>
|
||
|
||
|
||
|
||
<div class="method-source-code" id="clean_option-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 252</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">clean_option</span>(<span class="ruby-identifier">option</span>)
|
||
<span class="ruby-identifier">cleaned_option</span> = <span class="ruby-identifier">option</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/^--?/</span>, <span class="ruby-string">''</span>)
|
||
<span class="ruby-identifier">cleaned_option</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/-/</span>, <span class="ruby-string">'_'</span>)
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- clean_option-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- clean_option-method -->
|
||
|
||
|
||
<div id="get_opt_long-method" class="method-detail ">
|
||
<a name="method-c-get_opt_long"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">get_opt_long</span><span
|
||
class="method-args">()</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
<p>Even if a short option is given (IE : -u), the long one will be returned
|
||
(IE : –url)</p>
|
||
|
||
|
||
|
||
<div class="method-source-code" id="get_opt_long-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 220</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">get_opt_long</span>
|
||
<span class="ruby-constant">GetoptLong</span>.<span class="ruby-identifier">new</span>(
|
||
[<span class="ruby-string">'--url'</span>, <span class="ruby-string">'-u'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--enumerate'</span>, <span class="ruby-string">'-e'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">OPTIONAL_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--username'</span>, <span class="ruby-string">'-U'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--wordlist'</span>, <span class="ruby-string">'-w'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--threads'</span>, <span class="ruby-string">'-t'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--force'</span>, <span class="ruby-string">'-f'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">NO_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--help'</span>, <span class="ruby-string">'-h'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">NO_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--verbose'</span>, <span class="ruby-string">'-v'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">NO_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--proxy'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--proxy-auth'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--update'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">NO_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--follow-redirection'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">NO_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--wp-content-dir'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--wp-plugins-dir'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--config-file'</span>, <span class="ruby-string">'-c'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--exclude-content-based'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--basic-auth'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUIRED_ARGUMENT</span>],
|
||
[<span class="ruby-string">'--debug-output'</span>, <span class="ruby-constant">GetoptLong</span><span class="ruby-operator">::</span><span class="ruby-constant">NO_ARGUMENT</span>]
|
||
)
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- get_opt_long-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- get_opt_long-method -->
|
||
|
||
|
||
<div id="is_long_option-3F-method" class="method-detail ">
|
||
<a name="method-c-is_long_option-3F"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">is_long_option?</span><span
|
||
class="method-args">(option)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="is_long_option-3F-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 243</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">is_long_option?</span>(<span class="ruby-identifier">option</span>)
|
||
<span class="ruby-constant">ACCESSOR_OPTIONS</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value">:"#{WpscanOptions.clean_option(option)}"</span>)
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- is_long_option-3F-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- is_long_option-3F-method -->
|
||
|
||
|
||
<div id="option_to_instance_variable_setter-method" class="method-detail ">
|
||
<a name="method-c-option_to_instance_variable_setter"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">option_to_instance_variable_setter</span><span
|
||
class="method-args">(option)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="option_to_instance_variable_setter-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 257</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">option_to_instance_variable_setter</span>(<span class="ruby-identifier">option</span>)
|
||
<span class="ruby-identifier">cleaned_option</span> = <span class="ruby-constant">WpscanOptions</span>.<span class="ruby-identifier">clean_option</span>(<span class="ruby-identifier">option</span>)
|
||
<span class="ruby-identifier">option_syms</span> = <span class="ruby-constant">ACCESSOR_OPTIONS</span>.<span class="ruby-identifier">grep</span>(<span class="ruby-node">%{^#{cleaned_option}$}</span>)
|
||
|
||
<span class="ruby-identifier">option_syms</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span> <span class="ruby-operator">?</span> <span class="ruby-value">:"#{option_syms.at(0)}="</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">nil</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- option_to_instance_variable_setter-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- option_to_instance_variable_setter-method -->
|
||
|
||
|
||
</div><!-- protected-class-method-details -->
|
||
|
||
<div id="public-instance-method-details" class="method-section section">
|
||
<h3 class="section-header">Public Instance Methods</h3>
|
||
|
||
|
||
<div id="basic_auth-3D-method" class="method-detail ">
|
||
<a name="method-i-basic_auth-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">basic_auth=</span><span
|
||
class="method-args">(basic_auth)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="basic_auth-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 124</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">basic_auth=</span>(<span class="ruby-identifier">basic_auth</span>)
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Invalid basic authentication format, login:password expected'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">basic_auth</span>.<span class="ruby-identifier">index</span>(<span class="ruby-string">':'</span>).<span class="ruby-identifier">nil?</span>
|
||
<span class="ruby-ivar">@basic_auth</span> = <span class="ruby-node">"Basic #{Base64.encode64(basic_auth).chomp}"</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- basic_auth-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- basic_auth-3D-method -->
|
||
|
||
|
||
<div id="debug_output-3D-method" class="method-detail ">
|
||
<a name="method-i-debug_output-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">debug_output=</span><span
|
||
class="method-args">(debug_output)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="debug_output-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 129</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">debug_output=</span>(<span class="ruby-identifier">debug_output</span>)
|
||
<span class="ruby-constant">Typhoeus</span><span class="ruby-operator">::</span><span class="ruby-constant">Config</span>.<span class="ruby-identifier">verbose</span> = <span class="ruby-identifier">debug_output</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- debug_output-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- debug_output-3D-method -->
|
||
|
||
|
||
<div id="enumerate_all_plugins-3D-method" class="method-detail ">
|
||
<a name="method-i-enumerate_all_plugins-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">enumerate_all_plugins=</span><span
|
||
class="method-args">(enumerate_all_plugins)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="enumerate_all_plugins-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 92</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enumerate_all_plugins=</span>(<span class="ruby-identifier">enumerate_all_plugins</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">enumerate_all_plugins</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">and</span> (<span class="ruby-ivar">@enumerate_plugins</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">or</span> <span class="ruby-ivar">@enumerate_only_vulnerable_plugins</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span>)
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Please choose only one plugin enumeration option'</span>
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-ivar">@enumerate_all_plugins</span> = <span class="ruby-identifier">enumerate_all_plugins</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- enumerate_all_plugins-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- enumerate_all_plugins-3D-method -->
|
||
|
||
|
||
<div id="enumerate_all_themes-3D-method" class="method-detail ">
|
||
<a name="method-i-enumerate_all_themes-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">enumerate_all_themes=</span><span
|
||
class="method-args">(enumerate_all_themes)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="enumerate_all_themes-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 116</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enumerate_all_themes=</span>(<span class="ruby-identifier">enumerate_all_themes</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">enumerate_all_themes</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">and</span> (<span class="ruby-ivar">@enumerate_themes</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">or</span> <span class="ruby-ivar">@enumerate_only_vulnerable_themes</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span>)
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Please choose only one theme enumeration option'</span>
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-ivar">@enumerate_all_themes</span> = <span class="ruby-identifier">enumerate_all_themes</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- enumerate_all_themes-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- enumerate_all_themes-3D-method -->
|
||
|
||
|
||
<div id="enumerate_only_vulnerable_plugins-3D-method" class="method-detail ">
|
||
<a name="method-i-enumerate_only_vulnerable_plugins-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">enumerate_only_vulnerable_plugins=</span><span
|
||
class="method-args">(enumerate_only_vulnerable_plugins)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="enumerate_only_vulnerable_plugins-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 84</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enumerate_only_vulnerable_plugins=</span>(<span class="ruby-identifier">enumerate_only_vulnerable_plugins</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">enumerate_only_vulnerable_plugins</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">and</span> (<span class="ruby-ivar">@enumerate_all_plugins</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">or</span> <span class="ruby-ivar">@enumerate_plugins</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span>)
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Please choose only one plugin enumeration option'</span>
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-ivar">@enumerate_only_vulnerable_plugins</span> = <span class="ruby-identifier">enumerate_only_vulnerable_plugins</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- enumerate_only_vulnerable_plugins-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- enumerate_only_vulnerable_plugins-3D-method -->
|
||
|
||
|
||
<div id="enumerate_only_vulnerable_themes-3D-method" class="method-detail ">
|
||
<a name="method-i-enumerate_only_vulnerable_themes-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">enumerate_only_vulnerable_themes=</span><span
|
||
class="method-args">(enumerate_only_vulnerable_themes)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="enumerate_only_vulnerable_themes-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 108</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enumerate_only_vulnerable_themes=</span>(<span class="ruby-identifier">enumerate_only_vulnerable_themes</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">enumerate_only_vulnerable_themes</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">and</span> (<span class="ruby-ivar">@enumerate_all_themes</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">or</span> <span class="ruby-ivar">@enumerate_themes</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span>)
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Please choose only one theme enumeration option'</span>
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-ivar">@enumerate_only_vulnerable_themes</span> = <span class="ruby-identifier">enumerate_only_vulnerable_themes</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- enumerate_only_vulnerable_themes-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- enumerate_only_vulnerable_themes-3D-method -->
|
||
|
||
|
||
<div id="enumerate_options_from_string-method" class="method-detail ">
|
||
<a name="method-i-enumerate_options_from_string"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">enumerate_options_from_string</span><span
|
||
class="method-args">(value)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
<p>Will set enumerate_* from the string value IE : if value = vp =>
|
||
:enumerate_only_vulnerable_plugins will be set to true multiple enumeration
|
||
are possible : ‘u,p’ => :enumerate_usernames and :enumerate_plugins
|
||
Special case for usernames, a range is possible : <a
|
||
href="http://1-10">u</a> will enumerate usernames from 1 to 10</p>
|
||
|
||
|
||
|
||
<div class="method-source-code" id="enumerate_options_from_string-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 188</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enumerate_options_from_string</span>(<span class="ruby-identifier">value</span>)
|
||
<span class="ruby-comment"># Usage of self is mandatory because there are overridden setters</span>
|
||
|
||
<span class="ruby-identifier">value</span> = <span class="ruby-identifier">value</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">downcase</span> }
|
||
|
||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">enumerate_only_vulnerable_plugins</span> = <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'vp'</span>)
|
||
|
||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">enumerate_plugins</span> = <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'p'</span>)
|
||
|
||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">enumerate_all_plugins</span> = <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'ap'</span>)
|
||
|
||
<span class="ruby-ivar">@enumerate_timthumbs</span> = <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'tt'</span>)
|
||
|
||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">enumerate_only_vulnerable_themes</span> = <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'vt'</span>)
|
||
|
||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">enumerate_themes</span> = <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'t'</span>)
|
||
|
||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">enumerate_all_themes</span> = <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'at'</span>)
|
||
|
||
<span class="ruby-identifier">value</span>.<span class="ruby-identifier">grep</span>(<span class="ruby-regexp">/^u/</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">username_enum_value</span><span class="ruby-operator">|</span>
|
||
<span class="ruby-ivar">@enumerate_usernames</span> = <span class="ruby-keyword">true</span>
|
||
<span class="ruby-comment"># Check for usernames range</span>
|
||
<span class="ruby-identifier">matches</span> = <span class="ruby-regexp">%{\[([\d]+)-([\d]+)\]}</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">username_enum_value</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">matches</span>
|
||
<span class="ruby-ivar">@enumerate_usernames_range</span> = (<span class="ruby-identifier">matches</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">to_i</span><span class="ruby-operator">..</span><span class="ruby-identifier">matches</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">to_i</span>)
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span>
|
||
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- enumerate_options_from_string-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- enumerate_options_from_string-method -->
|
||
|
||
|
||
<div id="enumerate_plugins-3D-method" class="method-detail ">
|
||
<a name="method-i-enumerate_plugins-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">enumerate_plugins=</span><span
|
||
class="method-args">(enumerate_plugins)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="enumerate_plugins-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 76</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enumerate_plugins=</span>(<span class="ruby-identifier">enumerate_plugins</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">enumerate_plugins</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">and</span> (<span class="ruby-ivar">@enumerate_all_plugins</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">or</span> <span class="ruby-ivar">@enumerate_only_vulnerable_plugins</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span>)
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Please choose only one plugin enumeration option'</span>
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-ivar">@enumerate_plugins</span> = <span class="ruby-identifier">enumerate_plugins</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- enumerate_plugins-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- enumerate_plugins-3D-method -->
|
||
|
||
|
||
<div id="enumerate_themes-3D-method" class="method-detail ">
|
||
<a name="method-i-enumerate_themes-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">enumerate_themes=</span><span
|
||
class="method-args">(enumerate_themes)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="enumerate_themes-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 100</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">enumerate_themes=</span>(<span class="ruby-identifier">enumerate_themes</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">enumerate_themes</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">and</span> (<span class="ruby-ivar">@enumerate_all_themes</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">or</span> <span class="ruby-ivar">@enumerate_only_vulnerable_themes</span> <span class="ruby-operator">===</span> <span class="ruby-keyword">true</span>)
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Please choose only one theme enumeration option'</span>
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-ivar">@enumerate_themes</span> = <span class="ruby-identifier">enumerate_themes</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- enumerate_themes-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- enumerate_themes-3D-method -->
|
||
|
||
|
||
<div id="has_options-3F-method" class="method-detail ">
|
||
<a name="method-i-has_options-3F"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">has_options?</span><span
|
||
class="method-args">()</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="has_options-3F-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 133</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_options?</span>
|
||
<span class="ruby-operator">!</span><span class="ruby-identifier">to_h</span>.<span class="ruby-identifier">empty?</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- has_options-3F-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- has_options-3F-method -->
|
||
|
||
|
||
<div id="proxy-3D-method" class="method-detail ">
|
||
<a name="method-i-proxy-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">proxy=</span><span
|
||
class="method-args">(proxy)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="proxy-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 60</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">proxy=</span>(<span class="ruby-identifier">proxy</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">proxy</span>.<span class="ruby-identifier">index</span>(<span class="ruby-string">':'</span>) <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Invalid proxy format. Should be host:port.'</span>
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-ivar">@proxy</span> = <span class="ruby-identifier">proxy</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- proxy-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- proxy-3D-method -->
|
||
|
||
|
||
<div id="proxy_auth-3D-method" class="method-detail ">
|
||
<a name="method-i-proxy_auth-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">proxy_auth=</span><span
|
||
class="method-args">(auth)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="proxy_auth-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 68</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">proxy_auth=</span>(<span class="ruby-identifier">auth</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">auth</span>.<span class="ruby-identifier">index</span>(<span class="ruby-string">':'</span>) <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Invalid proxy auth format, username:password expected'</span>
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-ivar">@proxy_auth</span> = <span class="ruby-identifier">auth</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- proxy_auth-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- proxy_auth-3D-method -->
|
||
|
||
|
||
<div id="set_option_from_cli-method" class="method-detail ">
|
||
<a name="method-i-set_option_from_cli"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">set_option_from_cli</span><span
|
||
class="method-args">(cli_option, cli_value)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
<p>string cli_option : –url, -u, –proxy etc string cli_value : the option
|
||
value</p>
|
||
|
||
|
||
|
||
<div class="method-source-code" id="set_option_from_cli-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 167</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">set_option_from_cli</span>(<span class="ruby-identifier">cli_option</span>, <span class="ruby-identifier">cli_value</span>)
|
||
|
||
<span class="ruby-keyword">if</span> <span class="ruby-constant">WpscanOptions</span>.<span class="ruby-identifier">is_long_option?</span>(<span class="ruby-identifier">cli_option</span>)
|
||
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">send</span>(
|
||
<span class="ruby-constant">WpscanOptions</span>.<span class="ruby-identifier">option_to_instance_variable_setter</span>(<span class="ruby-identifier">cli_option</span>),
|
||
<span class="ruby-identifier">cli_value</span>
|
||
)
|
||
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">cli_option</span> <span class="ruby-operator">===</span> <span class="ruby-string">'--enumerate'</span> <span class="ruby-comment"># Special cases</span>
|
||
<span class="ruby-comment"># Default value if no argument is given</span>
|
||
<span class="ruby-identifier">cli_value</span> = <span class="ruby-string">'vt,tt,u,vp'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">cli_value</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
||
|
||
<span class="ruby-identifier">enumerate_options_from_string</span>(<span class="ruby-identifier">cli_value</span>)
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Unknow option : #{cli_option} with value #{cli_value}"</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- set_option_from_cli-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- set_option_from_cli-method -->
|
||
|
||
|
||
<div id="threads-3D-method" class="method-detail ">
|
||
<a name="method-i-threads-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">threads=</span><span
|
||
class="method-args">(threads)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="threads-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 48</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">threads=</span>(<span class="ruby-identifier">threads</span>)
|
||
<span class="ruby-ivar">@threads</span> = <span class="ruby-identifier">threads</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Integer</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">threads</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">threads</span>.<span class="ruby-identifier">to_i</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- threads-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- threads-3D-method -->
|
||
|
||
|
||
<div id="to_h-method" class="method-detail ">
|
||
<a name="method-i-to_h"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">to_h</span><span
|
||
class="method-args">()</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
<p>return Hash</p>
|
||
|
||
|
||
|
||
<div class="method-source-code" id="to_h-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 138</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_h</span>
|
||
<span class="ruby-identifier">options</span> = {}
|
||
|
||
<span class="ruby-constant">ACCESSOR_OPTIONS</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">option</span><span class="ruby-operator">|</span>
|
||
<span class="ruby-identifier">instance_variable</span> = <span class="ruby-identifier">instance_variable_get</span>(<span class="ruby-node">"@#{option}"</span>)
|
||
|
||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">instance_variable</span>.<span class="ruby-identifier">nil?</span>
|
||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:"#{option}"</span>] = <span class="ruby-identifier">instance_variable</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-identifier">options</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- to_h-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- to_h-method -->
|
||
|
||
|
||
<div id="url-3D-method" class="method-detail ">
|
||
<a name="method-i-url-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">url=</span><span
|
||
class="method-args">(url)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="url-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 42</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">url=</span>(<span class="ruby-identifier">url</span>)
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-string">'Empty URL given'</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">url</span>
|
||
|
||
<span class="ruby-ivar">@url</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">add_http_protocol</span>(<span class="ruby-identifier">url</span>)).<span class="ruby-identifier">to_s</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- url-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- url-3D-method -->
|
||
|
||
|
||
<div id="wordlist-3D-method" class="method-detail ">
|
||
<a name="method-i-wordlist-3D"></a>
|
||
|
||
|
||
<div class="method-heading">
|
||
<span class="method-name">wordlist=</span><span
|
||
class="method-args">(wordlist)</span>
|
||
<span class="method-click-advice">click to toggle source</span>
|
||
</div>
|
||
|
||
|
||
<div class="method-description">
|
||
|
||
|
||
|
||
|
||
|
||
<div class="method-source-code" id="wordlist-3D-source">
|
||
<pre>
|
||
<span class="ruby-comment"># File lib/wpscan/wpscan_options.rb, line 52</span>
|
||
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wordlist=</span>(<span class="ruby-identifier">wordlist</span>)
|
||
<span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exists?</span>(<span class="ruby-identifier">wordlist</span>)
|
||
<span class="ruby-ivar">@wordlist</span> = <span class="ruby-identifier">wordlist</span>
|
||
<span class="ruby-keyword">else</span>
|
||
<span class="ruby-identifier">raise</span> <span class="ruby-node">"The file #{wordlist} does not exist"</span>
|
||
<span class="ruby-keyword">end</span>
|
||
<span class="ruby-keyword">end</span></pre>
|
||
</div><!-- wordlist-3D-source -->
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div><!-- wordlist-3D-method -->
|
||
|
||
|
||
</div><!-- public-instance-method-details -->
|
||
|
||
</div><!-- 5Buntitled-5D -->
|
||
|
||
|
||
</div><!-- documentation -->
|
||
|
||
<div id="validator-badges">
|
||
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
||
<p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
|
||
Rdoc Generator</a> 2</small>.</p>
|
||
</div>
|
||
|
||
</body>
|
||
</html>
|
||
|