Update security.js

This commit is contained in:
Namhyeon Go 2022-11-06 17:49:06 +09:00
parent 2cd457dc22
commit 47f5b9857a

View File

@ -1,50 +1,51 @@
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
// Security API // Security Policy API
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
var SYS = require("lib/system");
var FILE = require("lib/file");
var REG = require("lib/registry"); var REG = require("lib/registry");
var WSH = CreateObject("WScript.Shell");
exports.VERSIONINFO = "Security Lib (security.js) version 0.1"; var DISABLED = 0x00000001;
exports.global = global; var ENABLED = 0x00000000;
exports.require = global.require;
exports.DISABLED = 0x00000001; function __BOOL_TO_DWORD__(x) {
exports.ENABLED = 0x00000000; return x ? DISABLED : ENABLED;
}
// check 'run as administrator' // Check 'Run as administrator'
exports.isElevated = function() { function isElevated = function() {
try { try {
WSH.RegRead("HKEY_USERS\\s-1-5-19\\"); CreateObject("WScript.Shell").RegRead("HKEY_USERS\\s-1-5-19\\");
return true; return true;
} catch (e) { } catch (e) {
return false; return false;
} }
}; }
// turn on/off Windows Defender // Turn on/off Windows Defender
exports.setAntiSpyware = function(buffer) { function setDisableAntiSpyware(x) {
var path = "SOFTWARE\\Policies\\Microsoft\\Windows Defender"; var path = "SOFTWARE\\Policies\\Microsoft\\Windows Defender";
var key = "DisableAntiSpyware"; var key = "DisableAntiSpyware";
REG.write(REG.HKLM, path, key, buffer, REG.DWORD); REG.write(REG.HKLM, path, key, __BOOL_TO_DWORD__(x), REG.DWORD);
}; };
// trun on/off Registry Editor (regedit) // Trun on/off Registry Editor (regedit)
exports.setRegedit = function(buffer) { function setDisableRegistryTools(x) {
var path = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System"; var path = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System";
var key = "DisableRegistryTools"; var key = "DisableRegistryTools";
REG.write(REG.HKLM, path, key, buffer, REG.DWORD); REG.write(REG.HKLM, path, key, __BOOL_TO_DWORD__(x), REG.DWORD);
}; }
// turn on/off Task Manager (taskmgr) // Turn on/off Task Manager (taskmgr)
exports.setTaskmgr = function(buffer) { function setDisableTaskMgr(x) {
var path = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System"; var path = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System";
var key = "DisableTaskMgr"; var key = "DisableTaskMgr";
REG.write(REG.HKLM, path, key, buffer, REG.DWORD); REG.write(REG.HKLM, path, key, __BOOL_TO_DWORD__(x), REG.DWORD);
}; }
// detect antivirus from security center // Get antivirus products list from the security center
exports.detectAntivirus = function() { function getAntiVirusProducts() {
var displayNames = []; var displayNames = [];
var objWMIService = GetObject("winmgmts:\\.\root\SecurityCenter2"); var objWMIService = GetObject("winmgmts:\\.\root\SecurityCenter2");
@ -56,4 +57,27 @@ exports.detectAntivirus = function() {
} }
return displayNames; return displayNames;
}; }
// Open the threat setting window on Windows Defender
function OpenThreatSettings() {
var FN_MSASCui = SYS.getEnvString("%ProgramFiles%") + "\\Windows Defender\\MSASCui.exe";
if (!FILE.fileExists(FN_MSASCui)) {
SHELL.runAs(FN_MSASCui); // old Windows Defender
} else {
SHELL.runAs("windowsdefender://Threatsettings");
}
}
exports.DISABLED = DISABLED;
exports.ENABLED = ENABLED;
exports.setDisableAntiSpyware = setDisableAntiSpyware;
exports.setDisableRegistryTools = setDisableRegistryTools;
exports.setDisableTaskMgr = setDisableTaskMgr;
exports.getAntiVirusProducts = getAntiVirusProducts;
exports.OpenThreatSettings = OpenThreatSettings;
exports.VERSIONINFO = "Security Policy Module (security.js) version 0.2";
exports.AUTHOR = "catswords@protonmail.com";
exports.global = global;
exports.require = global.require;