LetRecovery 安全模型揭秘:按风险比例设计的 fail-closed 策略,而非伪安全堆砌
LetRecovery 安全模型揭秘按风险比例设计的 fail-closed 策略而非伪安全堆砌【免费下载链接】LetRecovery一款免费开源的 Windows 系统重装工具项目地址: https://gitcode.com/gh_mirrors/le/LetRecoveryLetRecovery 是一款免费开源的 Windows 系统重装工具核心职责是分区、引导、离线注册表与系统镜像的部署。这类操作一旦出错代价极高——写错一块盘就可能抹掉整台机器的数据。本文拆解它的安全模型它不靠处处上锁的表面功夫而是按每一步的真实风险比例在关键路径上执行fail-closed失败即关闭策略让不确定永远倒向停止而不是倒向侥幸继续。重装工具为什么天生高风险普通软件出 bug最坏是闪退重装工具出 bug最坏是把用户唯一的系统盘格式化成别人的数据。因此它面对的风险是不可逆的目标磁盘选错→ 整块盘被重写镜像被篡改→ 装进去的是一个带后门或损坏的系统重启交接被伪造→ 桌面端授权安装 A 分区重启进 PE 后却被执行成别的操作下载文件中途损坏→ 部署出一个缺件、跑不起来的系统。LetRecovery 的应对思路只有一句话风险越高闸门越严拿不准的地方一律先停下来。什么是 fail-closed失败即关闭传统做法常是 fail-open失败即放行——校验没通过就先继续跑大概率没事。而 fail-closed 相反任何一个前置校验失败整个流程立即中止绝不降级、绝不记个警告继续走。LetRecovery 里大量这样的注释和断言例如密钥生成时熵源失败就直接报错会话密钥生成依赖 Windows 系统随机数生成器熵源失败即失败关闭handoff_auth.rs读取受保护控制文件时长度超限或内容在读取过程中发生变化直接返回错误而非截断后继续scoped_temp_file.rs关键在于闸门是按风险比例布置的而不是所有地方都堆满同样的锁风险等级处理策略典型场景高危改盘/改引导/装系统多重认证 原子性 回读校验重启交接、安装源锁定、备份发布中危读外部数据严格解析 边界校验下载校验、镜像分卷枚举低危纯本地只读基本信任 轻量断言配置读取、进度上报重启交接的认证边界LRHA1 与 LRHC1重装当前系统盘时桌面端无法一步到位——必须写入引导、重启、再进 WinPE才能完成。这一次重启是最危险的信任边界重启后 PE 怎么证明这份任务确实是刚才那个桌面端授权给我的LetRecovery 用一对分离的标记解决它公开标记 LRHA1不含密钥只带目的、会话 ID 和 HMAC 签名用来在重启后的可写数据卷上定位任务受保护胶囊 LRHC1真正持有本次会话的 32 字节密钥只写进受保护的私有 boot 载荷绝不落盘到数据卷。公开标记负责找到它受保护胶囊负责证明它是真的。二者用HMAC-SHA256绑定到逐字节精确的配置内容上——改一个字节、换一个操作目的把安装偷换成备份、或跨域重放都会被常量时间比对拒掉恒定时间验签防止时序侧信道handoff_auth.rs四个操作域安装/备份/扩容/维护彼此独立互相不能复用签名handoff_auth.rs配套的公开清单LRHM3同样做了防篡改约束字段顺序、重复、大小写、未知字段、非规范字节形式任何一项不合都会被拒绝——清单摘要本身不是授权边界只有被handoff_auth认证过的配置才算数handoff_manifest.rs。安装源锁定文件从验签到部署全程只读用户可能从 U 盘、光驱或网络盘挂载 WIM/ESD/SWM。如果校验时和部署时读的不是同一份文件校验就形同虚设。LetRecovery 的LockedInstallSourceSet的做法是以拒绝写、拒绝删除的共享模式打开每一个镜像分卷并全程持有句柄用同一句柄算出长度和 SHA-256部署前再逐字节复核——另一个进程在此期间无法写入、改名或删除这些文件只读句柄 拒绝写/删共享模式打开源文件install_source_lock.rs部署前重枚举、重新哈希任何变化即失败关闭install_source_lock.rs此外它还会先拒绝任何重解析点junction/符号链接参与路径防止用目录连接点把已校验的文件悄悄换成另一个文件对分卷镜像还要求分卷编号连续、无重复、无缺口缺一卷就停。下载完整性校验只信最强的那把锁在线下载镜像、软件时网络链路是不可信的。LetRecovery 的校验策略很克制也很硬SHA-256 永远优先于 MD5声明的 SHA-256 若格式非法就直接报错绝不回退到更弱的 MD5 蒙混过关download_integrity.rs默认只允许 HTTPS明文 HTTP 必须显式兼容开关才会被接受download_integrity.rs服务器下发的文件名在拼进本地路径前要先过一遍安全校验拒绝路径穿越..\、拒绝 Windows 保留设备名如CON、COM1download_integrity.rs这三条合在一起的效果是没提供校验和不会被当成校验通过——缺校验和的下载会被明确标记为未提供而不是默认信任。驱动签名信任只加白名单绝不放行未签名把磁盘控制器等启动关键驱动注入 PE 时老版本 WinPE 可能缺少完整的微软 WHCP 签名链导致 DISM 拒绝其实合法的驱动包。LetRecovery 的解法只是把三份已固定哈希的微软根/中间证书加入 PE 的易失性证书库——而且每次注入前都会先比对内嵌证书的实际 SHA-256哈希对不上就整体失败driver_trust.rs。这条边界写得很明确它从不修改目标系统的离线证书库也从不放行未签名驱动。换句话说它修的是PE 缺了链中间而不是把验签关掉。备份发布崩溃也能恢复的原子写备份系统盘为镜像时如果写到一半断电最怕的就是留下一个半截文件却还假装成功。LetRecovery 的backup_atomic_publish用带校验和的 PREPARED 日志 文件 ID 原子重命名保证要么完整成功、要么可回滚。恢复时它从不把日志阶段当作真相而是重新按哈希和文件 ID 去实际分类新旧对象从而判断到底是已提交还是应回滚模块整体设计意图backup_atomic_publish.rs受保护发布会话的目录/文件身份校验backup_atomic_publish.rs明确不做什么比做什么更见功力真正专业的安全模型往往体现在它克制住不做什么。以深度移除 Defender 引擎这个高风险选项为例LetRecovery 用一份严格白名单把边界钉死只处理明确的 Defender 引擎服务WinDefend、WdFilter等固定名单绝不触碰防火墙mpssvc、UAC、VBS、SmartScreen、Microsoft Defender for Endpoint 等无关组件任一步注册表写入、ACL 修改、文件删除、删除后复核只要失败就整体中止绝不记个警告继续装完DEFENDER_ENGINE_REMOVAL.md类似的克制贯穿全项目镜像暂存盘只选明确未加密、可写、状态可确认的卷遇到 BitLocker 状态未知直接排除绝不假定重启后的 PE 一定持有解锁密钥DATA_STAGING_POLICY.md。小结安全是分层闸门不是标语把 LetRecovery 的安全模型浓缩成一句它把安全预算花在真正会丢数据的地方并且在每个拿不准的点都选择停而不是继续。高危边界重启交接、安装源、备份发布→ 多重认证 原子性 回读外部输入下载、文件名、签名链→ 严格解析 只信最强校验不确定时 → fail-closed立即中止绝不降级。这种按风险比例设计的工程判断才是重装工具该有的安全感来源——不靠喊口号而靠每一道闸门在失败时都诚实地关上。相关设计文档安全策略 · 镜像暂存策略 · Defender 移除边界【免费下载链接】LetRecovery一款免费开源的 Windows 系统重装工具项目地址: https://gitcode.com/gh_mirrors/le/LetRecovery创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

