两句鸡汤,给和我处境一样的人一起共勉。当你的的才华支撑不起你的野心的时候,就安心学习。大山深处,看不到希望的时候,静心修炼,就是出路。
大家普遍觉得,上回讲的东西,太鸡儿简单的,不就是js嘛,我还是得提一句,扫盲,若要关注进阶教程,且看后续发文,本公号只做引导,起抛砖引玉之用。另外,做一个申明,纯属是为了技术和吐槽才写的公号,技术无罪,但是不要用技术去犯罪,现在法律越来越严,希望各位师傅爱护自己,点到为止。
那接下来就开始讲文件上传漏洞了,有师傅在后台问我 依照这个步骤,是不是要讲文件包含了,每个人的漏洞的观念不一样,所以个人的知识体系和知识架构也不一样,在我看来文件包含的本质是代码执行,不管代码注入还是命令注入,其本质也还是注入,准备出在下一期的内容里面。
言归正传,文件上传漏洞,依旧是不变的那个方法论,通过非法输入得到预期输出,在文件上传漏洞上,就表现为绕过网站限制,上传了非法的脚本文件,之后被访问执行,严重的可以获得webshell,关于webshell的构造,这里暂时不过多的讲,先讲讲文件上传的简单知识。
常见的文件上传有以下几种的限制造成文件上传漏洞的产生:
1.前端限制。
开发者使用js的方式,对用户上传文件的行为做限制
如以下代码:
if(ext=='jpg'||ext=='png'||ext=='jpeg'||ext=='gif'){
return true;
}else{
alert("这不是图片!")
return false;
2.服务端限制
服务端限制的方法有很多,例如文件名,文件类型漏以下介绍一种简单的例子,
$postfix = end(explode('.','$_POST['filename']);
if($postfix=='php'||$postfix=='asp'||$postfix=='sh'){
echo "invalid file type";
return;
}
这种对于文件的限制是最容易绕过的,因为有些版本php3,php5,.inc都是识别的,所以黑名单是不安全的。
3.其他
文件上传有很多漏洞,这里只是介绍了最简单的几种,以下提一下其他几种,服务器解析漏洞,文件头检测,路径绕过,文件内容检测,.htaccess上传,要深入了解,可以依照下面的靶场,结合网上的writeup,深入的学习一波,文件上传漏洞有一个靶场,了解一下。
靶场地址:https://github.com/c0ny1/upload-labs
wp:https://xz.aliyun.com/t/2435
http://www.freebuf.com/vuls/128846.html
最后说明一下,更得速度越来越慢,不可抗拒因素吧,我们技术low,但是我们时间少啊。