OWASPBWA的搭建及简单学习文件上传漏洞

OWASPBWA的搭建及学习

我直接将我使用的OWASPBWA的链接地址发出来

owasp下载链接https://jaist.dl.sourceforge.net/project/owaspbwa/1.2/OWASP_Broken_Web_Apps_VM_1.2.7z

将这个链接复制到迅雷下载即可,大概是1.7G,网速快的话很快就下好了。

下载完之后直接解压,然后点击vm右上角的文件直接选择打开这个文件夹即可使用
在这里插入图片描述
*
*
进入机子后,输入ip a 查看机子的ip地址

在这里插入图片描述
得到靶机的地址后,我们可以在浏览器输入靶机的地址,得到owaspbwa的页面

在这里插入图片描述如图所示,我们一开始用的是Damn Vulnerable Web Application,也就是俗称的dvwa
在这里插入图片描述账号和密码
都是admin

在这里插入图片描述login之后呢,就可以愉快地在这个页面里面学习怎么去打靶机

在这里插入图片描述
先讲一下文件上传漏洞吧

原理:大部分的网站和应用系统都有上传功能,而程序员在开发任意文件上传功能时,并未考虑文件格式后缀的合法性校验或者是否只在前端通过js进行后缀检验。这时攻击者可以上传一个与网站脚本语言相对应的恶意代码动态脚本,例如(jsp、asp、php、aspx文件后缀)到服务器上,从而访问这些恶意脚本中包含的恶意代码,进行动态解析最终达到执行恶意代码的效果,进一步影响服务器安全。

文件上传漏洞的危害

上传漏洞与SQL注入或 XSS相比 , 其风险更大 , 如果 Web应用程序存在上传漏洞 , 攻击者上传的文件是Web脚本语言,服务器的Web容器解释并执行了用户上传的脚本,导致代码执行。如果上传的文件是Flash的策略文件crossdomain.xml,黑客用以控制Flash在该域下的行为。如果上传的文件是病毒、木马文件,黑客用以诱骗用户或者管理员下载执行。如果上传的文件是钓鱼图片或为包含了脚本的图片,在某些版本的浏览器中会被作为脚本执行,被用于钓鱼和欺诈。甚至攻击者可以直接上传一个webshell到服务器上 完全控制系统或致使系统瘫痪。

在dvwa里面有一个模块,叫upload,这里就是文件上传漏洞的靶机功能点,可以在这里测试怎么去打这个漏洞

在这里插入图片描述
首先在low级别下,文件上传漏洞是没有添加任何的过滤语句的

在这里插入图片描述我们点开右下角的view_source可以看到
在这里插入图片描述
只会判断你上传的文件成不成功,成功了就给你弹出个successful。这种在现实环境下基本是不会存在的,除非哪家公司的老板贪便宜请了个刚学没多久的开发工程师。

我们尝试上传个一句话木马文件上去吧在这里插入图片描述
构造个一句话木马,记得讲后缀改为php

在这里插入图片描述
上传成功后拿蚊剑搞一搞他试试看
输入以下参数

在这里插入图片描述
发现已经日进来了
在这里插入图片描述

这是在low级别下日站,接下来我们试一下其他的级别

先将之前的记录删除,回归到原始版本

将DVWA设置到中级难度,看下后端过滤
在这里插入图片描述

Medium级别的代码对上传文件的类型、大小做了限制,要求文件类型必须是jpeg或者png,大小不能超过100000B(约为97.6KB)

可以看到,中等级别只是对他进行了文件上传的大小限制,而我们一句话木马很小,完全可以根据low级别下的操作重新入侵一遍
但要注意的是,Medium级别的代码要求只能上传jpeg或者png。

这时候我们有两个方法绕过这个后端设定。

第一个方法 : 抓包修改文件的type

因为这里过滤的是文件的上传类型,而不是文件的后缀名

所以我们直接上传 xxx.php 的一句话木马

还是用之前的PHP文件好了,上传的时候,记得开bp抓包然后改掉

在这里插入图片描述
抓到的包如上所示:
在这里插入图片描述
图中所示的地方已经被我改掉了,后续上传就是image/jpeg
在这里插入图片描述
可以看到已经上传成功了
在这里插入图片描述

第二种方法 : 00截断

在php<5.3.4中,处理字符串的函数认为0x00是终止符。那么我们可以利用 00截断 漏洞来上传我们的一句话木马。网站上传函数处理1.php%00.jpg时,首先后缀名是合法的jpg格式,可以上传,在保存文件时,使用burpsuite进行包拦截,找到上传的路径,把文件名改为 1.php[空格].jpg ,十六进制查看,空格的十六进制代码为20,将其修改为 00。后端在判断文件后缀名的时候遇到%00字符丢弃后面的jpg,文件后缀最终保存的后缀 名为 1.php。然后我们就可以用我们的菜刀连接了。

我们写一句话木马,并将其命名为 1.php.jpg ,上传
在这里插入图片描述

我们将文件名改成 1.php .jpg 然后16进制查看
在这里插入图片描述空格的16进制代码是 20
在这里插入图片描述

我们将其改为 00

在这里插入图片描述

然后再查看,我们可以看到文件名已经变了

  • 5
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值