# Implementing Ransomware Backup Strategy

> 按照 3-2-1-1-0 方法论（3 份副本、2 种媒体类型、1 份异地、1 份不可变/气隙隔离、 0 个还原验证错误）设计和实施抗勒索软件备份策略。配置符合 RPO/RTO 要求的备份 计划，实施备份凭据隔离防止勒索软件入侵备份基础设施，并建立自动化还原测试。

- Skill: `killvxk/implementing-ransomware-backup-strategy` (Agent Skill, multi-file: 8 files)
- Install (CLI): `npx skillmds@latest add killvxk/implementing-ransomware-backup-strategy`
- Raw SKILL.md: https://api.skillmd.com/api/skills/killvxk/implementing-ransomware-backup-strategy/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: Apache-2.0
- Author: killvxk (https://skillmd.com/u/killvxk)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/killvxk/implementing-ransomware-backup-strategy

---

# 实施勒索软件备份策略

## 使用场景

- 设计能够抵御勒索软件加密和删除尝试的备份架构
- 从传统备份迁移至具有不可变存储的抗勒索软件备份
- 为关键系统建立 RPO/RTO 目标并通过还原测试进行验证
- 将备份凭据和基础设施与生产 Active Directory 域隔离
- 满足网络保险对备份弹性和已测试恢复能力的要求

**不要**将其作为端点保护、网络分段或事件响应规划的替代品。备份是最后一道防线，而非主要预防控制。

## 前置条件

- 按业务影响分类的关键系统、应用程序和数据清单（第 1/2/3 级）
- 每个级别定义的 RPO（恢复点目标）和 RTO（恢复时间目标）
- 支持不可变仓库的备份软件（Veeam 12+、Commvault、Rubrik、Cohesity）
- 隔离的备份网络段或气隙隔离的存储基础设施
- 未加入生产 AD 域的独立备份管理员凭据

## 工作流程

### 步骤一：资产分类和定义恢复目标

根据业务影响将所有系统划分为恢复层级：

| 层级 | 示例 | RPO | RTO | 备份频率 |
|------|----------|-----|-----|------------------|
| 第 1 级（关键）| 域控制器、ERP、数据库 | 1 小时 | 4 小时 | 每小时增量、每日全量 |
| 第 2 级（重要）| 文件服务器、邮件、Web 应用 | 4 小时 | 12 小时 | 每 4 小时增量、每日全量 |
| 第 3 级（标准）| 开发环境、归档 | 24 小时 | 48 小时 | 每日增量、每周全量 |

记录系统间的依赖关系。域控制器和 DNS 必须在应用服务器之前恢复。数据库服务器在应用层之前恢复。

### 步骤二：实施 3-2-1-1-0 架构

按照扩展的 3-2-1-1-0 规则配置备份存储：

**副本 1 — 本地存储的主要备份：**
```
# 面向本地仓库的 Veeam 备份作业
# 快速还原用于运营恢复
备份仓库：本地 NAS（CIFS/NFS）或 SAN
保留期：14 天还原点
加密：AES-256，密码不存储在 AD 中
```

**副本 2 — 不同媒体的辅助备份：**
```
# 复制到辅助站点或云端
# Veeam Backup Copy Job 或 Scale-Out Backup Repository
目标：AWS S3 / Azure Blob / Wasabi / 磁带库
保留期：30 天
传输：传输过程中使用 TLS 1.2+ 加密
```

**副本 3 — 异地副本：**
```
# 与主要和辅助地点地理分离
# 不同区域的云对象存储或物理磁带轮换
目标：跨区域云存储或 Iron Mountain 磁带存储库
保留期：90 天
```

**+1 — 不可变或气隙隔离副本：**
```
# 在定义的保留期内无法修改或删除
# Linux 上带不可变标志的 Veeam Hardened Repository
# 或合规模式的 AWS S3 Object Lock
# 或物理气隙磁带
```

**+0 — 还原验证零错误：**
```
# 使用 Veeam SureBackup 或同等工具进行自动化还原测试
# 第 1 级每周一次，第 2/3 级每月一次
# 验证启动、网络连接和应用程序健康状态
```

### 步骤三：隔离备份凭据

勒索软件操作者通过 Active Directory 入侵备份管理员凭据，进而攻击备份基础设施：

1. **将备份管理员账户**与生产 AD 域分离。在备份服务器上使用本地账户或专用备份管理域。
2. **专用备份网络段**，防火墙规则仅允许备份流量（特定端口、特定源/目标 IP）。
3. **备份控制台访问使用 MFA**，使用硬件令牌或认证器应用，不使用 SMS。
4. **禁用备份服务器上的 RDP**。使用带外管理（iLO/iDRAC/IPMI）进行紧急访问。
5. **将备份服务器从域中移除**，或置于受限 GPO 继承的专用 OU 中。

```bash
# Linux Hardened Repository - 禁用 SSH 密码认证
sudo sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl restart sshd

# 在备份文件上设置不可变标志（XFS 文件系统）
sudo chattr +i /mnt/backup/repository/*

# Veeam Hardened Repository 使用一次性凭据
# 初始设置后不存储在 Veeam 服务器上
```

### 步骤四：配置不可变存储

**Veeam Hardened Linux Repository：**
```bash
# 最小化 Ubuntu 22.04 LTS 安装
# 无 GUI，无不必要服务
# Veeam 仅在备份窗口期间使用临时 SSH 凭据

# 配置带 reflink 支持的 XFS
sudo mkfs.xfs -b size=4096 -m reflink=1 /dev/sdb1
sudo mount /dev/sdb1 /mnt/veeam-repo

# 创建权限受限的专用 Veeam 用户
sudo useradd -m -s /bin/bash veeamuser
sudo mkdir -p /mnt/veeam-repo/backups
sudo chown veeamuser:veeamuser /mnt/veeam-repo/backups
```

**AWS S3 Object Lock（合规模式）：**
```bash
# 创建启用对象锁定的存储桶
aws s3api create-bucket \
  --bucket company-immutable-backups \
  --object-lock-enabled-for-bucket \
  --region us-east-1

# 设置默认保留期 - 合规模式 30 天
aws s3api put-object-lock-configuration \
  --bucket company-immutable-backups \
  --object-lock-configuration '{
    "ObjectLockEnabled": "Enabled",
    "Rule": {
      "DefaultRetention": {
        "Mode": "COMPLIANCE",
        "Days": 30
      }
    }
  }'
```

**Azure 不可变 Blob 存储：**
```bash
# 创建带不可变存储的存储账户
az storage container immutability-policy create \
  --account-name backupaccount \
  --container-name immutable-backups \
  --period 30

# 锁定策略（不可逆）
az storage container immutability-policy lock \
  --account-name backupaccount \
  --container-name immutable-backups
```

### 步骤五：自动化还原测试

按定期计划配置自动化还原验证：

```powershell
# Veeam SureBackup 验证作业（PowerShell）
# 测试 VM 启动、网络 ping 和应用程序健康

Add-PSSnapin VeeamPSSnapin
$backupJob = Get-VBRJob -Name "Tier1-DailyBackup"
$sureBackupJob = Get-VSBJob -Name "Tier1-RestoreTest"

# 验证最后一次还原测试是否成功完成
$lastSession = Get-VSBSession -Job $sureBackupJob -Last
if ($lastSession.Result -ne "Success") {
    Send-MailMessage -To "backup-team@company.com" `
        -Subject "ALERT: SureBackup verification failed" `
        -Body "Tier 1 restore test failed. Last result: $($lastSession.Result)" `
        -SmtpServer "smtp.company.com"
}
```

记录还原测试结果，并为每个层级维护包含逐步骤流程的恢复手册。

## 核心概念

| 术语 | 定义 |
|------|------------|
| **3-2-1-1-0** | 扩展备份规则：3 份副本、2 种媒体类型、1 份异地、1 份不可变/气隙隔离、0 个还原验证错误 |
| **RPO** | 恢复点目标：以时间衡量的最大可接受数据丢失量（例如，1 小时 RPO 意味着最多丢失 1 小时的数据） |
| **RTO** | 恢复时间目标：系统必须恢复运营前的最大可接受停机时间 |
| **不可变备份** | 在定义的保留期内无法被修改、加密或删除的备份副本，即使管理员也无法操作 |
| **气隙备份** | 与生产系统没有网络连接的物理隔离备份，提供最强的勒索软件保护 |
| **Hardened Repository** | 攻击面最小化的 Linux 备份存储，无持久 SSH，带不可变文件标志 |

## 工具与系统

- **Veeam Backup & Replication 12**：企业备份，带 Hardened Linux Repository、SureBackup 验证和不可变备份支持
- **Rubrik Security Cloud**：具有不可变快照、异常检测和气隙恢复的零信任备份平台
- **Commvault**：带 Metallic 气隙保护、异常检测和自动化恢复编排的备份
- **AWS S3 Object Lock**：合规或治理模式的云原生不可变存储，用于备份副本
- **Cohesity DataProtect**：具有 DataLock 不可变性、反勒索软件检测和即时批量还原的备份平台

## 常见场景

### 场景：金融服务公司实施抗勒索软件备份

**背景**：一家拥有 500 台服务器、200TB 数据且有 7 年保留合规要求的中型银行，在同行机构遭遇勒索软件攻击后必须重新设计备份。当前备份使用加入生产域的 Windows 服务器上的单个 Veeam 仓库。

**方案**：
1. 将所有 500 台服务器分为三个层级：50 台第 1 级（核心银行、AD、DNS）、200 台第 2 级（邮件、文件共享、Web）、250 台第 3 级（开发、测试、归档）
2. 在专用 Ubuntu 22.04 服务器上部署 Veeam Hardened Linux Repository，使用 XFS 不可变性作为主要备份
3. 使用 Veeam Scale-Out Repository 容量层配置合规模式 S3 Object Lock，保留期 30 天的不可变云副本
4. 建立每季度磁带轮换到 Iron Mountain，满足 7 年监管保留要求
5. 从生产 AD 域中移除所有备份服务器，创建带硬件 MFA 令牌的隔离备份管理员账户
6. 部署 SureBackup 作业：第 1 级每周、第 2 级每月、第 3 级每季度
7. 进行年度完整恢复演练，还原 AD、DNS、核心银行及依赖应用，验证记录的 RTO

**常见陷阱**：
- 将备份管理员凭据留在生产 AD 域中，勒索软件操作者可通过 Kerberoasting 或 DCSync 入侵
- 配置比典型勒索软件驻留时间更短的不可变保留期（平均 21 天），允许攻击者等待不可变期过期
- 仅测试单个 VM 还原，而不测试包含依赖项的完整应用栈恢复
- 忘记将备份服务器配置（Veeam 配置数据库、加密密钥）与备份基础设施本身分开备份

## 输出格式

```
## 勒索软件备份策略评估

