首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >数据分类分级如何驱动防勒索:按敏感度投放白名单与透明加密的工程实践

数据分类分级如何驱动防勒索:按敏感度投放白名单与透明加密的工程实践

原创
作者头像
安当加密 3
修改于 2026-10-13 13:24:03
修改于 2026-10-13 13:24:03
10
举报

摘要:把进程白名单与透明加密的强度与目录的数据敏感度绑定,按分类分级结果对高敏目录启用更强白名单与透明加密、对普通目录做轻量管控,是降低白名单运维负担同时不放松核心资产保护的有效路径。 正在上传图片...

关键词:防勒索, 数据分类分级, 透明加密, 进程白名单, 等保, 密评

一、引言:一刀切白名单为什么撑不住

很多安全团队部署防勒索产品时,习惯给整台服务器、整块磁盘套一套"默认拒绝"的进程白名单。文件服务器跑着十几个业务进程,备份节点还有脚本与同步客户端。一旦白名单拉到最严,任何没登记的新版本编译器、临时脚本、运维小工具都会被拦住,业务当天就报错。

于是运维开始不停加白、加例外、放行整目录。白名单很快膨胀成谁也不敢删的"熟人列表",边际维护成本越来越高,高风险与低风险目录享受同一套策略——违背最小权限原则。当条目涨到上千条,没人能说清某条规则保护什么,审计复盘也失去意义。

更麻烦的是,勒索软件不需要突破白名单就能造成破坏。传统加密型勒索路径是:入侵拿执行权限 → 遍历目录加密文件 → 提权横向 → 清理日志与卷影。如果只对"写"拦截,却允许任何可信进程无差别读明文并重落盘,攻击者在拿到一个可信进程(或被注入可信进程)后,仍可对高敏文件做"二次加密"——用可信身份再写一份密文,绕过"默认拒绝未登记进程写"这一道防线。

还有一种误判是认为"装了备份就万事大吉"。现代勒索家族会主动扫描加密挂载的备份目录、删除卷影副本,若备份目录缺进程约束与透明加密,反成被加密重灾区。备份防加密必须与正面防护走同一条技术路线,而非事后依赖恢复。

所以问题不是"要不要白名单",而是"如何把有限运维精力与最强管控精准投放到真正高敏数据上"。这正是分类分级与防勒索联动的出发点:先给目录定性,再按结果决定防护强度,让保护资源跟着数据价值走。

二、原理:分类分级如何驱动差异化策略

2.1 敏感度分级模型

分类分级系统通常输出业务类别(如财务、人事、研发源码、客户数据)与敏感级别(公开、内部、机密、绝密)两类标签,引擎消费其映射到防护动作矩阵。一个可落地的映射如下:

敏感级别

典型目录示例

白名单模式

透明加密

读写控制

审计粒度

公开 (L1)

静态资源、下载站

默认允许+黑名单

否

仅记录

抽样

内部 (L2)

一般办公文档

默认允许+灰名单

否

记录写

写操作全记

机密 (L3)

合同、报表、配置

严格白名单

可选

读写分离

全量

绝密 (L4)

源码、密钥、模型权重、备份

严格白名单

强制(TDE)

读写双控

全量+告警

注意这里"强制透明加密"只对 L4 生效。L1/L2 不加密,避免把算力浪费在无关紧要的数据上;L3 按需开启,把加密开销留给真正值得保护的对象。这种分级投放,正是缓解"一刀切运维负担"的核心。

敏感度分级到防护动作矩阵
敏感度分级到防护动作矩阵

2.2 高敏目录的强白名单 + 透明加密

对于 L4 目录,策略引擎同时施加两条约束:

  1. 严格进程白名单(默认拒绝):只有数字签名校验通过且在白名单中的进程才能打开该目录文件,新进程、未登记进程、临时脚本一律拒绝。
  2. 透明加密 (TDE):文件落盘自动加密,密钥由 HSM 托管,进程读取时内核层透明解密。即便绕过白名单或磁盘被物理取出,拿到的也只是密文。

两条约束叠加:白名单解决"谁能碰",透明加密解决"碰到了也看不懂"。二者缺一都出现缺口,工程上白名单决策放 open 阶段、透明加解密放 read/write 阶段,各司其职。

2.3 普通目录的轻量管控

对于 L1/L2 目录,引擎采用"默认允许 + 黑名单 + 行为画像"的轻量模式:

  • 不拦截正常业务进程的读写;
  • 对短时间内批量重命名/改写大量文件的进程做行为打分,超过阈值才拦截并告警;
  • 写操作留痕但不强制加密。

