当前位置: 首页 > news >正文

CTF WEB入门 爆破篇

 续上一篇信息收集篇,对应CTFshow WEB入门 爆破

目录

web21爆破账号密码

BurpSuite Intruder四种爆破方式

web22爆破子域名

web23爆破GET参数

web24爆破GET参数

web26抓包流量

web27爆破身份证

web28爆破目录

总结


web21爆破账号密码

需要账号密码才能登录。

随便输入什么用户名密码,抓包登录。这里输入111/111

发现抓的包,多了个Authorization字段(认证字段)

这里典型的base64特征,去解密看一下

发现就是对应的账号和密码

那我们转发到BurpSuite的intruder模块进行爆破

添加爆破点

设置payload,这里选用自定义迭代器,因为有自己的格式账号:密码

设置第一个位置,我这里为了节省时间只添加了一个admin(也可以使用自带的usernames字典,在添加那里)

设置第二个位置为‘:’

设置第三个位置,使用的是题目下载的字典

还要设置base64编码

并且取消URL编码

开始爆破,出现200状态码,查看得到flag

BurpSuite Intruder四种爆破方式

在WEB爆破中,BurpSuite intruder模块是非常经常使用的。这里学习介绍模块的四种爆破方式。

  • Sniper狙击手模式

使用一组payload,依次爆破被标记的爆破点。依次爆破是指,如果是有多个爆破点,会先爆破第一个,不管其他爆破点的值。所以这种模式一般只设置一个爆破点,通常用于已知用户名,爆破密码的情况。

  • Battering ram破城锤模式

使用一组payload,同时爆破被标记的爆破点。这里是指用的都是同一个payload,爆破的时候多个爆破点都是同一个值。

  • Pitchfork音叉模式

多少个爆破点就对应多少个payload,同时爆破被标记的爆破点。这里指的是多个payload同时顺序执行。如果payload数量不相等一般会按照少的执行。

  • Cluster bomb集束炸弹模式

同Pitchfork一样,有多少个爆破点就有多少个对应的payload,并且同时爆破被标记的爆破点。不同的是,执行的时候是根据多个payload的组合进行爆破,就比如payload1的第一个去匹配payload2的所有集合,执行后继续payload1的第二个去匹配。

web22爆破子域名

题目提示:域名也可以爆破的,试试爆破这个ctf.show的子域名

这里考察的是域名爆破,常用到的是Layer工具

直接使用Layer爆破子域名

看wp说是在 vip.ctf.show ,将鼠标悬停在标题处,但是现在已经不行了。题目也给了flag。

web23爆破GET参数

打开这里是一串代码,需要对代码进行审计

  • error_reporting(0),将错误报告级别设置为0,表示不会显示任何错误或警告信息
  • include一个flag.php文件,表示包含这个文件,可能里面包含了一些信息$flag
  • 如果用户提供了token的GET参数值,会对其一系列处理
    • 首先对token值进行md5加密处理,存储在新的$token中
    • 然后对其检查:substr函数第一个参数是需要处理的值、第二个参数指从哪里分割(其列表值从0开始)、第三个参数是指分割多少个
      • 这里检查token的第2位和第15位以及第18位是否相同
      • 如果相同进入下一步,intval是将数值变为整数,这里进行计算
        • (计算token的第二位+token的第15位+token的第18位) / (计算token的第二位) 是否等于token的第32位数值。
        • 如果条件满足,输出$flag值
  • 未提供token则返回文件源代码。

那么很明显,这里需要计算符合条件的token值,写个脚本

<?php
for($i = 0; $i < 10000; $i++){$token = md5($i);if(substr($token, 1,1)===substr($token, 14,1) && substr($token, 14,1) ===substr($token, 17,1)){if((intval(substr($token, 1,1))+intval(substr($token, 14,1))+intval(substr($token, 17,1)))/intval(substr($token, 1,1))===intval(substr($token, 31,1))){echo $i; 
}}
}
?>

得到token=422,在网页输入token值,得到flag

web24爆破GET参数

怎么说,这题更像代码审计,不像爆破题目,但在这个专题里面就练练。

又是一串代码,继续代码分析

这里代码web23很像,这里传入参数r

