文件上传--黑/白名单绕过
文件上传–黑/白名单绕过
1、文件上传常见验证:
后缀名,类型,文件头等
后缀名:黑名单,白名单
文件类型:MIME(抓包时,Content-Type这个字段)
信息文件头:内容头信息
2、常见后缀黑名单(明确不让上传的脚本格式后缀):
asp,php,cgi,jsp,war,aspx
3、常见后缀白名单(明确可以上传的脚本格式后缀,较黑名单验证安全):
png,jpg,zip,rar,gif
4、上传脚本时,类型(后缀名)尽量与对方的网站搭建类型(php搭建的,上传.php)保持一致。
5、.htacces文件(自己上网搜配置)是Apache的一个配置文件,上传文件时先上传这个,后面上传的指定正常文件(如jpg等图片格式),然后访问这个文件,会被当做php代码执行,但是其他的任何图片不受影响。
6、了解一次过滤与循环过滤的区别。
7、白名单绕过中的%00绕过与0x00绕过:
条件:
php版本小于5.3.4
php的magic_quotes_gpc为OFF状态
%00是urlencode(get方法),0x00是十六进制(post方法)。
8、在get方法传数据不用编码,而在post方法传数据需要编码(get会自动解码,post不会)。
文件上传代码审计(php+html混合上传):16:00
通过.htacces文件绕过(其实这集可以二刷,学习到一系列文件上传漏洞):55:00
白名单绕过中的%00绕过与0x00绕过:1:25:00