参考借鉴:pikachu靶场练习——SSRF详解_pikachu ssrf-CSDN博客
SSRF(curl)
先了解一下curl
curl是一个非常实用的、用来与服务器之间传输数据的工具;支持的协议包括 (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP),curl设计为无用户交互下完成工作
依次点击
出现一个url地址
http协议通过网址访问链接
修改URL为:url=http://www.baidu.com 访问百度页面
修改URL为:url=http://www.goole.com 访问谷歌页面
file协议读取本地主机文件
新建一个hello.txt文件,随便写点后保存
修改url为:url=file:///E:/SSRF/hello.txt,查看文件内容
文件地址是刚刚创建的文件的地址
dict协议扫描内网主机开放端口
修改url为:url=dict://111.79.225.13:80,可以拿自己的IP进行测试
SSRF(file_get_content)
先了解一下file_get_content
file_get_contents() 把整个文件读入一个字符串中。该函数是用于把文件的内容读入到一个字符串中的首选方法,如果服务器操作系统支持,还会使用内存映射技术来增强性能。
语法:file_get_contents(path,include_path,context,start,max_length)
参数 | 描述 |
---|---|
path | 必需。规定要读取的文件。 |
include_path | 可选。如果您还想在 include_path(在 php.ini 中)中搜索文件的话,请设置该参数为 '1'。 |
context | 可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。若使用 NULL,则忽略。 |
start | 可选。规定在文件中开始读取的位置。该参数是 PHP 5.1 中新增的。 |
max_length | 可选。规定读取的字节数。该参数是 PHP 5.1 中新增的。 |
出现一个file地址
file协议读取本地主机文件
修改file为:file=file:///E:/SSRF/hello.txt,查看文件内容
http协议请求内网资源
修改file为:file=file://E:/phpStudy/phpstudy_pro/WWW/SSRF/hello.txt,查看文件内容