系统的安全风险
一个系统从前端、服务端到底层的依赖都存在着各种各样的安全风险:
- 前端安全风险:XSS、跳转钓鱼、跨站请求等
- 服务端安全风险:水平权限问题、未授权访问、敏感信息泄露、SSRF、SQL 注入等
- 云服务的安全风险:短信/邮件轰炸、数据泄露风险、内容安全等
这些安全问题想要解决基本都没有银弹,只能一个个单独处理,但是有一些基本的原则:
- 不要信任用户的任何输入
- 任何渲染富文本的地方都需要防范 XSS,内容也可能并不是通过 IDE 输入的;
- 要在服务端执行用户的代码一定要放在沙箱中;
- 要从服务端请求用户传递的资源,一定要经过 SSRF 过滤;
沉淀标准的编码范式来处理安全风险,且需要在 Code Review 中重点关注
- 所有接口都必须有权限校验;
- 响应序列化方法过滤敏感信息;
- 不允许拼接 SQL;
网友评论