正在阅读:

文件上传漏洞演示脚本之目录验证

6,157

昨天我们科普了关于MIME验证的绕过方法,今天我们讨论目录验证。关于目录验证,我想大家应该见的比较多了,比如FCKeditor2.6.4以下的那个上传exp脚本,就是目录或者是路径验证不严导致的。

关于fckeditor <= 2.6.4 任意文件上传漏洞大家可以在下面的链接找到: fckeditor <= 2.6.4 任意文件上传漏洞

目录验证实例代码

<?php
/**
 * Created by 独自等待
 * Date: 14-1-22
 * Time: 下午8:48
 * Name: upload3.php
 * 独自等待博客:http://www.waitalone.cn/
 */
//文件上传漏洞演示脚本之目录验证
$uploaddir = $_POST['path'];
if (isset($_POST['submit']) && isset($uploaddir)) {
    if (!file_exists($uploaddir)) {
        mkdir($uploaddir);
    }
    if (move_uploaded_file($_FILES['upfile']['tmp_name'], $uploaddir . '/' . $_FILES['upfile']['name'])) {
        echo '文件上传成功,保存于:' . $uploaddir . '/' . $_FILES['upfile']['name'] . "\n";
    }
    //print_r($_FILES);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=gbk"/>
    <meta http-equiv="content-language" content="zh-CN"/>
    <title>文件上传漏洞演示脚本--目录验证实例</title>
<body>
<h3>文件上传漏洞演示脚本--目录验证实例</h3>

<form action="" method="post" enctype="multipart/form-data" name="upload">
    <input type="hidden" name="path" value="images"/>
    请选择要上传的文件:<input type="file" name="upfile"/>
    <input type="submit" name="submit" value="上传"/>
</form>
</body>
</html>

此代码严格意义上不算是目录验证问题,只是由于上传代码方面的问题,上传文件保存路径是客户端提交上去的,这样我们就很好绕过了。

目录验证绕过方法:

直接更改上传表单中path变量的值为x.asp然后配合解析漏洞利用即可。

文件上传漏洞演示脚本

文件上传漏洞演示脚本

相关文章:

文件上传漏洞演示脚本之js验证

文件上传漏洞演示脚本之MIME验证

目前有:1条访客评论,博主回复1

  1. GG
    2014-01-29 20:06

    ‘”>嘿嘿

留下脚印,证明你来过。

*

*

流汗坏笑撇嘴大兵流泪发呆抠鼻吓到偷笑得意呲牙亲亲疑问调皮可爱白眼难过愤怒惊讶鼓掌