第 8 章:综合实战与模拟测试¶
场景: 学完了全部 7 章,现在是检验学习成果的时候。本章通过综合案例分析和模拟测试,帮助你巩固知识、查漏补缺。
8.1 综合案例分析¶
案例:某电商平台安全加固方案¶
背景: 某中型电商平台(日均 UV 50 万),现有架构为:Nginx 反向代理 + Tomcat 应用服务器 + MySQL 数据库。近期发生了一次数据泄露事件——攻击者通过 SQL 注入获取了部分用户数据。
请分析以下问题:
问题 1: 针对 SQL 注入漏洞,应该采取哪些技术措施?(至少列出 3 项)
参考答案
- 参数化查询(预编译语句) :使用 PreparedStatement,将 SQL 结构与用户输入分离
- 输入验证 :对用户输入进行白名单验证(如 ID 只允许数字)
- 最小权限 :数据库账户只授予 SELECT/INSERT/UPDATE 权限,禁止 DROP/ALTER
- WAF 部署 :在 Nginx 层部署 Web 应用防火墙,拦截 SQL 注入攻击
- 错误信息处理 :不向前端返回详细的数据库错误信息
问题 2: 从纵深防御角度,为该平台设计安全防护体系。
参考答案
| 层次 | 防护措施 |
|---|---|
| 物理安全 | 机房门禁、监控、UPS |
| 网络安全 | 边界防火墙 + WAF + DDoS 防护 |
| 主机安全 | 系统加固、HIDS、防病毒、定期打补丁 |
| 应用安全 | 参数化查询、输出编码、CSRF Token、CSP |
| 数据安全 | 数据库加密、定期备份、脱敏处理 |
| 安全管理 | 定期渗透测试、安全审计、应急响应预案 |
问题 3: 如果发生数据泄露,应急响应流程是什么?
参考答案
- 检测确认 :确认泄露范围、数据类型、受影响用户数
- 遏制 :立即修复 SQL 注入漏洞、下线受影响功能
- 根除 :全面代码审计、修复所有类似漏洞
- 恢复 :重置受影响用户密码、通知用户
- 总结 :复盘事件原因、改进安全开发流程
8.2 模拟测试¶
一、单选题(每题 2 分,共 20 分)¶
1. 信息安全的 CIA 三要素不包括( )。
A. 机密性 B. 完整性 C. 可用性 D. 可移植性
查看答案
答案:D —— CIA 三要素是机密性(Confidentiality)、完整性(Integrity)、可用性(Availability)。
2. 以下属于非对称加密算法的是( )。
A. AES B. DES C. RSA D. 3DES
查看答案
答案:C —— RSA 是非对称加密算法。AES、DES、3DES 都是对称加密算法。
3. 数字签名使用( )对消息摘要加密。
A. 发送方公钥 B. 发送方私钥 C. 接收方公钥 D. 共享密钥
查看答案
答案:B —— 数字签名使用发送方私钥加密消息摘要,接收方用发送方公钥验证。
4. 以下攻击中,属于社会工程学攻击的是( )。
A. SQL 注入 B. 钓鱼邮件 C. DDoS D. 缓冲区溢出
查看答案
答案:B —— 钓鱼邮件利用人的心理弱点(好奇心、恐惧),属于社会工程学攻击。
5. 防火墙通常部署在( )。
A. 内网核心 B. 内外网边界 C. 终端设备 D. 数据库服务器
查看答案
答案:B —— 防火墙通常部署在内外网边界,作为网络的第一道防线。
二、填空题(每题 2 分,共 10 分)¶
6. 哈希函数的重要特性包括定长输出、单向性、( )和雪崩效应。
查看答案
答案:抗碰撞性
7. 在 RBAC 模型中,权限被授予( )而不是直接授予用户。
查看答案
答案:角色
8. 防御 XSS 攻击最有效的方法是对输出进行( )。
查看答案
答案:HTML 实体编码
9. 风险处置的四种策略是:规避、降低、( )和接受。
查看答案
答案:转移
10. 应急响应的六个阶段是:准备、检测、遏制、( )、恢复、总结。
查看答案
答案:根除
三、简答题(每题 5 分,共 10 分)¶
11. 简述对称加密和非对称加密的区别,并说明 HTTPS 如何结合使用两者。
参考答案
| 维度 | 对称加密 | 非对称加密 |
|---|---|---|
| 密钥 | 同一密钥加解密 | 公钥加密、私钥解密 |
| 速度 | 快 | 慢(100~1000 倍) |
| 密钥分发 | 困难 | 简单(公钥可公开) |
| 典型算法 | AES、SM4 | RSA、ECC、SM2 |
HTTPS 使用混合加密:握手阶段用非对称加密(RSA/ECDHE)安全交换会话密钥,数据传输阶段用对称加密(AES)高效加密实际数据。
12. 解释 SQL 注入的原理,并说明参数化查询如何防御 SQL 注入。
参考答案
SQL 注入是攻击者将恶意 SQL 代码注入到输入参数中,欺骗数据库执行非预期操作。
参数化查询(预编译语句)将 SQL 结构与数据分离:先发送 SQL 模板(含占位符 ?),数据库预编译后,再将用户输入作为纯数据参数绑定。这样用户输入永远不会被当作 SQL 代码执行,从根本上防止了 SQL 注入。
四、案例分析(10 分)¶
13. 某社交网站允许用户在个人简介中输入 HTML 代码来实现富文本效果。请分析:
(1)这存在什么安全风险?(3 分) (2)攻击者可能如何利用这个漏洞?(3 分) (3)应该如何修复?(4 分)
参考答案
(1)存在 存储型 XSS(跨站脚本攻击) 风险。用户输入的 HTML/JavaScript 代码会被存储并在其他用户访问时执行。
(2)攻击者可以在个人简介中注入恶意脚本:
当其他用户查看该简介时,脚本执行并将用户的 Cookie 发送到攻击者服务器,攻击者可以冒充用户登录。(3)修复方案:
- 对所有用户输入进行 HTML 实体编码(< → <)
- 如果确实需要富文本,使用白名单过滤(只允许安全的标签如 <b>、<i>)
- 设置 Cookie 的 HttpOnly 标志,防止 JavaScript 读取
- 部署 CSP(内容安全策略),限制脚本执行来源
要点总结¶
- 综合案例覆盖了 SQL 注入防御、纵深防御体系、应急响应流程
- 模拟测试覆盖了全部 7 章的核心知识点
- 案例分析考察了实际安全问题的分析和解决能力
🎉 恭喜你完成了计算机三级·信息安全全部 8 章的学习!
建议你: 1. 回顾各章的"要点总结"和"课后练习" 2. 重点掌握密码学(对称/非对称/哈希/签名)和 Web 安全(SQL 注入/XSS/CSRF) 3. 理解纵深防御思想,能设计完整的安全防护方案 4. 做 3~5 套历年真题,检验学习效果