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

SSRF漏洞

Server-Side Request Forgery:服务器端请求伪造

目标:网站的内部系统

形成的原因

攻击者构造形成由服务器端发起请求的译者安全漏洞。

由于服务端提供了从其他服务器应用获取数据的功能,且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,文档,等等。

发现漏洞

黑盒:URL分享网页内容,转码,在线翻译,图片加载下载,图片文章收藏功能,未公开的API

白盒:从URL关键字找:share,wap,url,src,source.target.u,3g,display,image,domain

用途

1、获取banner信息

2、攻击运行在内网或本地的应用程序,比如溢出

3、对内网WEB应用指纹识别

4、攻击内外网WEB应用

5、利用file协议读取本地文件

常用攻击函数

curl_init 初始化

file_get_contents   php内置函数,以字符串的形式获取指定文件的内容。使用该函数可以读取本地的文件、远程文件和 HTTP 请求的响应等内容

fsockopen      php内置函数,建立基于TCP和UDP协议的客户端和服务器之间的连接通道。该函数通过Socket API实现网络通信,支持多种应用层协议,如HTTP、SMTP、FTP等。$fp = fsockopen("www.baidu.com", 80, $errno, $errstr, 30)是连接百度

防御方法

1、地址白名单,设定只允许访问的列表

2、禁用不需要的协议。仅仅允许http和https请求。可以防止类似于file:///,gopher://,ftp:// ,dict:// 等引起的问题

3、过滤私有IP地址段10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,localhost私有地址,IPV6地址

4、内容识别,识别的关键字没有就报错

绕过方法

更改IP为8进制,16进制,10进制

利用接卸URL把ip写到网址后面

演示实验

使用pikachu网站,

curl_init演示,$URL变量没有过滤,存在SSRF漏洞。

可以支付协议FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE以及LDAP

 

file_get_contents示例,$filename变量没有过滤,存在SSRF漏洞。

可以读本地,

验证有没有漏洞

读PHP文件

redis漏洞获取未授权访问

redis是存放日志的,端口默认是6379,默认的是不能远程连接,

在bp测试器设置字典,把端口都改一下,如果包的大小和其他不一样说明有这个端口开放。

用MSF打内网,SSRF来攻击redis反弹shell

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

相关文章:

  • Qt5开发及实例V2.0-第十八章-Qt-MyselfQQ实例
  • 当下IT测试技术员的求职困境
  • MR混合现实情景实训教学
  • 嵌入式C++总结
  • C语言之内存函数篇(3)
  • java面试题-学成在线项目
  • ViewBinding——Android之视图绑定
  • vue学习-04vue的props配置项和mixin混入
  • 九、多项式朴素贝叶斯算法(Multinomial NB,Multinomial Naive Bayes)(有监督学习)
  • 数据结构上机练习——单链表的基本操作、头文件、类定义、main函数、多种链表算法的实现,含注释
  • 如何通过AI视频智能分析技术,构建着装规范检测/工装穿戴检测系统?
  • C语言自定义类型(上)
  • Python - 小玩意 - 圣诞树背景音乐弹窗
  • The 2023 ICPC Asia Regionals Online Contest (1) E. Magical Pair(数论 欧拉函数)
  • <十三>objectARX开发:模拟实现CAD的移动Move命令
  • Autosar基础:模式管理-EcuM
  • 代码随想录Day42 | 01背包问题| 416. 分割等和子集
  • UML六大关系总结
  • ElementUI基本介绍及登录注册案例演示
  • Python爬虫-某网酒店评论数据
  • C# Onnx Yolov8 Detect 水果识别
  • 测试网页调用本地可执行程序(续1:解析参数中的中文编码)
  • C++入门知识
  • spring和springmvc常用注解
  • 【Java】Java生成PDF工具类
  • STL map,插入和查找的一些注意事项
  • 基于springboot+vue的客户关系管理系统(前后端分离)
  • 【Java 基础篇】Java Stream 流详解
  • 题解:ABC321A - 321-like Checker
  • Zig实现Hello World