**组织**：[名称]
**评估日期**：[日期]
**评估人**：[名称]

### 现状
- 备份解决方案：[产品/版本]
- 副本数：[数量及位置]
- 不可变副本：[是/否 - 详情]
- 气隙副本：[是/否 - 详情]
- 凭据隔离：[是/否 - 详情]
- 最后还原测试：[日期 - 结果]

### 差距分析
| 控制措施 | 现状 | 目标 | 差距 | 优先级 |
|---------|---------|--------|-----|----------|
| 不可变备份 | 无 | S3 Object Lock + Linux Hardened Repo | 缺失 | 关键 |
| 凭据隔离 | 加入域 | 独立本地账户 + MFA | 部分 | 关键 |
| 还原测试 | 临时手动 | 自动化每周 SureBackup | 缺失 | 高 |

### 建议
1. [优先级] [建议] - [预估工作量]
2. ...

### 恢复层级摘要
| 层级 | 系统数 | RPO | RTO | 备份计划 | 还原测试频率 |
|------|---------|-----|-----|-----------------|----------------------|
| 1 | 50 | 1 小时 | 4 小时 | 每小时增量/每日全量 | 每周 |
| 2 | 200 | 4 小时 | 12 小时 | 每 4 小时增量/每日全量 | 每月 |
| 3 | 250 | 24 小时 | 48 小时 | 每日增量/每周全量 | 每季度 |
```

