SSRF的原理
SSRF(即服务端请求伪造)攻击利用了服务器对外部或内部资源发起请求的能力,将攻击者构造的恶意请求传递给目标服务器,迫使其在内部网络中执行攻击者的意图。
SSRF的危害
1.攻击者可以通过SSRF漏洞来利用服务器的网络权限,访问只有内部网络可见的资源;
2.利用特定的协议如file来读取服务器本地文件;
3.滥用服务器的身份或网络权限,以此向第三方服务发起请求;
4.通过SSRF请求直接绕过访问控制,从而访问敏感数据;
5.对内部网络中的其他机器进行端口扫描,探测开放的服务或应用程序。
pikaqiu靶场ssrf漏洞复现
SSRF(url)
在SSRF攻击中,攻击者可能通过输入或控制请求的URL,使目标服务器使用curl_exec()函数访问攻击者指定的恶意URL。
点击“读一首诗”后可以发现多了一段url地址
我们知道,url支持多种协议,如file、http、dict、gopher等,我们可以通过这些协议来达到查看文件、访问链接、扫描端口等目的。接下来就简单演示一下。
1.通过file协议读取本地文件的内容
url=file:///本地文件路径
2.通过http协议访问外部链接
又拿百度开刀
url=http://www.baidu.com
SSRF(file_get_content)
file_get_content()函数可以被用来发送HTTP请求并获取远程资源的内容,这是因为 file_get_content()可以处理http和https等URL,并将远程服务器返回的内容作为字符串读取。而在发生SSRF攻击时,攻击者可以利用应用程序中调用 file_get_contents()的地方,传递恶意构造的URL,迫使服务器发起请求,如访问内部网络或受保护的资源。
1.同样可以通过file协议读取本地文件的内容
url=file:///本地文件路径
2.通过http协议获取内网资源
file=http://127.0.0.1/本地资源路径
和sqli-labs梦幻联动了属于是