文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。这种攻击方式是最为直接和有效的,“文件上传”本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。如果服务器的处理逻辑做的不够安全,则会导致严重的后果。
文件上传后导致的常见安全问题一般有:
上传文件是Web脚本语言,服务器的Web容器解释并执行了用户上传的脚本,导致代码执行。
上传文件是Flash的策略文件crossdomain.xml,黑客用以控制Flash在该域下的行为(其他通过类似方式控制策略文件的情况类似);
上传文件是病毒、木马文件,黑客用以诱骗用户或者管理员下载执行。
上传文件是钓鱼图片或为包含了脚本的图片,在某些版本的浏览器中会被作为脚本执行,被用于钓鱼和欺诈。
除此之外,还有一些不常见的利用方法,比如将上传文件作为一个入口,溢出服务器的后台处理程序,如图片解析模块;或者上传一个合法的文本文件,其内容包含了PHP脚本,再通过"本地文件包含漏洞(Local File Include)"执行此脚本;等等。
1.1打开【192.168.1.3/2/】发现是个上传页面。如图1所示
图1
1.2打开桌面在线实验工具burpsuit开始抓包,设置火狐代理。如图2所示
图2
1.3选择上传桌面的1.jpg。如图3所示
图3
1.3用burp抓到包后,把包转发给repeater模块。如图4所示
图4
1.4点击go。如图5所示
图5
1.5通过路径00截断,把%00转化为url编码。如图6所示
图6
1.6点击提交可以看到flag。如图7所示
图7