RedSun漏洞的教训:为什么杀毒产品不该“把文件写回去”?Defender修复措施完整清单
RedSun漏洞的教训为什么杀毒产品不该“把文件写回去”Defender修复措施完整清单【免费下载链接】RedSunThe Red Sun vulnerability repository项目地址: https://gitcode.com/gh_mirrors/re/RedSunRedSun是一个Red Sun漏洞仓库揭示了Windows Defender文件处理中的一个设计级缺陷当杀毒程序发现带“云占位符”标记的恶意文件时不是将其删除反而把文件写回原位置。本文用通俗的方式讲清RedSun漏洞的原理拆解PoC攻击链并给出一份可照做的Defender修复措施清单。什么是RedSun一个“好笑”的Windows Defender漏洞RedSun仓库的 README.md 把漏洞描述得很“幽默”Windows Defender发现恶意文件带有云标签后竟“自作主张地把文件重写回它发现的位置”。作者的吐槽同样直接杀毒产品的职责应该是删除恶意文件而不是确保文件“在场”。这个“写回”动作正是整个漏洞的根源。PoC程序RedSun.exe利用它覆盖了System32目录下的系统文件最终弹出一个nt authority\system的高权限命令行。漏洞原理三步骗过Defender“把文件写回去”完整的攻击逻辑在 RedSun.cpp 中可以概括为三步第一步触发Defender做“影子副本”PoC先在临时目录创建文件TieringEngineService.exe内容就是经典的EICAR杀软测试串见 RedSun.cpp#L621。模拟“执行”后Defender实时防护被触发并按惯例用VSS对磁盘做卷影副本再把文件隔离。此时PoC的监控线程ShadowCopyFinderThreadRedSun.cpp#L257立刻找到新出现的HarddiskVolumeShadowCopy设备锁定影子副本中的恶意文件并对其申请批量oplock批量操作锁。这把锁是后续“写回”行为的关键。第二步给恶意文件打上“云占位符”标记Windows的云文件功能类似OneDrive“按需下载文件”会让磁盘上部分文件变成占位符文件也就是俗称的“云标签”文件本体不在本地需要时再从云端拉取。PoC的DoCloudStuff函数RedSun.cpp#L449调用Cloud Files API注册同步根、创建同名文件让该文件在磁盘上的“原始位置”变成一个云端占位符。第三步用目录联接把“原位置”指向System32这是最“阴”的一步PoC重命名临时目录后重建同名目录并把该目录设置为指向C:\Windows\System32的联接点junction见 RedSun.cpp#L713。于是当Defender执行“把文件写回原位置”时原位置已经变成了系统目录System32。PoC再把自己复制为System32\TieringEngineService.exe并借Tiering Engine服务运行它RedSun.cpp#L767。该服务以SYSTEM身份运行攻击者直接获得系统最高权限。为什么杀毒产品不该“把文件写回去”RedSun漏洞的核心教训是安全产品的设计原则问题️杀毒的使命是清除威胁不是“确保文件在场”隔离/删除操作应当不可逆如果存在“恢复”逻辑必须是用户显式发起、经过身份核验的功能而不是引擎的内部自动行为。⚠️文件还原路径天然容易被利用任何“写回磁盘”的动作都要严格校验目标路径防御联接点、符号链接、卷影副本等攻击者可控的“路径重定向”手段。占位符标记和oplock都是“权限放大器”普通进程可能借此获得超出自身权限的文件操作安全组件对此类标记必须保持警惕。一句话总结Defender的职责是“让恶意文件消失”而不是“确保恶意文件回来”。Defender修复措施完整清单针对这类漏洞普通用户与企业管理员可以按下面这份清单逐项排查和整改#措施说明1更新Windows与Defender安装最新累积更新与引擎版本从源头修复占位符文件处理缺陷2核查实时防护的隔离行为确认检出后文件被真正删除/隔离而不是被恢复到原位置3审计系统目录附近的联接点检查用户可写目录中是否存在指向System32等敏感路径的异常挂载点4监控System32异常新增文件系统目录突然出现带服务名的可执行文件应视为高危事件5敏感设备上限制云占位符功能服务器与核心终端建议禁用或限制“按需文件/同步根”的使用6收紧Cloud Files API权限企业环境通过软件限制策略禁止普通用户注册同步根7回顾Defender活动历史重点关注异常的“恢复/还原”类操作记录8不在生产机器运行未知PoC安全测试程序只应在隔离的虚拟机中验证 提示厂商官方补丁优先级最高上表是基于RedSun攻击链整理出的纵深防御清单两者结合使用效果最好。结语三句话记住RedSun的教训RedSun漏洞最大的讽刺在于防御者成了攻击者的“写回头”。审计文件事件时要问清楚“谁在什么时间把哪个文件写回了哪里”。安全产品处理恶意文件时不可逆的隔离永远优先于任何形式的“恢复”逻辑。更多实现细节可参考PoC源码 RedSun.cpp 与项目说明 README.md。【免费下载链接】RedSunThe Red Sun vulnerability repository项目地址: https://gitcode.com/gh_mirrors/re/RedSun创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

【随笔】MCP工具注解的信任边界:四个提示如何参与调用决策

【随笔】MCP工具注解的信任边界:四个提示如何参与调用决策

【随笔】MCP工具注解的信任边界:四个提示如何参与调用决策 上一篇拆开了MCP协议错误与工具执行错误。接下来还有一个常见问题:调用前,客户端怎样知道工具会不会修改数据,重复调用是否安全,是否可能访问外部世界&#…

2026/10/8 7:05:51 阅读更多 →
关键突发事件对角色性格的4种影响走向与判定条件

