-
-
[原创]BinaryAI 新版初体验:恶意样本分析新范式
-
发表于: 6天前 263
-
前段时间腾讯科恩实验室团队发布了BinaryAI(66bK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2T1K9h3&6S2M7Y4W2S2K9g2)9J5k6h3y4F1i4K6u0r3 )二进制分析平台的新版本,他们从AI-Native的思路重新设计了平台。最近收到了朋友的推荐和内测邀请,我深入体验了一下分析流程。楼主平常接触恶意样本比较多,这次拿出一个较为复杂的Linux botnet木马来体验下分析流程,重点体验下平台的交互体验,分析准确性,以及和传统的本地样本分析有什么区别。这里我将一个使用过程的一个真实分析对话共享出来方便大家学习。
db5K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6h3u0A6L8X3q4J5P5h3q4A6i4K6u0W2j5$3&6Q4x3V1k6Q4x3@1k6$3K9h3g2%4i4K6y4p5j5$3S2S2N6q4)9J5y4X3q4E0M7q4)9K6b7Y4m8J5L8$3A6W2j5%4c8Q4x3@1c8K6j5W2)9#2k6U0l9I4e0e0c8i4d9p5f1@1z5e0u0K9c8p5M7@1d9p5Z5$3y4K6g2w2y4#2j5J5d9W2R3H3i4K6t1$3j5h3#2H3i4K6y4n7j5$3S2S2N6q4)9K6c8r3y4Z5j5i4c8Q4x3X3b7J5x3e0p5H3x3o6x3@1x3K6f1%4y4K6t1#2x3K6x3I4y4o6f1$3i4K6u0W2x3b7`.`." target="_blank">8a4K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2T1K9h3&6S2M7Y4W2S2K9g2)9J5k6h3y4F1i4K6u0r3i4K6y4r3N6X3W2W2N6#2)9K6c8r3k6A6L8r3g2Q4x3U0k6S2L8i4m8Q4x3@1u0H3M7X3!0B7k6h3y4@1i4K6y4p5M7$3u0Q4y4h3j5H3x3f1@1@1g2@1S2q4y4o6V1J5h3V1c8s2y4p5S2v1y4U0M7#2d9K6N6h3x3V1A6j5x3q4)9J5y4X3q4E0M7q4)9K6b7X3y4Z5j5i4c8Q4x3@1c8U0K9r3q4@1i4K6u0V1x3U0p5I4x3o6l9K6y4o6x3#2y4K6M7J5y4e0x3K6x3e0b7#2y4W2)9J5k6e0p5`.
先总结这个平台几个能解决逆向分析真实痛点的地方:
完成注册和账号激活以后,会进入到工作区,每个新用户会提供一定的积分,如果通过平台向团队提供使用反馈可以获得更多积分奖励。
新建一个工作区后,进入到分析主界面。整个界面是比较简洁的,在左侧上传目标样本后,在对话框输入提示词后就开始分析了。如果不知道提示词怎么写,还可以从下方的预置的常用提示词开始选择。
我这里选择了一个比较复杂的botnet样本进行演示,这个样本涉及多重加壳混淆技术,在没有AI的年代至少需要3天以上的逆向工作才能完全理清楚样本的行为。上传样本后我输入了一段自己收藏的提示词:
对给定二进制样本做持续的只读分析:先建立整体认知,再层层深入,每完成一步就沉淀结论与证据;用多来源交叉印证,按"已确认/推断/未知"标注每项结论的强度与边界。遇到瓶颈先记录、换角度继续,不停留在单点。使用合适的工具进行完整逆向分析。
调查过程发现的新线索必须分析闭环,不要中断不要询问用户意见,直到所有存疑项目证据闭合。最终整理一份完整的分析报告。
这段提示词可以让模型自己探索出样本出现的新线索,最大程度的自主调查可疑点,避免中断或者过多询问用户。
开始分析后大模型会自动调用BinaryAI自带的工具开始分析,BinaryAI用了一款科恩实验室自研的反编译工具bq,点击展开思维链可以具体看到模型的分析过程。
中途可以观察到模型能够自主编写python脚本来完成脱壳动作,这个样本是使用了多层upx魔改壳的,可以看到模型能够正确的将关键的组件解密出来。
跑了差不多一个小时以后,大模型总结了对这个样本的初步理解。可以看出来对关键的IOC和运行逻辑基本都分析出来了;最后还会带有后续的跟进项,方便用户继续深挖样本的更多细节。


