WEB安全-SSRF服务端请求伪造

SSRF服务端请求伪造

 

漏洞原理:

Server-Side Request Forgery (SSRF,服务器端请求伪造) 漏洞是一种安全漏洞,允许攻击者向服务器发起欺骗性请求。攻击者利用这种漏洞可以探测、扫描或者攻击服务器内部的资源,或者将服务器用作代理访问其他非公开的网络资源。

SSRF漏洞通常由于服务器端应用程序对用户输入信任不够严谨而导致。攻击者可以通过构造恶意的请求,使服务器端应用程序发起指向内部或者外部网络资源的请求。这些请求可能会导致信息泄露、服务拒绝或者服务器端攻击。

常见的SSRF攻击包括但不限于:

  1. 通过发送恶意的URL来访问服务器内部的敏感文件。
  2. 通过发送请求来扫描服务器内部的端口。
  3. 将服务器用作代理来发起针对其他服务器的攻击。

 

php ssrf敏感函数

# 这些函数可以通过网络协议访问目标服务器上的资源
file_get_ contents()
fsockopen()
curl_exec()

 

 

SSRF常用伪协议

  1. file://:用于访问本地文件系统。攻击者可以尝试访问服务器上的敏感文件,如/etc/passwd等。示例:file:///etc/passwd
  2. http://https://:用于访问Web资源。攻击者可以尝试访问内部Web应用程序或者其他服务器上的敏感信息。示例:http://internal.site/internal_page
  3. ftp://:用于访问FTP服务器。攻击者可以尝试访问FTP服务器上的文件。示例:ftp://ftp.site/secret_file
  4. dict://:用于查询词典服务。虽然不常见,但在某些情况下也可能被利用。示例:dict://dictionary.com/
  5. gopher://:用于访问Gopher协议服务。同样不太常见,但也可能被利用。示例:gopher://gopher.site/
  6. ldap://:用于访问LDAP目录。攻击者可以尝试从LDAP服务器中检索敏感信息。示例:ldap://ldap.site/
  7. mailto::用于发送电子邮件。虽然不太可能导致安全问题,但仍可能被用于构造攻击。示例:mailto:user@example.com
  8. ssh://:用于访问SSH服务器。攻击者可以尝试通过SSH协议与其他服务器建立连接。示例:ssh://internal.site/
  9. telnet://:用于访问Telnet服务器。虽然不太常见,但也可能被利用。示例:telnet://telnet.site/

 

 

ByPass

1.利用?绕过限制url=https://www.baidu.com?www.xxxx.me
2.利用@绕过限制url=https://www.baidu.com@www.xxxx.me
3.利用斜杠反斜杠绕过限制
4.利用#绕过限制url=https://www.baidu.com#www.xxxx.me
5.利用子域名绕过
6.利用畸形url绕过
7.利用跳转ip绕过

 

发表回复

电子邮件地址不会被公开。必填项已用 * 标注