DVWA(九):File Upload 全等级文件上传
File Upload
文件上传,通常是由于对上传文件的类型没有进行严格的过滤、限制造成的,一般思路是
通过上传木马获取服务器的webshell(通过网络端口对网站服务器某种程度上的操作权限
也叫网站后门)。
low级别:
观察源码:
把网站根目录和上传的到的目录以及文件名进行拼接,然后判断文件是否上传到新的位置,可以看出没有对文件上传做任何过滤

创建一个一句话木马文件:

上传一句话木马文件:


用中国菜刀链接:

Medium
源码对于上传文件的类型(只能是jpeg或者png)大小(100KB)做了限制

1.利用文件包含+文件上传:(一直有错 看不懂不用细扣可跳过)
将之前我们的一句话木马文件格式改为.png进行上传

因为格式变了,中国菜刀肯定连接不上
我们在菜刀的添加地址栏中输入:
http://127.0.0.1/DVWA-master/vulnerabilities/upload/?page=../../hackable/uploads/test.png
2.抓包将文件改为.php格式

成功改成.php

之后连接中国菜刀即可
shell中输入:
http://127.0.0.1/DVWA-master/hackable/uploads/test.php

这里讲一下上面的零=另一种思路,可以上传test.php.png文件,之后也是抓包 进入hex模块
用00将.替换掉 也叫00截断,文件扩展名也会变成php。
High

这时文件内容必须有图片了,需要构造图片一句话木马。

之后和Medium步骤一样 抓包改包连接中国菜刀即可。
DVWA(九):File Upload 全等级文件上传的更多相关文章
- DVWA-全等级文件上传
DVWA简介 DVWA(Damn Vulnerable Web Application)是一个用来进行安全脆弱性鉴定的PHP/MySQL Web应用,旨在为安全专业人员测试自己的专业技能和工具提供合法 ...
- WordPress NextGEN Gallery ‘upload.php’任意文件上传漏洞
漏洞名称: WordPress NextGEN Gallery ‘upload.php’任意文件上传漏洞 CNNVD编号: CNNVD-201306-259 发布时间: 2013-06-20 更新时间 ...
- DVWA各等级文件上传漏洞
file upload 文件上传漏洞,攻击者可以通过上传木马获取服务器的webshell权限. 文件上传漏洞的利用是 够成功上传木马文件, 其次上传文件必须能够被执行, 最后就是上传文件的路径必须可知 ...
- SpringBoot系列(九)单,多文件上传的正确姿势
SpringBoot系列(九)分分钟解决文件上传 往期推荐 SpringBoot系列(一)idea新建Springboot项目 SpringBoot系列(二)入门知识 springBoot系列(三)配 ...
- struts2 s:file标签使用及文件上传例子
<s:form action="uploadaction" method="post" enctype="multipart/form-da ...
- Asp.net core 学习笔记 ( upload/download files 文件上传与下载 )
更新 : 2018-01-22 之前漏掉了一个 image 优化, 就是 progressive jpg refer : http://techslides.com/demos/progressi ...
- .net core3.1 webapi + element-ui upload组件实现文件上传
首先,先看我个人的的项目结构. 这个webapi项目是专门用来做图片上传,其中分为两个控制器:单图片上传和多图片上传.而我接下来主要讲的还是单文件上传,对于多文件的上传,我暂且尚未研究成功. 其中pi ...
- vue iview UPload,但文件上传是,clearFiles的使用方法
<template> <div> <button @click="clearUploadedImage">重新上传</button> ...
- DVWA(八):File Inclusion 全等级文件包含
文件包含: 开发人员将相同的函数写入单独的文件中,需要使用某个函数时直接调用此文件,无需再次编写,这种文件调用的过程称文件包含. 文件包含漏洞: 开发人员为了使代码更灵活,会将被包含的文件设置为变量, ...
随机推荐
- SpringCloud:Eureka注册中心设置显示IP路径
未设置下的Eureka平台 可以看到Status显示的是 计算机名称! 解决方法: 在每一个需要注册的服务配置内加上如下几行配置 instance: prefer-ip-address: true # ...
- 15 shell for循环
除了 while 循环和 until 循环,Shell 脚本中还有for 循环,for 循环有两种使用形式:C语言风格的for循环与Python语言风格的for in循环,两种形式的for循环用法对比 ...
- php 错误处理及实现
1.php的错误,警告,异常处理如何实现,那些函数用于处理对应的错误 php 异常提示分为三类 error/warning/notice 错误补充: Fatal Error:致命错误(脚本终止 ...
- cobbler安装4个报错汇总及解决方法:ImportError
安装完,检查cobbler:cobbler check发现这个问题ImportError: No module named yaml 具体报错如下: [root@www localdisk]# cob ...
- MQTT介绍与使用(转载)
物联网是新一代信息技术的重要组成部分,也是"信息化"时代的重要发展阶段.其英文名称是:"Internet of things(IoT)".顾名思义,物联网就是物 ...
- STM32笔记二
1.STM32编程通常有两种方法:一种是寄存器编程,另外一种是固件库编程.寄存器编程是基础,而固件库是寄存器编程的基础上升级而来的编程方法,是需要重点掌握的编程方法. 2.STM32F103采用的是C ...
- linux挂载光驱
挂载光驱到linux中.linux的镜像盘中有安装oracle的所有的软件包,可以会用yum一键安装. 1.此时的linux的界面显示光驱图标 2.挂载 因为光盘里面的文件是只读模式的,yum安装时不 ...
- C编译器
GCC:GNU Compiler Collection,即 GNU 编译器套件.TDM-GCC 4.8.1 32-BIT Release: 查看GCC的版本:C:\Program Files\Dev- ...
- 创建自己的RSA密钥来保护web.config 加密数据库连接字符串
通过创建自己的RSA密钥来保护web.config1创建RSA密钥:C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis - ...
- python 实时监控剪切板,并替换其中的部分内容,重新写入剪切板
#实时监控剪贴板内容的变化,并替换其中的回车,换行,逗号,再写入剪切板,以供使用. import pyperclip import time last_string = pyperclip.paste ...