手工解决银狐类木马的反沙箱对抗

admin 2025-12-25 02:56:22 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文探讨银狐木马的反沙箱对抗与手工分析方案。针对沙箱无法捕获关键行为的问题,作者提出通过比对识别意图,利用APIMonitor定位检测逻辑。方案包括在虚拟机或真实物理机中安装办公软件伪装环境,并进行长时间流量捕获与样本关联分析,以低成本绕过反沙箱限制,获取C2信息。 综合评分: 89 文章分类: 恶意软件,应急响应,逆向分析,免杀,实战经验


cover_image

手工解决银狐类木马的反沙箱对抗

原创

jishuzhain

OnionSec

2025年8月16日 16:34 广东

“银狐”类家族木马(又名:“游蛇”“谷堕大盗”等)是一类针对企事业单位管理人员、财务人员、销售人员及电商卖家进行钓鱼攻击的木马。攻击团伙通过投递远控木马,在获得受害者的计算机控制权限后会在其系统内长期驻留,并监控用户日常操作。待时机成熟时,攻击者会利用受感染设备中已登录的聊天工具软件(如微信等)发起诈骗。此外,该家族也经常使用高仿微信号进行诈骗。

上述介绍引用来源:https://www.360.cn/n/12373.html

从2023年初接触到这类木马,至今为止遇到的银狐类木马,大部分样本除了可由沙箱等分析系统直接获取关键行为与回连C2流量外,仅有极少部分样本会存在对沙箱等虚拟化环境的检测与对抗,预估比例是100个样本会存在1个无法释放关键行为,最终这会导致关键行为无法被释放从而捕获而用于防御性检测。针对这类情况会进行评估是否需要投入人力去手工深度分析样本获取关键行为,本小文就是记录一下因需求而需要解决问题的过程,仅供参考。

我的核心目的还是在于尽量不使用手工分析样本的方法来解决我当下的问题,接下来所有的思路都围绕这个核心目的展开。

反沙箱现象与现实攻防的本质问题

检测系统环境信息判断是否为真实用户的Windows系统机器环境,确保样本无法在大部分动态分析检测环境中被完整记录关键行为。这是此类恶意文件所具备的目的与策略。沙箱系统所建立的Windows系统环境始终与现实生活中真实的物理机器存在差异,而这部分差异在沙箱建设的投入成本有限的情况下是无法被完全弥补甚至补全的。这也就是说,不管在怎么建设沙箱增强沙箱的反反沙箱策略的能力,对于黑客或者攻击者来说依然有攻击面或者方法去识别出样本所处的系统环境是否为真实的用户机器环境。这是由攻防成本投入不同的本质因素决定的现实现象,并不是说防御者天然就比攻击者技术落后或者思路落后。

快速发现反沙箱意图

如何快速发现反沙箱意图呢?核心方法是比对。

场景1:

如果在应急响应场景获取了样本,但是将样本投递A沙箱分析,结果是没有获取到关键行为与回连C2地址,那么大概率就是存在对抗意图,此时如果投递给B沙箱,发现B沙箱也没有给出关键行为与C2,随后在本地设置的虚拟机环境自行运行样本获取行为,如果可获取关键行为与C2,那么可以肯定的是确实存在反沙箱意图。

场景2:

如果在应急响应场景获取了样本,但是将样本投递A沙箱与B沙箱分析,结果都是没有获取到关键行为与回连C2地址。在本地设置的虚拟机环境自行运行样本获取行为,结果也是没有获取到关键行为与C2。那么可以肯定的是此类样本的反沙箱对抗强度会比较高,需要获取更细节的数据才能得到对抗方法是什么,一般会直接采用API Monitor等监控工具,直接对此类样本的运行过程实现API级别的监控记录,人工对监控的日志数据进行分析获取结论。

http://www.rohitab.com/apimonitor

场景3

