渗透方向的学习-关于top10大漏洞形成原因与修复解决方案一波[详细]之关于爆破漏洞

关于top10大漏洞形成原因与修复解决方案一波[详细]之关于爆破漏洞

此教程针对渗透测试 -软件安全测试 的朋友们希望有帮助 关注博主以后会更新更多教程 喜欢交朋友的也可以加我微信或QQ
在这里环境我就不说了

- 一:暴力破解-服务端验证码爆破(有图有真相)
像这种没有验证码的直接载入payload爆破就可以 无需多说
像这种没有验证码的直接载入payload爆破就可以 无需多说
on server验证码绕过
在这里插入图片描述
首先我们抓一个包 载入repeater发送看一下会提示账号密码错误
在这里插入图片描述
此时我们随便改一下密码再次发送看是否和上次一样的提示 如果一样说明什么呢?
在这里插入图片描述
说明验证码可以复用 此时我们爆破开始 红色区域提示 login success成功

在这里插入图片描述
漏洞成因原理呢 说好的修复方案呢
在这里插入图片描述
首先我们会看到整个验证逻辑是没有问题的,那么漏洞形成原因是因为php的 session生命周期
修复方案 :我们应该在保证用户每次刷新页面的时候销毁这个验证码session重新生成新的验证码session

二:关于前端验证爆破

在这里插入图片描述
右键查看源码可以看到 前端js验证
在这里插入图片描述
后端完全没有验证就直接进行了判断验证
在这里插入图片描述
这样做的后果导致了 安全人员或恶意攻击者 可以随便进行爆破
在这里插入图片描述
验证码删除请求来看 然后载入payload爆破
在这里插入图片描述在这里插入图片描述

漏洞成因:只进行前端js验证 不做后端处理
修复方案:进行后端验证

三:token防止爆破? 不存在的 token往往用于防御csrf
在这里插入图片描述
可以看到form表单里存在一个隐藏表单
在这里插入图片描述
爆破开始 我们对密码和token值进行变量爆破
在这里插入图片描述
使用
在这里插入图片描述
option里线程设置为1个

在这里插入图片描述
登录成功 success
在这里插入图片描述

在这里可能有人不知道什么是token,那么我们来了解一下什么是token。
什么是token?

1、Token的引入:Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token便应运而生。

2、Token的定义:Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。

3、使用Token的目的:Token的目的是为了减轻服务器的压力,减少频繁的查询数据库,使服务器更加健壮。
参考:https://www.jianshu.com/p/24825a2683e6
所以,后端会生成一个token返回给客户端,当客户端进行请求时,就会同时携带该token,与服务端的token来比对,一样就接受,不一样就丢弃。
但是,用token来防止暴力破解是不行的,这是因为token存在于前端,可以被很容易的捕获。
通过测试发现每个数据包的token在变化,所以使用pitchfork进行爆破。

总体来说关于防爆破发修复方案:
1.是否要求用户设置复杂的密码;
2.是否每次认证都使用安全的验证码(想想你买火车票时输的验证码~)或者手机otp;
3.是否对尝试登录的行为进行判断和限制(如:连续5次错误登录,进行账号锁定或IP地址锁定等);
4.是否采用了双因素认证;

							求赞助	
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值