Files
metasploit-gs/lib/msf/core/payload/pingback.rb
T

40 lines
1.2 KiB
Ruby
Raw Normal View History

2019-04-08 17:10:08 -05:00
# -*- coding => binary -*-
require 'msf/core'
require 'msf/core/module/platform'
require 'rex/text'
#
# This class provides methods for calculating, extracting, and parsing
# unique ID values used by payloads.
#
module Msf::Payload::Pingback
2019-04-08 17:10:08 -05:00
2019-07-26 14:51:44 -05:00
attr_accessor :pingback_uuid
attr_accessor :can_cleanup
2019-07-26 12:36:59 -05:00
# Generate a Pingback UUID and write it to the database
def generate_pingback_uuid
self.pingback_uuid ||= SecureRandom.uuid()
2019-07-29 11:55:51 -05:00
self.pingback_uuid.to_s.gsub!("-", "")
datastore['PingbackUUID'] = self.pingback_uuid
2019-07-29 11:55:51 -05:00
vprint_status("PingbackUUID = #{datastore['PingbackUUID']}")
if framework.db.active
2019-07-29 11:55:51 -05:00
vprint_status("Writing UUID #{datastore['PingbackUUID']} to database...")
2019-07-24 15:36:33 -05:00
framework.db.create_payload(name: datastore['PayloadUUIDName'],
2019-07-29 11:55:51 -05:00
uuid: datastore['PingbackUUID'],
description: 'pingback',
platform: platform.platforms.first.realname.downcase)
else
2019-07-24 15:36:33 -05:00
print_warning("Unable to save UUID #{datastore['PingbackUUID']} to database -- database support not active")
end
self.pingback_uuid
end
2019-04-08 17:10:08 -05:00
def initialize(info = {})
2019-07-26 12:36:59 -05:00
super(info)
self.can_cleanup = false
self
2019-04-08 17:10:08 -05:00
end
end