[NISACTF 2022]easyssrf

题目讲的主要是ssrf以及php伪协议的能力,题目详情如下
nssctf之SSRF刷题记录-LMLPHP

一般来说,当一个网站出现curl类的功能时就可能会出现ssrf之类的漏洞,常见的ssrf协议如下

file:///
dict://
sftp://
ldap://
tftp://
gopher://
file://

这种URL Schema可以尝试从文件系统中获取文件:

http://example.com/ssrf.php?url=file:///etc/passwd
http://example.com/ssrf.php?url=file:///C:/Windows/win.ini

SSRF题目

可以看到/etc/passwd被过滤了,哪就换一个
nssctf之SSRF刷题记录-LMLPHP

直接尝试看flag
nssctf之SSRF刷题记录-LMLPHP

查看fl4g
nssctf之SSRF刷题记录-LMLPHP

发现特殊页面ha1x1ux1u.php,进行url的拼接访问
nssctf之SSRF刷题记录-LMLPHP

进行分析,逻辑为以get方式提交file参数,会使用file_get_contents执行file参数提交的内容,最后使用echo方法输出。这是比较标准的文件包含,大部分情况下使用php伪协议

file_get_contents函数介绍

file_get_contents — 将整个文件读入一个字符串
nssctf之SSRF刷题记录-LMLPHP

使用file参数读取文件

  • 先读取/etc/passwd做读取测试
    nssctf之SSRF刷题记录-LMLPHP

  • 成功读取,读取flag
    nssctf之SSRF刷题记录-LMLPHP

06-23 23:01