Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require 'nokogiri'
- require 'rubygems'
- require 'openssl'
- require 'net/https'
- require 'optparse'
- #IP = ARGV[0]
- #unless ARGV.length == 1
- # puts "No IP Given"
- # exit
- #end
- class Colors
- def initialize
- @red = "\033[31m"
- @green = "\033[32m"
- @reset = "\033[0m"
- @yellow = "\033[33m"
- @blue = "\033[34m"
- end
- def red
- return @red
- end
- def green
- return @green
- end
- def reset
- return @reset
- end
- def blue
- return @blue
- end
- def yellow
- return @yellow
- end
- end # End color class
- def getargs
- @options = {}
- parser = OptionParser.new do |opts|
- opts.banner = "Usage Text:"
- opts.on('-s','--ssl','Use SSL') do |s|
- @options[:useSSL] = s
- puts s
- end
- end
- parser.parse!
- return @options
- end # End GetOptions
- class Request
- def initialize (aURL)
- @uri = aURL
- end
- def send
- url = URI.parse(@uri)
- http = Net::HTTP.new(url.host,url.port)
- http.use_ssl = true
- http.verify_mode = OpenSSL::SSL::VERIFY_NONE
- http.open_timeout = 5 # Wait for Client to respond
- request = Net::HTTP::Get.new(url.request_uri)
- begin
- response = http.request(request)
- rescue
- @response = "\033[31mConnection Error: Couldn't Connect to " << @uri << "\033[0m"
- end
- case response
- when Net::HTTPSuccess, Net::HTTPRedirection
- doc = Nokogiri::HTML(response.body)
- @response = "\033[32m[+]Host: " << @uri << " \033[34m" << doc.css('title')[0].text << "\033[0m"
- else
- @response = "\033[31m No Response from host: " << @uri << "\033[0m"
- end
- end
- def rcvd
- return @response
- end
- end # End of Request Class
- #Build and req
- options = getargs
- puts options[:useSSL]
- #req = Request.new(options[:host])
- #req.send
- #rcv = req.rcvd
- #puts rcv
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement