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

34 lines
672 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 CrawlerFrames < BaseParser
2013-09-30 13:47:53 -05:00
def parse(request,result)
2010-06-06 03:48:25 +00:00
2014-07-17 00:14:07 +02:00
return unless result['Content-Type'].include?('text/html')
2010-06-06 03:48:25 +00:00
2014-07-17 00:14:07 +02:00
doc = Nokogiri::HTML(result.body.to_s)
doc.css('iframe').each do |ifra|
ir = ifra['src']
2010-06-06 03:48:25 +00:00
2014-07-17 00:14:07 +02:00
if ir && !ir.match(/^(\#|javascript\:)/)
begin
hreq = urltohash('GET', ir, 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
2014-07-17 00:14:07 +02:00
2010-06-06 03:48:25 +00:00
end