ssrf之gopher协议的使用和配置,以及需要注意的细节

gopher协议

目录

gopher协议

(1)安装一个cn

(2)使用Gopher协议发送一个请求,环境为:nc起一个监听,curl发送gopher请求

(3)使用curl发送http请求,命令为

(4)使用gopher输出

(5)get请求

(6)post请求

需要注意的几个细节:


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

gopher的默认端口是70

如果发起post请求,回车换行需要使用%0d%0a,如果多个参数,参数之间的&也需要进行URL编码

(1)安装一个cn

yum install -y nc

(2)使用Gopher协议发送一个请求,环境为:nc起一个监听,curl发送gopher请求

nc启动监听,监听9527端口:

nc -lp 9527

(3)使用curl发送http请求,命令为

curl gopher://127.0.0.1:9527/abcd

输出结果为bcd

当修改为curl gopher://127.0.0.1:9527/_abcd时

输出结果为abcd

所以在执行时第一个字符会被抵消掉

(4)使用gopher输出

创建一个123.txt并输入代码为123123

在另一个终端使用gopher进行shuchu

curl http://127.0.0.1/123.txt

这里需要注意当出现403报错时需要输入 setenforce 0可以暂时得到root权限

如果说要长期得到则需要在vim /etc/selinux/config 里面将enforcing改为disabled

(5)get请求

创建一个get请求的php代码如下

<?php

echo "hello ".$_GET['name'];

?>

将如下代码进行url编码

GET /ssrf/get.php?name=HSJ HTTP/1.1

Host: 127.0.0.1

编码后的结果为

GET%20%2Fget.php%3Fname%3Droot%20HTTP%2F1.1%0d%0aHost%3A%20127.0.0.1%0d%0a%0d%0a

用gopher去执行

curl gopher://127.0.0.1:80/_GET%20%2Fget.php%3Fname%3Droot%20HTTP%2F1.1%0d%0a

Host%3A%20127.0.0.1%0d%0a%0d%0a

结果为

(6)post请求

创建一个post请求的php代码如下

<?php

echo "hello ".$_POST['name'];

?>

将如下代码进行url编码

POST /post.php HTTP/1.1

host:127.0.0.1

Content-Type:application/x-www-form-urlencoded

Content-Length:8

name=HSJ

编码后的结果为

POST%20%2Fpost.php%20HTTP%2F1.1%0d%0ahost%3A127.0.0.1%0d%0aContent-Type%3Aapplication%2Fx-www-form-urlencoded%0d%0aContent-Length%3A8%0d%0a%0d%0aname%3DHSJ

用gopher去执行

curl gopher://127.0.0.1:80/_POST%20%2Fpost.php%20HTTP%2F1.1%0d%0ahost%3A127.0.0.1%0d%0aContent-Type%3Aapplication%2Fx-www-form-urlencoded%0d%0aContent-Length%3A8%0d%0a%0d%0aname%3DHSJ

结果为

需要注意的几个细节:

1、问号(?)需要转码为URL编码,也就是%3f

2、回车换行要变为%0d%0a,但如果直接用工具转,可能只会有%0a 3、在HTTP包的最后要

加%0d%0a,代表消息结束(具体可研究HTTP包结束)

相关推荐
witkey_ak98965 小时前
网安面试题收集(1)
网络安全
网安INF1 天前
【论文阅读】-《SparseFool: a few pixels make a big difference》
论文阅读·人工智能·深度学习·网络安全·黑盒攻击
介一安全1 天前
【Web安全】转义字符注入?转义也会失效的SQL注入
web安全·网络安全·安全性测试·sql注入
网安INF1 天前
【论文阅读】-《Sparse Adversarial Attack via Perturbation Factorization》
论文阅读·人工智能·计算机视觉·网络安全·黑盒攻击
lingggggaaaa1 天前
小迪安全v2023学习笔记(九十七天)—— 云原生篇&Kubernetes&K8s安全&API&Kubelet未授权访问&容器执行
java·笔记·学习·安全·网络安全·云原生·kubernetes
余防1 天前
代码审计
安全·web安全·网络安全
Whoami!1 天前
4-8〔O҉S҉C҉P҉ ◈ 研记〕❘ WEB应用攻击▸命令注入漏洞
网络安全·信息安全·oscp·命令注入攻击
盛满暮色 风止何安1 天前
网络安全设备 防火墙
服务器·网络·网络协议·计算机网络·安全·web安全·网络安全
合作小小程序员小小店2 天前
Web渗透之一句话木马
web安全·网络安全·安全威胁分析·安全架构·安全性测试
源文雨2 天前
MacOS 下 Warp ping 局域网设备报错 ping: sendto: No route to host 的解决方法
运维·网络协议·安全·macos·网络安全·ping