Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解

这篇具有很好参考价值的文章主要介绍了Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
其实这是一道很简单的题,题目中也给了提示:
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
提示的意思是验证码不会变,结合网上的一些解析也是对此直接默认了,但是这个验证码是怎么不变的,没有看到有人细说,也许这些思考对于一些人来说已经微不足道了,但是结合一些搭建网站前后端的知识,我想从一个初学者的角度更深层次的解释一下这个问题。
——————————————————————————————

解题方法

Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
爆破是基于上一题对于用户名密码的简单爆破,这题关键在于有了验证码。
初步的试探一下,如果输错了验证码,不管用户名密码是什么,都会显示“验证码输入错误哦!”,然后验证码会刷新
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
而把验证码输入正确,用户名密码不正确,就会显示“username or password is not exists~”,然后验证码也会刷新
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
所以总结一下网站的展现的表象,这个验证码在两种情况下会变,第一种情况是刷新页面的时候,第二种情况是点击验证码图片的时候。

然后打开burpsuite按照正常顺序,打开代理,输入用户名、密码、验证码,点击“Login”,然后发的请求就会被burpsuite捕获到。
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
发现这个请求是POST,然后一共有四个参数分别是 username password vcode submit
其中submit是前端代码中在“Login”按钮里写死的

<input class="submit" name="submit" type="submit" value="Login">

而username与password是需要爆破的,所以想着这个vcode先不让他变,把这个请求送到Repeater里面去,先改变用户名和密码看一看响应的回来代码的变化,尤其是“Login”按钮下面那一行小字,看看是返回的文字是验证码不对还是用户名密码不对。
于是在Repeater中如下操作:
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
在左面的请求中,用户名、密码改成222,验证码(vcode)是正确的,只不过刷新了页面不是原来的验证码了。
在右面的响应中,在html代码中找到那个“Login”按钮,下面显示的是用户名密码不对。
如是再更改几次用户名密码,验证码vcode不改变,结果还是显示用户名密码不对,说明验证码一直是对的。
由此就知道了,在burpsuite里面操作这期间,没有碰浏览器,验证码一直是没有变的。
所以此时把请求发送到intruder来进行爆破,由于是用户名和密码两个参数的爆破,需要选择pitchfork模式,将username和password添加进参数。
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
分别为用户名和密码选择爆破字典,然后进行爆破。
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
这里字典简单了些,就是为了做题。
结果如下:
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
然后发现admin和123456组合的响应报文长度不一样,点进去看发现他是“login success”字样,所以比别的“username or password is not exists~”字样会少一点字。
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
到此这道题就做完了。

深度思考

那为啥这个验证码当时在burpsuite里就不变呢?单单的试一试发现他不变有点瞎猫碰死耗子的侥幸,感觉这道题和闹着玩一样。但其实仔细深究的话,这里面知识还是不少的。
这个pikachu平台我是搭建在自己电脑上的,随时可以看源代码,这个问题的答案就是藏在源代码里,所以就先细细的分析一下代码。

首先要知道一个事情,这个网站由php、html、js等代码写成的,php属于后端代码,由服务器来解析运行;html、js是前端代码,在浏览器(客户端)来解析运行。所以在网页中右键,再点击查看网页源代码之后,能看见的只有html和js代码,以及php代码运行过之后对html代码的一些更改、添加等效果。要是想看后端的php代码就要去本地文件夹中去看。
查看浏览器中的验证码图片这个区域的源代码(对应的后端文件是bf_server.php),观察到img标签中的src指向showvcode.php;后面的onclick事件是对于showvcode.php的重新请求,后面用get方法传日期那个没有用,后面代码可以看出来。
Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
在本地文件中找到这个文件,这是pikachu作者的源文件:
showvcode.php文章来源地址https://www.toymoban.com/news/detail-512547.html

<?php 
session_start();
include_once 'function.php';
//$_SESSION['vcode']=vcode(100,40,30,4);
$_SESSION['vcode']=vcodex();

