Lesson 15 · 约 18 分钟

守住数据:数据库系统安全

本课目标:能数出八类威胁与八项机制;秒判 SQL 注入该用参数化查询;分清传输加密 / 库内库外 / TDE;记住脱敏、库防火墙、备份三类与默认端口。

开场:主机关好了,数据还在库里

第 14 课守的是操作系统;本课落到数据真正存放的地方——数据库。 上午常考威胁分类、加密/脱敏/库防火墙、默认端口与 Oracle 保险库;下午案例常写「库加固清单」。 教材对应第 20 章

零、先复习再开新

R1 · 「文件属主可自行把读权限授给同事」属于哪种访问控制?
答案 A。属主自主授权 = DAC(第 14 课)。库里的 GRANT/REVOKE 也常按 DAC/RBAC 考。
R2 · 用发送方私钥生成数字签名,验签时用谁的密钥?
答案 B。私钥签名 → 公钥验签(历史易错点复习)。

一、数据库安全保什么

数据库安全 = 保障库中数据的机密性、完整性、可用性。 教材把它拆成四块:管理安全、数据安全、应用安全、运行安全

口诀(数据库职责分离):管库的不管审计,应用账号只用最小权(职责分离:DBA / 应用 / 审计分开)。

二、八类威胁(上午爱对号入座)

威胁一句话题干关键词
授权误用合法用户越权或乱授权内部人、权限过大
逻辑推断和汇聚低敏数据拼出高敏结论多次查询、平均工资反推
伪装假冒合法用户进库偷口令、会话劫持
旁路控制后门绕过认证与访问控制隐藏账号、绕过审计
隐蔽信道用非正常通道偷传数据共享内存、临时文件、时间戳编码
SQL 注入把恶意 SQL 拼进查询' OR '1'='1
口令破解字典/暴力/撞库猜库口令弱口令、默认口令
硬件及介质砸机器、偷硬盘、从废弃盘恢复物理、介质
口诀(数据库八类威胁):授权乱用会推断,伪装旁路藏信道;注入撞库破口令,硬盘介质也要防(字头:权推伪旁隐注破硬)。

三、八项机制(下午卷可直接抄)

  1. 标识与鉴别:口令、证书、多因子——先认人
  2. 访问控制:DAC / MAC / RBAC;最小权限;细粒度到表/行/列
  3. 安全审计:谁在何时对哪张表做了什么
  4. 备份与恢复:可用性最后一道防线
  5. 数据加密:传输 + 存储
  6. 资源限制:限制 CPU、会话、连接数,防把库拖死
  7. 安全加固:补丁、关默认账号、改默认端口、关危险存储过程
  8. 安全管理:分权、流程、规范
口诀(数据库八项机制):先认人,再控权,审计备份加加密,限资源再加固,管理贯穿全过程(字头:认控审备加限固管)。

四、SQL 注入:首选参数化,不是「过滤一下」

第 2 课已见过 ' OR '1'='1。本课把防御优先级钉死:

易错:隐藏报错、过滤单引号、缩短口令,都挡不住注入。
口诀(SQL 注入防护):简单过滤挡不住注入,参数化查询才可靠

五、加密:网上 SSL,落地分库内库外

类型保什么考点词
传输加密应用 ↔ 库 的网上数据SSL / TLS,防窃听
库内加密落盘数据;DBMS 内核加密对应用透明;可到字段级;占库 CPU
库外加密网关/硬件在库外加解密不占库 CPU;粒度较粗(文件/表)
TDE透明数据加密(存储)Oracle 高级安全;英文 Transparent Data Encryption
口诀(数据库加密):网上传输走 SSL,落地存储分库内库外;透明加密简称 TDE

六、脱敏 + 数据库防火墙

脱敏:开发/测试/分析时不给真实敏感值。教材五种方法:屏蔽、变形、替换、随机、加密。 例:银行卡 4346 **** **** 5379 是屏蔽/替换。

数据库防火墙夹在应用与库之间,做 SQL 协议分析:放行合法语句、阻断违规语句。 普通网络防火墙不看 SQL 内容(第 5 课「防不了注入」),所以拦注入要靠参数化 + 库防火墙 / WAF。