这样运维几乎无需维护 L1/L2 白名单,精力集中在 L3/L4。行为画像特征(单位时间改写文件数、目录跨度、文件熵值、进程父子关系)可识别"遍历式加密"签名,不必逐进程建白名单。

2.4 读写双控防二次加密

"二次加密"指:一个已被信任的进程读取高敏明文后,用注入逻辑重加密写回。仅仅"拒绝未登记进程写"拦不住它,因为进程本身在白名单内。

读写双控把"读"和"写"拆成两个独立决策点:

代码语言:python
复制
def on_file_open(evt):
    """内核回调:进程请求打开文件"""
    level = dir_sensitivity(evt.path)
    proc  = verify_process(evt.pid)   # 签名/哈希/路径校验

    if evt.intent == "read":
        # 读也需要判断:绝密目录仅允许被授权进程明文读
        if level >= L4 and not proc.trusted_for(level):
            return DENY
        return ALLOW   # 透明解密由引擎处理

    if evt.intent == "write":
        # 写:严格白名单 + 防二次加密
        if level >= L4:
            if not proc.trusted_for(level):
                return DENY
            # 防二次加密:禁止把"刚刚读出的明文"以不同格式写回同目录
            if proc.recently_read(evt.path) and evt.entropy_high:
                return DENY
        elif level == L3:
            return ALLOW if proc.whitelisted else DENY
        else:
            return ALLOW

关键点:recently_read + entropy_high 组合可抓住"读明文→写高熵密文"的典型二次加密,误伤正常压缩、归档概率较低。工程上给 recently_read 设时间窗(如 30 秒),窗口外自动失效,避免历史读记录污染判定。

2.5 策略冲突消解:更具体的目录优先

分级策略在实际环境里一定会遇到冲突:父目录 /srv/share 被标成 L2 允许全部,子目录 /srv/share/财务 被标成 L4 严格。引擎必须定义清晰的合并规则,否则会出现"宽松策略覆盖严格策略"的灾难。

经验法则是最长路径前缀优先(most-specific-wins):多条目录规则都能匹配某路径时,取路径最长、最具体的那一条作为最终动作。合并阶段应显式打印被覆盖的宽松规则,供运维核对:

代码语言:bash
复制
rdmctl policy diff --check-override
# [warn] /srv/share (L2 allow-all) overridden by /srv/share/财务 (L4 strict)
# [warn] 3 override(s) detected, strict rules kept

同时,L4 强制透明加密不应被任何父级 L1/L2 的"不加密"覆盖,这条作为不可下行的硬约束(hard floor),独立于路径优先级单独判定。

三、防护流程:从入侵到清理的四阶段

防勒索贯穿攻击生命周期,是连续动作。把分类分级策略代入 LockBit 攻击链,可得四阶段对照:

攻击阶段

攻击者动作

差异化防护动作

触发依据

入侵

利用漏洞/钓鱼落地载荷

终端 EDR 联动 + L4 目录进程白名单

进程来源与签名

加密

遍历目录批量改写文件

L3/L4 读写双控 + 透明加密兜底

目录敏感级别

提权

尝试获取 SYSTEM/root

关键进程路径白名单 + 行为告警

提权行为画像

清理

删除卷影/清日志

审计日志独立存储 + 防篡改

日志写保护

需要强调的是,透明加密在"加密"阶段提供最后一道兜底:即便白名单被绕过、文件被改写,落盘仍是密文,攻击者拿不到明文,勒索失去意义。这也解释透明加密防勒索与"备份恢复"互补而非替代:前者让攻击本身失效,后者只降低失效后的损失。

针对 LockBit 2.0/3.0 等变种,差异主要在载荷投递与加密器混淆,而"进程写文件"这一本质动作不变。基于进程身份 + 目录级别的内核层拦截,不依赖病毒特征库,对上述变种都能按同一套策略设防,不必等特征库更新。

四、落地实践:按分级启用不同策略

4.1 与分类分级系统联动

实际部署时分类分级系统往往已存在(DLP、数据地图、CMDB 标签等),引擎消费其输出而非另搞一套标签。常见联动方式是分类分级系统导出标签文件,引擎定时拉取热加载:

代码语言:bash
复制
# 分类分级系统导出标签(示意,路径已脱敏)
/opt/dlp-agent/export_tags.sh --format json --out /etc/rdm/tags.json