模型回答中会把一些关键地址通过下划线标注出来,点击可以展开反编译 / 反汇编的视图。右侧窗口展开的应该就是bq提供的反编译结果了。有逆向经验的老手可以通过二次确认来合适模型的生成结果。引导模型进行进一步的深入分析。
后续的分析其实也没有太多技巧可言,模型会自己深挖线索,但是中途还是偶尔会中断询问用户意见,这时候直接回复继续分析。繁重的逆向工作变成了大模型鼓励师了。随着样本分析的深入,所有的发现和实锤证据都会整合到一个markdown文件,有些被推翻的结论会及时被修订。
最后输出的报告把所有证据和关键点都梳理清楚了,中间还有ascii的图示作为解释。
下图展示了本次目标样本的完整结构,可以看到里面用到了多层的混淆,整个样本具备提权,伪装,动态链接库注入,持久化,挖矿等多种威胁行为。
对于关键的恶意行为序列,模型也很好的整理出来了。
详细的分析报告我通过链接分享出来,感兴趣的读者可以深入阅读:017K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2T1K9h3&6S2M7Y4W2S2K9g2)9J5k6h3y4F1i4K6u0r3i4K6y4r3N6X3W2W2N6#2)9K6c8r3k6A6L8r3g2Q4x3U0k6S2L8i4m8Q4x3@1u0H3M7X3!0B7k6h3y4@1i4K6y4p5M7$3u0Q4y4h3j5H3x3f1@1@1g2@1S2q4y4o6V1J5h3V1c8s2y4p5S2v1y4U0M7#2d9K6N6h3x3V1A6j5x3q4)9J5y4X3q4E0M7q4)9K6b7Y4m8S2N6r3S2Q4x3@1c8Q4x3U0f1J5c8Y4N6G2M7X3E0K6M7r3q4U0k6g2)9J5y4e0u0r3M7s2N6F1K9$3W2@1i4K6u0V1P5r3#2J5K9h3N6Q4x3X3c8U0K9r3q4A6L8W2)9J5k6s2u0W2M7r3!0J5N6q4)9J5k6h3#2V1
接下来我还验证了BinaryAI是否具备样本的溯源归类能力,通过工具调用可以看到模型调用了网络搜索能力,通过IOC的检索定位正确识别出来样本属于perfctl 恶意样本家族,并且关联到了公开报告。
最后为了方便大家理解样本的工作机制和关键逻辑,我在附件上传了一个skill,通过这个skill可以输出一份可交互的报告。be2K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2T1K9h3&6S2M7Y4W2S2K9g2)9J5k6h3y4F1i4K6u0r3i4K6y4r3N6X3W2W2N6#2)9K6c8r3k6A6L8r3g2Q4x3U0k6S2L8i4m8Q4x3@1u0H3M7X3!0B7k6h3y4@1i4K6y4p5M7$3u0Q4y4h3j5H3x3f1@1@1g2@1S2q4y4o6V1J5h3V1c8s2y4p5S2v1y4U0M7#2d9K6N6h3x3V1A6j5x3q4)9J5y4X3q4E0M7q4)9K6b7Y4m8S2N6r3S2Q4x3@1c8Q4x3U0f1J5c8Y4N6G2M7X3E0K6M7r3q4U0k6g2)9J5y4e0u0r3M7s2N6F1K9$3W2@1i4K6u0V1P5r3#2J5K9h3N6Q4x3X3c8U0K9r3q4A6L8W2)9J5k6s2u0W2M7r3!0J5N6q4)9J5k6h3S2@1L8h3H3`.
这里也把skill分享出来,以后大家分享样本分析和逆向成果的时候,就不用再贴IDA界面截图了,生成的报告可读性很高。



最后再总结下使用一段时间后观察到的优缺点
使用过程中还是发现不少可以持续优化的地方
对给定二进制样本做持续的只读分析:先建立整体认知,再层层深入,每完成一步就沉淀结论与证据;用多来源交叉印证,按"已确认/推断/未知"标注每项结论的强度与边界。遇到瓶颈先记录、换角度继续,不停留在单点。使用合适的工具进行完整逆向分析。