Updated QR Code Extension - URLs can now be full, not just sub-domains #811
This commit is contained in:
@@ -13,18 +13,43 @@ module Qrcode
|
||||
|
||||
def self.pre_http_start(http_hook_server)
|
||||
require 'uri'
|
||||
|
||||
|
||||
fullurls = []
|
||||
partialurls = []
|
||||
|
||||
configuration = BeEF::Core::Configuration.instance
|
||||
BeEF::Core::Console::Banners.interfaces.each do |int|
|
||||
next if int == "localhost" or int == "127.0.0.1"
|
||||
print_success "QRCode images available for interface: #{int}"
|
||||
|
||||
configuration.get("beef.extension.qrcode.target").each do |target|
|
||||
if target.lines.grep(/^https?:\/\//i).size > 0
|
||||
fullurls << target
|
||||
else
|
||||
partialurls << target
|
||||
end
|
||||
end
|
||||
|
||||
if fullurls.size > 0
|
||||
print_success "Custom QRCode images available:"
|
||||
data = ""
|
||||
configuration.get("beef.extension.qrcode.target").each do |target|
|
||||
url = "http://#{int}:#{configuration.get("beef.http.port")}#{target}"
|
||||
url = URI.escape(url,Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))
|
||||
fullurls.each do |target|
|
||||
url = URI.escape(target,Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))
|
||||
data += "https://chart.googleapis.com/chart?cht=qr&chs=#{configuration.get("beef.extension.qrcode.qrsize")}&chl=#{url}\n"
|
||||
end
|
||||
print_more data
|
||||
|
||||
end
|
||||
|
||||
if partialurls.size > 0
|
||||
BeEF::Core::Console::Banners.interfaces.each do |int|
|
||||
next if int == "localhost" or int == "127.0.0.1"
|
||||
print_success "QRCode images available for interface: #{int}"
|
||||
data = ""
|
||||
partialurls.each do |target|
|
||||
url = "http://#{int}:#{configuration.get("beef.http.port")}#{target}"
|
||||
url = URI.escape(url,Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))
|
||||
data += "https://chart.googleapis.com/chart?cht=qr&chs=#{configuration.get("beef.extension.qrcode.qrsize")}&chl=#{url}\n"
|
||||
end
|
||||
print_more data
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user