1、云曦超市大甩卖(Web)
(bp使用,逻辑漏洞)
查看后发现余额不足够买flag,抓包后可以将单价改为负数,使得总金额增加。最后得到flag。
2、Gentle_sister(web)
首先查看源代码,发现php语言
意思为:进行get传参,传入my_parameter,正则匹配其取值为数字,intval函数获取变量整数值,因此要想办法绕过。采用数组绕过:
intval()函数
intval() 函数可以获取变量的「整数值」。常用于强制类型转换
常见形式及绕过:PHP intval()函数详解,intval()函数漏洞原理及绕过思路_intval函数-CSDN博客
3、一个朴实无华的页面(web)
页面无信息,尝试目录扫描得到一个php和一个txt,查看后发现php无法打开,而txt是一个robots协议。
访问后发现php代码
发现include文件包含,考虑php伪协议(base绕过可以用B),得到字符串后解码
php伪协议:
-
php://filter 读取文件源码
-
php://input 任意代码执行
-
data://text/plain 任意代码执行
-
zip:// 配合文件上传开启后门
1. php://filter介绍:
php://filter 协议可以对打开的数据流进行筛选和过滤,常用于读取文件源码(注意:使用文件包含函数包含文件时,文件中的代码会被执行,如果想要读取文件源码,可以使用base64对文件内容进行编码,编码后的文 件内容不会被执行,而是展示在页面中)
payload构造:变量=php://filter/convert.base64-encode/resource=flag.php
2、php://input介绍:
php://input 可以访问请求的原始数据,配合文件包含漏洞可以将post请求体中的内容当做文件内容执行,从而实现任意代码执行,需要注意的是,当enctype=multipart/form-data时,php:/input将会无效
payload构造:
?url=php://input — GET请求参数中使用php://input协议
<?php system(‘ls’); ?> — post请求体中的内容会被当做文件内容执行
3、data://
协议格式: data:资源类型;编码,内容
data://协议通过执行资源类型,使后面的内容当做文件内容来执行,从而造成任意代码执行
payload构造: ?url=data://text/plain,<?php system('id') ?>
4、ZIP://
zip://协议用来读取压缩包中的文件,可以配合文件上传开启后门,获取webshell
将shell.txt压缩成zip,再将后缀名改为jpg上传至服务器,再通过zip伪协议访问压缩包里的文件,从而链接木马
payload构造:?url=zip://shell.jpg
4、这都不做(web)
文件上传题,上传一句话木马后首先发现有mime类型检测将Content-Type:的内容改为image/jpeg后再次上传。
观察回显发现里面不可以包含php,将与句话木马中的php用=替代,上传成功蚁剑却无法连接
说明文件名中也存在过滤,php双写绕过。
5、Rceeee(web)
shell_exec():函数在此题说明无回显命令注入
PHP执行系统命令的4个方法 :
system 函数:system 函数执行系统命令,并将输出直接打印到标准输出。它的返回值是命令的最后一行输出或者返回状态码(命令成功执行返回0)。
shell_exec 函数:shell_exec 函数执行系统命令,但它将命令的输出作为字符串返回,而不是打印到标准输出。如果命令没有输出,则返回空字符串。
exec 函数:exec 函数执行系统命令,并将输出存储到一个数组中,每一行命令输出作为数组的一个元素。它的返回值是命令的最后一行输出或者返回状态码。
passthru 函数:passthru 函数执行系统命令,并直接将命令的输出发送到标准输出。它不会返回任何输出结果,而是直接将输出显示在屏幕上。
原文链接:https://blog.csdn.net/csjjjd/article/details/135004789
本题解题思路为用php>写入新文件是的无回显可以查看
6、斗宗强者恐怖如斯(web)
根据提示得到用户名,bp爆破得到密码后登录
发现注入点,用?id=1' order by 4报错回显得到字段数为三
用database函数可以查看当前数据库
依次得到表明库名最后得到flag