常见中高危漏洞修复建议(汇总)

常见漏洞修复建议(汇总)

1、未授权访问

添加访问权限控制,对访问系统资源得用户身份进行标识,禁止未授权得情况下访问后台资源。

2、敏感信息泄露

1.后端控制严谨,用*号来隐藏敏感信息展现。
2.密码策略要足够复杂,开启二步验证。
3.服务配置严谨,对测试和生产资源做好访问控制。
4.对员工培训相关安全意识。
5、禁止在前端显示明文或密文信息。

3、任意文件下载

使用白名单限制下载路径,建议不要使用拼接文件路径参数的方式拼接下载路劲,可采用随机文件ID的方式传递需要下载的文件。

4、目录遍历

使用白名单限制可以查看的路径。

5、弱口令

对存在弱口令的账号密码进行更改,要求密码长度至少8位,并且包含数字、大写字母、小写字母、特殊符号任意三种组合;添加图形验证码,识别人机交互;增加登录失败处理机制,限制登录尝试次数。

6、垂直越权

1.对账号权限大小进行鉴权处理,判断用户会话身份。
2.前后端同时对用户输入信息进行校验,双重验证机制
3.调用功能前验证用户是否有权限调用相关功能
4.执行关键操作前必须验证用户身份,验证用户是否具备操作数据的权限
5.直接对象引用的加密资源ID,防止攻击者枚举ID,敏感数据特殊化处理

7、shrio-550反序列化命令执行

升级shiro版本到官方最新版,并随时保持更新。

8、存储型XSS漏洞

1.将重要的Cookie标记为 http only,使javascript中的document.cookie语句不能获取到Cookie。
2.输入检查:
在构造白名单的过程中需要保证在不影响用户体验的同时,尽可能杜绝一切不必要的输入内容,只允许用户输入我们期望的数据。 例如:
年龄的textbox中,只允许用户输入数字,而数字之外的字符都过滤掉。
3.输出检查:
对数据进行html encode处理,过滤移除特殊的html标签。

9、sql注入漏洞

[1]对用户的输入进行严格过滤,包括所有的参数,URL和HTTP头部等所有需要传给数据库的数据。包括但不限于以下字符及字符串:
select and or like regxp from where update exec order by having drop delete ( ) [ ] < > , . ; : ' " # % + - _ = / * @
[2]预编译SQL语句,而不要动态组装SQL语句,否则必须确保在使用输入的数据组装成SQL语句之前,对特殊字符进行预处理。
[3] 以最小权限执行SQL语句

10、app敏感信息泄露(api key)

将key存储在服务端,通过客户端请求获取或者将key加密编译在动态链接库中

11、etcd未授权访问漏洞

kubernetes的master会安装etcd v3用来存储数据,如果管理员进行了错误的配置,导致etcd未授权访问的情况,那么攻击者就可以从etcd中拿到kubernetes的认证鉴权token,从而接管集群。

12、后台爆破

添加验证码机制,识别人机交互;增加登录失败处理机制,如登陆失败x次之后,限制其在30分钟内无法再次登录。

13、验证码复用

1.完善验证码机制,无论登录成功与否,对于当前已经使用过的验证码要即使销毁并重新生成。
2.限制用户提交的验证码不能是空的。
3.判断提交的验证代码是否与服务器存储的一致。
4.禁止将验证代码的明确信息发送给客户。

14、跨域资源共享(CORS)漏洞

1.白名单限制:定义“源”的白名单,避免使用正则表达式,不要配置Access-Control-Allow-Origin为通配符*或null,严格效验来自请求数据包中Origin的值
2.避免将Access-Control-Allow-Credentials标头设置为true 替换值,跨域请求若不存在必要的凭证数据,则根据实际情况将其设置为false
3. 限制跨域请求允许的方法,Access-Control-Allow-Methods替代地减少所涉及的方法,降低风险
复测情况:

15、Token不注销漏洞

退出登录立马注销当前token,一个用户只允许同时存在一个token。

16、Token不注销漏洞

1. 确保JWT是独一无二的:每个JWT应该有一个唯一的标识符,并且在数据库中标记为不可复制或重用。
2. JWT的生命周期管理:设置合适的JWT有效期,并提供机制使其在不再需要时即时失效。
3. 验证JWT的使用上下文:确保每次使用JWT时,用户的会话信息(如IP地址、设备信息等)与初次发放JWT时的信息匹配,以防止会话在不同上下文被复用。
4. 使用JWT黑名单:当用户注销或主动注销时,将其相关的JWT标记为无效,并加入黑名单。
5. 使用JWT的签名机制:确保使用强签名算法,并且保管好签名使用的密钥,以防止签名被伪造。

17、Swagger-ui接口文档未授权访问漏洞

1.Swagger开启页面访问限制。
2.Swagger开启Authorize认证。

18、Accesskey泄露

禁止将accesskey 存储在静态资源中,并且限制accesskey的权限,如仅上传权限

19、Druid未授权访问漏洞

Druid 开启权限校验。

20、任意文件上传漏洞

1.在服务器后端控制上传文件类型,处理时强制使用随机数改写文件名和文件路径,不要使用用户自定义的文件名和文件路径。
2.在服务器后端建议使用白名单的方法对上传的文件进行过滤,上传的目录不进行解析,只提供下载权限。
3.开源编辑器上传漏洞:若新版编辑器已修复漏洞,请更新编辑器版本。
4.除了以上的方法之外,还可将被上传的文件限制在某一路径下,并在文件上传目录禁止脚本解析。
  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值