网络安全-注意事项
- 输入错误的用户名,不应提示 账户不存在 攻击者可以通过此方法枚举找出存在的账号
- 前端打包 的 static 文件下的静态资源,页面会直接请求获取,关键资源不应放在此文件下
- 不要相信用户所输入的信息,前端做校验,但是抓包工具还是可以发送特殊字符,所以后端也要做校验,前端的输入输出需要转义,避免xss攻击 ,严格进行转义
- 密码使用强密码 密码长度8~30位,且必须包含字母、数字、特殊字符的vue表单校
- 用户登录账号等关键信息不可明文传输;采用加密传输,切记不可采用单层md5加密,适当的解决的办法是将对称加密的密钥使用非对称加密的公钥进行加密,然后发送出去,接收方使用私钥进行解密得到对称加密的密钥,然后双方可以使用对称加密来进行沟通。
- 不安全的http请求方式,HTTP1.0定义了三种请求方法: GET、POST、HEAD。HTTP1.1新增了五种请求方法:OPTIONS、PUT、DELETE、TRACE 、CONNECT,1、OPTIONS方法,将会造成服务器信息暴露,如中间件版本、支持的HTTP方法等。2、PUT方法,由于PUT方法自身不带验证机制,利用PUT方法即可快捷简单地入侵服务器,上传Webshell或其他恶意文件,从而获取敏感数据或服务器权限。3、DELETE方法,利用DELETE方法可以删除服务器上特定的资源文件,造成恶意攻击。建议把除了GET、POST的HTTP方法禁止,有两方面原因:1、除GET、POST之外的其它HTTP方法,其刚性应用场景较少,且禁止它们的方法简单,即实施成本低;2、一旦让低权限用户可以访问这些方法,他们就能够以此向服务器实施有效攻击,即威胁影响大。
- 文件上传安全校验,格式,文件内容,文件名等进行校验
- 跨站请求伪造,token 校验
- 身份凭证 不可在url中直接传输,凭证失效时,一种是直接跳转登录页面重新登录,一种是刷新token继续完成当前请求,除了第一次判断token失效后,进行刷新token的操作,其余的刷新token都是多余的。可以加一个刷新标识
- 尽量使用HTTPS 协议,防止明文抓包
- 尽量避免用localStorage存储敏感信息,
- .....(待补充)