DVWA靶机

LOW

<?php phpinfo() ?>

上传文件

Medium级别

修改Content-Type: application/octet-stream的值为jpg的格式为Content-Type: image/jpeg

访问文件http://localhost/DVWA-master/hackable/uploads/1.php

high级别

图片马

由于后台验证了像素,所以要有图片,我们把php文件和图片文件合成一个文件

在cmd中进行    /b表示二进制    /a表示ascii码

先进入桌面

cd Desktop

copy 1.jpg /b + 1.php /a 2.jpg

解码文件 .htaccess

我们先写文件

<FilesMatch "jpg">

SetHandler application/x-httpd-php

</FilesMatch>

文件我们要保存成.htaccess,没有文件名,我们bp改包

抓包修改1.txt为.htaccess

现在访问文件http://localhost/DVWA-master/hackable/uploads/2.jpg


upload-labs靶机

第一关

查看源码

是前端绕过,我们可以禁用js

在浏览器里打开about:config

把红色的选项改为false

访问文件http://localhost/upload-labs-master/upload//1.php

第二关

只对文件的MIME进行的验证,改包

application/octet-stream改为image/jpeg

第三关

更改文件名绕过

php相同的有php1 php2 php3 php4 php5 phtml pht

第四关

把1.php的后缀改为jpg绕过,在上传解码文件.htaccess

<FilesMatch "jpg">

SetHandler application/x-httpd-php

</FilesMatch>

上传.htaccess

第五关

文件后缀大小写绕过

第六关

文件后缀加空格绕过

第七关

文件后缀加[.]绕过

第八关

文件后缀加::$DATA绕过

访问时不加::$DATA

第九关

由于后台代码是先删除两端的空格,然后删除末尾的点,还有一些其他的,最后在删除两端的空格。我们可以写[. .](点 空格 点),代码是先删两端的空格,这里,没有删掉,然后删末尾的点,删掉了,剩点和空格,最后删除两端的空格,就剩点了,绕过了

第十关

双写

第十一关

00截断

一般用在文件被上传到一个目录下面,我们在目录下面写上文件名1.php,然后在用00截断,上传的文件名我们用白名单能上传的格式(jpg),由于用了00截断,其实保存在目录下的文件名是1.php,而不是jpg

源文件

修改后

进行%00的url解码

第十二关

00截断

源文件

第十三关

图片马(jpg)

第十四关

图片马(png)

第十五关

图片马(png)

第十六关

二次渲染 传个gif的动态图

文件上传靶机DVWA和upload-labs的更多相关文章

  1. 3. 文件上传靶机实战(附靶机跟writeup)

    upload-labs 一个帮你总结所有类型的上传漏洞的靶场 文件上传靶机下载地址:https://github.com/c0ny1/upload-labs   运行环境 操作系统:推荐windows ...

  2. WEB文件上传之apache common upload使用(一)

    文件上传一个经常用到的功能,它有许多中实现的方案. 页面表单 + RFC1897规范 + http协议上传 页面控件(flash/html5/activeX/applet) + RFC1897规范 + ...

  3. 反射型XSS+文件上传+CSRF—DVWA

    在学习的过程中,想到将几种漏洞进行组合练习,记录下学习过程.大佬请绕过!谢谢!! 测试环境:DVWA,安装方法参考上一篇:https://www.cnblogs.com/aq-ry/p/9220584 ...

  4. ASP.NET 文件上传的实现(Upload)

    1.最近应项目开发的需求要实现附件的异步上传和下载. 2.上传:文件上传到指定的路径下,并返回上传文件的信息给前端界面,如:文件的图标.上传的文件名.文件的大小. 3.上传后,在前端界面上显示上传的文 ...

  5. jquery.uploadify文件上传组件

    1.jquery.uploadify简介 在ASP.NET中上传的控件有很多,比如.NET自带的FileUpload,以及SWFUpload,Uploadify等等,尤其后面两个控件的用户体验比较好, ...

  6. .JavaWeb文件上传和FileUpload组件使用

    .JavaWeb文件上传 1.自定义上传 文件上传时的表单设计要符合文件提交的方式: 1.提交方式:post 2.表单中有文件上传的表单项:<input type="file" ...

  7. JavaWeb学习总结(五十)——文件上传和下载

    在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用 ...

  8. java web(四)文件上传与下载

     一.文件上传原理 1.在TCP/IP中,最早出现的文件上传机制是FTP ,它是将文件由客户端发送到服务器的标准机制:但是在jsp使用过程中不能使用FTP方法上传文件,这是由jsp运行机制所决定. 通 ...

  9. JAVA-使用commos-fileupload实现文件上传与下载

    一文件的上传 实体类 在CODE上查看代码片派生到我的代码片 import java.sql.Timestamp; /** * * @Decription 文件上传实体类 * @author 刘楠 * ...

随机推荐

  1. 「10.11」chess(DP,组合数学)·array(单调栈)·ants(莫队,并茶几)

    菜鸡wwb因为想不出口胡题所以来写题解了 A. chess 昨天晚上考试,有点困 开考先花五分钟扫了一边题,好开始肝$T1$ 看了一眼$m$的范围很大,第一反应矩阵快速幂?? $n$很小,那么可以打$ ...

  2. 如何优雅的实现Mysql 增删改查,看完你就会了

    接着上期说,上期没写一条sql就把数据查询出来了,那如果要保存或者更新数据怎么办呢?能不能自己写sql呢? 保存数据 @GetMapping("save")//保存数据 publi ...

  3. 什么是CAP?

    1. 什么是CAP 是一种定理,多用于描述分布式架构,CAP这三个字母对应三种理念,且这三种理念只能两两组合,不能CAP三种理念同时共存(为什么?下面说). C:Consisteny(一致性) A:A ...

  4. Windows10 上Docker 安装运行Gitlab

    准备条件 安装好Docker For Windows客户端. 配置好Docker 阿里云加速镜像地址. 检查Docker版本,大于等于v19. 拉取Gitlab镜像 docker pull gitla ...

  5. Series 1 java秒组合数

    Series 1 举几个例子发现,  系数中间对称,很容易想到组合数 c(n,m)==c[n,n-m).此题就是高精度求组合数,java秒之. time:1825ms   ,接近时限,如果n还稍微大一 ...

  6. .NET Core 对象池的使用

    昨天在『.NET 大牛之路』技术群和大家聊到了对象池的话题,今天展开详细讲讲这个知识点. 池这个概念大家都很熟悉,比如我们经常听到数据库连接池和线程池.它是一种基于使用预先分配资源集合的性能优化思想. ...

  7. 面试题四:手写sql

    矫正数据,有以下2个表,建表语句如下所示 -- 订单表 create table t_order ( id int auto_increment primary key, name varchar(2 ...

  8. 暑假自学java第七天

    1,Object类: 任何类的父类都是Object 任何子类的对象都可以赋值给父类的引用.任何类的所有实例都可以用Object来代替 (3条消息) java中的Object类_iqqcode-CSDN ...

  9. Mybatis学习(3)实现数据的增删改查

    前面已经讲到用接口的方式编程.这种方式,要注意的一个地方就是.在User.xml  的配置文件中,mapper namespace="com.yihaomen.mybatis.inter.I ...

  10. mysql中的空值

    空值,即NULL,在数据库中通过is null 和is not null来查询 陷阱一:空值不一定为空 空值是一个比较特殊的字段.在MySQL数据库中,在不同的情形下,空值往往代表不同的含义.这是My ...