关键突发事件对角色性格的4种影响走向与判定条件

关键突发事件对角色性格的影响是否都是负面的?不是。影响可正可负,也可中性重组或好坏交织,最终走向取决于角色底色、事件性质和角色选择3个变量。在AI短剧创作中,创作者常遇到角色跨集性格漂移、事件前后视觉表达断层、性格转变节…

2026/10/9 8:43:00 阅读更多 →
渗透测试信息收集完全指南:信息收集决定成败,网安小白必看收藏!

渗透测试信息收集完全指南:信息收集决定成败,网安小白必看收藏!

一、信息收集概述 在渗透测试中,信息收集是最重要的第一步。安全行业有句名言:“渗透测试的70%是信息收集”。信息收集的广度和深度直接决定了后续漏洞挖掘的效率。攻击面越大,发现漏洞的概率越高。信息收集分类类型说明收集内容被动信息收集…

2026/10/9 8:43:27 阅读更多 →

最新新闻

自动写诗RAR项目实战:从压缩包解压到序列生成模型调参

自动写诗RAR项目实战:从压缩包解压到序列生成模型调参

简介:一份完整的 AI 自动写诗实验项目包,面向自然语言处理初学者或对生成式 AI 感兴趣的开发者。内含 Python 源码与编译文件、实验指导书、实验报告及演示 PPT,覆盖从诗歌数据集准备、模型训练到效果评估的完整链路,适合用来复现…

2026/10/9 12:48:20 阅读更多 →
分布式与集群的区别:从负载均衡到分布式事务的架构实践

分布式与集群的区别:从负载均衡到分布式事务的架构实践

前两天有个朋友问我:分布式和集群到底有什么区别?他刚接手一个项目,组里有人说把服务部署三份就是分布式,有人说那明明叫集群。类似的争论我见过不少——面试题里爱考,架构评审时容易吵,甚至连做了几年开发…

2026/10/9 12:48:20 阅读更多 →
基于MPC的微电网混合储能双层能量管理Matlab仿真实现

基于MPC的微电网混合储能双层能量管理Matlab仿真实现

我做微电网仿真那阵子,最头疼的就是储能控制。电池和超级电容一起上,单一算法根本压不住需求——既要管经济性,又要把直流母线电压波动控制在可接受范围。后来接触了基于模型预测算法的混合储能微电网双层能量管理系统,才把“慢调…

2026/10/9 12:48:20 阅读更多 →
柔性重构减阻:面积缩减与流线化的定量贡献分析

柔性重构减阻:面积缩减与流线化的定量贡献分析

去年做水下柔性板状结构的阻力估算时,我遇到一个挺典型的矛盾:用刚性板模型算,阻力随流速平方往上涨,结构根本扛不住;可一旦把材料弹性模量调低,板还没到设计流速就开始弯,原先的估算马上对不上…

2026/10/9 12:48:20 阅读更多 →
老笔记本CPU升级:T9300换装实战与BIOS微码处理全记录

老笔记本CPU升级:T9300换装实战与BIOS微码处理全记录

简介:ThinkPad R61i(含 1394 版本)从 T2160 等老 CPU 升级到 T9300,黑屏与 Thermal Sensing error 是常见拦路虎。这份 20.29MB 的 rar 资源,正是一套针对换 CPU 前 BIOS 刷写的完整材料,适合有一定拆机能力…

2026/10/9 12:48:19 阅读更多 →
DeepSeek API 从入门到精通:学术论文辅助、自媒体运营与 RAG 知识库实战

DeepSeek API 从入门到精通:学术论文辅助、自媒体运营与 RAG 知识库实战

简介:这份手册面向希望借助AI助手提升效率的初学者与进阶用户,系统梳理了DeepSeek从账户创建、界面熟悉到高级应用的全流程。内容涵盖有效提问的五个黄金法则、文档分析与代码编写等复杂任务处理,并延伸至学术论文辅助、自媒体运营、个性化学…

2026/10/9 12:47:19 阅读更多 →

日新闻

Java时间API实战:LocalDate、Date与ZonedDateTime的转换与避坑指南

Java时间API实战:LocalDate、Date与ZonedDateTime的转换与避坑指南

Java时间API这个话题,隔三差五就会在群里被翻出来讨论一次。上周还有个同事线上处理一个订单超时问题,排查到最后发现是ZonedDateTime序列化后时区丢了,用户在下单当天晚上看到的时间整整差了8个小时。这类问题几乎每个做Java开发的人都遇到过…

2026/10/9 0:00:49 阅读更多 →
EasyTier实践:从NAT穿透到子网代理的异地组网部署与排错

EasyTier实践:从NAT穿透到子网代理的异地组网部署与排错

前几个月我手头有好几台机器需要互相访问:办公室台式机、家里 NAS、还有一台云主机。如果只是偶尔传个文件倒还好,问题是工作场景经常要在几处环境之间来回切换,每次都先登录跳板机再层层代理,实在折腾。我先后试过端口映射、自建…

2026/10/9 0:00:49 阅读更多 →
AI Agent工程实战:从七要素到七个决策点的系统设计指南

AI Agent工程实战:从七要素到七个决策点的系统设计指南

AI Agent 这个词在过去一年里被反复提及,但真正动手搭过一套能跑起来的 Agent 系统的人都知道,从"知道它是什么"到"让它稳定干活"之间隔着一整套工程决策。我前后参与过几个 Agent 项目的落地,从最初用现成框架拼装&…

2026/10/9 0:01:50 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:32 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:40 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 10:11:06 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 21:13:17 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 6:17:20 阅读更多 →