# 防勒索引擎重载策略
rdmctl policy reload --source /etc/rdm/tags.json
# 输出示例:
# [ok] loaded 1280 tag entries, 37 L4 dirs, 210 L3 dirs
# [ok] policy hot-reloaded without process restart

引擎内部把 tags.json 编译成 (目录前缀 → 级别 → 动作) 的查找树,内核模块在事件回调里做 O(log n) 匹配,避免每事件全表扫描。热加载采用双缓冲:新策略校验通过后再原子切换,失败则保留旧策略并告警,避免错误标签锁死生产目录。

4.2 与 KSP / TDE 协同

透明加密的密钥不能存本地明文配置文件。更稳妥的链路是:密钥在 HSM 中生成,引擎通过密钥安全服务 (KSP) 接口申请会话密钥用于 TDE 实时加解密;KSP 负责密钥生命周期、访问控制与审计,引擎负责把密钥用在文件读写路径上。

代码语言:json
复制
{
  "tde": {
    "enabled_levels": ["L4"],
    "key_provider": "ksp",
    "ksp_endpoint": "local://ksp-agent",
    "wrap_algo": "AES-256-GCM",
    "per_dir_key": true,
    "key_rotation_days": 90
  }
}

per_dir_key: true 表示每个 L4 目录用独立密钥,单目录泄露不波及他目录,符合密钥最小化原则。会话密钥不落盘,仅引擎进程内存短时存在,退出即销毁,从根源降低密钥泄露面。

4.3 政企文件服务器场景落地

在政企文件服务器场景下,先由分类分级系统把 /srv/share/机密合同、/srv/share/财务 标记为 L3/L4,引擎自动施加"严格白名单 + 选择性透明加密",其余 /srv/share/公开 仅做轻量行为管控。运维只需维护少量 L3/L4 白名单(约 20 条),规则数量较全量严格白名单减少约 80%,告警噪音显著下降。

该场景里,文件服务器的 SMB/NFS 共享由远程接入的用户访问,防护引擎在内核层对共享目录统一防护,不依赖前端网关特征库,对 LockBit 2.0/3.0 等变种均能按"进程身份 + 目录级别"拦截。个人单机场景可通过 USBKey 形态落地:密钥与白名单随 USBKey 携带,即插即用。

4.4 AI 模型资产保护实践

在 AI 训练集群的落地重点是保护三类资产:模型权重文件 (.bin/.safetensors)、训练数据集、API 密钥文件,均标记为 L4,启用强制 TDE + 严格白名单 + 读写双控。

具体地,训练进程在白名单内可正常读权重做推理;任何未被登记为"密钥读取者"的进程访问 api_keys/ 目录都会被拒绝,即便为 root——内核层决策不依赖用户态权限。训练数据目录同样启用透明加密,避免训练数据在磁盘层被整库拷贝带走。

需要说明,上述落地仅作案例参考,读者可用其他等效引擎按相同思路落地,关键在方法论而非具体产品。

五、关键参数、性能与合规

5.1 关键运行参数

参数

建议值

说明

内核回调延迟预算

< 50μs/事件

超过会影响 IO 吞吐

标签热加载间隔

60s

分类分级变更的传播延迟

L4 目录白名单条目上限

按业务定

建议控制在百条内

TDE 密钥轮换周期

90 天

配合 KSP 自动轮换

审计日志保留

≥ 180 天

满足事后追溯

二次加密判定时间窗

30s

recently_read 窗口

5.2 性能影响

透明加密在 IO 路径上增加加解密开销。实测在 NVMe SSD 上,L4 目录顺序大文件读写吞吐下降约 5%–12%,随机小文件因密钥查找下降约 8%–15%。由于仅 L4 加密,整体加权影响通常低于 3%。

内核模块采用 per-CPU 缓存与批量提交,避免文件事件陷入用户态;白名单匹配走前缀树,目录标签变更走 RCU 无锁读,防护动作不成为 IO 瓶颈。对比看:Web 静态(全 L1)几乎零影响;数据库(L3,不加密)仅增微秒级开销;仅模型权重与密钥(L4)承担完整加密开销。

5.3 合规对齐

  • 等保 2.0:进程白名单对应"访问控制""可信验证";透明加密对应"数据保密性";全量审计对应"安全审计";读写双控对应"客体安全重用"与"信息流转控制"。
  • 密评(商用密码应用安全性评估):TDE 使用经认证对称算法、密钥由 HSM 托管、通过 KSP 做密钥管理,满足"密码技术应用""密钥管理""安全管理"三层面测评要点。
  • 个人信息保护:对含个人信息的 L3/L4 目录启用加密与最小权限,降低数据泄露面。

