记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

windows版网站安全狗上传拦截bypass

2015-08-21 08:35

网站安全狗在win上的上传拦截绕过

上传代码:


<?php
if(isset($_POST['submit'])){
$upfile = $_FILES['file']['name'];
$tempfile = $_FILES['file']['tmp_name'];
$ext = trim(get_extension($upfile));
//var_dump($ext);
if(in_array($ext,array('php','php3','php5','asp','asa','cer','cdx','aspx','htaccess'))){
die('Warning ! File type error..');
}
$savefile = $upfile;
if(move_uploaded_file($tempfile,$savefile)){
die('Success upload. FileName: '.$savefile);
}else{
die('Upload failed..');
}
}
function get_extension($file){
return strtolower(substr($file, strrpos($file, '.')+1));
}
?>
<html>
<body>
<form method="post" action="#" enctype="multipart/form-data">
<input type="file" name="file" value=""/>
<input type="submit" name="submit" value="upload"/>
</form>
</body>
</html>



当上传的文件扩展名中包含一些特殊字符的时候(比如bypass.php?X,这里的X代表空格%20或其他特殊字符{%80-%99}),安全狗截取文件扩展名为phpX,并判断为合法文件,故上传成功。

但是利用windows的文件名特性,存在的文件名为bypass.php,并且可以解析。

 

提交一个bypass.phpX,X的hex为\x90
 

4.jpg


 

5.jpg

 

解决方案:

过滤含有特殊字符的扩展名

知识来源: www.2cto.com/Article/201508/434475.html

阅读:99561 | 评论:0 | 标签:安全狗

想收藏或者和大家分享这篇好文章→复制链接地址

“windows版网站安全狗上传拦截bypass”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

九层之台,起于累土;黑客之术,始于阅读

推广

工具

标签云

本页关键词