WEB入门-爆破

  • 1、web21
  • 2、web22
  • 3、web23
  • 4、web24
  • 5、web25
  • 6、web26
  • 7、web27
  • 8、web28

1、web21

tomcat认证爆破–用户名:密码,一般使用custom iterator爆破

From:https://www.cnblogs.com/007NBqaq/p/13220297.html

得到爆破字典和需要输入账号密码的网页,于是先尝试输入账号admin密码1234进行抓包

抓包后没有看到admin或password的字段,但是看到一串base编码

解码结果为admin:1234即为我们输入的账号和密码

将数据包发送到爆破模块,选择中账号密码

选择自定义迭代器,分别导入字典

position1:用户名

position2:

position3:密码

选择Payload Processing进行编码设置

因为base64编码存在=,所以取消Palyload Encoding编码,爆破即可得到flag

提示也有脚本

# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2020-11-20 19:16:49
# @Last Modified by:   h1xa
# @Last Modified time: 2020-11-20 20:28:42
# @email: h1xa@ctfer.com
# @link: https://ctfer.comimport time
import requests
import base64url = 'http://xxxx.ctf.show/index.php'password = []with open("1.txt", "r") as f:  while True:data = f.readline() if data:password.append(data)else:breakfor p in password:strs = 'admin:'+ p[:-1]header={'Authorization':'Basic {}'.format(base64.b64encode(strs.encode('utf-8')).decode('utf-8'))}rep =requests.get(url,headers=header)time.sleep(0.2)if rep.status_code ==200:print(rep.text)break

2、web22

根据题目提示爆破子域名,使用在线工具进行爆破即可

访问vip.ctf.show时即可得到flag

3、web23

关键代码

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__);
}

isset():检测变量是否已设置并且非NULL,若传入多个参数,只有全部非NULL才会返回true

intval():获取变量的整数值,不能用于object

PHP的三个等号:比较对象的值和类型都要一样

两个等号:值相等即可

$a=10
$b='10'
$a==$b  //true
$a===$b  //false,a是数字型,b是字符型

此代码的意思为:

当md5码满足,第二位=第15位=第18位时,如果(第二位+第15位+第18位/第二位=第32位)整数,时输出flag

因此脚本为:

大佬的python脚本:

mport hashlib
dic = "0123456789qazwsxedcrfvtgbyhnujmikolp"
for a in dic:for b in dic:t = (str(a)+str(b)).encode("utf-8")md5 = hashlib.md5(t).hexdigest()if md5[1:2] == md5[14:15] and md5[14:15]== md5[17:18]:if int(float(md5[1:2]))+int(float(md5[14:15]))+int(float(md5[17:18]))/int(float(md5[1:2]))==int(float(md5[31:32])):print(t)

hashlib是涉及安全散列和消息摘要,提供不同的加密算法接口,如MD5、SHA1、SHA224

digest()返回摘要,作为二进制数据字符串值

hexdigest()返回摘要,作为十六进制数据字符串值

传递运行出的token即可

4、web24

PHP伪随机数种子

题目:

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');
}
  • 代码分析:
mt_srand():播种随机数生成器intval():获取变量的整数值mt_rand():返回随机整数

通过题目代码分析得我们需要将得到的伪随机数进行GET传参即可得到flag

<?php
mt_srand(372619038);
echo (mt_rand());
?>
//1155388967
//URL?r=1155388967即可得到flag

5、web25

From:https://blog.csdn.net/qq_46918279/article/details/119849216

伪随机漏洞

题目

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;}
}else{highlight_file(__FILE__);echo system('cat /proc/version');
}
  • 代码分析:
substr(str,start,length):返回部分字符串,第一个字符是0
hexdec():把十六进制字符串转换为十进制数字(float/int)
$_COOKIE:用于取回 cookie 的值

将我们输入的r的整数值等于随机数的随机值时可以进入第二个if,当cookie里的token==(mt_rand()+mt_rand())时会输出flag

因为mt_srand(hexdec(substr(md5($flag), 0,8)))随机数种子不变,所以生成的随机数序列是不变的。

因此当我们GET传入r=0将会得到随机数序列的一个随机数的负值,那传入绝对值就能进入第二个if

之后使用php_mt_seed得到可能的随机数种子

将下载好的压缩包解压后(三个文件)再在目录下使用mark更新(四个文件)得到php_mt_seed文件

执行time ./php_mt_seed 2059482917得到随机数种子

再使用脚本计算(mt_rand()+mt_rand())

<?php
mt_srand(seed);
echo mt_rand()."&&";
echo mt_rand()+mt_rand();
?>
//2059482917&&2754208432

传递参数r=2059482917 token=2754208432,获得flag

6、web26

网页代码:

function check(){$.ajax({url:'checkdb.php',type: 'POST',dataType:'json',data:{'a':$('#a').val(),'p':$('#p').val(),'d':$('#d').val(),'u':$('#u').val(),'pass':$('#pass').val()},success:function(data){alert(data['msg']);},error:function(data){alert(data['msg']);}});}
  • 代码解析:

jQuery:

From:https://www.cnblogs.com/tylerdonet/p/3520862.html

$.ajax():通过HTTP请求加载远程数据
url:类型为string,默认为当前页地址,发送请求地址
type:类型为string,请求方式,默认为GET
datatype:类型为string,预期服务器返回的数据类型
data:类型为object或string,发送到服务器的数据。对象必须为key/value
success、error:类型为function,请求成功或失败后被调用的函数'a':$('#a').val():
$("#a")是id选择器,获得id为a的标签,通过.val(),获得这个标签的value的值,赋值给你声明的变量var a
这里val未设置参数,则返回被选元素当前值

抓包后将参数全部设置为空即可得到flag或者抓包爆破pass也可得到flag

7、web27

