freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

新手渗透测试训练营——文件上传与文件包含
2018-09-20 10:31:42
渗透测试的核心步骤是获得shell,在渗透测试前期进行的各种漏洞利用方式,如,文件上传,文件包含,SQL注入等操作,都是为了获得shell。

文件上传漏洞是指攻击者将可执行文件,上传到服务器端,并执行。上传的这个可执行文件可以是病毒,木马,webshell等。利用文件上传漏洞上传可执行文件,是最有效最直接的攻击方式。文件上传漏洞的利用门槛较低,攻击者较容易实施。

文件包含是通过include函数将web根目录以外的目录的文件被包含进来,分为LFI本地文件包含和RFI远程文件包含。

文件包含漏洞的一般特征如下:

?page=a.php

?home=a.html

?file=content

文件上传和文件包含都是比较常见的漏洞,利用起来也比较简单。今天这篇文章,以DVWA的靶场做为教学环境,介绍一下文件上传与文件包含漏洞的利用。

将文件上传与文件包含结合起来,通常是这样的思路:文件上传文件至服务器端,通过文件包含执行该文件,从而获取服务器信息。

LOW级

Low级别没有对上传文件做任何限制,所以我们可以直接上传PHP文件,上传PHP文件后,复制上传文件所在路径。

1.png

上传文件后,找到文件包含注入点,通过文件包含,将上传文件的路径作为URL参数并执行,就可以调用上传的文件了。

2.png

MIDIEL级

中级设置了过滤,文件上传时,检查了文件的后缀,必须是png,jpeg和jpg的文件才能上传。否则会报错。

3.png

所以我们在上传php之类的文件的时候,要修改文件名,比如将1.php修改为1.jpeg,就可以上传成功了。

4.png

在文件包含环节,对文件路径也做了过滤,文件路径中的“http”“https””../”“..\”都会被直接替换成空。所以在设置文件包含路径时,要做过滤。

5.png

HIGH级

高级别的对文件做了过滤,要就只能上传图片格式的文件,而且对文件格式做了过滤,只有图片文件可以进行上传。所以在这时,不能通过PHP文件重命名的方式进行文件上传。但是可以考虑上传一句话图片木马。把注入语句附在图片文件的末尾。这样服务器就并不会检测出问题,也就不会进行拦截了。

6.png

getimagesize() 函数用于获取图像大小及相关信息。

此时的文件包含,只能包含文件名为“include.php”的文件,这时候我们几部没有拌饭进行文件包含。但是此时的服务器并没有对文件调用形式进行限制,我们还是可以通过文件协议查看本地文件,从而进行文件包含。

7.png把phpinfo和任意图片组合,生成一个一句话图片木马2.png

8.png

在文件上传点,上传生成的图片木马,服务器没有检测出异常,木马生成上传。


9.png

上传成功后在文件包含点,用file协议访问上传的图片木马,phpinfo正常执行。

10.png
以上就是有关DVWA下的文件包含漏洞和文件上传漏洞的利用方法。如果大家有什么感兴趣的内容,可以私信我们。
*本文作者:EVA。本文属丁牛科技原创,如需转载请标明出处。
# 漏洞利用
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者