Merge branch 'master' into bug/module-load-cache-update
commit
1a487e476d
Binary file not shown.
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# This file is part of the Metasploit Framework and may be subject to
|
# This file is part of the Metasploit Framework and may be subject to
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base'
|
require 'msf/base'
|
||||||
require 'msf/base/sessions/scriptable'
|
require 'msf/base/sessions/scriptable'
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base/sessions/meterpreter'
|
require 'msf/base/sessions/meterpreter'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'shellwords'
|
require 'shellwords'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base/sessions/meterpreter'
|
require 'msf/base/sessions/meterpreter'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base/sessions/meterpreter'
|
require 'msf/base/sessions/meterpreter'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base/sessions/meterpreter'
|
require 'msf/base/sessions/meterpreter'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base/sessions/meterpreter'
|
require 'msf/base/sessions/meterpreter'
|
||||||
require 'msf/windows_error'
|
require 'msf/windows_error'
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base'
|
require 'msf/base'
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Msf
|
module Msf
|
||||||
module Sessions
|
module Sessions
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base'
|
require 'msf/base'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base'
|
require 'msf/base'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/base/sessions/command_shell_options'
|
require 'msf/base/sessions/command_shell_options'
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Msf
|
module Msf
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
###
|
|
||||||
# $Id$
|
|
||||||
###
|
|
||||||
|
|
||||||
module Msf
|
module Msf
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
#
|
#
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
require 'msf/base/config'
|
require 'msf/base/config'
|
||||||
require 'msf/core'
|
require 'msf/core'
|
||||||
require 'msf/core/db'
|
require 'msf/core/db'
|
||||||
|
require 'msf/core/db_manager/migration'
|
||||||
require 'msf/core/task_manager'
|
require 'msf/core/task_manager'
|
||||||
require 'fileutils'
|
require 'fileutils'
|
||||||
require 'shellwords'
|
require 'shellwords'
|
||||||
|
@ -17,6 +18,9 @@ module Msf
|
||||||
###
|
###
|
||||||
|
|
||||||
class DBManager
|
class DBManager
|
||||||
|
# Provides :framework and other accessors
|
||||||
|
include Msf::DBManager::Migration
|
||||||
|
include Msf::Framework::Offspring
|
||||||
|
|
||||||
# Mainly, it's Ruby 1.9.1 that cause a lot of problems now, along with Ruby 1.8.6.
|
# Mainly, it's Ruby 1.9.1 that cause a lot of problems now, along with Ruby 1.8.6.
|
||||||
# Ruby 1.8.7 actually seems okay, but why tempt fate? Let's say 1.9.3 and beyond.
|
# Ruby 1.8.7 actually seems okay, but why tempt fate? Let's say 1.9.3 and beyond.
|
||||||
|
@ -28,9 +32,6 @@ class DBManager
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# Provides :framework and other accessors
|
|
||||||
include Framework::Offspring
|
|
||||||
|
|
||||||
# Returns true if we are ready to load/store data
|
# Returns true if we are ready to load/store data
|
||||||
def active
|
def active
|
||||||
return false if not @usable
|
return false if not @usable
|
||||||
|
@ -53,9 +54,6 @@ class DBManager
|
||||||
# Stores a TaskManager for serializing database events
|
# Stores a TaskManager for serializing database events
|
||||||
attr_accessor :sink
|
attr_accessor :sink
|
||||||
|
|
||||||
# Flag to indicate database migration has completed
|
|
||||||
attr_accessor :migrated
|
|
||||||
|
|
||||||
# Flag to indicate that modules are cached
|
# Flag to indicate that modules are cached
|
||||||
attr_accessor :modules_cached
|
attr_accessor :modules_cached
|
||||||
|
|
||||||
|
@ -287,33 +285,6 @@ class DBManager
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# Migrate database to latest schema version.
|
|
||||||
#
|
|
||||||
# @param verbose [Boolean] see ActiveRecord::Migration.verbose
|
|
||||||
# @return [Array<ActiveRecord::MigrationProxy] List of migrations that ran.
|
|
||||||
#
|
|
||||||
# @see ActiveRecord::Migrator.migrate
|
|
||||||
def migrate(verbose=false)
|
|
||||||
ran = []
|
|
||||||
ActiveRecord::Migration.verbose = verbose
|
|
||||||
|
|
||||||
ActiveRecord::Base.connection_pool.with_connection do
|
|
||||||
begin
|
|
||||||
ran = ActiveRecord::Migrator.migrate(
|
|
||||||
ActiveRecord::Migrator.migrations_paths
|
|
||||||
)
|
|
||||||
# ActiveRecord::Migrator#migrate rescues all errors and re-raises them as
|
|
||||||
# StandardError
|
|
||||||
rescue StandardError => error
|
|
||||||
self.error = error
|
|
||||||
elog("DB.migrate threw an exception: #{error}")
|
|
||||||
dlog("Call stack:\n#{error.backtrace.join "\n"}")
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
return ran
|
|
||||||
end
|
|
||||||
|
|
||||||
def workspace=(workspace)
|
def workspace=(workspace)
|
||||||
@workspace_name = workspace.name
|
@workspace_name = workspace.name
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,58 @@
|
||||||
|
module Msf
|
||||||
|
class DBManager
|
||||||
|
module Migration
|
||||||
|
# Migrate database to latest schema version.
|
||||||
|
#
|
||||||
|
# @param verbose [Boolean] see ActiveRecord::Migration.verbose
|
||||||
|
# @return [Array<ActiveRecord::MigrationProxy] List of migrations that
|
||||||
|
# ran.
|
||||||
|
#
|
||||||
|
# @see ActiveRecord::Migrator.migrate
|
||||||
|
def migrate(verbose=false)
|
||||||
|
ran = []
|
||||||
|
ActiveRecord::Migration.verbose = verbose
|
||||||
|
|
||||||
|
ActiveRecord::Base.connection_pool.with_connection do
|
||||||
|
begin
|
||||||
|
ran = ActiveRecord::Migrator.migrate(
|
||||||
|
ActiveRecord::Migrator.migrations_paths
|
||||||
|
)
|
||||||
|
# ActiveRecord::Migrator#migrate rescues all errors and re-raises them
|
||||||
|
# as StandardError
|
||||||
|
rescue StandardError => error
|
||||||
|
self.error = error
|
||||||
|
elog("DB.migrate threw an exception: #{error}")
|
||||||
|
dlog("Call stack:\n#{error.backtrace.join "\n"}")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# Since the connections that existed before the migrations ran could
|
||||||
|
# have outdated column information, reset column information for all
|
||||||
|
# ActiveRecord::Base descendents to prevent missing method errors for
|
||||||
|
# column methods for columns created in migrations after the column
|
||||||
|
# information was cached.
|
||||||
|
reset_column_information
|
||||||
|
|
||||||
|
return ran
|
||||||
|
end
|
||||||
|
|
||||||
|
# Flag to indicate database migration has completed
|
||||||
|
#
|
||||||
|
# @return [Boolean]
|
||||||
|
attr_accessor :migrated
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
# Resets the column information for all descendants of ActiveRecord::Base
|
||||||
|
# since some of the migrations may have cached column information that
|
||||||
|
# has been updated by later migrations.
|
||||||
|
#
|
||||||
|
# @return [void]
|
||||||
|
def reset_column_information
|
||||||
|
ActiveRecord::Base.descendants.each do |descendant|
|
||||||
|
descendant.reset_column_information
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/core'
|
require 'msf/core'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
#
|
#
|
||||||
# This file is part of the Metasploit Framework and may be subject to
|
# This file is part of the Metasploit Framework and may be subject to
|
||||||
# redistribution and commercial restrictions. Please see the Metasploit
|
# redistribution and commercial restrictions. Please see the Metasploit
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/exploitation/cmdstager'
|
require 'rex/exploitation/cmdstager'
|
||||||
require 'msf/core/exploit/exe'
|
require 'msf/core/exploit/exe'
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/core/exploit/cmdstager'
|
require 'msf/core/exploit/cmdstager'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/core/exploit/cmdstager'
|
require 'msf/core/exploit/cmdstager'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/text'
|
require 'rex/text'
|
||||||
require 'msf/core/exploit/tftp'
|
require 'msf/core/exploit/tftp'
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'msf/core/exploit/cmdstager'
|
require 'msf/core/exploit/cmdstager'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id: $
|
|
||||||
|
|
||||||
require 'msf/core/exploit/cmdstager'
|
require 'msf/core/exploit/cmdstager'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/proto/dhcp'
|
require 'rex/proto/dhcp'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/exploitation/egghunter'
|
require 'rex/exploitation/egghunter'
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
###
|
###
|
||||||
#
|
#
|
||||||
|
|
|
@ -7,7 +7,6 @@ module Msf
|
||||||
# in a more intelligent way.
|
# in a more intelligent way.
|
||||||
#
|
#
|
||||||
# Author: jduck
|
# Author: jduck
|
||||||
# $Id$
|
|
||||||
###
|
###
|
||||||
|
|
||||||
module Exploit::FormatString
|
module Exploit::FormatString
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Msf
|
module Msf
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
#
|
#
|
||||||
# All exploit mixins should be added to the list below
|
# All exploit mixins should be added to the list below
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# This file is part of the Metasploit Framework and may be subject to
|
# This file is part of the Metasploit Framework and may be subject to
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/exploitation/omelet'
|
require 'rex/exploitation/omelet'
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
###
|
###
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
###
|
###
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Msf
|
module Msf
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Msf
|
module Msf
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/proto/tftp'
|
require 'rex/proto/tftp'
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# This mixin enables executing arbitrary commands via the
|
# This mixin enables executing arbitrary commands via the
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Msf
|
module Msf
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Msf
|
module Msf
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id: module.rb 12624 2011-05-15 23:51:53Z hdm $
|
|
||||||
##
|
|
||||||
|
|
||||||
module Msf
|
module Msf
|
||||||
module RPC
|
module RPC
|
||||||
|
|
|
@ -33,7 +33,9 @@ class Exploit
|
||||||
"exploit" => "Launch an exploit attempt",
|
"exploit" => "Launch an exploit attempt",
|
||||||
"rcheck" => "Reloads the module and checks if the target is vulnerable",
|
"rcheck" => "Reloads the module and checks if the target is vulnerable",
|
||||||
"rexploit" => "Reloads the module and launches an exploit attempt",
|
"rexploit" => "Reloads the module and launches an exploit attempt",
|
||||||
"reload" => "Just reloads the module"
|
"reload" => "Just reloads the module",
|
||||||
|
"run" => "Alias for exploit",
|
||||||
|
"rerun" => "Alias for rexploit",
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -197,6 +199,8 @@ class Exploit
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
alias cmd_run cmd_exploit
|
||||||
|
|
||||||
def cmd_exploit_help
|
def cmd_exploit_help
|
||||||
print_line "Usage: exploit [options]"
|
print_line "Usage: exploit [options]"
|
||||||
print_line
|
print_line
|
||||||
|
@ -204,6 +208,8 @@ class Exploit
|
||||||
print @@exploit_opts.usage
|
print @@exploit_opts.usage
|
||||||
end
|
end
|
||||||
|
|
||||||
|
alias cmd_run_help cmd_exploit_help
|
||||||
|
|
||||||
#
|
#
|
||||||
# Reloads an exploit module and checks the target to see if it's
|
# Reloads an exploit module and checks the target to see if it's
|
||||||
# vulnerable.
|
# vulnerable.
|
||||||
|
@ -227,6 +233,8 @@ class Exploit
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
alias cmd_rerun cmd_rexploit
|
||||||
|
|
||||||
def cmd_rexploit_help
|
def cmd_rexploit_help
|
||||||
print_line "Usage: rexploit [options]"
|
print_line "Usage: rexploit [options]"
|
||||||
print_line
|
print_line
|
||||||
|
@ -234,6 +242,8 @@ class Exploit
|
||||||
print @@exploit_opts.usage
|
print @@exploit_opts.usage
|
||||||
end
|
end
|
||||||
|
|
||||||
|
alias cmd_rerun_help cmd_rexploit_help
|
||||||
|
|
||||||
#
|
#
|
||||||
# Picks a reasonable payload and minimally configures it
|
# Picks a reasonable payload and minimally configures it
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/parser/arguments'
|
require 'rex/parser/arguments'
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Windows system error codes (0-499)
|
# Windows system error codes (0-499)
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module ElfParsey
|
module ElfParsey
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/elfparsey/elfbase'
|
require 'rex/elfparsey/elfbase'
|
||||||
require 'rex/elfparsey/exceptions'
|
require 'rex/elfparsey/exceptions'
|
||||||
require 'rex/image_source'
|
require 'rex/image_source'
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/struct2'
|
require 'rex/struct2'
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module ElfParsey
|
module ElfParsey
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module ElfScan
|
module ElfScan
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module ElfScan
|
module ElfScan
|
||||||
module Scanner
|
module Scanner
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module ElfScan
|
module ElfScan
|
||||||
module Search
|
module Search
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/text'
|
require 'rex/text'
|
||||||
require 'rex/arch'
|
require 'rex/arch'
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/text'
|
require 'rex/text'
|
||||||
require 'rkelly'
|
require 'rkelly'
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module ImageSource
|
module ImageSource
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/image_source/image_source'
|
require 'rex/image_source/image_source'
|
||||||
require 'rex/struct2'
|
require 'rex/struct2'
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module ImageSource
|
module ImageSource
|
||||||
class ImageSource
|
class ImageSource
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/image_source/image_source'
|
require 'rex/image_source/image_source'
|
||||||
require 'rex/struct2'
|
require 'rex/struct2'
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
# Version: $Revision$
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Rex::OLE - an OLE implementation
|
# Rex::OLE - an OLE implementation
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module PeParsey
|
module PeParsey
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module PeParsey
|
module PeParsey
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/image_source'
|
require 'rex/image_source'
|
||||||
require 'rex/peparsey/exceptions'
|
require 'rex/peparsey/exceptions'
|
||||||
require 'rex/peparsey/pebase'
|
require 'rex/peparsey/pebase'
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/image_source'
|
require 'rex/image_source'
|
||||||
require 'rex/peparsey/exceptions'
|
require 'rex/peparsey/exceptions'
|
||||||
require 'rex/peparsey/pebase'
|
require 'rex/peparsey/pebase'
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/peparsey/exceptions'
|
require 'rex/peparsey/exceptions'
|
||||||
require 'rex/struct2'
|
require 'rex/struct2'
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/peparsey/exceptions'
|
require 'rex/peparsey/exceptions'
|
||||||
require 'rex/peparsey/pebase'
|
require 'rex/peparsey/pebase'
|
||||||
require 'rex/struct2'
|
require 'rex/struct2'
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
|
|
||||||
# $Id$
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module PeScan
|
module PeScan
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
#
|
#
|
||||||
# DHCP Server support written by scriptjunkie
|
# DHCP Server support written by scriptjunkie
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
require 'rex/proto/dhcp'
|
require 'rex/proto/dhcp'
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
|
|
||||||
require 'rex/socket'
|
require 'rex/socket'
|
||||||
require 'rex/proto/dhcp'
|
require 'rex/proto/dhcp'
|
||||||
|
|
|
@ -43,10 +43,6 @@
|
||||||
# The latter has a minor bug in its separate_keys function.
|
# The latter has a minor bug in its separate_keys function.
|
||||||
# The third key has to begin from the 14th character of the
|
# The third key has to begin from the 14th character of the
|
||||||
# input string instead of 13th:)
|
# input string instead of 13th:)
|
||||||
#--
|
|
||||||
# $Id: ntlm.rb 11678 2011-01-30 19:26:35Z hdm $
|
|
||||||
#++
|
|
||||||
|
|
||||||
|
|
||||||
require 'rex/proto/ntlm/constants'
|
require 'rex/proto/ntlm/constants'
|
||||||
require 'rex/proto/ntlm/base'
|
require 'rex/proto/ntlm/base'
|
||||||
|
|
|
@ -40,9 +40,6 @@
|
||||||
# The latter has a minor bug in its separate_keys function.
|
# The latter has a minor bug in its separate_keys function.
|
||||||
# The third key has to begin from the 14th character of the
|
# The third key has to begin from the 14th character of the
|
||||||
# input string instead of 13th:)
|
# input string instead of 13th:)
|
||||||
#--
|
|
||||||
# $Id: ntlm.rb 11678 2011-01-30 19:26:35Z hdm $
|
|
||||||
#++
|
|
||||||
|
|
||||||
#this module defines the message class , useful for easily handling type 1/2/3 ntlm messages
|
#this module defines the message class , useful for easily handling type 1/2/3 ntlm messages
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id: $
|
|
||||||
#
|
#
|
||||||
# RFB protocol support
|
# RFB protocol support
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
#
|
#
|
||||||
# $Id: $
|
|
||||||
#
|
|
||||||
# RFB protocol support
|
# RFB protocol support
|
||||||
#
|
#
|
||||||
# @author Joshua J. Drake <jduck>
|
# @author Joshua J. Drake <jduck>
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id: $
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id: $
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id: $
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
#
|
#
|
||||||
# TFTP Server implementation according to:
|
# TFTP Server implementation according to:
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
require 'rex/proto/tftp'
|
require 'rex/proto/tftp'
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
# $Id$
|
|
||||||
require 'rex/socket'
|
require 'rex/socket'
|
||||||
require 'rex/proto/tftp'
|
require 'rex/proto/tftp'
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,5 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
#
|
|
||||||
# $Revision$
|
|
||||||
#
|
|
||||||
# $Id$
|
|
||||||
#
|
|
||||||
|
|
||||||
require 'rex/compat'
|
require 'rex/compat'
|
||||||
require 'rex/proto/tftp'
|
require 'rex/proto/tftp'
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module Zip
|
module Zip
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module Zip
|
module Zip
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# -*- coding: binary -*-
|
# -*- coding: binary -*-
|
||||||
##
|
|
||||||
# $Id$
|
|
||||||
##
|
|
||||||
|
|
||||||
module Rex
|
module Rex
|
||||||
module Zip
|
module Zip
|
||||||
|
|
|
@ -1259,6 +1259,8 @@ module Zip
|
||||||
@cdirOffset = ZipEntry::read_zip_long(buf)
|
@cdirOffset = ZipEntry::read_zip_long(buf)
|
||||||
commentLength = ZipEntry::read_zip_short(buf)
|
commentLength = ZipEntry::read_zip_short(buf)
|
||||||
@comment = buf.read(commentLength)
|
@comment = buf.read(commentLength)
|
||||||
|
# remove trailing \n symbol
|
||||||
|
buf.chomp!
|
||||||
raise ZipError, "Zip consistency problem while reading eocd structure" unless buf.size == 0
|
raise ZipError, "Zip consistency problem while reading eocd structure" unless buf.size == 0
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -53,7 +53,7 @@ class Metasploit3 < Msf::Auxiliary
|
||||||
res = sock.get_once(-1, 5)
|
res = sock.get_once(-1, 5)
|
||||||
|
|
||||||
# return true if this matches our vulnerable response
|
# return true if this matches our vulnerable response
|
||||||
( res and res == "\x03\x00\x00\x0b\x06\xd0\x00\x00\x12\x34\x00" )
|
( res and res.match("\x03\x00\x00\x0b\x06\xd0\x00\x00\x12\x34\x00") )
|
||||||
end
|
end
|
||||||
|
|
||||||
def report_goods
|
def report_goods
|
||||||
|
@ -121,16 +121,9 @@ class Metasploit3 < Msf::Auxiliary
|
||||||
"\x28" # PER encoded PDU contents
|
"\x28" # PER encoded PDU contents
|
||||||
end
|
end
|
||||||
|
|
||||||
def channel_request_one
|
def channel_request
|
||||||
"\x03\x00\x00\x0c" +
|
"\x03\x00\x00\x0c" +
|
||||||
"\x02\xf0\x80\x38" +
|
"\x02\xf0\x80\x38"
|
||||||
"\x00\x01\x03\xeb"
|
|
||||||
end
|
|
||||||
|
|
||||||
def channel_request_two
|
|
||||||
"\x03\x00\x00\x0c" +
|
|
||||||
"\x02\xf0\x80\x38" +
|
|
||||||
"\x00\x02\x03\xeb"
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def peer
|
def peer
|
||||||
|
@ -143,6 +136,7 @@ class Metasploit3 < Msf::Auxiliary
|
||||||
|
|
||||||
# check if rdp is open
|
# check if rdp is open
|
||||||
if not check_rdp
|
if not check_rdp
|
||||||
|
vprint_status "#{peer} Could not connect to RDP."
|
||||||
disconnect
|
disconnect
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
@ -153,18 +147,23 @@ class Metasploit3 < Msf::Auxiliary
|
||||||
# send userRequest
|
# send userRequest
|
||||||
sock.put(user_request)
|
sock.put(user_request)
|
||||||
res = sock.get_once(-1, 5)
|
res = sock.get_once(-1, 5)
|
||||||
|
user1 = res[9,2].unpack("n").first
|
||||||
|
chan1 = user1 + 1001
|
||||||
|
|
||||||
# send 2nd userRequest
|
# send 2nd userRequest
|
||||||
sock.put(user_request)
|
sock.put(user_request)
|
||||||
res = sock.get_once(-1, 5)
|
res = sock.get_once(-1, 5)
|
||||||
|
|
||||||
|
user2 = res[9,2].unpack("n").first
|
||||||
|
chan2 = user2 + 1001
|
||||||
|
|
||||||
# send channel request one
|
# send channel request one
|
||||||
sock.put(channel_request_one)
|
sock.put(channel_request << [user1, chan2].pack("nn"))
|
||||||
res = sock.get_once(-1, 5)
|
res = sock.get_once(-1, 5)
|
||||||
|
|
||||||
if res and res[8,2] == "\x3e\x00"
|
if res and res[7,2] == "\x3e\x00"
|
||||||
# send ChannelRequestTwo - prevent BSoD
|
# send ChannelRequestTwo - prevent BSoD
|
||||||
sock.put(channel_request_two)
|
sock.put(channel_request << [user2, chan2].pack("nn"))
|
||||||
|
|
||||||
print_good("#{peer} Vulnerable to MS12-020")
|
print_good("#{peer} Vulnerable to MS12-020")
|
||||||
report_goods
|
report_goods
|
||||||
|
|
|
@ -1,6 +1,4 @@
|
||||||
##
|
# -*- coding: binary -*-
|
||||||
# $Id: drda.rb 14774 2012-02-21 01:42:17Z rapid7 $
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# This file is part of the Metasploit Framework and may be subject to
|
# This file is part of the Metasploit Framework and may be subject to
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue