文件包含
文件包含的概念很好理解,编程中经常用到,比如python中的import、c中的include,php当然也不例外。
但php“牛逼”的地方在于即使包含的文件不是php类型,也不会报错,并且其中包含的php代码也会执行,这是文件包含漏洞产生的根本原因。
文件包含漏洞和任意文件下载漏洞很相似,只不过一个是解析,一个是下载。
漏洞利用的几种方式:
1.向服务器写马:
图片中写恶意代码(结合文件上传),错误日志写恶意代码(错误访问会被记录到错误日志中),session中写恶意代码。
访问图片、日志文件或session文件,服务器生成木马,直接getshell。
2.读取敏感文件:结合目录遍历漏洞读取敏感文件。
3.php伪协议:伪协议可以使用的话,可以尝试读取文件或命令执行。
防护措施:
安全狗没,防火墙肯定有,自不必说,D盾也有防护:
应对措施:
1.手动测试payload是基本方法,既可以判断是否有漏洞,也可以判断是否有拦截。
2.有防护措施,就搜一下尝试绕吧。。。。或者其他思路。
3.有个LFISuite工具可以尝试一下。
反序列化
序列化就是将类对象转化为字符串或字节流,还可以转化为xml、json,其实都一样,都是为了方便传输和储存,反序列化就是其逆过程。
利用方式:前台构造序列化数据,传输到后台,经过一系列复杂的调用,最终触发命令执行。
这种漏洞要利用,必须对后端代码有很好的了解,所以反序列化漏洞目前都是针对组件的,有现成的利用工具。但漏洞大多被补了,运气好的话就试试吧。
常见反序列化漏洞:
Apache-Commons-Collections漏洞(还存在这种漏洞?)
weblogic系列漏洞(weblogic这种东西很少见吧)
Apache Tomcat 版本系列漏洞
Shiro反序列化漏洞
等等。
防护措施:无
扫描工具: goby很适合
敏感信息泄漏
重要的url(前端js代码中可能泄漏)、重要文件或目录(robots.txt、路径爆破)、邮箱、手机号、用户名、电话、密码、网站源码、数据库文件等等。
挖掘思路:
Google 搜索法
github搜索法
暴力扫描
邮箱收集器
特定程序的特定目录
跨站请求伪造
简单理解就是攻击者诱使用户点击恶意网站的恶意链接,这个链接是访问特定站点的url(比如某个网站的管理后台),如果用户浏览器中对目标网站的cookie信息有效,而且目标网站对请求包校验不严格,攻击者就会盗用用户的cookie,直接使用用户的cookie信息进入后台,而不需要密码。
这种漏洞要利用,要求条件挺高的。。。
防护措施:
防火墙:
测试方法:
1.最简单的方法删除请求包的Referer 字段,如果还能正确访问,基本判定有csrf漏洞。
2.使用bp、CSRFTester,CSRF Request Builder等工具。
跨站脚本
攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的. 比如获取用户的Cookie,导航到恶意网站,携带木马等。
漏洞产生原因:XSS之所以会发生, 是因为用户输入的数据变成了代码,没有对用户输入的数据HTML Encode处理。
利用方式:
1.Dom-Based XSS 漏洞:通过邮件发送dom型xss漏洞的链接,在用户浏览器上执行恶意脚本,获取数据(比如cookie),发送到攻击者的服务器上。
2.存储型xss漏洞:常常存在于留言板等地方,在漏洞页面嵌入恶意脚本代码,提交到服务器,服务器保存,当其他人浏览保存的内容时,触发恶意代码,盗取用户信息,发送给攻击者。
防护措施:
防火墙自不必说,D盾:
测试方法:
1.手动测试,漏洞和防护措施都可以测试,常用payload:
/><script>alert(document.cookie)</script><!--
2.有防护就搜一下尝试绕吧。。。
3.bp、xspear、xsser等工具。
服务端请求伪造(ssrf)
有些网站会从其他服务器加载数据,请求方式是直接将请求url当作参数,如果我们把参数url换成内网地址,那就相当于我们可以通过当前服务器访问内网了。
实现这种访问方式的函数通常有curl()、file_get_contents()、fopen()、fsocksopen()等。
利用方式:
1.对内网进行信息收集(端口、指纹等等)。
2.使用curl支持的其他协议(如file、http、dict协议、gopher协议)
3.对内网进行漏洞利用。
防护措施:
安全狗、D盾没有。
防火墙:按道理应该有,但我真没找到。。。
测试方法:
1.手动测试常用payload。
2.使用bp自带扫描器,SSRFmap(扫描+综合利用工具)等工具。
3.有防护就搜一下尝试绕吧。。。
xxe
xml外部实体注入,如果服务器允许解析xml外部实体(默认是关的),那么可以通过前台注入恶意xml外部实体,就有可能造成任意文件读取、内网端口扫描、命令执行(条件苛刻)、DDOS(条件苛刻)等攻击。
防护措施:
安全狗没有,防火墙肯定有。
D盾部分拦截:
测试方法:
1.手动测试常用payload。
2.bp有自带扫描,bp插件hacker bar,XXEinjectorg工具。
逻辑漏洞
代码多了,肯定出bug,更不要说没有明显错误的逻辑错误,而且有些逻辑漏洞很隐蔽,开发过程中很难发现。
逻辑漏洞也是一个常见漏洞,而且因为是正常流量,所以很难防护。
任何有价值的地方都应该测试一下逻辑漏洞,比如登录处、密码找回、支付页面等等。
这种漏洞因为放到前面的,临时想起来,放到这儿了。
常见类型
用户名或其他信息可枚举、验证码绕过、验证码可爆破、验证码回传、验证码未绑定用户、
订单金额任意修改、越权访问等等。
。。。。。就这样吧。。。。。
来源:freebuf.com 2020-09-06 00:03:44 by: 意识流存在
请登录后发表评论
注册