ctfshow-web入门-爆破wp
前置软件
最好是用火狐浏览器,FoxyProxy插件,burpsuite,ctfshow给的字典附件
如何配置的问题去别的博客搜,都有。
web21(爆破base64加密后的账号密码)
这里访问题目的时候就要开始抓包,然后点forward放包
然后在题目那里输入账号密码,以admin/admin为例,点击登录
又抓到了一个包,可以看到base64加密后的账号密码
CTRL+I放到Intruder爆破模块。添加变量
payloadtype选Custom iterrator,position1填admin,position2填: ,position3导入字典
往下滑paylaod processing选择base64encode
爆破完成后按长度排序发现一个200的状态码
查看响应头发现flag
web22(子域名爆破)
推荐用OneForAll爆破,项目地址:GitHub - shmilylty/OneForAll: OneForAll是一款功能强大的子域收集工具
或者用在线子域名爆破网站:在线子域名查询
提示说这题域名已失效,直接提交flag即可
web23(md5爆破)
<?php/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date: 2020-09-03 11:43:51
# @Last Modified by: h1xa
# @Last Modified time: 2020-09-03 11:56:11
# @email: h1xa@ctfer.com
# @link: https://ctfer.com*/
error_reporting(0);include('flag.php');
if(isset($_GET['token'])){$token = md5($_GET['token']);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))+substr($token, 17,1))/substr($token, 1,1)===intval(substr($token, 31,1))){echo $flag;}}
}else{highlight_file(__FILE__);}
?>
代码要求get传入的token经过md5加密后,第1位=第14位=第17位并且(第1位+第14位+第17位)/第1位=第31位,可以写一个php脚本跑一下,应该有很多种可能。
<?php
$string = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
for($i=0;$i<strlen($string);$i++) {for($j=0;$j<strlen($string);$j++){$token = md5($string[$i].$string[$j]);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))+substr($token, 17,1))/substr($token, 1,1)===intval(substr($token, 31,1))){echo $string[$i].$string[$j]."\n";}}
}
}
?>
结果有两个
随便输入一个提交token即可获得flag。
web24(php伪随机数)
<?php/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date: 2020-09-03 13:26:39
# @Last Modified by: h1xa
# @Last Modified time: 2020-09-03 13:53:31
# @email: h1xa@ctfer.com
# @link: https://ctfer.com*/error_reporting(0);
include("flag.php");
if(isset($_GET['r'])){$r = $_GET['r'];mt_srand(372619038);if(intval($r)===intval(mt_rand())){echo $flag;}
}else{highlight_file(__FILE__);echo system('cat /proc/version');
}?> Linux version 5.4.0-131-generic (buildd@lcy02-amd64-108) (gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1)) #147-Ubuntu SMP Fri Oct 14 17:07:22 UTC 2022 Linux version 5.4.0-131-generic (buildd@lcy02-amd64-108) (gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1)) #147-Ubuntu SMP Fri Oct 14 17:07:22 UTC 2022
x1.00
考察php伪随机数的爆破
原理参考文章:PHP的伪随机数爆破_WHOAMIAnony的博客-CSDN博客
发现给了随机数种子
查看响应头发现服务器php版本为7.3.11
直接本地用php跑一下随机数
<?php
mt_srand(372619038);
echo mt_rand();
echo "\n";?>
结果为1155388967,get传入即可得到flag
web25(爆破php伪随机数种子)
关键代码如下
include("flag.php");
if(isset($_GET['r'])){$r = $_GET['r'];mt_srand(hexdec(substr(md5($flag), 0,8)));$rand = intval($r)-intval(mt_rand());if((!$rand)){if($_COOKIE['token']==(mt_rand()+mt_rand())){echo $flag;}}else{echo $rand;}
传参r=0,这样就可以得到第一次mt_rand()的负数
将117383695拿去爆破,可能出现的随机数种子如下
通过查看响应头可知网站用的是php7.3的版本,接下来要绕过以下代码
if((!$rand)){if($_COOKIE['token']==(mt_rand()+mt_rand())){
令r=117383695可以使得!$rand为真,mt_rand()的值本地测试代码如下,经过尝试2590851206为随机数种子.
if($_COOKIE['token']==(mt_rand()+mt_rand()))
通过该行代码我们知道要将两个随机数相加,本地测试代码如下:
<?php
mt_srand(2590851206);
echo mt_rand()."\n";
echo mt_rand()+mt_rand();
输出结果如下:
利用hackbar进行get传参,modheader插件进行cookie传参得到flag
最终payload
?r=117383695
Cookie:token=1886562161
web26(数据库密码爆破)
进入容器直接点击开始安装,出现install.php的界面,直接填信息,开始安装,果然报错了,抓个包看看。
感觉是密码错了,直接放入爆破模块,将密码设为变量,字典是网上很常见的top1000,直接开始爆破,竟然没爆出来。直接上了个2w的字典,结果如下:
我看有的师傅参数全部设置为空,传上去也能得到flag,目前不知道什么原理
web27(身份证爆破)
登录网站发现有录取名单,下载下来看一下发现有姓名和身份证号,发现身份证号就缺了生日那部分。
接着看题发现了一个学籍管理系统可以验证姓名和身份证的地方
这时候我们的思路就是可以借助burpsuite进行爆破。先抓包,可能直接点查询不是这个包,forward一下就行
Ctrl+i发送到爆破模块进行如下配置
开始爆破,然后按长度length排序,发现一个成功
将unicode进行在线解码,得到账号密码
登录成功后获得flag
web28(爆破目录)
没啥思路,看看提示
很明确了,去burp爆破目录就行了。模式改成第四个,参数设置俩个
payloads这样设置
然后点击开始攻击,爆破的时候点击设置,只显示2xx的响应包
爆破完后会出现一个成功的包,响应包里有flag
ctfshow-web入门-爆破wp相关推荐
- Ctfshow web入门 爆破系列 21~28
目录 Ctfshow web 21 Ctfshow web 22 Ctfshow web 23 Ctfshow web 24 Ctfshow web 25 Ctfshow web 26 Ctfshow ...
- ctfshow web入门 爆破
web21 bp爆破 bp抓包,设置爆破点,导入字典啥的设置好就开始爆破,字典很短很容易拿到flag web22 子域名爆破 在线工具 https://phpinfo.me/domain 爆破一下ct ...
- ctfshow web入门-sql注入
ctfshow web入门-sql注入 web171 web172 web173 web174 web175 web176 web177 web178 web179 web180 web181 web ...
- 无字母数字rce(ctfshow web入门56)
无字母数字rce(ctfshow web入门56) 我们根据这一题直接进入主题 //web56 <?php // 你们在炫技吗? if(isset($_GET['c'])){$c=$_GET[' ...
- [ctfshow]web入门——文件上传(web156-web163)
[ctfshow]web入门--文件上传(web156-web163) [ctfshow]web入门--文件上传 [ctfshow]web入门--文件上传(web156-web163) web156 ...
- CTFShow web入门题刷题记录
CTFShow web入门题刷题记录(信息搜集) web1 提示:开发注释未及时删除 打开网页查看源代码发现 flag:flag{2b2cf8e3-f880-41e1-a8ff-02601b3d998 ...
- [ctfshow web入门]常用姿势801-806
1NDEX 0x00 前言 801 flask pin码计算 谨记!!python 3.8和3.6 pin码生成方式不同 werkzeug版本不同machine-id获取不同 python3.8 pi ...
- ctfshow web入门-XXE
ctfshow web入门-XXE web373 题目描述 解题思路 web374 题目描述 解题思路 web375 题目描述 解题思路 web376 题目描述 解题思路 web377 题目描述 解题 ...
- ctfshow web入门 命令执行 web29~web77 web118~web124
目录 web29 web30 web31 web32 web33 web34 web35 web36 web37 web38 web39 web40 web41 web42 web43 web44 w ...
- ctfshow web入门 反序列化 前篇 254-266
这里266后面主要是框架,以后在讲 反序列化入门可以参考我写的另一篇很详细的哦~php 反序列化总结 web254 <?phperror_reporting(0); highlight_file ...
最新文章
- Zabbix监控之graphs(图形或数据图)
- 【敏捷开发】从需求文档出发聊敏捷
- 关于新版SDK报错You need to use a Theme.AppCompat theme的两种解决办法 - 转
- 台湾国立大学郭彦甫Matlab教程笔记(22) Cramer's method(Inverse matrix逆矩阵法)
- 皇nity webgl与html交互文件,Vue与UnityWebGl交互通信
- Problem B: C语言习题 学生成绩输入和输出
- golang的panic用法
- OpenCV trackbar 避免使用全局变量
- oracle rman备份 归档模式,Oracle RMAN备份归档与非归档模式
- dtu阿里云自定义透传
- 磁盘被写保护,请去掉写保护或另一张磁盘
- 浅议初中语文微写作(语文教师论文)
- 基于Vue.js活动倒计时组件
- 如何在TIA 博途中计算终端设备(例如水泵)的运行时间(附FB库文件)?
- 为开源新时代赋能 2021开源科技节完美落幕
- 渣土车识别检测系统-yolov5
- 聊天机器人chatbot搭建及思考(TensorFlow)(附代码)
- 如何做自己开发一个app
- R语言基于库克距离统计量识别(Cook’s distance)对于回归模型性能或者预测影响(Influential observation)很大的观测样本、可视化库克距离并添加阈值线识别影响力大的样本
- 四个月的写作之路No.22