NSSCTF-Web题目27(Nginx漏洞、php伪协议、php解析绕过)

目录

[[HNCTF 2022 WEEK2]easy_include](#[HNCTF 2022 WEEK2]easy_include)

1、题目

2、知识点

3、思路

[[NSSRound#8 Basic]MyDoor](#8 Basic]MyDoor)

4、题目

5、知识点

6、思路


[HNCTF 2022 WEEK2]easy_include

1、题目
2、知识点

nginx日志漏洞执行系统命令

3、思路

打开题目,出现源码

题目要我们上传一个file参数,但是对内容进行了过滤,对php、flag等进行过滤,首先想到php伪协议,但php被过滤了,抓个包

发现服务器用的是nginx1.8.0部署

这里的nginx存在一个日志文件漏洞,可以利用日志文件getshell

nginx的日志文件一般存在/var/log/nginx/access.log

可以读取到日志文件的内容

利用php执行系统命令

得到flag:NSSCTF{24b4c973-53b6-4c4c-9ad3-6c6aa77c05a2}


[NSSRound#8 Basic]MyDoor

4、题目
5、知识点

php伪协议,php解析绕过

6、思路

打开题目,什么都没有,只有一个file参数和index.php,没有其他提示

思路,使用php伪协议,盲猜flag在flag或者flag.php文件里

php://filter使用

复制代码
php://filter/read=convert.base64-encode/resource=[文件名]

显示错误,说明有过滤,尝试读取index.php

有内容,进行解码:Base64解码 Base64编码 UTF8 GB2312 UTF16 GBK 二进制 十六进制 解密 - The X 在线工具 (the-x.cn)

得到源码,源码这里可以上传一个N_S.S参数,会执行eval函数,说明这里可以执行系统函数

但是没有内容,为什么呢?

因为php的解析问题

参考文章:NSSCTF-Web题目19(数据库注入、文件上传、php非法传参)_ctf 通过网页提交文件写入数据 库-CSDN博客

当PHP版本小于8时,如果参数中出现中括号[,中括号会被转换成下划线_,然后后面出现的点(.)就不会被转化成下划线,参数就正确了

?file=1&N[S.S=system(ls);

?file=1&N[S.S=system('ls /');

这里没有看到flag文件,执行phpinfo()

?file=1&N[S.S=phpinfo();

得到flag:NSSCTF{8691090f-d32c-4692-b7b0-685b6cd8c87e}


这篇文章就先写到这里了,哪里不足的欢迎指出

相关推荐
白帽子凯哥哥19 分钟前
想入门网络安全?CSB网安基地学习体验深度解析
web安全·渗透测试·就业·产教融合·湖南省网安基地·网络安全培训
jenchoi4131 小时前
【2025-11-30】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
网络·安全·web安全·网络安全·npm
-曾牛1 小时前
渗透测试信息收集全流程:从被动探测到主动挖掘
网络·安全·web安全·渗透测试·信息收集·原理解析·信息挖掘
Fnetlink11 小时前
人工智能时代,如何打造网络安全“新范式”
人工智能·安全·web安全
漏洞文库-Web安全14 小时前
CTFHub-Web-信息泄露
安全·web安全·网络安全·web·ctf·信息泄露·ctfhub
llxxyy卢14 小时前
RCE代码及命令执行漏洞(墨者+pikachu)
安全·web安全
白帽子黑客罗哥18 小时前
常见的 Web 攻击手段原理及核心防范思路
web安全·网络安全·渗透测试·漏洞挖掘·就业·护网行动
xing.yu.CTF20 小时前
ATT&CK实战系列-红队评估(九)(上)
网络·安全·web安全·横向移动·域渗透·内网对抗
L***一1 天前
网络安全职业发展路径探析:入门级证书的价值与选择
安全·web安全
漏洞文库-Web安全1 天前
CTFHUB技能树-SSRF【持续更新】
安全·web安全·网络安全·ctf·post·ssrf·ctfhub