当前位置:主页 > 教程 > cms教程 >

43988刘伯温神算资枓大全-文件上传漏洞靶机Writeup
栏目分类:cms教程   发布日期:2019-11-30   浏览次数:

通过代码我们可以知道服务端对于上传文件名后缀做了限制,第 8 行代码中我们可得知上传路径命名的规则是当用户 get 请求的 save_path 的值拼接而成的,这个%00 截断需要的权限比较大,把上传的文件名写成 2.jpg, save_path 改成../upload/1.php%00,最后保存

  

43988刘伯温神算资枓大全-文件上传漏洞靶机Writeup

  通过代码我们可以知道服务端对于上传文件名后缀做了限制,第 8 行代码中我们可得知上传路径命名的规则是当用户 get 请求的 save_path 的值拼接而成的,这个%00 截断需要的权限比较大,把上传的文件名写成 2.jpg, save_path 改成../upload/1.php%00,最后保存下来的文件就是 2.php。说明一下,第 8 行代码中可以看到是用户是通过 get 请求的,如果是 post 请求的话需要另一个办法上传路径 0×00 绕过。利用 Burpsuite 的 Hex 功能将 save_path 改成../upload/1.php【二进制 00】形式。 通读代码还是看第 4 行到第 10 行的内容,主要是对上传文件的后缀以及内容进行过滤,.htaccess 后缀也做了限制。但是我们发现对文件的上传的限制貌似少了一条规则:$file_ext = strtolower($file_ext); //将后缀名转换为小写,那么我们可以通过修改后缀名为大写来绕过这个漏网之鱼。 代码中第 4 行到第 11 行程序对上传的文件名、文件上传路径做了一下过滤,4如何学习会声会影X7制作软,值得注意的是第 5 行代码中定义了一个文件上传后缀名黑名单的数组,不允许.asp\.aspx\.php\.jsp 的后缀名的文件进行上传,如果上传的是这些后缀名的文件,第 22 行代码中就会提示不允许上传。13 行到 15 行是对上传后的文件名称的命名的一个规则,通过代码我们可以知道命名规则是以日期、10000-9999 随机数拼接而成的。 /a 指定以 ASCII 格式复制、合并文件。用于 txt 等文档类文件; 说明一下如果在开放中程序员对文件上传忽略了对文件后缀名进行::$DATA 处理的话,那么测试人员可以根据 windows 文件流特征来绕过限制。我们通过抓包修改上传文件的后缀名,在后缀名后面添加::$DATA 来进行绕过。 首先我们先写一个 php 的小马文件,然后将一句话木马保存为 shell.jpg,内容如下: 我们通过抓包修改上传文件后缀可以成功绕过限制,文件路径也在返回包中显示,这样我们就可以使用菜刀进行连接,从而获取到服务器的 webshell,进一步对服务器进行提权。 首先我们还是先来看一下代码,通过代码我们来判断文件上传是否存在被绕过的可能性。 如果不用.htaccess 文件调用 php 解析器去解析的话,就算是图片马,服务器也不会去解析的,如图: 我们成功上传到了服务器,但是我们拿不到 webshell,这个漏洞一般都是配合通常图片马配合%00 或者 0×00 截断上传,或者配合解析漏洞。 通过审查源代码在第 5 行和第 7 行的代码中,对于上传的文件 MIME 类型进行了验证判断。writeup 对于上传后的文件的路径是 UPLOAD_PATH/上传的文件名拼接而成的。我们可以通过修改截断上传数据包,修改 Content-Type 为 image/gif,然后放行数据包, 这样的话我们就可以绕过限制。 既然我们知道了上传文件的限制,我们可以通过抓包修改文件后缀为.php4, 只要能绕过后面的是什么就不重要。这样我们就可以成功绕过黑名单限制。 最近小白一直在学习代码审计,对于我这个没有代码审计的菜鸟来说确实是一件无比艰难的事情。但是今天不是说代码审计的事情,而是文件上传的东东。小白在对 writeup 上传靶机中发现,通审查源代码能够让我们更清晰的了解文件上传漏洞。话不多说,下面我们就开干。在下面的实验中可能会与这个靶机的顺序不一样。有什么不足,还望大佬多多指教。

相关热词: dede上传漏洞

相关内容
Copyright © 2002-2020 www.huanaobi.com 天空彩要好彩与你同行 版权所有    粤ICP备88888888号   关于我们 | 广告合作 | 版权声明 | 意见反馈 | 联系方式 | 原创投稿 | 网站地图 |
特效 教程 资源 资讯