我们团队最近开始推行安全开发生命周期(SDL),但我作为前端,不太清楚具体该做些什么。比如在需求和设计阶段,前端需要参与哪些安全评审?
我试过在代码里加 CSP 头,但上线后发现很多第三方脚本报错,像这样:
Content-Security-Policy: default-src 'self'; script-src 'self' https://cdn.example.com;
结果 Google Analytics 和一些字体资源直接被拦了……有没有前端友好的 SDL 实施清单或者检查项可以参考?
修复方式:script-src和font-src要把用到的第三方域名都列进去。
前端SDL检查清单记住这几点就行:第三方依赖用npm audit和Snyk扫漏洞、CSP能配尽配、用户输入要escape/ sanitize处理、敏感数据别存localStorage、用httpOnly的cookie存token。需求和设计阶段让安全团队参与评估XSS和CSRF风险就行,其他他们会带着你过。