最近服务器总是被人攻击,头有点大。以前接触到的安全问题比较少,所以以后所有的安全问题都汇总在这里吧。
2019.8.20 已经做的安全措施:
(1)https安全证书。由于我们的产品是小程序,小程序要求必须要用https证书。所以加上了这个。
(2)MD5摘要。每个接口都加上了md5摘要。内容为参数+6位随机数+密钥得到的md5值。这个由于密钥保存在前端,所以安全问题很大。小程序能轻易的反汇编,得到前端源码。
(3)令牌鉴权。每个用户都拥有临时的16位随机数身份,不使用的话两天后自动过期。
(4)黑名单功能。把被列入黑名单的用户禁止访问任何接口。
(5)敏感词审核。利用微信提供的接口来做敏感词审核,其实图片和视频也应该做的,但是没加上。
需要注意的点:
(1)全部采用post请求,把数据都放到data里面,并且用非对称加密算法加密,服务端才能解密。
(2)时间戳+随机数验证请求,防止重放攻击。
(3)防止横向越权和纵向越权。
(4)隐私信息放在后端获取,获取权限要把控。
需要解决:身份验证、隐私信息不保存在前端、重放攻击