3. 数据安全基础概念:CIA三元组与防护体系

各位工程师,今天我们聊聊数据安全的基础。说实话,很多SCADA项目出问题,都是基础没打牢。我个人习惯把安全比作盖房子——地基不牢,后面装再多防盗门也没用。

3.1 机密性、完整性、可用性(CIA三元组)

CIA三元组是安全领域的铁三角。你想想看,任何一个安全事件,基本都能归到这三类里。

3.1.1 机密性(Confidentiality)

机密性说白了就是「不该看的人看不到」。我在项目中遇到过,某电厂的操作员站居然能直接查看PLC的组态密码明文。嗯,这就是典型的机密性缺失。

  • 加密传输:SCADA通信必须用TLS/SSL,别再用裸TCP了
  • 数据脱敏:日志里不能出现明文密码、密钥
  • 权限隔离:工程师站和操作员站的数据要分开
⚠️ 我曾经踩过的坑:某次升级时,为了调试方便,临时关闭了OPC UA的加密认证。结果忘了恢复,运行了三个月才发现。从那以后,我要求所有临时变更必须走变更管理流程。

3.1.2 完整性(Integrity)

完整性就是「数据不能被篡改」。SCADA系统里,一个错误的设定值可能导致整个产线停摆。

  • 哈希校验:固件升级前必须校验SHA256
  • 数字签名:配置文件、组态文件都要签名
  • 冗余校验:通信协议里加CRC32或更高级的校验
// 我常用的固件校验示例
// 升级前先算哈希,再比对
$ sha256sum firmware_v2.1.bin
a3f8b2c1d4e5...  firmware_v2.1.bin
$ cat firmware.sig
a3f8b2c1d4e5...  # 签名一致才允许升级

3.1.3 可用性(Availability)

可用性就是「系统该干活的时候不能掉链子」。SCADA最怕什么?DDoS攻击把控制网络打瘫了。我记得有个水处理厂,因为交换机被ARP攻击,导致所有PLC失联了40分钟。

  • 冗余设计:双网、双电源、双控制器
  • 流量整形:限制广播风暴、未知单播
  • 故障隔离:一个区域出问题,不影响全局

3.2 身份认证

身份认证就是「证明你是你」。SCADA系统里,我见过最离谱的是所有工程师共用一个admin账号。你想想看,出事了怎么追溯?

3.2.1 认证方式

  • 密码认证:至少12位,包含大小写+特殊字符
  • 双因素认证:密码+硬件令牌或手机验证码
  • 证书认证:适用于PLC、RTU等无人值守设备
💡 我的建议:SCADA系统尽量用LDAP或AD统一认证。别每个设备单独设密码,否则运维人员会偷偷把密码贴屏幕上。

3.3 授权与访问控制

授权就是「你能干什么」。访问控制就是「你能去哪儿」。这两个概念经常被混淆,我简单解释一下。

3.3.1 最小权限原则

每个用户只给完成工作所需的最小权限。我在项目中遇到过,一个实习生居然有修改PLC程序的权限。嗯,这不出事才怪。

角色 允许操作 禁止操作
操作员 监视、确认报警 修改设定值、下载程序
工程师 组态修改、固件升级 删除审计日志
管理员 用户管理、系统配置 直接操作现场设备

3.3.2 访问控制模型

  • DAC(自主访问控制):文件所有者自己决定谁可以访问
  • MAC(强制访问控制):系统统一规定,用户不能改
  • RBAC(基于角色的访问控制):按角色分配权限,最常用

3.4 审计与日志

审计日志是安全事件的「黑匣子」。没有日志,出了事你连怎么发生的都不知道。我有个习惯:所有SCADA项目,第一件事就是配好日志服务器。

3.4.1 必须记录的日志

  • 登录日志:谁、什么时间、从哪登录的
  • 操作日志:谁修改了什么参数、什么时间
  • 异常日志:通信中断、认证失败、硬件告警

3.4.2 日志管理要点

  • 集中存储:别让日志散落在各个设备里
  • 防篡改:日志文件要写保护,最好用WORM存储
  • 定期备份:至少保留90天,合规要求可能更长
🔑 核心要点:CIA三元组是基础,身份认证是入口,授权控制是边界,审计日志是追溯。这四个环节缺一不可。

3.5 知识体系结构图

下面这张图展示了数据安全基础概念之间的关系。我习惯用这种图来给团队做培训,一目了然。

数据安全基础 机密性 完整性 可用性 防护措施 身份认证 你是谁? 授权控制 你能做什么? 访问控制 你能去哪? 审计日志 留下证据 SCADA系统数据安全

这张图我经常贴在项目白板上。你看,从CIA三元组出发,到具体的防护措施,最后落到SCADA系统安全。每个环节都环环相扣。

💡 实战建议:做SCADA安全评估时,先对照这张图检查每个环节。缺了哪个,哪个就是风险点。我每次做渗透测试,都是按这个思路来的。

公众号:蓝海资料掘金营,微信deep3321