基于 WPF 开发的绿盾加密文件批量解密与格式还原工具。无需管理员权限、无需解密审批,通过模拟授权进程批量导出明文数据,并支持基于文件底层结构的批量还原。
Github 仓库地址:
Release 下载:
本工具需要在有绿盾或其他加密软件环境中运行,否则无法解密。
绿盾可在断网环境下加解密,其他加密软件未测试。
注意
合法合规使用:本工具仅供技术交流、系统底层驱动学习,以及在合法拥有文件资产所有权且取得单位授权的前提下进行应急数据恢复。
严禁越权:请谨记,严禁利用本工具解密、外传任何你无权访问或涉及商业机密、个人隐私的文档。
环境差异:不同企业或不同版本的加密策略可能存在差异(部分极端严格的策略可能对白名单进程对 .exe 或其他非常规后缀的写入进行拦截)。若遇到此情况,可尝试在规则中更换进程名,或将输出后缀改为 .tmp、.log、.dat 等系统常见临时后缀。
💡 解密原理
绿盾等企业级数据防泄密(DLP/DRM)系统通常采用 透明加解密(Transparent Data Encryption) 技术。其核心运行机制与本工具的解密逻辑如下:
所以理论上通杀实现逻辑一样的加密软件(深信服、启明星辰等未测试),只要授权进程在白名单中,读取加密文件时都会被解密。
API Hook 与进程白名单:绿盾在系统底层 Hook 了 Windows 的文件 I/O 核心函数(如
CreateFile、ReadFile等)。当用户尝试打开文件时,驱动层会检查当前发起请求的进程名称是否在白名单中(例如EXCEL.EXE、WINWORD.EXE、notepad.exe等授权办公软件)。内存透明解密:如果检测到是白名单进程读取加密文件,绿盾会在文件数据从磁盘载入内存的过程中,在底层自动将其解密。因此,授权软件读取到的永远是解密后的明文二进制数据。
动态代理伪装:本工具会根据文件类型,在临时目录动态生成一个负责读取文件的代理程序,并将其重命名为对应的绿盾授权白名单进程名(如
EXCEL.EXE)。当该代理进程去读取加密的源文件时,会触发绿盾的透明解密机制,将整个文件的明文完整读入内存。绕过加密策略转储:绿盾不仅监控“读取”,同样监控“写入”——如果授权进程保存文件为
.docx、.xlsx等受控格式,绿盾会立即再次加密。因此,代理进程将内存中的明文数据写入磁盘时,会故意追加或替换为不受监控的扩展名(如.exe)。此时落地保存的便是一个完全无加密的明文临时文件。真实格式还原:最后,利用本工具内置的格式解析引擎,脱离授权进程环境,直接读取临时文件的文件头(Magic Number)和内部结构,将
.exe批量还原回原生文档格式。
🛠 使用流程
整个解密过程分为两个核心阶段:批量转储明文 与 批量还原格式。
演示视频
批量导出解密文件
添加任务:支持点击添加文件/文件夹,或直接将大量
加密文件或文件夹拖入程序窗口。设置输出参数:
输出后缀:默认建议设置为
exe或.exe(确保不在加密软件的加密监控名单内即可,可自行测试)。输出目录:默认为主程序同级下的
output目录,也可自定义。
匹配授权进程:
程序会根据“扩展名规则”自动匹配对应的代理进程名(如
.xlsx对应EXCEL.EXE)。如需手动干预,勾选表格左上角全选,在上方“批量进程名”中输入需要伪装的进程(如
EXCEL.EXE)并点击应用;或直接在表格中双击单个任务修改。
执行解密并导出操作:点击 “打开并保存”。后台动态代理程序会拉起并完成明文读取与转存。
注:软件有防覆盖机制,若目标文件已存在,会自动命名为
report.xls(1).exe、report.xls(2).exe。
扩展名还原
由于另存后的明文文件带有例如 .exe 的后缀,此功能用于批量还原文件真实后缀:
将导出的已解密文件批量拖入“真实扩展名还原”页面。
格式识别:
自动校验文件首部魔法数字(Magic Number)。
Office Open XML 深度检查:对 ZIP 结构的现代化 Office 档,深入检查内部是否包含
xl/、word/、ppt/目录以及[Content_Types].xml,精准区分 Excel、Word 和 PPT。旧版 OLE 检查:对
.doc、.xls等二进制 OLE 容器,读取内部流(Stream)名称以确认真实类型。若没有正确识别的话可以手动指定输出格式。
还原操作:
重命名原文件:直接将
report.xlsx.exe剥离后缀,重命名为report.xlsx。复制为新文件:保留
.exe副本,在目标目录生成干净的真实格式文件(支持自动补充(1)等序号防覆盖)。