前言:之前SSRF怼redis的时候有一个协议是Gopher协议,一直没怎么深入去研究,今天简单看一看。
1.Gopher协议
看WIKI说Gopher协议是http的前身,又来因为要收钱和乱授权就没落了。
Gopher是Internet上最主要的信息检索工具,它将Internet上的文件组织成某种索引,很方便地将用户从Internet的一处带到另一处。
2.协议支持
gopher协议支持发出GET、POST请求:可以先截获get请求包和post请求包,在构成符合gopher协议的请求。gopher协议是ssrf利用中最强大的协议
。
需要注意的是gopher协议域名后面的第一位是占位符,可以是任意但是必须存在。
curl gopher://127.0.0.1:8000/_GET%20aaaaasda
其中_是占位符
测试结果如下:
3.redis测试
select 0
keys *
get xroot
先把redis的命令每行一个列出,然后进行url_full_encode
curl gopher://192.168.157.129:6379/x%73%65%6C%65%63%74%20%30%0D%0A%6B%65%79%73%20%2A%0D%0A%67%65%74%20%78%72%6F%6F%74
可以得出结果,其中的数字代表结果字符串的位数
+OK
*1
$5
xroot
$11
coolbrother
那么问题来了为啥gopher能兼容redis协议呢,抓包看一看。
抓完包我就懵逼了,我们看到的是啥他发的就是啥,看来还是redis和Mysql的兼容性好。
写在最后:今天又是实验失败的一天。
。:.゚ヽ(。◕‿◕。)ノ゚.:。+゚防盗专用。:.゚ヽ(。◕‿◕。)ノ゚.:。+゚
^_^文章来源:微信公众号(边界骇客) ^_^
本文始发于微信公众号(边界骇客):Gopher协议
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论