[NSSCTF][Web]小白练手(六)

1.[SWPUCTF 2021 新生赛]easyupload3.0

题目:

首先,我们尝试一句话木马传参.php结尾的文件,发现上传失败

那我们将后缀改为.jpg

发现上传成功,但是我们用中国蚁剑连接不上,因为我们的jpg文件没有被解析成php文件

补充:

浏览器htaccess文件是一个用于Apache Web服务器的配置文件。它允许您在不修改主服务器配置文件的情况下,对单个目录(及其子目录)进行配置。这种方式使得网站管理员可以对特定目录应用特定的设置,例如URL重写、访问控制、MIME类型等。

主要功能包括:

重定向和URL重写:可以将旧的URL重定向到新的URL,或者实现更友好的URL结构。

访问控制:可以限制特定IP地址或用户代理访问网站,或者要求用户提供用户名和密码才能访问某些目录。

自定义错误页面:可以为特定的HTTP错误代码(如404页面未找到)设置自定义错误页面。

MIME类型:可以为特定文件扩展名定义MIME类型,以便正确地传输文件内容。

访问路径后发现文件地址,并且为Apache,尝试.htaccess文件上传。

要使用.htaccess文件,首先确保您的Apache服务器已启用对.htaccess文件的支持。然后,在需要进行特定配置的目录中创建一个名为“.htaccess”的文件,并在其中添加相应的配置指令。

上传.htaccess文件

AddType application/x-httpd-php .jpg

再进行连接

即得flag

NSSCTF{9eae9ac9-0bf8-4f0f-b37a-34cb700267c7}

2.[SWPUCTF 2022 新生赛]ez_ez_php

题目:

这里的error_reporting(0);为不显示报错信息

substr返回部分函数,这里看见后面的参数,返回file传参中前三位的值是否为php

这里面我们读取文件包含的flag.php内容

这里我们可以使用php伪协议

payload:

?file=php://filter/resource=flag.php

这里提示我们flag在flag里,我们将payload改为

flag:

?file=php://filter/resource=flag

即得flag

NSSCTF{300f1d70-7335-4da4-96fd-8a25cf0f4791}

3.[LitCTF 2023]1zjs

题目:

这里查看js发现有特殊的url

这里发现一串执行代码,直接放进控制台

即得flag

NSSCTF{4de1032e-5108-47cc-9f58-06c87c880723}

4.[LitCTF 2023]作业管理系统

题目:

这里我们查看页面源码

发现了登录账户

这里有个文件上传功能点,可以尝试一下文件上传

成功上传

在根目录里面找到flag

NSSCTF{485b493d-b65a-408c-b1a3-6d5fcbc1b1ff}

5. [UUCTF 2022 新生赛]websign

题目:

这里源码在浏览器打不开

用BP抓包就出来了

即得flag

NSSCTF{4d7ea0a0-423f-43f9-9d1a-63c499447864}

6.[鹏城杯 2022]简单包含

题目:

根据题目的代码,进行payload构造,发现被waf挡住了

通过php伪协议查看一下index.php源码里加了什么waf

payload:file=php://convert.base64-encode/resource=index.php

解密一下base64

这里我们分析一下代码发现,我们需要读取最后文件包含的内容$path

strlen(file_get_contents('php://input')) < 800这里的函数为检查POST请求长度是否小于800,

preg_match检查$path中是否又flag字符

如果两者都成立则输出echo,反之输出include函数,

这里我们可以将POST长度超过800试试

payload:

这里正常值输出不了,所以用伪协议将输出内容转换为base64

解码base64可得

即得flag

NSSCTF{fbc93235-22d7-46a7-aa0a-89aaca62458c}

7.[SWPUCTF 2021 新生赛]finalrce

题目:

分析一下代码,这里使用get传参,参数为url

在正则过滤里,大部分指令被过滤

利用符号执行RCE

发现无回显

这里面我们通过查找指令,将查找结果写入1.txt文本中,在进行访问

find / | tee 1.txt

可以发现敏感目录

?url=tac /flllll\aaaaaa\ggggggg |tee 123.txt

同样的方法,将结果写道123.txt中

查看123.txt

即得flag

NSSCTF{3b6dd6c1-13c4-4187-812a-62d013f902db}

8. [LitCTF 2023]Http pro max plus

题目:

我们可以抓包进行XFF头伪造

这里没有XFF头,我们可以自行添加

X-Forwarded-For:127.0.0.1

这里我们换个I代理服务器IP头试试

Client-Ip: 127.0.0.1

发现提示我们,Referer头来自p站,修改一下

又让我们用Chrome浏览器

改一下UA头

User-Agent:Chrome

Via: Clash.win代理头伪造

借一步说话就是把我带入p站的坑

查看一下源码,又发现一个接口

访问接口/sejishikong.php

即得flag

NSSCTF{40f86739-0d2c-4154-bd21-501d0f6e2ebf}

9.[HDCTF 2023]Welcome To HDCTF 2023

题目:

是一个小游戏

死了之后flag就出来了,记录一下flag

NSSCTF{We13ome_t@_HDCTF_2o23}

10. [NSSCTF 2022 Spring Recruit]babyphp

题目:

这题我们开始分析,我们要进入到哪里获取flag

我们要进入这里

先过第一个if,需要a不含数字而且intval取整数

通过使用指定的进制 base 转换(默认是十进制),返回变量 value 的 int 数值。 intval() 不能用于 object,否则会产生 E_WARNING 错误并返回 1。 
echo intval(array());                 // 0
echo intval(array('foo', 'bar'));     // 1

所以我们传入数组就能过掉第一个if

a[]=1

第三个if,由于md5函数无法处理数组,会返回nul这里为MD5强碰撞

b1[]=1&b2[]=12

第四个if,两参不相等,md5弱碰撞,找两个0e开头的值即可

QLTHNDT
0e405967825401955372549139051580

QNKCDZO
0e830400451993494058024219903391

s878926199a
0e545993274517709034328855841020

最后payload的值为

a[]=1&b1[]=2&b2[]=12&c1=QLTHNDT&c2=QNKCDZO

NSSCTF{f02b4c0d-c717-4633-8403-9b5d3bca95ba}

11.[LitCTF 2023]Vim yyds

题目:

首先将网站的源代码下载下来审计一下

可以发现POST传参一个password等于base64加密的Give_Me_Your_Flag即可执行命令执行

NSSCTF{43fd22db-c3ed-4553-a15f-8fbd9ce8d101}

12.[HNCTF 2022 Week1]Interesting_include

题目:

这里进行filter传参,传输正则过滤了/flag和字母

所以直接php伪协议base64编码

即可得flag

payload:

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

PD9waHAKCiRmbGFnID0gJ2ZsYWc9TlNTQ1RGezYzMWY4Yzg5LTNmYjAtNDM3MC1hY2U2LWE3NDU4MjFkMDMyMX0nOwo/Pg==
flag=NSSCTF{631f8c89-3fb0-4370-ace6-a745821d0321}

NSSCTF{631f8c89-3fb0-4370-ace6-a745821d0321}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值