当前位置: 首页 > news >正文

十六、pikachu之SSRF

文章目录

  • 1、SSRF概述
  • 2、SSRF(URL)
  • 3、SSRF(file_get_content)

1、SSRF概述

  SSRF(Server-Side Request Forgery:服务器端请求伪造):其形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,但又没有对目标地址做严格过滤与限制,导致攻击者可以传入任意的地址来让后端服务器对其发起请求,并返回对该目标地址请求的数据。

  数据流:攻击者 → \rightarrow 服务器 → \rightarrow 目标地址

  根据后台使用的函数的不同,对应的影响和利用方法又有不一样。PHP中下面函数的使用不当会导致SSRF:

  • file_get_contents()
  • fsockopen()
  • curl_exec()

  如果一定要通过后台服务器远程去对用户指定(“或者预埋在前端的请求”)的地址进行资源请求,则请做好目标地址的过滤。

2、SSRF(URL)

(1)点击累了吧,来读一首诗吧
在这里插入图片描述
  可以看到url栏中传入了一个url的参数。

在这里插入图片描述
(2)既然url参数是一个地址,那我们直接换成https://www.baidu.com。可以发现,跳转到百度页面了。
在这里插入图片描述
(3)查看后端源代码。
在这里插入图片描述

  • curl_init():初始化一个新的会话,返回一个cURL句柄,供curl_setopt(), curl_exec()和curl_close() 函数使用。
  • curl_setopt():设置一个cURL传输选项。
  • curl_exec():执行一个cURL会话。

  关于curl:
  PHP支持的由Daniel Stenberg创建的libcurl库允许你与各种的服务器使用各种类型的协议进行连接和通讯。
  libcurl目前支持http、https、ftp、gopher、telnet、dict、file和ldap协议。libcurl同时也支持HTTPS认证、HTTP POST、HTTP PUT、 FTP 上传(这个也能通过PHP的FTP扩展完成)、HTTP 基于表单的上传、代理、cookies和用户名+密码的认证。

(4)查看本地密码,payload:http://192.168.92.1:32769/vul/ssrf/ssrf_curl.php?url=file:///etc/passwd
在这里插入图片描述

3、SSRF(file_get_content)

(1)同上一题,又得到一个带参数的链接,参数名file,参数值是个url。
在这里插入图片描述
(2)关于file_get_contents()
  file_get_contents() 把整个文件读入一个字符串中。该函数是用于把文件的内容读入到一个字符串中的首选方法。如果服务器操作系统支持,还会使用内存映射技术来增强性能。

(3)这次用php伪协议中的php://filter/,构造payload:http://192.168.92.1:32769/vul/ssrf/ssrf_fgc.php?file=php://filter/read=convert.base64-encode/resource=./ssrf_fgc.php
在这里插入图片描述

base64解码:
在这里插入图片描述

http://www.lryc.cn/news/147809.html

相关文章:

  • 最新PHP短网址生成系统/短链接生成系统/URL缩短器系统源码
  • 漱玉平民大药房:多元化药店变革的前夜
  • 如何实现AI的矢量数据库
  • Java与Modbus-TCP/IP网络通讯
  • 音视频 ffmpeg命令图片与视频互转
  • C++的基类和派生类构造函数
  • C语言中对json格式数据的解析和封装
  • RT-Thread自动初始化机制
  • 在本地搭建Jellyfin影音服务器,支持公网远程访问影音库的方法分享
  • 强盛集团面试题实战(持续更新)
  • golang 协程的实现原理
  • go gin 参数绑定常用验证器
  • 多用户商城系统常见的安全性和数据保护措施有哪些?
  • 如何在WSL上导入任何Linux发行版
  • 汽车自适应巡航系统车距控制策略研究
  • 鸿蒙系列-如何更好地使用 ArkUI 的 Image 组件?
  • 机器学习简介[01/2]:简单线性回归
  • Kubernetes技术--k8s核心技术yaml资源编排
  • clickhouse-配置解释
  • 基于亚马逊云科技无服务器服务快速搭建电商平台——性能篇
  • LINQ详解(查询表达式)
  • 【DEVOPS】现状篇
  • Linux文件管理知识:查找文件(第二篇)
  • 医疗小程序:让服务更高效,用户体验更优化
  • C++11 std::transform函数使用说明
  • JavaScript-DOM查询
  • 大数据-玩转数据-Flink 水印
  • 【Apollo】阿波罗自动驾驶系统:驶向未来的智能出行(含源码安装)
  • 网络-Netty
  • 如何使用vue-smooth-dnd