漏洞原理

文件上传漏洞

导致该漏洞的原因在于代码作者没有对访客提交的数据进行检验或者过滤不严,可以直接提交修改过的数据绕过扩展名的检验。

1、前端JavaScript过滤绕过

如果想要在一个开启了JavaScript验证的网站上传一句话木马,我们可以给浏览器设置代理,127.0.0.1,端口为8080.利用BurpSuite软件代理->打开intercept(拦截)->将木马的后缀名改为jpg格式->点击forward将数据包发回,这样就可以上传成功。最后用菜刀连接。 还有一种方法就是在地址栏输入:about:config,搜索javascript:enabled,双击关闭,也可以成功。

2、Content-Type绕过

Content-Type一般是指网页中存在的Content-Type,用于定义网络文件的类型和网页的编码,决定文件接收方将以什么形式、什么编码读取这个文件。 如果想要在一个有type验证的网站上传一句话木马,我们可以给浏览器设置代理,127.0.0.1,端口为8080.利用BurpSuite软件代理->打开intercept(拦截)->修改包内的Content-Type值:将application/octet-stream修改为image/jpeg。->点击forward将数据包发回,这样就可以上传成功。

3、扩展名绕过

如果想要绕过有扩展名验证的网站上传一句话木马,这个很简单,可以把后缀换成大小写的方式绕过。

4、00截断绕过

想通过00%截断来绕过有验证的网站上传一句话木马。将上传的文件名命名为test.php%00.jpg格式,我们可以给浏览器设置代理,127.0.0.1,端口为8080.利用BurpSuite软件代理->打开intercept(拦截)->修改包内的Content-Type值:将%00右击选择Covert selection选项中的URL进行编码->点击forward将数据包发回,这样就可以上传成功。注:系统在对文件名的读取时,如果遇到%00,就会认为读取已结束,不在读取后面的内容。

解析漏洞

文件包含漏洞

XSS跨站脚本攻击

CSRF

目录遍历漏洞

命令执行漏洞

代码执行漏洞

反序列化漏洞

参考链接

comments powered by Disqus