目录
CSRF
详细
CSRF全称:Cross-site request forgery,即,跨站请求伪造,也被称为 “One Click Attack” 或 “Session Riding”,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。举个生活中的例子:就是某个人点了个奇怪的链接,自己什么也没输,但自己的qq号或其他的号就被盗了。即该攻击可以在受害者不知情的情况下以受害者名义伪造请求,执行恶意操作,具有很大的危害性。
举例
目标的支付宝在登陆状态,攻击者给目标发送伪造的支付宝付款连接(连接由支付宝付款的源码伪造)诱导目标去点击。目标点击后,因为目标的支付宝同时也在登陆状态,所以服务器认为是用户的支付宝本身去触发这个转账页面从而实现转账,也就是CSRF攻击。
CSRF的攻击过程的条件
1、目标用户已经登录了网站,能够执行网站的功能。
2、目标用户访问了攻击者构造的URL。
3、攻击者对目标网站的源码是了解的并且可以进行有效的伪造
CSRF的防护
1、同源检测---查看页面是否有来源,一些页面点击或者直接用url访问是否是一样的效果,如果是一样效果证明没有同源检测(可以进行CSRF)。如果不一样会代表会检测来源,发现是其他地方发送的来的数据包会直接进行报错。
2、看凭据有无token---可以理解为一个标识,如果有放弃CSRF攻击
3、关键操作是否存在验证---如果存在验证或者是安全码,也是没有办法进行csrf的攻击。
SSRF
详细
是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。(正是因为它是由服务端发起的,所以它能够请求到与它相连而与外网隔离的内部系统)SSRF 形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,下载等等。
举例
当一个页面具有图片上传功能时,那么可以本地上传和远程加载图片地址上传到服务器。如果是远程加载上传到服务器的话,那么这个图片的地址是由服务器访问解析。简单理解为是服务器上有一个应用,而这个应用会借助服务器去请求地址,这就相当于服务器自身去访问地址。那么这就可以实现服务探针、协议和内网扫描等。
SSRF黑盒可能出现的地方
1.社交分享功能:获取超链接的标题等内容进行显示
2.转码服务:通过URL地址把原地址的网页内容调优使其适合手机屏幕浏览
3.在线翻译:给网址翻译对应网页的内容
4.图片加载/下载:例如富文本编辑器中的点击下载图片到本地;通过URL地址加载或下载图片
5.图片/文章收藏功能:主要其会取URL地址中title以及文本的内容作为显示以求一个好的用具体验
6.云服务厂商:它会远程执行一些命令来判断网站是否存活等,所以如果可以捕获相应的信息,就可以进行ssrf测试
7.网站采集,网站抓取的地方:一些网站会针对你输入的url进行一些信息采集工作
8.数据库内置功能:数据库的比如mongodb的copyDatabase函数
9.邮件系统:比如接收邮件服务器地址
10.编码处理, 属性信息处理,文件处理:比如ffpmg,ImageMagick,docx,pdf,xml处理器等
11.未公开的api实现以及其他扩展调用URL的功能:可以利用google 语法加上这些关键字去寻找SSRF漏洞
SSRF防护
1、禁用跳转
2、禁用不需要的协议
3、固定或限制资源地址
4、错误信息统一信息处理