简单分析
软件安装后只有一个exe文件,软件打开后界面风格很像一个网页
}%M`A7[JV6543K){Q5AK8A2.png (58.07 KB, 下载次数: 0)
下载附件
2024-5-8 23:38 上传
X64dbg附加软件后,发现它加载了一个edge的dll
ZPAOP7BMTUBS~L]UOPC~L9W.png (87.34 KB, 下载次数: 0)
下载附件
2024-5-8 23:38 上传
搜索后发现是使用webview2 后会使用的一个
EmbeddedBrowserWebView.dll
。
WebView2
WebView2控件使用微软的Edge作为渲染引擎,WebView2允许你在本地App里面嵌入web相关的技术(例如HTML,CSS和JavaScript)。
既然是web就要看能不能打开开发者工具了,进入微软webview2开发者文档,可以看到提供了一个OpenDevToolsWindow函数来打开开发者工具
7~8%`)IA`MEC7](5ZML4J{4.png (50.74 KB, 下载次数: 0)
下载附件
2024-5-8 23:39 上传
IDA 打开EmbeddedBrowserWebView.dll ,加载符号文件,查看OpenDevToolsWindow,可以看到它是embedded_browser_webview_current下的一个虚函数
J@I@UD3QOB{5~BM}HSL2B42.png (50.18 KB, 下载次数: 0)
下载附件
2024-5-8 23:40 上传
查看微软提供的webview2的代码示例Win32_GettingStarted,可以看到它调用了一个Navigate函数来访问页面
EG)XJ3101Q2LELI(9`(HGIJ.png (35.69 KB, 下载次数: 0)
下载附件
sam
2024-5-8 23:42 上传
Navigate函数也是embedded_browser_webview_current下的一个虚函数,这里我通过修改虚表中Navigate的地址指向,
EmbeddedBrowserWebView.dll text段末尾空闲位置调用OpenDevToolsWindow
MOX17G`B0DN]EZZ8PBRP%TN.png (27.91 KB, 下载次数: 0)
下载附件
2024-5-8 23:42 上传
X64dbg 打上补丁 ,替换dll
这时候开发者工具就会弹出来了。
U6(DN@L{QX2R8S089G9RK}F.png (49.65 KB, 下载次数: 0)
下载附件
2024-5-8 23:45 上传
代码和资源提取
在开发者工具的源代码tab 导出所有的js文件和其它资源文件
R(KS@FS4B_[$R@G(_D067SQ.png (54.7 KB, 下载次数: 0)
下载附件
2024-5-8 23:47 上传
并记下它的虚拟域名
环境搭建
在之前的Win32_GettingStarted gitclone下来,使用SetVirtualHostNameToFolderMapping设置虚拟域名并Navigate调用
QV4E1P[$~(@QRJIZINCQ6ZO.png (67.77 KB, 下载次数: 0)
下载附件
2024-5-8 23:49 上传
编译运行后开发者工具中会有几个报错。根据工具报错的提示,到正常软件的开发者工具获取正常环境就行了。
}))M)GVQKL}QMJ6[}7GL$H8.png (194.53 KB, 下载次数: 0)
下载附件
tihuan
2024-5-8 23:58 上传
与开发者的工具的本地覆盖相比,提取出代码后js更容易修改和稳定,而且c++提供的操作也会更灵活。
EmbeddedBrowserWebView.dll 文件位于 C:\Program Files (x86)\Microsoft\EdgeWebView\Application\124.0.2478.80\EBWebView\x64 目录下,不同版本应该不通用
EmbeddedBrowserWebView.7z
(1.58 MB, 下载次数: 0, 售价: 2 CB吾爱币)
2024-5-8 23:51 上传
点击文件名下载附件
修改后
售价: 2 CB吾爱币 [记录]
[购买]
下载积分: 吾爱币 -1 CB