乐于分享
好东西不私藏

某厂商EDR卸载程序逆向分析

某厂商EDR卸载程序逆向分析

ps:本次逆向分析源于一位个人朋友的求助。对方日常工作环境中安装了一款企业级EDR软件,因该软件与部分业务软件存在兼容性问题,希望执行卸载。

信息收集

运行软件卸载程序,弹框需输入管理员口令

OpenArk中查看卸载Edr相关进程。AisEsmAgentUninstall.exe 为卸载执行体,AisEsmVerify.exe为卸载前的口令校验器。

查看软件程序目录相关文件,发现几个txt文件,其中verify_uninstall.txt中出现了以下内容

该文本分成3段,以空格分开,后两段分别为32位、64HEX。因此,基本可以确认该文件就是EDR用于离线卸载验证的关键文件。

程序逆向

打开IDA,搜索verify_uninstall.txt字符串,通过交叉引用找到sub_14001C4C0,经初步分析判定为本地口令校验函数。

解析verify_*.txt文件

验证逻辑

理清楚验证算法逻辑后,编写相关校验脚本。由于程序并没有签名校验verify_uninstall.txt,可以自定义密码生成一组新的token进行替换

替换过程中发现目标文件夹没有写权限

管理员权限打开OpenArk,进入内核模式,在系统回调->Minifilters中找到difile,右键选择禁用过滤器即可正常修改

修改完成后,双击卸载程序,输入密码即可正常卸载

卸载尝试
如果你也遇到了类似情况,希望尝试通过本文分析出的方式进行卸载,可参考以下步骤。
1、通过OpenArk->系统回调->Minifilters禁用相关过滤器
2、修改verify_uninstall.txt内容
1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa b2e79d127e7136034f9448de715f5cff8350093c9568f458d715d9475d7040ff
3、运行卸载程序,输入密码:123456
注:本文内容仅供逆向工程技术学习、安全研究及OpenArk工具使用技巧交流之用。文中涉及的EDR(终端检测与响应)软件卸载程序分析,旨在通过技术手段理解软件行为与系统交互机制,提升安全人员对终端防护产品的认知与分析能力。