打开网页是一个教务管理系统,发现录取名单可以下载,学籍查询系统可以访问,输入嵇开梦同学的信息爆破


很快就爆破出来出生年月为19911016

将数据包的数据Unicode,解码即可

8、web28

题目提示:

通过暴力破解目录/0-100/0-100/看返回数据包,爆破的时候去掉2.txt 仅仅爆破目录即可

于是先抓包,爆破目录即可

这里有两个参数使用cluster bomb模式

这里有一个bug,需要点击下面的Hex再回到decimal才能刷新成功设置参数

过滤一下,只要2XX的响应包,即可得到flag

CTF-show-爆破相关推荐

  1. 2021校赛ctf write up

    密码签到 找到网上在线base解码 base64 解码一次 base32 解码一次 佛曰 网上在线佛曰解码 嗷呜 这题很有意思,出题者卡了一个markdown语法的bug 特性 从兽音译者可以看到加密 ...

  2. CTF杂项南城旧梦-BugKu

    1.mmz.bmp图片文件尾有一段DE@@= 意思是使用工具stool,密码是qeadzc,这个工具使用的话要直接把图片拖进去,解密的话是这个选项,输入密码就可以解出Key.txt,得到把酒言欢.ra ...

  3. [春秋云镜] CVE-2022-32991 靶场详解

    目录 前期准备 工具 渗透测试 靶场提示 靶场实战 0x01 访问路径 0x02 注册用户并登入 0x03 url存在注入点 0x04 获取cookie和user-agent 0x05 sqlmap爆 ...

  4. 简单的CTF web密码爆破

    打开题目,审题.发现题目明确给出登录的用户名为Syclover,并要求我们爆破一个长度为6位纯数字的简单密码,并告诉我们密码开头为774.由此我们知道这是一题非常基础的密码爆破题. 打开环境发现存在一 ...

  5. CTF web题总结--爆破用户名密码

    1.burp爆破用户名密码 2.id,userid,useId多试几次 3.爆破后台目录,index.php,users.php,login.php,flag.php 4.脚本: # -*- codi ...

  6. ctf 改变图片高度_通过CRC32爆破修改图片的宽高 ctf-misc图片隐写

    ** 一.在处理图片隐写题的时候,可能会修改图片原有的宽高,导致图片里面的内容无法正常显示,那么怎么判断它的宽高是否被修改了呢? ** 1.把图片拖进010editor中会发现左下角提示CRC不匹配, ...

  7. CTF 逆向之MD5短爆破

    参加了集团公司的网络攻防大赛后,有道逆向里面的jungle.exe这个题,很有意思.于是想挑战一下. 首先查壳,丢到exeinfope里面一看,发现是asp的壳. 于是用手头的asp脱壳工具尝试脱壳, ...

  8. CTF—Python爬虫-WEB目录爆破和指纹识别

    编写自己的web目录爆破脚本. 首先我们要准备一个字典,用来爆破web目录,而且为了使扫描效果好一点,这个字典里面的内容几乎都是dedecms可能的目录. 其实要实现这个功能,原理很简单,只用读取字典 ...

  9. “百度杯”CTF比赛 2017 二月场,题目名称:爆破-3

    刚刚打开就看到404: 看了下网址,没毛病,于是转到index.php看看: 已经很清楚了,就是要在120秒内达成这个条件10次就能输出flag了 $ _SESSION['whoami']==( $ ...

  10. [burp][CTF]burp intruder爆破出现 Payload set 1: Invalid number settings的解决办法

    这是一个软件bug 如果点击start attrack 后出现 Payload set 1: Invalid number settings 的提示,先点hex 后点 decimal 再开始start ...

最新文章

  1. bzoj1150 [CTSC2007]数据备份Backup
  2. java common.lang_Java 开源工具 Apache Common Lang
  3. 洛谷P2327 [SCOI2005] 扫雷
  4. ubuntu 14.04安装chrome浏览器
  5. linux下 面向对象语言,人工智能(AI)程序设计(面向对象语言)PDF+PPT与习题等...
  6. 单核工作法16:循序渐进(下)
  7. mysql vacuum_PostgreSQL DBA快速入门(四) - 体系架构
  8. 在tomcat上全手工部署Servlet3.0
  9. 十一假期朋友圈鄙视链,你在第几层?
  10. 计算机常用维护知识,电脑怎么维护?电脑日常维护小常识
  11. Oracle 11G GoldenGate实现Windows与Windows之间的单向同步
  12. 如何将本地窗口上方地址栏隐藏_Firefox火狐浏览器将提供导出密码至本地的功能...
  13. 天池客流预测–GBDT
  14. Graph DataBase介绍
  15. Appium环境搭建
  16. 51单片机对直流电机的控制(使用proteus仿真)
  17. Linux: ubuntu Appium连接手机
  18. Virtual Box 报错,无法为虚拟电脑xxxx创建一个新任务
  19. 分布式系统-共识协议
  20. 个人小程序笔记(辅助专用)

热门文章

  1. Mybatis-快速入门及相关API
  2. 计算机网络ftp客户端实验,计算机网络实验报告FTP客户端.doc
  3. 2015,GECCO,Comparison of Semantic-aware Selection Methods in Genetic Programming
  4. html中如何制作星空背景,HTML5网页制作200行代码搞定canvas星空背景连线
  5. js同步等待ajax结果返回
  6. Tangent Element调色台的设计与功能
  7. 树莓派摄像头安装和使用
  8. php和javascript的get和post方式 有人串口转wifi模块httpdclient网页交互通信成功源码2 wifi继电器小黄人软件ypnr
  9. 基于ZigBee的室内无线定位系统设计
  10. matlab二维怎么定义,matlab中如何定义一个10*2的二维数组,用来储存后面算出的数值...