This commit is contained in:
Christian Mehlmauer
2012-12-13 16:47:05 +01:00
parent 509a400add
commit 5415af538a
9 changed files with 239 additions and 132 deletions

View File

@@ -64,13 +64,17 @@
<ul class="link-list">
<li><a href="#method-i-has_basic_auth-3F">#has_basic_auth?</a>
<li><a href="#method-i-has_xml_rpc-3F">#has_xml_rpc?</a>
<li><a href="#method-i-is_online-3F">#is_online?</a>
<li><a href="#method-i-is_wordpress-3F">#is_wordpress?</a>
<li><a href="#method-i-redirection">#redirection</a>
<li><a href="#method-i-xmlrpc_url">#xmlrpc_url</a>
<li><a href="#method-i-xml_rpc_url">#xml_rpc_url</a>
</ul>
</nav>
@@ -200,6 +204,66 @@
<h3 class="section-header">Public Instance Methods</h3>
<div id="method-i-has_basic_auth-3F" class="method-detail ">
<div class="method-heading">
<span class="method-name">has_basic_auth?</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_basic_auth-3F-source">
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 69</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_basic_auth?</span>
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">code</span> <span class="ruby-operator">==</span> <span class="ruby-value">401</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- has_basic_auth-3F-source -->
</div>
</div><!-- has_basic_auth-3F-method -->
<div id="method-i-has_xml_rpc-3F" class="method-detail ">
<div class="method-heading">
<span class="method-name">has_xml_rpc?</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_xml_rpc-3F-source">
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 60</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_xml_rpc?</span>
<span class="ruby-operator">!</span><span class="ruby-identifier">xml_rpc_url</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- has_xml_rpc-3F-source -->
</div>
</div><!-- has_xml_rpc-3F-method -->
<div id="method-i-is_online-3F" class="method-detail ">
<div class="method-heading">
@@ -216,7 +280,7 @@
<div class="method-source-code" id="is_online-3F-source">
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 52</span>
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 65</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_online?</span>
<span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">code</span> <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>
<span class="ruby-keyword">end</span></pre>
@@ -251,15 +315,15 @@
<span class="ruby-identifier">wordpress</span> = <span class="ruby-keyword">false</span>
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(
<span class="ruby-identifier">login_url</span>(),
{<span class="ruby-value">:follow_location</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>, <span class="ruby-value">:max_redirects</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">2</span>}
<span class="ruby-identifier">login_url</span>(),
{<span class="ruby-value">:follow_location</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>, <span class="ruby-value">:max_redirects</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">2</span>}
)
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r{WordPress}</span>
<span class="ruby-identifier">wordpress</span> = <span class="ruby-keyword">true</span>
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">response</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(
<span class="ruby-identifier">xmlrpc_url</span>(),
<span class="ruby-identifier">xml_rpc_url</span>,
{<span class="ruby-value">:follow_location</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>, <span class="ruby-value">:max_redirects</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">2</span>}
)
@@ -297,7 +361,7 @@ redirection or nil</p>
<div class="method-source-code" id="redirection-source">
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 58</span>
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 75</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">redirection</span>(<span class="ruby-identifier">url</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-identifier">redirection</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-identifier">url</span> <span class="ruby-operator">||=</span> <span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>
@@ -319,10 +383,10 @@ redirection or nil</p>
</div><!-- redirection-method -->
<div id="method-i-xmlrpc_url" class="method-detail ">
<div id="method-i-xml_rpc_url" class="method-detail ">
<div class="method-heading">
<span class="method-name">xmlrpc_url</span><span
<span class="method-name">xml_rpc_url</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
@@ -334,19 +398,28 @@ redirection or nil</p>
<div class="method-source-code" id="xmlrpc_url-source">
<div class="method-source-code" id="xml_rpc_url-source">
<pre><span class="ruby-comment"># File lib/wpscan/modules/web_site.rb, line 47</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">xmlrpc_url</span>
<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">&quot;xmlrpc.php&quot;</span>).<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">xml_rpc_url</span>
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@xmlrpc_url</span>
<span class="ruby-identifier">headers</span> = <span class="ruby-constant">Browser</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">get</span>(<span class="ruby-ivar">@uri</span>.<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">headers_hash</span>
<span class="ruby-identifier">value</span> = <span class="ruby-identifier">headers</span>[<span class="ruby-string">&quot;x-pingback&quot;</span>]
<span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">empty?</span>
<span class="ruby-ivar">@xmlrpc_url</span> = <span class="ruby-keyword">nil</span>
<span class="ruby-keyword">else</span>
<span class="ruby-ivar">@xmlrpc_url</span> = <span class="ruby-identifier">value</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-ivar">@xmlrpc_url</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- xmlrpc_url-source -->
</div><!-- xml_rpc_url-source -->
</div>
</div><!-- xmlrpc_url-method -->
</div><!-- xml_rpc_url-method -->
</section><!-- public-instance-method-details -->