buuctf部分题目wp

EasySQL

①测试返回的页面状况特点类
发觉存在三种页面–>即返回为no的即为过滤掉的
buuctf部分题目wp_第1张图片
buuctf部分题目wp_第2张图片
buuctf部分题目wp_第3张图片

②测试了下发觉show,select,;语句没有被过滤
from类语句被过滤掉了
即可以考虑是否是堆叠注入
测试了几个

1;select database();
1;show databases;
1;show tables;

buuctf部分题目wp_第4张图片
找到了名字为Flag的表
尝试直接利用*直接注入返回出
发觉也没有办法返回出

无奈查大佬们的wp
发觉后台的查询语句可能是这样的,即*|跟其代用时,会直接被注释掉

sql = "select $_POST['query'] | col_xxx from table_xxx";

于是构造
*,1(使1和|做逻辑运算)
从而爆出flag
buuctf部分题目wp_第5张图片

极客大挑战EasySQL

buuctf部分题目wp_第6张图片
嗯。。。这题我是很迷的
我直接进去反手一个万能密码 然后就进去了,就拿到flag了
buuctf部分题目wp_第7张图片

极客大挑战 2019 Havefun

进入网页
buuctf部分题目wp_第8张图片
然后查看源码
buuctf部分题目wp_第9张图片
然后直接构造一下参数即得到flag

[极客大挑战 2019]Secret File

buuctf部分题目wp_第10张图片
查看源码发觉一些跳转
然后经过抓包类后发觉一个secr3t.php文件
然后分析

看到file与include,直接伪协议读取文件走人

file=php://filter/convert.base64-encode/resource=flag.php

buuctf部分题目wp_第11张图片
最后解密下,获得flag
buuctf部分题目wp_第12张图片

[ACTF2020 新生赛]Include

看标题感觉又是跟伪协议相关的题
buuctf部分题目wp_第13张图片

然后进去点击后发觉果然是
buuctf部分题目wp_第14张图片
构造伪协议直接读取就完事
buuctf部分题目wp_第15张图片
buuctf部分题目wp_第16张图片

[护网杯 2018]easy_tornado

进入后发觉三个文件
第一个文件提示信息
buuctf部分题目wp_第17张图片
welcome中提示提交

buuctf部分题目wp_第18张图片
hints文件中提示md5加密状况特点类
buuctf部分题目wp_第19张图片
思路大概有了
MD5一个文件hash值后进行提交参数进行读取flag

即将文件fllllllllllllag进行MD5加密

3bf9f6cf685a6dd8defadabfb41a03a1

然后在获取cookie_serect
本来最开始想直接抓取cookie值,但是发觉并没有
于是只能从这3个文件以及他们的hash值进行入手拿到cookie_serect值了

然后在这里卡了一下,实在找不到办法破解cookie_serect的值
于是直接传文件名过去看看
发觉爆这个,且页面上和参数是一样,怀疑是模板注入
buuctf部分题目wp_第20张图片
于是直接利用模板注入
传参–>

error?msg={{handler.settings}}

成功获取到cookie_secret
e88c21a0-1cd1-4bbf-a0e8-202bd49569af
即完整的
b4310a67dc7123c7d066d22983b39b2d–>即filehash
最后构造payload即可成功获得flag

buuctf部分题目wp_第21张图片

[极客大挑战 2019]LoveSQL

①反手一套万能密码弄进去
然后获取到了管理员的hash密码
但是试了下解不了密码
buuctf部分题目wp_第22张图片
然后也没有flag啊
有意思
返回去看一看
buuctf部分题目wp_第23张图片
好家伙,怀疑是存在数据库中的,就是防止万能密码这种情况
buuctf部分题目wp_第24张图片
进行注入后发觉爆错爆在了password中 于是在password中进行注入
输入 1’
根据返回回来的错误发觉是字符型注入
buuctf部分题目wp_第25张图片

然后使用联合注入

' union select 1,database(),3 #

发觉返回的是很奇怪的东西–>即注释#符号没有起到作用
buuctf部分题目wp_第26张图片
后面发觉是该编码符号没有进行url编码导致的问题
将#改成%23即完成了效果

ok 成功可以进行注入了
所以就到了愉快的union注入时间了
最后获得到flag

flag{045996c1-1617-4ff4-b994-a79f4ab2070b}

总结:万能密码虽好,但是如果密码在数据库里面的话是没有灵魂的

[GXYCTF2019]Ping Ping Ping

打开后即发觉一个参数进行最开始随便传了几个值,发觉都在页面上显示
还以为是模板注入
后面发觉并不是这样的,只有传入的是数字之类的才显示其他的都显示固定的参数
所以排除模板注入

buuctf部分题目wp_第27张图片
又因为题目给了ping这个提示,所以有点怀疑是rce命令执行
于是构造拼接命令进行查看文件
典型两种拼接命令模式
第一种利用|进行拼接–>如127.0.0.1|ls
第二种利用;直接进行拼接 如–>ip=127.0.0.1;a=g;cat$IFS$1fla$a.php

三种典型的执行方式

#①命令执行变量拼接
/?ip=127.0.0.1;a=g;cat$IFS$1fla$a.php
#②过滤bash用sh执行
echo$IFS$1Y2F0IGZsYWcucGhw|base64$IFS$1-d|sh
#③内联执行
将反引号内命令的输出作为输入执行
?ip=127.0.0.1;cat$IFS$9`ls`
127.0.0.1|ls

buuctf部分题目wp_第28张图片
尝试直接读取flag
返回为空格被ban
即来到了绕空格的路上

buuctf部分题目wp_第29张图片

$IFS
${IFS}//即{}可以改成$1
$IFS$1 //$1改成$加其他数字貌似都行
< 
<> 
{cat,flag.php}  //用逗号实现了空格功能
%20 
%09 

如构造payload
?ip=127.0.0.1;cat$IFS$1index.php

buuctf部分题目wp_第30张图片
三个过滤–>空格过滤,bash过滤,flag过滤
所以只能考虑利用sh通道执行了
于是构造payload

?ip=127.0.0.1;echo$IFS$1Y2F0IGZsYWcucGhw|base64$IFS$1-d|sh

成功获得flag
buuctf部分题目wp_第31张图片

[RoarCTF 2019]Easy Calc

进入页面后查看源码
好家伙
发觉这个制作这个环境的人很狂,然后也获得了这个算式的原理
buuctf部分题目wp_第32张图片
即只能传入数字(如果传入的是字符,则会爆错状况特点)

可能考虑是利用数字进行绕进而获取到flag
但是基于考虑的想法–>还是去扫描了下目录,发觉确实没有什么好扫描的东西了
确定是这个思路了
就是绕这个判断从而获取到flag
于是去到了一个文件中–>即注意可以当文件中存在另外一个页面时,典型查看过去

buuctf部分题目wp_第33张图片
发觉这个参数num疯狂被过滤
玩不了,玩不下去了
查看大佬们的wp
发觉php文件的解析规程是
如果前面有空格会直接把空格去掉在进行解析

于是可以构造payload进行读取flag与目录

? num=1;var_dump(scandir(chr(47)))#读取目录
? num=1;var_dump(file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103)))
#即利用ASCII码进行绕读取目录状况特点类

最后获取到flag
在这里插入图片描述

会持续更新下去

你可能感兴趣的:(buuctf,安全)