六、常见坑与排查

坑 1:白名单膨胀后又悄悄放开整目录。现象:运维为省事把 /srv/share 整目录加白,L4 子目录失去保护。排查:定期导出白名单,检查"父目录通配覆盖子目录精确策略"的优先级倒置,确保更具体目录级别优先(见 2.5 节)。

坑 2:透明加密目录被备份软件二次加密。现象:备份代理对 L4 目录"读明文→压缩写回临时区"被读写双控拦截。排查:把备份代理的压缩写回路径加入"可信写目标"或走专门导出接口;备份目标目录本身标记 L4 并启用 TDE。

坑 3:远程接入的用户进程身份识别错乱。现象:远程接入挂载共享的用户,进程在服务器端以内核身份运行,引擎无法区分具体用户。排查:共享网关侧带用户标签,引擎对"共享目录写"增加用户维度白名单,不唯依赖 PID/进程路径。

坑 4:KSP 不可用时 TDE 降级。现象:HSM/密钥服务短暂故障,TDE 无法获取会话密钥,IO 阻塞。排查:配置本地缓存的应急会话密钥(短有效期、限次),KSP 恢复后强制轮换,监控 ksp_health 避免静默降级成明文。

坑 5:审计日志与业务日志混写被清理。现象:攻击者清理业务日志时一并删掉安全审计。排查:审计日志独立存储、写保护、异步批量提交到远端,独立路径不与受保护业务目录同盘同权限。

坑 6:标签过期导致策略失效。现象:分类分级系统调整了目录归属,但引擎仍用旧标签,新 L4 目录未被保护。排查:缩短标签热加载间隔并校验版本号;重载失败保留旧策略但持续告警,防止拉取异常造成保护真空。

坑 7:忽略临时目录与交换区的明文落点。现象:高敏数据被写入 /tmp 或交换分区,未被标记 L4,导致明文外泄。排查:把业务临时目录一并纳入 L4,或配置"敏感数据禁止落盘到非加密区"的硬约束,从写入入口阻断明文外溢。

方案参考

数据分类分级与防勒索的联动,本质是把"防护强度"当有限资源按敏感度边际投放:最严白名单+透明加密+读写双控护绝密,轻量行为管控护公开内部,在可承受代价下把核心资产保护到位。

通用落地方法论可概括为四步:

  1. 先分级,后加策略:从既有分类分级系统消费标签,别让引擎再发明一套分类。
  2. 强度与级别绑定:L4 强制 TDE + 严格白名单 + 读写双控;L3 严格白名单 + 按需加密;L1/L2 轻量行为管控。
  3. 密钥与进程解耦:透明加密密钥由 HSM/KSP 托管,进程身份在内核层独立校验,不依赖用户态权限。
  4. 审计独立闭环:全量审计、独立存储、防篡改,为事后追溯与合规举证提供数据基础。

以安当RDM为例,其数据防护引擎是这一方法论的一个具体实现:以进程白名单 + 透明加密 (TDE) + 实时审计构成三重主动防护,不依赖病毒特征库,按入侵→加密→提权→清理四阶段连续设防;支持企业全场景部署以及面向个人单机使用 USBKey 的形态;在政企文件服务器、智能制造 ERP/CRM、SaaS 多租户、软件源码、备份防护、AI 模型资产等场景中,都能以"分级启用不同强度策略"的方式落地。对评估防勒索方案的团队,建议先盘点自身数据分类分级现状,再据此设计差异化防护矩阵,而非直接采购默认拒绝的全局白名单。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 一、引言:一刀切白名单为什么撑不住
  • 二、原理:分类分级如何驱动差异化策略
    • 2.1 敏感度分级模型
    • 2.2 高敏目录的强白名单 + 透明加密
    • 2.3 普通目录的轻量管控
    • 2.4 读写双控防二次加密
    • 2.5 策略冲突消解:更具体的目录优先
  • 三、防护流程:从入侵到清理的四阶段
  • 四、落地实践:按分级启用不同策略
    • 4.1 与分类分级系统联动
    • 4.2 与 KSP / TDE 协同
    • 4.3 政企文件服务器场景落地
    • 4.4 AI 模型资产保护实践
  • 五、关键参数、性能与合规
    • 5.1 关键运行参数
    • 5.2 性能影响
    • 5.3 合规对齐
  • 六、常见坑与排查
  • 方案参考
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档