口诀(数据脱敏五法):屏蔽变形替换掉,随机加密都脱敏
口诀(数据库防火墙):普通防火墙不看 SQL,数据库防火墙才拦注入

七、备份三类(别和增量/差异搞反)

类型备份什么恢复怎么拼
完全备份当时全部数据一份就能恢复;最慢最大
差异备份相对上次完全备份的变化全备 + 最后一份差异
增量备份相对上一次备份(全/增均可)的变化全备 + 之后每一份增量

SQL Server 还常考四种备份方案:文件/文件组、事务日志、完全、差异;三种恢复模型:简单、完全、批量日志。

口诀(备份三种类型):全备最全;差异只相对上次全备;增量相对上一次任意备份

八、平台关键词(认端口、认保险库)

默认端口必背词
SQL Server1433关危险扩展存储过程;传输用 SSL;限制来源 IP
MySQL3306五张授权表:user / db / host / tables_priv / columns_priv;GRANT/REVOKE
Oracle常考 1521TDE、数据屏蔽;Database Vault安全域 + 命令规则控特权
国产达梦、人大金仓、神舟等;风险仍是漏洞、第三方组件、错配、受 OS 牵连
口诀(数据库默认端口):SQL Server 默认一四三三,MySQL 默认三三零六
口诀(Oracle Database Vault):Oracle 保险库控特权,靠的是安全域和命令规则

九、动手练一练

Q1 · 防止 SQL 注入最有效的方法是?
答案 A。参数化把输入当数据。隐藏报错、改口令、关 443 都不是防注入的正道。
Q2 · 「多次查低敏数据,拼出高管薪资」属于哪种威胁?
答案 B。逻辑推断和汇聚。A 是授权误用,C 是 SQL 注入,D 是隐蔽信道。
Q3 · 应用与数据库之间防网上窃听,优先用?
答案 A。传输加密靠 SSL/TLS。改端口是加固辅助,关审计和超级权限是反面教材。
Q4 · 测试库把真实身份证换成假号码,这是?
答案 B。脱敏让非生产环境看不到真值;TDE 是密文存储,不是换成假号码。
Q5 · 普通网络防火墙通常拦不住 SQL 注入,主要因为?
答案 A。包过滤/状态检测不解析 SQL。拦注入靠参数化 + 库防火墙 / WAF。
Q6 · Microsoft SQL Server 默认监听端口通常是?
答案 B。1433 = SQL Server;3306 = MySQL;3389 = 远程桌面;1521 常与 Oracle 相关。
Q7 · Transparent Data Encryption is abbreviated as?(英文题)
答案 B。TDE = Transparent Data Encryption,透明数据加密(存储侧)。
附加题(下午卷风格)· 点击展开答案

某单位 Web 系统后台为 MySQL,存在弱口令、明文传输和 SQL 注入风险。请写出数据库安全加固的主要措施(不少于 5 点)。

职责分离:DBA、应用账号、审计账号分开;应用账号只给业务所需的最小权限。
认证加固:改默认账号与口令;强口令策略;限制来源 IP;能关远程就关 3306 对外监听。
防注入:应用使用参数化查询;禁止拼接 SQL;必要时部署数据库防火墙 / WAF。
传输与存储加密:应用↔库走 SSL/TLS;敏感字段加密或启用透明加密;测试环境脱敏
审计与高危操作:开启审计;限制无 WHERE 的更新删除、DROP 等。
备份恢复:制定全备 + 增量/差异策略,并定期做恢复演练。
⑦ 打补丁、关危险功能(如导入本地文件)、对照安全基线扫描。
答题模板:分权最小权 + 参数化 + SSL + 脱敏/加密 + 审计备份,点到即可得分。

十、今日任务(约 35 分钟)

  1. 精读第 20 章(20 分钟):阅读第 20 章 数据库系统安全,对照数据库安全速查卡背威胁八类与机制八项。
  2. 口述自测(10 分钟):不看笔记,说出:防注入首选什么;SSL 与 TDE 各保哪一段;1433 和 3306 分别是谁;差异备份相对哪一次。
  3. 睡前回忆(5 分钟):按考点背——① SQL 注入防护:参数化查询才可靠;② 数据库加密:网上传输走 SSL,透明加密简称 TDE;③ 数据库默认端口:SQL Server 一四三三,MySQL 三三零六。

十一、本课知识从哪来