一、CSRF简介与危害
简介
CSRF(Cross-site request forgery)简称:跨站请求伪造,存在巨大的危害性。在 CSRF 的 攻击场景中,攻击者会伪造一个请求(这个请求一般是一个链接),然后欺骗目标用户进行点 击,用户一旦点击了这个请求,整个攻击就完成了,所以 CSRF 攻击也称为 one-click attack。
危害
- 数据泄露:攻击者可以利用CSRF攻击窃取用户的敏感信息,如账户密码、信用卡信息等,造成用户的隐私泄露和财产损失。
- 非法操作:攻击者可以通过CSRF攻击对受信任的网站进行非法操作,如篡改数据、发布虚假信息等,给企业或个人带来损失。
- 拒绝服务:攻击者可以利用大量的伪造请求对服务器进行攻击,导致服务器瘫痪,使合法用户无法正常访问。
CSRF 攻击前提条件
- 有这个漏洞
- 用户已经登录
- 对协议包很了解
- 浏览器支持
- 用户点击
防御措施
- 同源策略
- 关键业务验证(短信,邮件、人脸识别)
二、SSRF 简介与危害
简介
- SRF(Server-Side Request Forgery,服务器请求伪造)是一种由攻击者构造请求,由服务端发 起请求的安全漏洞,一般情况下,SSRF 攻击的目标是外网无法访问的内网系统(正因为请求时由 服务端发起的,所以服务端能请求到与自身相连而与外网隔绝的内部系统)。
- 攻击者通过篡改 URL 路径遍历或完全替换它来操纵 URL, 以向他们选择的任意域发出 HTTP 请求。 SSRF 攻击可以利用链接到组织基础架构内,不应向用户公开的内部服务或用户不应访 问的外部系统的 URL。
危害
- 内部资源泄露:攻击者可以利用SSRF访问内部网络中的敏感信息,如数据库、API接口、管理系统等,从而窃取、篡改或删除重要数据。
- 内部服务受损:通过SSRF攻击可以对内部应用程序执行未授权的操作,比如执行命令、启动或停止服务,甚至可能导致内部服务完全瘫痪。
- 安全机制绕过:利用SSRF漏洞,攻击者可以绕过基于IP地址的访问控制列表(ACLs)、防火墙和其他安全措施,访问原本受限的网络区域。
- 远程代码执行:在某些情况下,如果内部服务对输入的处理不够严谨,SSRF攻击甚至可以导致远程代码执行,给系统的安全带来极大威胁。
- 端口扫描和资产探测:攻击者可以利用SSRF漏洞对内网进行端口扫描和资产探测,发现服务器内部的可用端口和漏洞。
- 窃取本地和内网敏感数据:攻击者可以通过SSRF攻击访问和下载内网的敏感数据,利用文件传输协议访问服务器本地文件,上传木马或者病毒。
- 攻击服务器本地或内网应用:借助SSRF漏洞,攻击者可以发现服务器内部存在的其他漏洞,并利用这些漏洞进一步发起攻击。
- 跳板攻击:利用存在SSRF漏洞的服务器对内或对外发起攻击,以隐藏自己真实IP地址,防止受害者溯源和追踪。
CSRF 攻击前提条件
- 有这个漏洞
- 用户已经登录
- 对协议包很了解
- 浏览器支持
- 用户点击
SSRF 成因与防御措施
原因
- 由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制
防御
- 检验参数,不允许内网段 IP 操作。
- 限制协议为 HTTP、HTTPS,禁用不需要的协议可以防止类似于 file:// ftp:// 等引起的问题。
- 统一错误信息,避免用户可以根据错误信息来判断远端服务器的端口状态。
- 过滤返回信息,验证远程服务器对请求的响应是比较容易的方法。如果 web 应用是去获取某一 种类型的文件。那么在把返回结果展示给用户之前先验证返回的信息是否符合标准。