【Windows】一种自启项隐身术:常规管理工具无法查见

就在昨天(2号),安全客发布的《明修栈道,暗度陈仓:TA584组织投放“傲娇僵尸程序”并利用隐形注册表项实施攻击》一文,提到了一种极具迷惑性的自启隐藏技术。

这种技术在无防护的系统中,几乎能完美“隐身”,让常规排查手段束手无策。

出于好奇我就去复现了下,通过编译开源项目SharpHide,将指定程序(如tlzs.exe)植入系统自启机制。在注销、重启后,程序均能如期运行。然而,当我们试图在常规自启管理工具中寻找其踪迹时,却发现了一片“真空”

任务管理器-自启管理:无踪迹

系统配置msconfig:无踪迹

注册表编辑器:无踪迹

连神器 autoruns 里都没能识别到该启动项

这种“隐身术”的核心在于利用底层(内核)接口与上层接口的差异。

具体而言,SharpHide利用NtSetValueKey等底层接口,在注册表项中写入特殊的终止符。

而绝大多数上层管理工具(包括任务管理器、Autoruns等)在读取注册表时,一旦遇到终止符便会判定字符串结束并跳过,从而导致该启动项在这些工具中“隐形”。

值得注意的是,这项技术很早就存在了。文中所用到的 SharpHide 就是 Outflank B.V. 七年前便已开源的工具。

另外,测试了两款主流安全软件,一款未能检出该隐蔽启动项,另一款则成功捕获。

这表明,即便是公开很久的技术,也不能掉以轻心认为杀毒软件就一定防得住。

参考资料(#替换为.)

TA584组织投放“傲娇僵尸程序”并利用隐形注册表项实施攻击

anquanke#com/post/id/314678

Hidden in Plain Sight: TA584 Deploys “Tsundere Bot” & Invisible Registry Keys

securityonline#info/hidden-in-plain-sight-ta584-deploys-tsundere-bot-invisible-registry-keys/

SharpHide

github#com/outflanknl/SharpHide

更多游戏资讯请关注:电玩帮游戏资讯专区

电玩帮图文攻略 www.vgover.com