逻辑漏洞详解

注意

  1. 不能通过无脑过滤解决。

挖掘思路

参考文章

验证码绕过漏洞

验证码的作用

  • 是一种区分用户是计算机还是人的公共全自动程序。

  • 可以防止:恶意破解密码、刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,实际上用验证码是现在很多网站通行的方式,我们利用比较简易的方式实现了这个功能。

  • 这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答验证码的问题,所以回答出问题的用户就可以被认为是人类。

  • 验证码五花八门,有中文字,纯数字,点击字符、数学运算……

验证码绕过方法

  1. 前端验证验证码,并没有后端验证。直接抓包然后进行跑数据包,反正有没有验证码的阻碍。

  2. 验证码设置了但是并没有效验,乱输验证码也能够成功的登录。

  3. 验证码可以重复使用,比如现在的验证码1111,然后虽然你登录失败后验证码会变,但是你输入1111他却判定你验证码正确(常见)。
    案例

  4. 验证码空值绕过,比如,我们现在抓一个包,发现登录参数是user=admin&password=admin&yzm=4123yzm验证码参数,但是我们如果去掉yzm的传参我们就可以绕过验证码机制,直接传参user=admin&password=admin,验证码就失效了 。 案例

  5. 验证码干扰过低,轻松使用脚本识别。 案例

  6. 输错密码两三次才需要输入验证码,替换Cookie\用户绑定即可绕过验证码。【cookie是你的银行卡,session就是银行中关于你的银行卡的信息,cookiesession是绑定的,session是服务器端,cookie是客户端。】

  7. 验证码会在HTML页面输出。 案例

  8. 验证码可控制,比如他的验证码包含在URL里面,是一个URL传参,我们可以把URL设定,那么验证码可控制 。 案例

  9. 验证码有规则,比如是时间戳的后6位(rand函数进行随机数)。

  10. 有万能验证码,验证码无论是什么,只要输入000000就能直接绕过。

  11. 验证码有的时候会藏在cookie里面,分析一下是不是存在验证码的参数。验证码在cookie里可能会加密,通过md5之类的进行加密。

  12. 图片验证码,类型太少,容易识别。 案例
    多次登录后才出现验证码绕过:
    基于session的案例
    基于IP的案例,换IP【脚本换或者自己搭建免费代理池】、XXFX-Forwarded-For:127.0.0.1
    基于用户: 爆破用户名,而非爆破密码

在这里插入图片描述

练习

在这里插入图片描述

  1. 查看源码,我们找到这个CMS后台登录的路径cmsadmin/a_templetex.php
  2. 我们尝试登录几次后,发现有两种提示:账户不存在、账户和密码不匹配、验证码不正确。
  3. 我们输入账户名admin,密码随便,抓包之后,修改密码,在发送数据包,提示账户密码不匹配,说明验证码绕过。
  4. 把这个包放掉之后,再次查看,提示验证码不正确,说明验证码失效。
  5. 我们在源码中发现了a_templetex.php这个文件,源码如下
    在这里插入图片描述
  6. 修改数据包传参方式为post,修改后如下
    在这里插入图片描述
  7. 上传成功后,使用蚁剑连接即可得到flag。

密码找回漏洞

有一类验证码,他并不是区分用户是计算机还是人的公共全自动程序,他是用来证明你的身份的,比如你登录微信,支付宝,支持短信验证码登录,像这类验证码他实际上是用来区分你的身份的。

当你QQ密码忘记密码的时候,你需要找回密码,然后他要求把APP显示的动态密码填入框里面,一般而言手机验证码时间都有5-30分钟,如果他没有做尝试限制的话我们是不是可以进行穷举?然后直接跑出验证码然后就修改他人密码呢?

在这里插入图片描述
在这里插入图片描述

漏洞情况

  1. 验证码发送后前端返回 。 案例

  2. 验证码无次数限制可爆破。 案例

  3. 验证码可控。 案例

  4. 直接修改密码页面 案例

  5. 越权漏洞–>自己验证码通过改包然后修改他们密码。 案例1案例2

在这里插入图片描述

越权漏洞

越权漏洞详解

支付漏洞

快捷支付原理

在这里插入图片描述
第一种:支付宝给你一个数据,你告诉商家你已经付了钱。
第二种比较常见:用户【传参】 - 商家【价格】 - 支付宝 - 商家 - 用户

注意

  1. 支付漏洞并不需要代码审计。
  2. 支付漏洞属于逻辑漏洞,挖掘这类漏洞有发散思维,往往有事半功倍的效果,简单来说就是不按常理出牌。

常见支付漏洞

  1. 修改支付价格。 案例
    防范措施: 传参加密,但加密可能会被解密或者复用,加密核心由前端决定;商品和钱的传参进行校验
  2. 修改支付状态。 案例
  3. 修改订单数量。 案例
  4. 修改附属值。
    在这里插入图片描述
  5. 修改运费。 案例
  6. 越权支付,存在user=id(123),这种传参时,尝试改改id,尝试用别人的钱包买自己的包包。【有余额功能的网站可能存在这种漏洞。】
  7. 跳过支付环节。【就是前面快捷支付原理的第一种情况】 案例
  8. 案例

支付漏洞如何挖掘

在这里插入图片描述

练习1

  1. 我们注册一个会员后,在商品中心购买商品。
  2. 将商品数量改为负数,提交订单后会出现一个报错页面。
  3. 返回会员中心后即可发现你的余额增加,且出现flag。

练习2

在这里插入图片描述

  1. 来到靶场,首先注册并登录。我们点击任意一件商品,抓取立即购买的数据包。修改参数num-1,发现有弹窗提示。
    在这里插入图片描述
  2. 我们尝试改为0,没有报错,但是提示操作失败,且该靶场没有付钱按钮,所以不管数量0.01,还是0.1,都不能通过。
  3. 我们再次尝试抓取加入购物车的数据包,发现传参为编码,解码后我们继续修改其数量为-1
    在这里插入图片描述
    在这里插入图片描述
  4. 我们点击结算后,依然出现你是黑客的弹窗。
  5. 因此我们尝试考虑一下商品价格凑0
    在这里插入图片描述
  6. 我们提交订单后发现付款成功。
    在这里插入图片描述
  7. 按照靶场题目的提示,点击退款即可得到flag
    在这里插入图片描述
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

poggioxay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值