Files
metasploit-gs/data/msfcrawler/link.rb
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

31 lines
666 B
Ruby
Raw Normal View History

2010-06-06 03:48:25 +00:00
##
2017-07-24 06:26:21 -07:00
# This module requires Metasploit: https://metasploit.com/download
2017-03-13 17:36:21 +01:00
# Current source: https://github.com/rapid7/metasploit-framework
2010-06-06 03:48:25 +00:00
##
require 'pathname'
2014-07-17 00:14:07 +02:00
require 'nokogiri'
2010-06-06 03:48:25 +00:00
require 'uri'
class CrawlerLink < BaseParser
2013-09-30 13:47:53 -05:00
def parse(request,result)
2014-07-17 00:14:07 +02:00
return unless result['Content-Type'].include?('text/html')
doc = Nokogiri::HTML(result.body.to_s)
doc.css('link').each do |link|
hr = link['href']
if hr && !hr.match(/^(\#|javascript\:)/)
begin
hreq = urltohash('GET', hr, request['uri'], nil)
insertnewpath(hreq)
rescue URI::InvalidURIError
2017-03-13 17:36:21 +01:00
# ignored
2014-07-17 00:14:07 +02:00
end
2013-09-30 13:47:53 -05:00
end
2014-07-17 00:14:07 +02:00
2013-09-30 13:47:53 -05:00
end
end
2010-06-06 03:48:25 +00:00
end