File Upload

File Upload

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

Low

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

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

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

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

Medium

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

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

High

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

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

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

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

将 test.png 和 shell.txt 合并成一个新的文件 new.png。

上传文件new.png 上传成功

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

相关推荐
无风听海27 分钟前
深入理解.NET中的 Lazy<T>
服务器·php·.net
Evelvnk2 小时前
计算机学习资料
开发语言·人工智能·计算机·php
迪康coolmu2 小时前
迪康Defender网络准入控制系统落地实战:部署、配置与问题排查记录
运维·开发语言·网络·经验分享·php
PHP实战开发录2 小时前
PHP中文文件名为什么乱码
开发语言·php
silvamux_3 小时前
大模型 API 单元测试怎么 mock 不误伤
单元测试·log4j·php
巧克力味的桃子3 小时前
复杂网络能控性鲁棒性研究进展
开发语言·网络·php
普通人63 小时前
php处理百度编辑器有误html
开发语言·编辑器·html·php·1024程序员节
huangtedianzi4 小时前
Can PCB Reverse Engineering Recover a Multilayer Circuit Board?
php
星恒讯工业路由器5 小时前
工业网络设备选型:导轨式、机架式与车载式的部署差异
开发语言·网络·数据库·php·工业路由器·导轨式·车载式
智能直播14 小时前
网络RTMP拉流不卡顿、声音不同步,一文讲透缓冲区、时间戳
开发语言·ffmpeg·php·音视频·视频编解码