2018-05-19-File Upload

1.File Upload:

文件上传的漏洞主要原理在于利用这些文件上传的地方将恶意代码植入到服务器中,然后利用url访问上传的文件以达到目的。我直接构造了脚本代码如下:


图一

然后直接对该文件上传上去,接着如下:


2018-05-19-File Upload_第1张图片
图二


2018-05-19-File Upload_第2张图片
图三

2.File Upload:

该题目对php后缀进行了过滤,因此直接用.phtml上传,ps:  .phtml也是php一种拓展名。

如下:


2018-05-19-File Upload_第3张图片
图四

3.修补措施:

A:检查文件拓展名。

可以采用黑名单或者白名单策略来限制上传的文件拓展名。

反制方法:可利用解析漏洞绕过执行。

B:检查HTTP Header中的Content-Type

可利用代理工具直接修改包头contend-type信息即可。常见content-type如下所示:


2018-05-19-File Upload_第4张图片
图五

C:.分析文件头内容来检查文件类型

一般而言各种不同的文件格式在包头处会有不同的特征,如

2018-05-19-File Upload_第5张图片
图六

通过检查这些特征判断文件格式类型

反制方法:通过加上这些特征就可以了,例如php脚本是从


2018-05-19-File Upload_第6张图片
图七

D:.限制Web Server对于特定类型文件的行为

通过调用特定的接口控制服务器对文件的处理方式来控制,例如


2018-05-19-File Upload_第7张图片
图八

反制的方法也简单:可通过move_uploaded_file函数将自己的.htaccess文件上传,覆盖掉服务器上的文件,自定义服务器对文件的执行方式,从而获得权限。

附上学习的文章:

http://www.freebuf.com/vuls/128846.html

你可能感兴趣的:(2018-05-19-File Upload)