渗透测试

授权 Web API 渗透测试教程:从攻击面梳理到越权验证与整改复测

Web API 渗透测试的价值,不在于证明“某个请求能够返回数据”,而在于证明该请求违反了明确的身份、对象或功能权限规则,并且结果能够由开发、运维和复测人员独立复核。本文仅适用于获得书面授权的测试环境,使用占位域名、测试账号和脱敏数据,重点介绍如何以最小化请求验证对象级授权、功能级授权、认证状态和敏感数据暴露问题。 一、先确认授权边界...
阅读全文
安全开发

如何在 CI/CD 流程中落地 OWASP 静态代码扫描基准 V2.0(2023)

2023 年 5 月 30 日发布的《静态源代码安全扫描工具测评基准》V2.0,适合被当作 SAST 工具选型和落地检查的参考框架。真正把它接入 CI/CD,关键不在于把一份文档直接塞进流水线,而在于确认工具、规则包、构建过程和合规报告之间能够稳定衔接。 对于 DevSecOps 团队来说,比较稳妥的做法是先建立“规则来源可追溯、扫描...
阅读全文

OWASP CVE Lite CLI 实战经验

依赖漏洞扫描最怕两件事:一上来就被漏洞数量吓住,或者看到扫描通过就以为项目安全了。我的做法是把 OWASP CVE Lite CLI 当成发布前的“依赖体检单”:先确认锁文件里的真实依赖,再沿着依赖路径判断从哪里修,而不是盯着漏洞编号发愁。 第一次扫描,先把对象搞清楚 CVE Lite CLI 面向 JavaScript 和 Type...
阅读全文
安全开发

用 OWASP CVE Lite CLI 为 JavaScript 与 TypeScript 项目建立依赖漏洞扫描流程

当 JavaScript 或 TypeScript 项目准备合并代码、发布版本或部署到生产环境时,依赖漏洞扫描应该先回答一个具体问题:当前项目的锁文件里,哪些依赖存在已知漏洞,以及应该从哪里开始修复。OWASP CVE Lite CLI 的定位就是在本地扫描项目锁文件,识别已知漏洞,并给出依赖路径和修复方向。它不需要账号,也不要求把项...
阅读全文

对象级授权与认证的边界差异

认证回答的是“请求来自谁”,对象级授权回答的是“这个已确认的身份能不能操作这一个具体对象”。两个问题的答案来自完全不同的地方,但接口设计文档里常常只有一行“需要 Token”,把它们压成了同一件事。结果是把 URL 里的一个 ID 换成另一个就能读到别人的数据,而认证层从头到尾都在正常工作。失效对象级授权在 OWASP API 安全 ...
阅读全文

初创团队的供应链安全要点

咱们平时用手机 app 或网站,背后几乎都跑着大量开源组件和第三方服务。初创团队为了快速上线,恨不得把能用的现成轮子都装上,这本身没问题,但“装轮子”之前不看轮子靠不靠谱,就成了供应链安全的大坑。说白了,就是依赖管理失控。 很多小团队觉得“能安装、能跑起来就可以用”,结果某天发现依赖的上游仓库被下毒,或者某个开源包维护者悄悄改了几行代...
阅读全文

安全默认配置的最佳实践

安全默认配置:从第一天起就做对的事 安全配置错误常年位居OWASP Top 10风险前列,但它在早期团队中的高发程度与其造成的危害往往不成正比。很多团队直到生产环境被扫描或遭遇事件,才发现数据库中躺着测试账号、API密钥硬编码在代码仓库、调试接口暴露在外网。这些问题的根源往往不是技术复杂度,而是一个工程习惯:默认配置应该是安全的,而不...
阅读全文
安全开发

初创企业必读:2025 版 OWASP 安全编码实践清单

如果团队还没有正式的安全岗位,最容易发生的不是“没人懂安全”,而是安全要求太晚进入项目:接口已经写完、依赖已经引入、权限模型已经散落在各处,最后只能靠补丁式修复。下面这份清单适合初创或早期技术团队放进开发规范、代码评审模板和上线前检查中,核心依据是 OWASP 安全编码实践,并结合 OWASP Top 10:2025 中强调的高风险类...
阅读全文

NoSQL注入测试的实操经验分享

我第一次认真做 NoSQL 注入测试,不是在靶场,而是在一个“看起来很安全”的内部项目上。接口文档写得漂漂亮亮,开发也拍胸口说都做了过滤,结果我拿登录接口随手试了个 JSON 条件,居然直接把认证逻辑绕过去了。那一刻我真有点头皮发麻:NoSQL 注入最坑的地方,不是 payload 多花哨,而是很多团队压根没把“对象注入”当成注入。 ...
阅读全文