单选防止SQL注入攻击最有效的方法是?
- A. 过滤特殊字符
- B. 使用参数化查询(预编译语句)
- C. 限制输入长度
- D. 使用WAF防火墙
答案:B 参数化查询是防止SQL注入最根本的方法,使恶意SQL无法被数据库解析执行。
单选以下哪种密码存储方式是安全的?
- A. 明文存储
- B. MD5哈希
- C. SHA1哈希
- D. BCrypt加盐哈希
答案:D BCrypt专为密码存储设计,含有盐值且计算成本可调,是当前密码存储最佳实践。
多选OWASP Top 10中的访问控制失效包括哪些情形?
- A. 用户A能看到用户B的私人数据(水平越权)
- B. 普通用户访问管理员功能(垂直越权)
- C. 密码使用MD5存储
- D. 系统存在未修复的已知漏洞
答案:A、B 访问控制失效指权限验证缺陷,AB为典型的水平/垂直越权问题;C属于加密失效,D属于其他类别。
判断在测试环境发现的安全漏洞,只要不影响生产环境就无需立即修复。
答案:× 测试环境的漏洞往往反映代码层面问题,同样的代码部署生产后将造成真实危害,须及时修复。
单选SDL安全开发生命周期中,SAST是指?
- A. 安全测试标准文件
- B. 静态应用安全测试
- C. 系统架构安全评估
- D. 源代码访问控制系统
答案:B SAST(Static Application Security Testing)是在不运行代码的情况下分析代码安全性的测试方法。
单选等保2.0三级系统要求的认证方式是?
- A. 用户名+密码单因素认证即可
- B. 双因素认证(2FA/MFA)
- C. 仅IP白名单访问控制
- D. 内网访问无需认证
答案:B 等保2.0三级系统要求实施双因素认证,仅用户名密码不满足等保要求。
判断安全事件发生后,首要任务是隔离受影响系统,而不是立即向外部报告。
答案:√ 安全事件处置第一步是隔离(切断威胁扩散),取证和通报在隔离之后,这是业界标准的应急响应顺序。
单选以下代码存在什么安全问题?password = hashlib.md5(password).hexdigest()
- A. 代码语法错误
- B. 使用了不安全的哈希算法(MD5不适合密码存储)
- C. 没有任何问题,MD5很安全
- D. 密码变量命名不规范
答案:B MD5已被证明不适合密码存储,存在彩虹表攻击风险,应使用BCrypt/Argon2等专用算法。
多选安全左移的理念包括哪些实践?
- A. 在需求阶段进行安全需求分析
- B. 在开发阶段遵守安全编码规范
- C. 等产品上线后再进行安全测试
- D. 在设计阶段进行威胁建模(STRIDE等)
答案:A、B、D 安全左移强调将安全活动提前到开发生命周期的早期阶段(需求、设计、开发),C与此相悖。
简答请简述安全事件应急响应的六个步骤及每步的关键要求。
参考答案:①发现(建立监控告警机制,及时发现异常);②隔离(快速切断受影响系统,防止扩散);③取证(保存日志快照,不破坏原始证据);④通报(按规定时限通报监管机构和相关方);⑤修复(修补漏洞,恢复业务正常运行);⑥复盘(根因分析,建立预防机制,更新应急预案)。
判断只要系统通过了等保测评,就永久满足等保要求,无需再次测评。
答案:× 三级系统须每年进行一次等保测评,系统持续变更后也需要重新评估安全状态。
多选代码安全审计的主要目标包括?
- A. 发现OWASP Top 10类型的安全漏洞
- B. 确保代码符合安全编码规范
- C. 评估代码的运行性能
- D. 检查是否有硬编码的密码或密钥
答案:A、B、D 代码安全审计重点是发现安全漏洞、规范检查和敏感信息泄露(如硬编码密钥),C是性能测试范畴。
单选STRIDE威胁建模中,"R"代表?
- A. Risk(风险)
- B. Repudiation(抵赖)
- C. Restriction(限制)
- D. Replay(重放)
答案:B STRIDE代表:Spoofing(欺骗)、Tampering(篡改)、Repudiation(抵赖)、Information Disclosure(信息泄露)、Denial of Service(拒绝服务)、Elevation of Privilege(权限提升)。