到了这里,关于Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【XSS漏洞03】XSS漏洞验证、语句构造与绕过方法

    常见概念 POC:全称 ’ Proof of Concept \\\',中文 ’ 概念验证 ’ ,常指一段漏洞证明的代码。 EXP:全称 ’ Exploit \\\',中文 ’ 利用 \\\',指利用系统漏洞进行攻击的动作。 Payload:中文 ’ 有效载荷 \\\',指成功exploit之后,真正在目标系统执行的代码或指令。 Shellcode:简单翻译 ’ she

    2024年02月05日
    浏览(36)
  • Shiro身份验证绕过漏洞及修复方案

    近期Shiro修复了一个身份验证绕过漏洞(CVE-2022-40664),1.10.0之前的版本在请求forward或include时不进行拦截鉴权。  下方测试代码,方法1(noauth)不需要权限,方法2(needauth)配置了authc,方法1转发方法2,则可以绕过方法2的鉴权。 1、springboot项目 springboot集成ShiroFilter时,默认

    2024年02月17日
    浏览(25)
  • 【漏洞通告】 CVE-2022-40664 Apache Shiro 身份验证绕过漏洞

    目录 0x01 声明: 0x02 简介:   0x03 漏洞概述: 0x04 影响版本: 0x05 漏洞复现:(暂未公开利用方式) 0x06 临时措施 0x07 修复建议:         仅供学习参考使用,请勿用作违法用途,否则后果自负。         Apache Shiro是一个强大且易用的Java安全框架,它具有身份验证、

    2024年02月13日
    浏览(26)
  • AppWeb 身份验证绕过漏洞 (CVE-2018-8715)

    当前漏洞环境部署在vulhub,当前验证环境为vulhub靶场(所有实验均为虚拟环境) 实验环境:攻击机----kali 靶机:centos7 1、进入靶场,启动环境 2、访问AppWeb控制台:http://your-ip:8080 使用用户名、密码admin访问 访问失败 3、抓包,使用用户名、密码admin 4、只保留用户名参数,发包

    2024年02月13日
    浏览(22)
  • 短信验证码逻辑漏洞学习——各种绕过姿势技巧

    一、参数污染绕过 二、变量污染绕过 三、数据长度绕过 四、空格绕过短信

    2023年04月08日
    浏览(23)
  • 弱口令漏洞与验证码绕过——渗透day04

    目录 一、基于远程服务的弱口令攻击           (一)服务暴力破解软件         (二)实验 二、基于web的弱口令测试      (一)基于表单的暴力破解                      (二)验证码绕过(on client)        1、通过Script Blocker Ultimate插件绕过验证码        2、通过

    2024年02月05日
    浏览(30)
  • 【中危】 Apache NiFi 连接 URL 验证绕过漏洞 (CVE-2023-40037)

    Apache NiFi 是一个开源的数据流处理和自动化工具。 在受影响版本中,由于多个Processors和Controller Services在配置JDBC和JNDI JMS连接时对URL参数过滤不完全。使用startsWith方法过滤用户输入URL,导致过滤可以被绕过。攻击者可以通过构造特定格式来绕过连接URL验证,可能造成数据泄露

    2024年02月12日
    浏览(36)
  • F5 BIG-IP 身份验证绕过漏洞( CVE-2023-46747)

    F5 BIG-IP是一款提供负载均衡、安全保护和性能优化的应用交付控制器。 F5 BIG-IP 的配置实用程序中存在一个严重漏洞(编号为 CVE-2023-46747),允许远程访问配置实用程序的攻击者执行未经身份验证的远程代码执行。 该漏洞的 CVSS v3.1 评分为 9.8,评级为“严重”,因为无需身份

    2024年02月06日
    浏览(30)
  • Pikachu靶场练习——CSRF

    打开pikachu靶场的CSRF我们可以看到CSRF的练习共有三项,分别为get、post、CSRF Token,在概述的地方有对CSRF的简单描述和一个小场景,对CSRF不熟悉的话建议先看看,看完之后那就开始趴。 点击CSRF(get)我们可以看到一个登录页面,点一下提示我们能够得到用户的登陆密码(后面

    2023年04月08日
    浏览(33)
  • pikachu靶场练习——XSS详解

    Cross-Site Scripting 简称为“CSS”,为避免与前端叠成样式表的缩写\\\"CSS\\\"冲突,故又称XSS。 非持久化攻击者事先制作好攻击链接, 需要欺骗用户自己去点击链接才能触发XSS代码(不会存储在服务器,不会经过数据库),一般容易出现在搜索页面。 持久化代码是存储在服务器中的,

    2024年02月09日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包