首页
社区
课程
招聘
[翻译]自启动方式 No.93(大意)
2018-11-24 20:09 5192

[翻译]自启动方式 No.93(大意)

2018-11-24 20:09
5192

        声明:本文及其软件仅用于学习交流,请勿用于商业用途和违法行为,使用产生的后果由使用者承担,本作者不承担任何法律责任和风险。

如需转载请注明一下出处,谢谢~。

        原文:http://www.hexacorn.com/blog/2018/10/12/beyond-good-ol-run-key-part-93/

        经过我之前对kernel32.dll的多次分析,我很惊讶地发现了这个启动方式。我看到一个代码分支(之前没有讨论过这个分支)负责枚举注册表子键并加载dll,这是一件非常难得的事情。

        实际代码驻留在NotifyUILanguageChange API中。尽管MS声称它不受支持,但仍有许多组件使用它。它撤销的可能性很低。据我所知,该函数被调用 只有当某些系统设置被改变的时候,该函数就会被调用 ,我将立即向你们展示如何触发他。

        该代码枚举的注册表项如下所示:

HKLM\System\CurrentControlSet\Control\MUI\CallbackDlls\{ENTRY}\DllPath=<DLL>

        在Windows 7,我们可以看到若干项:
 
        Windows 10更多,我真的怀疑这段代码正要撤销。(原文这句话可能存在错误,与上文不符。也可能是本人翻译错误。)

        每个项都包含DllPath值,该值是某个库的路径。唯一的要求就是,库必须有签名。
        那现在,如何触发呢?
        很简单,只需要修改系统地区。

        一旦你修改了系统地区,你就能通过ProcMon看到记录。

        准确地说,DLL什么时候被加载,如何被加载,我还不是十分清楚,可能还有其他条件能够使其触发。把这些条件找出来,这可以作为读者的家庭作业。

        这当然不是最好的驻留机制,但也是另一个值得关注的地方,以防万一……


---------------------------------------------------------------------------------
        后记,我在看雪潜了好多年了,平时偶尔会问一些问题,都能得到雪友的帮助,非常感谢大家的帮助。
        我从11年开始学这一行,现从事威胁情报分析工作,平时看到一些有用的文章,一直想翻译过来给大家分享,同时锻炼一下自己翻译能力,翻译的不好的地方,希望大家谅解和指正。

[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

最后于 2018-11-24 20:10 被yyyang编辑 ,原因:
收藏
点赞2
打赏
分享
最新回复 (3)
雪    币: 6103
活跃值: (1207)
能力值: (RANK:30 )
在线值:
发帖
回帖
粉丝
CCkicker 2018-11-26 11:27
2
0
感谢分享!
雪    币: 9939
活跃值: (2138)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
VCKFC 2018-12-16 10:38
3
0
够细心 , 这种方法都可以发掘
雪    币: 965
活跃值: (89)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
ielts 2018-12-17 06:31
4
0
感谢分享! 
游客
登录 | 注册 方可回帖
返回