在微服务中防范服务端请求伪造(SSRF):从 URL 解析歧义到白名单代理网关落地 安全开发

在微服务中防范服务端请求伪造(SSRF):从 URL 解析歧义到白名单代理网关落地

在微服务架构中,处理外部资源抓取、文件导入、网页快照生成以及第三方 Webhook 回调是极其常见的业务需求。许多团队在实现这些功能时,习惯于在业务服务中直接使用标准 HTTP 客户端发起外部请求。然而,当这些微服务运行在同一个 Kubernetes 集群或扁...
阅读全文
为密码重置接口实现一次性令牌:从哈希存储到并发重放测试 安全开发

为密码重置接口实现一次性令牌:从哈希存储到并发重放测试

“密码重置令牌设置了过期时间,就足够安全了”是一个容易漏掉并发条件的假设。过期时间只限制令牌何时不能再用;如果两次请求都在过期前读到同一条有效记录,而密码更新和令牌删除又是分开的操作,两次请求仍可能各自成功。要实现一次性令牌,关键不是缩短有效期,而是让校验、修...
阅读全文
在同一 CI/CD 流水线中编排 SAST、DAST 与依赖扫描:从阶段划分到分级阻断与回滚 安全开发

在同一 CI/CD 流水线中编排 SAST、DAST 与依赖扫描:从阶段划分到分级阻断与回滚

一次合并请求触发流水线后,最容易被忽略的安全假设是:扫描器越多、位置越靠前,门禁就越可靠。按这个假设,很容易把 SAST、依赖扫描和 DAST 全塞进同一个 security 阶段串行执行,任何一项有发现就 fail。结果是一个只改了三行样式的 MR 也要等 ...
阅读全文
在 CI/CD 中用 Semgrep 与 OPA 构建污点审计与 IaC 合规拦截引擎:从规则分级到合并阻断与回滚 安全开发

在 CI/CD 中用 Semgrep 与 OPA 构建污点审计与 IaC 合规拦截引擎:从规则分级到合并阻断与回滚

很多团队都遇到过同一个尴尬场景:流水线里 Semgrep 扫描显示通过,OPA 策略检查也是绿色,但几周后安全团队在代码里翻出同一个命令注入,或者一个把 S3 存储桶设成公开读的 Terraform 变更。问题不在于工具没跑,而在于“扫描结果”和“合并决策”之...
阅读全文
在 CI/CD 预发布环境接入 OWASP ZAP 动态扫描:从基线扫描、认证会话到误报排除与回归验证 安全开发

在 CI/CD 预发布环境接入 OWASP ZAP 动态扫描:从基线扫描、认证会话到误报排除与回归验证

很多团队第一次把 OWASP ZAP 接进流水线时,会默认“扫了就等于安全了”,于是直接把目标指向预发布环境甚至生产域名,用一个基线扫描任务当作安全门禁。真正跑起来才会发现:未登录的扫描覆盖不到后台接口,登录态的会话在几次跳转后失效,低置信度告警刷满构建日志,...
阅读全文
在 CI/CD 中用 SBOM 与可达性分析区分可利用漏洞:从依赖清单到 VEX 分级处置 安全开发

在 CI/CD 中用 SBOM 与可达性分析区分可利用漏洞:从依赖清单到 VEX 分级处置

在流水线里接入 SCA 的团队,很快都会遇到同一个尴尬:扫描一跑完,报告里躺着几十上百条 CVE,红黄一片,但真正值得当晚停下合并去修的可能只有两三条。问题的根源在于绝大多数扫描器默认只做一件事——把 SBOM 里声明的组件版本去比对漏洞数据库,只要版本落在&...
阅读全文
为 Webhook 接收端实现签名校验与防重放:从原始请求体到幂等处理 安全开发

为 Webhook 接收端实现签名校验与防重放:从原始请求体到幂等处理

Webhook 接收端最容易被忽略的假设是:“签名有效”不等于“请求是新鲜的”,也不等于“业务只会执行一次”。HMAC 可以帮助确认请求内容与共享密钥相符;时间戳可以限制旧请求被接受的时间范围;幂等处理则要防止重复投递造成重复业务效果。这几层控制解决的是不同问...
阅读全文
在 CI/CD 中建立密钥泄露扫描门禁:从误报处置到修复回归 安全开发

在 CI/CD 中建立密钥泄露扫描门禁:从误报处置到修复回归

密钥泄露扫描的任务,不是把每个匹配到的字符串都标成“已解决”,而是把发现转化为可复核的风险处置流程:确认它是什么、判断是否可被使用、采取阻断或放行措施、完成凭据轮换,并证明修复没有在后续提交中回归。只有扫描结果、处置记录和验证结果能够对应起来,CI/CD 安全...
阅读全文