File Upload

File Upload

File Upload(文件上传),Web应用程序的安全漏洞,如果应用程序未能正确验证和限制用户上传文件的类型、大小和内容。攻击者可以通过构造特制的文件来绕过这些验证,上传包含恶意代码的文件,并在服务器上执行恶意操作。

Low

可以看到代码没有验证上传文件的类型,代码没有限制上传文件的大小。

我们使用cobaltstrike创建一个Windows可执行程序的后门上传。(正常情况下会直接被window安全中心拦截隔离,这里做测试用,先允许此后门的存在)

我们顺着这个目录去找这个文件, 可以看到确实上传成功了

随后,我们在cs的客户端就可以查看,进行会话交互、提权、浏览探测。

Medium

这里对文件类型和大小进行了验证,仅允许大小为100000 字节的 JPEG 和 PNG 类型的文件上传.

我们在上传时使用先将文件的后缀修改为png,然后在burp中抓包修改文件后缀即可上传成功。

High

代码在文件上传方面做了一改进,包括文件类型验证、文件大小限制、以及通过 getimagesize() 函数进一步验证文件是否是图片。

所以我们使用图片木马+文件包含来实现上传

将木马文件的内容复制到图片上面,通过上传图片,把木马传进去。

使用 copy 命令,通过 /b 选项将二进制文件合并,/a 选项将文件连接在一起。

test.pngshell.txt 合并成一个新的文件 new.png

上传文件new.png 上传成功

此时 我们利用 file inclusion的漏洞加载图片,成功解析,此时可以使用蚂剑或类似的工具进行连接,此处不做演示

相关推荐
狂野小青年18 小时前
在PHP Web开发中,实现异步处理有几种常见方式的优缺点,以及最佳实践推荐方法
消息队列·php·最佳实践·异步任务
张鱼小丸子1 天前
【无标题】云原生作业六
开发语言·php
哥坐11路2 天前
网络IP跳动问题解决详
开发语言·php
一只哒布刘2 天前
第六次作业
开发语言·php
寰宇软件2 天前
PHP房屋出租出售高效预约系统小程序源码
前端·小程序·uni-app·vue·php
HUNAG-DA-PAO2 天前
Redis存在线程安全吗?为什么?
redis·安全·php
ianozo2 天前
BUU40 [安洵杯 2019]easy_serialize_php
android·开发语言·php
zgscwxd2 天前
php session数据存储位置选择
开发语言·php
ianozo3 天前
CTF 代码学习日记 PHP
java·学习·php
ontheway-xx3 天前
PHP+Apache+MySQL安装(Windows)
开发语言·php