如果在应急响应场景获取了样本,但是将样本投递A沙箱与B沙箱分析,结果都是没有获取到关键行为与回连C2地址。在本地设置的虚拟机环境自行运行样本获取行为,结果也是没有获取到关键行为与C2。接着采用API Monitor等监控工具实现监控,从捕获的数据分析依然没有可用信息帮助发现对抗方法是什么。准备真实的物理机器作为病毒分析机器,投递样本运行分析记录,记录外联请求的流量。持续1天等长时间段的条件,依然未能获取到关键行为与C2信息。表明此类样本过于变态,超出了常理认知的恶意软件的入侵与驻留意图的表现,也有可能是黑客或者开发人员编写木马时对场景或者逻辑理解不对,引起异常情况。

准备真实的物理机器作为病毒分析机器,会涉及到如何多次使用的问题,我们不可能每次执行完病毒样本后就重新安装一下系统,这样子是比较蠢的方法,虽然目的是有效的。一般采用镜像还原的方式,例如我会使用“易数一键还原”软件工具帮助我实现低成本的还原系统。

https://www.onekeyrestore.cn/

本文要解决的问题是场景2与场景3,对于场景2的解决方法是拥有一定的分析与历史案例的经验,提前预判流行的反沙箱对抗可能会使用的方法是什么?例如检测CPU数量与内存大小、检测正在运行的进程数量、检测本地时间、检测语言环境、检测当前出口IP是否为国内地址以及检测当前系统环境是否安装了微信QQ以及钉钉等办公类软件。优先获知这类常用的对抗方法可以比较方便地在分析API监控日志数据时比较快速地定位到关键的日志,从而直接判断出该样本采用的对抗方法是什么?

比如如果样本检测当前系统环境是否有安装微信QQ以及钉钉等这类国内常见的软件,在API监控日志数据中会表现为出现含有关键词的绝对路径或者相对路径,同时会携带有报错等信息,随后的API监控日志会出现进程退出或者持续循环等现象,又或者出现记录被中断等现象。此时遇到这类情况,我们可以直接验证猜想,在分析样本的虚拟机环境里安装好微信QQ或者钉钉等软件,再次运行样本进行API调用监控,直到后续记录的监控日志出现了与之前不一样的内容,表明此处的对抗方法已经被成功绕过。如果出现了久违的网络连接的API调用日志,那么距离获取C2信息也就不远了,获取关键行为与C2的目的也就达成了。

对于场景3的解决,还是得提前准备真实的物理机器作为病毒分析机器,投递样本运行分析记录,记录外联请求的流量。家里面有闲置的笔记本等可以优先用于这类场景,在外部物理机器设置WiFi热点,让笔记本连接该热点,同时在外部机器对该网卡进行抓包记录,这样子避免了可疑的分析痕迹,完全模拟出真实用户的物理机器场景,可以解决99.9%的反沙箱类恶意文件的行为释放不全的问题。

针对于某类样本可能检测本地时间,例如只有驻留6个小时后才能启动发起流量请求的情况,可以直接在闲置笔记本机器上手工修改机器时间,由具体场景决定需要设置什么时间点。时间允许的情况下,可以在外部物理机器上对其网卡实现长时间抓包,例如好几天,避免错过请求流量的问题。实现长时间的抓包可以完全规避掉沙箱等分析环境只有有限时间分析样本的条件限制,例如大部分沙箱环境一般仅能分析1-6分钟等时长来记录样本的行为。

这些工作设置好后基本上就可以避免掉繁琐的手工对样本进行深度分析获取关键行为与C2,手工分析样本的成本巨大,如果思路独特可以在半个小时内就可以解决问题,或者穷尽思路依然没有解决该问题,那么可能好几天都没有办法解决该问题,手工分析样本解决具体问题的不确定性过高。

大胆思考,发散思路

在上述方法都使用完成后,如果依然未能解决该问题。确实需要发散思路,例如如果样本A在所有方法都使用完成后依然未能解决问题,那么就需要找到它的核心关联样本,利用关联思路来辅助解决我们的问题。如果发现母体样本A的关键行为释放的来源的核心是文件B,但是样本A在所有方法都实验后依然解决不了问题,如果通过关联搜索文件B找到了对应的样本C,而样本C能被获取到关键行为与C2,那么也可以变相解决了当前的问题,这里的核心在于关联思路,不纠结于样本A这个母体文件,而只关注我们当前面临的问题。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:OnionSec jishuzhain《手工解决银狐类木马的反沙箱对抗》

评论:0   参与:  2