简单分享一个通过TLS反调试来反制红队,当红队试图调试的话,则会成功调用我们的shellcode,直接反打红队。
(PS:凭什么蓝队就要挨打)
1.
TLS有一个特点,就是在程序EP执行之前就运行。那根据这一特性,就可以达到目的。
对于TLS,在公众号之前的文章中有过分析(在16.2的部分):
分析
达达,公众号:Th0r安全PC端恶意代码分析Lab15.1-18.5
2.
TLS调用过程分析:
PIMAGE_TLS_CALLBACK _tls_callback = 我们的回调函数;
//回调函数原型
void NTAPI __stdcall TLS_CALLBACK(PVOID DllHandle, DWORD dwReason, PVOID Reserved);
3.
正常代码分析:在下方代码中,可以看到TLS的回调函数test是比main函数更加提前执行的。当进程创建时,就执行了test函数
4.
反制红队:在下图中,我首先准备了一个shellcode(弹窗),当程序创建时,则先调用我们的shellcode
接下来扔到OD里看一下:
可以看到,程序在进程创建时,就首先调用了我们的shellcode。当shellcode执行完才会载入程序。
5.
如何让红队上钩呢??(当然这个文案不够吸引人)
遇到这种情况傻子才会打开,红队选手普遍第一反应就是扔OD找关键信息,当扔OD后,就会成功加载我们的shellcode,并把红队选手的脸打肿...
结尾:这是很简单的一种反调试手段,具体可以深入改更骚的来反制。
如何分析TLS程序,可以查看下面的16.2部分:
分析
达达,公众号:Th0r安全PC端恶意代码分析Lab15.1-18.5
原文始发于微信公众号(Th0r安全):利用TLS反制攻击者
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论