文件上传 --- uploadlabs靶场

目录

[1 前端和js校验](#1 前端和js校验)

抓包改包

[2 .](#2 .)

[2.1 .htaccess(伪静态)](#2.1 .htaccess(伪静态))

[2.2 %00截断 (php5.2)](#2.2 %00截断 (php5.2))

[2.3 user_init_](#2.3 user_init_)

2.4

[3 图片码防御](#3 图片码防御)

[4 竞争型漏洞](#4 竞争型漏洞)

思路:

容易出现的问题:


1 前端和js校验

关闭JS的代码,上传PHP

抓包改包

思路:上传文件的时候将正常的PHP后缀改成白名单允许的后缀,然后通过抓包的方式修改文件的后缀为php,注意content---type这个,因为一般会判断上传的类型,需要改一下

2 .

那我们想有没有一种就是在程序中有被认为是空格,但是进入系统后,系统就把他认定为是没有后面那个空格?(有这种但是只有在windows系统才会有)

这关写了黑名单,trim去空格等过滤限制

php 复制代码
if (file_exists(UPLOAD_PATH)) {
        $deny_ext = array('.asp','.aspx','.php','.jsp');
        $file_name = trim($_FILES['upload_file']['name']);
        $file_name = deldot($file_name);//删除文件名末尾的点
        $file_ext = strrchr($file_name, '.');
        $file_ext = strtolower($file_ext); //转换为小写
        $file_ext = str_ireplace('::$DATA', '', $file_ext);//去除字符串::$DATA
        $file_ext = trim($file_ext); //收尾去空

2.1 .htaccess(伪静态)

这个方法就是将.htaccess这个文件后缀,不管你上传的是jpg,还是txt,都会最终把他解析为php

2.2 %00截断 (php5.2)

2.3 user_init_

也是有可能实现的,但是必须要当前的系统下面有一个php的文件,才能发挥作用

2.4

这个是因为运维或者开发人员修改了nginx或者apache的配置项,让php2,php3也能解析为php

3 图片码防御

如何防御图片码?

1,将文件上传的文件夹的可执行权限取消掉

2,php中有一个函数可以将上传的图片码打乱,让图片码消失

4 竞争型漏洞

代码问题:把上传文件写在了检测文件之前,这之间就会有几十ms的空隙,我们就可以在shell里面(图片码)用写文件的方式将文件的木马写在他的上一级目录,虽然最后会删除我上传的文件,也有几十ms的时间,但是我的木马由于是写在上一级目录的,所以我的有害文件已经上传成功了

因为是先上传再检测,那我不装了,直接上传php文件

打开bp,抓包,然后用爆破模块,直接发送,看看能不能生成fy.php

思路:

大概流程就是:先在php文件中写一个一句话木马(一定要是创建一个新的目录上一个目录最好,写入数据)如上,然后打开抓包,上传此php文件抓包,送至inturder模块上传,开始竞争一直刷新我的访问upload的文件,一定会成功

容易出现的问题:

最容易出现在商场和订单,就是多线程处理的时候,当我买完最后一个商品还没有下单的时候,下个线程又来了就会出现买一次买很多的这种情况

相关推荐
2501_932750262 小时前
Android BottomNavigationView 入门介绍
android
Godikov4 小时前
硬件异步事件下的业务一致性:智能柜领取/归还流程的竞态设计
android
Godikov4 小时前
不用 Netty:Android 手写 TCP 客户端实战——自定义协议帧、粘包处理与可靠重连
android
事圆则缓4 小时前
Java 面向对象如何落到 Android View 体系
android
iPad协议个微协议5 小时前
# 微信自动营销系统如何基于 WechatApi 做事件驱动设计
android·微信·企业微信·个人开发·wechatapi·微信个人号开发
AirDroid_cn5 小时前
隐私沙盒:第三方应用读取剪切板内容如何拦截?
android·gitee
2501_915918417 小时前
怎么把 Python 写的 Flet 应用打包成 iOS App 并上架 App Store?
android·ios·小程序·https·uni-app·iphone·webview
邪修king9 小时前
Re:Linux系统篇(二十六):文件系统(二):Ext 文件系统底层详解:从 inode、块组到软硬链接,结合 Windows 讲透文件管理本质
android·java·linux
又见情义9 小时前
RK3568 Android 13 版本号管理实战:基于 ROCKCHIP_BUILD_NUMBER 的定制化方案
android
终端安全笔记9 小时前
iOS 27 强制 TLS 1.2:租赁设备的注册链路会在哪一环断
android·网络·安全·ios·智能手机