免环境变量,快速搭建 OpenClaw 桌面自动化智能体:TaoToken 统一 Key 接入实践

免环境变量,快速搭建 OpenClaw 桌面自动化智能体: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/11/11 7:31:58 阅读更多 →
腾讯镜像站99%流量压力背后:开源社区的知情权与信任危机

腾讯镜像站99%流量压力背后:开源社区的知情权与信任危机

“腾讯称其镜像站为官方承担了99%的流量压力”——这句话最近在开源社区里讨论度很高。作为一个常年折腾开源镜像、也在社区里维护过几个小项目的人,我觉得这个数字背后不只是一个流量运维问题,它牵扯到镜像站运营、开源社区协作规则、以及“技术贡献能不…

2026/11/10 17:48:17 阅读更多 →
一文彻底搞懂文件路径:从概念原理到常见问题排查

一文彻底搞懂文件路径:从概念原理到常见问题排查

不知道你有没有经历过这种时刻:下载好的安装包双击报错,提示“文件不存在”;写好的脚本在命令行里怎么都跑不起来;配了一下午环境变量,重启之后一切打回原形。绝大多数人把这些归咎于“电脑出问题了”,但实…

2026/11/9 11:30:30 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/10 23:32:01 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/10 23:32:03 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/11 2:31:33 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/11 17:16:37 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/11 17:16:37 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/10 23:32:10 阅读更多 →

日新闻

周新闻

月新闻