4. SCADA用户账户生命周期管理
SCADA系统中的用户账户并不是一次创建就永久有效的静态对象。从人员入职、岗位调整、职责变化到离职,账户的权限范围、认证方式、归属关系都在持续变化。如果账户生命周期缺乏闭环管理,最常见的后果是“权限只增不减”:某工程师从运维岗转到只读监视岗后,旧的高权限账户仍被保留;某外包人员项目结束后账户未及时禁用,数月后仍可登录。这类问题在审计中往往直接判定为高风险,因为攻击者一旦获得这些“僵尸账户”,就能以合法身份长期潜伏。
账户生命周期的五个阶段
完整的账户生命周期应覆盖创建、审批、变更、禁用、删除五个阶段,每个阶段都有明确的触发条件、责任人和留痕要求。
创建:账户创建必须由业务需求驱动,而非“先建了再说”。创建申请应包含申请人、目标系统、账户类型(个人/服务/共享)、所需角色、有效期、关联工单号。SCADA系统通常与HR系统或工单系统对接,账户创建前需确认人员已通过背景审查。创建动作本身应由系统管理员执行,且创建记录写入审计日志。
审批:审批不是形式签字,而是对“最小权限”的实质判断。审批人应独立于申请人,通常为系统所有者或安全负责人。审批内容至少包括:该角色是否确实需要、权限范围是否可缩小、是否可用现有账户替代、有效期是否合理。对于高权限角色(如工程师站管理员、历史库管理员),应要求双人审批。
变更:岗位调整、项目变更、职责扩展都会触发账户变更。变更的关键原则是“先减后加”或“同步调整”,避免新旧权限叠加。例如,某操作员从A装置区调至B装置区,应先回收A区操作权限,再授予B区权限,而不是直接追加B区权限。变更同样需要审批和留痕。
禁用:禁用是账户生命周期的“急刹车”,适用于离职、长期休假、项目结束、安全事件等场景。禁用应优先于删除,因为禁用保留了审计追溯所需的账户历史,同时立即阻断登录。禁用操作应设置明确的触发时限,例如离职当日完成禁用,而非等到下个结算周期。
删除:删除是最终清理,通常在账户禁用并经过保留期(如90天)后执行。删除前需确认该账户无未结审计事项、无关联服务依赖。删除后账户标识不可复用,防止历史日志中的操作记录被错误关联到新人员。
特权账户与共享账户的风险差异
特权账户和共享账户是SCADA审计中最常被点名的两类对象,但风险性质不同。
特权账户的风险核心是“权限集中且缺乏制衡”。在典型SCADA架构中,工程师站上的管理员账户可以修改PLC逻辑、调整组态画面、访问历史数据库,甚至直接下发控制指令。如果这个账户被个人独占且长期不轮换,一旦该人员账户被盗用或主动滥用,攻击者就获得了对生产过程的完整控制能力。审计中应重点检查:特权账户是否个人化命名、是否设置有效期、是否启用双人审批、操作是否录屏或记录到独立审计通道。
共享账户的风险核心是“操作不可归因”。例如,某中控室三台操作员站使用同一个登录名“operator”,交接班时多人使用同一账户。当审计日志显示“operator在02:15修改了设定值”时,无法判断是当班操作员、接班人员还是外部人员所为。共享账户还容易导致密码扩散,最终变成“人人都知道、人人都不负责”。处理策略是逐步消除共享账户,过渡期可采用“共享账户+个人操作备注”或“共享账户+物理位置绑定”的方式,但根本方向是每人独立账户。
服务账户与默认账户的处理
服务账户用于SCADA组件之间的自动通信,例如数据采集服务连接PLC、历史库同步服务、报表生成服务等。这类账户通常不用于人工登录,但往往拥有较高的数据访问权限。常见问题包括:密码长期不变、权限过大、被运维人员用于交互登录。处理原则是:服务账户应专用命名(如svc_historian)、仅授予完成服务所需的最小权限、禁止交互登录、密码纳入托管系统并定期轮换。轮换时需协调服务重启窗口,避免采集中断。
默认账户是厂商在交付时预置的账户,如“admin/admin”“operator/operator”。这些账户在互联网上被广泛收录,攻击者会优先尝试。SCADA系统上线前必须完成默认账户清理:能禁用的禁用,不能禁用的修改为强密码并限制登录来源。审计时应逐一核对设备清单,确认每台PLC、RTU、HMI、交换机上的默认账户均已处理。
账户生命周期管理检查表(示例)
以下检查表可用于日常审计或上线前自查,字段可根据实际系统调整。
| 检查项 | 检查内容 | 判定标准 | 常见问题 |
|---|---|---|---|
| 账户创建 | 是否有工单驱动、背景审查记录 | 创建记录可追溯到申请人和审批人 | 口头申请、无审批直接建号 |
| 权限审批 | 是否按最小权限授予、高权限是否双人审批 | 权限清单与岗位职责匹配 | 审批流于形式、权限范围过大 |
| 账户变更 | 岗位调整后权限是否同步回收 | 旧权限已移除、新权限已审批 | 只加不减、权限叠加 |
| 账户禁用 | 离职/项目结束是否及时禁用 | 禁用时限≤1个工作日 | 离职数月账户仍活跃 |
| 账户删除 | 保留期后是否清理、标识是否复用 | 删除记录完整、标识不复用 | 长期不删除、标识被重新分配 |
| 特权账户 | 是否个人化、有效期、操作审计 | 无共享特权账户、操作可归因 | 多人共用admin、无操作录屏 |
| 服务账户 | 是否专用命名、最小权限、禁止交互登录 | 服务账户清单完整、密码托管 | 服务账户用于人工登录、密码不变 |
| 默认账户 | 是否修改或禁用 | 设备清单中默认账户均已处理 | admin默认口令未改 |
账户生命周期管理的本质是让“谁在什么时间、以什么身份、能做什么”始终处于可控和可追溯状态。创建有依据、审批有制衡、变更有同步、禁用有时限、删除有保留,五个环节形成闭环,才能避免账户成为SCADA系统中被忽视的薄弱入口。