着重解释一下mt_srand函数。

  • mt_srand用于初始化随机数生成器,可以生成更高质量的随机数序列
  • mt_rand函数生成随机整数
  • 当随机数的种子是确定值时,mt_srand(确定值),那么mt_rand()得到的随机数也是确定的。

那么这里只需要获得mt_rand()的值就好了

<?php
mt_srand(372619038);
echo mt_rand();
?>

填入参数。获得flag

web26抓包流量

这里也不算一个爆破,就是抓包。

打开页面,同意协议,开始安装,出现一个安装页面

这里直接点确认无误,开始安装 没有反应

查看源代码,发现安装会跳转一个checdb.php,但是这里打不开这个页面

抓包看看,抓包抓到了这个页面的流量

什么不用填,直接发送请求,就能返回flag

web27爆破身份证

这里有点渗透感觉了

打开页面,是一个登录页面

这里登录的学号和密码可以想到尝试爆破,但是因为没有一个方向限制,可能爆破会没有所获。

这里还有另外两个:录取名单和学生学籍信息查询系统,发现录取名单是可以下载的,里面有姓名、专业以及打码的身份证号

在学籍信息查询系统中有需要学生姓名和身份证号码,那比爆破学号和密码,爆破身份证更有可能性,这里只需要爆破8位。

那开始爆破身份证,需要注意的是这里打码的字段刚好是出生年月日字段

开始爆破,字段最长的就是正确的身份证号621022199002015237

获得身份证号查询到学号

拿到学号和密码登录系统,获得flag

web28爆破目录

打开就是这个页面,没有发现别的目录。那我们对.ctf.show/进行目录扫描(因为这个一看是主目录,可以一步一步扫目录)

发现/0-100/目录,进一步扫描.ctf.show/1/,也发现一系列/0-100/目录;再进一步扫描.ctf.show/1/1,没有发现其他目录。

那我们可以判断在某一个.ctf.show/x/x目录中有结果。那我们可以使用BurpSuite来爆破得出每一个目录的response再查看是否有不同的response。

爆破得到一个200状态码的请求,查看得到flag

总结

  • 一般爆破常使用BurpSuite,这里学习了爆破密码、身份证号以及目录,要学习BurpSuite四种爆破方式的区别,正确使用。
  • 爆破子域名,使用到Layer这个工具
  • 爆破GET参数,要学会代码审计,利用脚本获取正确的参数值。
http://www.dtcms.com/a/523593.html

相关文章:

  • NAT网络地址转换
  • 【自然语言处理】预训练01:词嵌入(word2vec)
  • 利用inscode帮我用前端页面展示分析博客数据
  • 「赤兔」Chitu 框架深度解读(十):任务调度与并发控制策略
  • Java CompletableFuture 详解与实战:让异步编程更优雅
  • 建设外贸网站要多少钱建设局办的焊工证全国通用吗
  • Linux_基础IO(2)
  • Docker 中使用Nginx 一个端口启动多个前端项目
  • S9 顺序队列
  • 函数绑定器 std::bind
  • STM32基本定时器
  • 第9部分-性能优化、调试与并发设计模式
  • 编程素养提升之EffectivePython(Builder篇)
  • Vue 3 + TypeScript 项目性能优化全链路实战:从 2.1MB 到 130KB 的蜕变
  • 网站首页图腾讯 云上做网站教程
  • Ubuntu(Linux)安装更好用的中文输入法
  • 《算法闯关指南:优选算法--二分查找》--23.寻找旋转排序数组中的最小值,24.点名
  • 【ssh密钥】--- 当密钥密码遇见 Git 服务器:一场关于 “信任” 的浪漫喜剧
  • kotlin 数据类的get和set 问题
  • 爱站网功能左旗网站建设
  • 中国企业跨境云组网指南:低延迟访问德国AWS云做数据分析的实操方案
  • 从单机阅读到云端协作:KoodoReader+cpolar构建知识管理新范式
  • 设计模式之:命令模式
  • EulerOS(NPU)安装llamafactory
  • Ubuntu卸载snap
  • STP(生成树协议)与 RSTP(快速生成树协议)核心知识
  • 数据结构:顺序表讲解(2)
  • 建设一个网站需要考虑什么海口h5公司
  • 高端广告公司网站建设wordpress插件 stock
  • 第二章、全局配置项目主题色(主题切换+跟随系统)