windbg调试js脚本
目录
1.案例1——JS添加外部拓展
查找Run相关的函数
查看堆栈
3.案例3——WScript XMLHTTP对象
相关视频教程
有问题或者了解更多视频教程联系作者
建议你关注下,毕竟全网技术栈最全公众号,总有涉及到你的领域。
Windows上执行JavaScript脚本时往往通过API调用com接口来获取js解析引擎不具备的外部功能。下面的代码本质上是实例化com接口对象加载对应的COM DLL然后使用其中的函数功能。ps:powershell一样能做
1、new ActiveXObject("Shell.Application");
2、WScript.CreateObject("Wscript.Shell");
写一段js代码进行测试
var oShell = new ActiveXObject("Shell.Application");
var commandtoRun = "calc.exe";
oShell.ShellExecute(commandtoRun,"","","","1");
使用cmd传入参数
windbg.exe C:\Windows\System32\wscript.exe C:\Users\XXXX\Desktop\jsTest.js
写一段python脚本,从注册表中查找com接口对应的dll信息
from winreg import *
import sys
try:
objectName = sys.argv[1]
except:
sys.exit(1)
try:
hReg = ConnectRegistry(None,HKEY_CLASSES_ROOT)
hCLSIDKey = OpenKey(hReg, objectName+"\CLSID")
CLSID=QueryValue(hCLSIDKey, "")
if CLSID:
hKey = OpenKey(hReg, "CLSID\\"+CLSID)
description = QueryValue(hKey, "")
hKey = OpenKey(hReg, "CLSID\\"+CLSID+"\\InProcServer32")
dll = QueryValueEx(hKey, "")[0]
print("Object Name: "+objectName)
print("CLSID: "+CLSID)
print("Description: "+description)
print("dll: "+dll)
else:
print("No CLSID")
except:
print("Error")
sys.exit(2)