ssrf详解(包含常见绕过和协议利用)

本文详细阐述了SSRF的概念,包括其形成原因、利用方式(如端口扫描、应用程序攻击等)、以及如何通过URL编码、IP转换等方式绕过限制。重点介绍了file、dict和Gopher等协议的SSRF利用实例。
摘要由CSDN通过智能技术生成

ssrf原理

SSRF的形成大多是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。从而被利用来达到访问内网的目的等

ssrf利用

我们可以通过ssrf达到以下目的:
1.对外网、服务器所在内网、本地进行端口扫描,获取一些服务的banner信息。
2.攻击运行在内网或本地的应用程序。
3.对内网Web应用进行指纹识别,识别企业内部的资产信息。
4.攻击内外网的Web应用,主要是使用HTTP GET请求就可以实现的攻击(比如struts2、SQli等)5.利用file协议读取本地文件等。

ssrf绕过


1.利用@嵌入URL
http://baidu.com@www.baidu.com/与http://www.baidu.com/请求时是相同的
2.利用#嵌入URL
http://www.baidu.com#127.0.0.1与http://www.baidu.com相同
3.使用URL编码字符干扰URL解析;
IP地址的进制转换,如:十进制转换为16进制
4..URL跳转绕过:http://www.hackersb.cn/redirect.php?url=http://192.168.0.1/
5.关于ssrf黑名单绕过:
	思路:对于黑名单绕过,我们只需要不出现黑名单中的词就可以了
于是我们可以通过url编码,ip进制转换,等价替换,各种各样的方法去尝试,看有没有黑名单遗漏的单词,
6.关于ssrf白名单绕过:
思路:包含特定字符,绕后通过截断,替换等达到目的
在拼接url时%00可以将语句截断,不执行后面的(php语法)

ssrf常见协议利用

1.file协议:
通过文件地址来达到任意文件读取,如:
File:///flag
2.dict协议:
通过bp抓包,爆破端口号,可以获取开放端口信息,如:
Dict://127.0.0.1:&80&
获取redis配置信息,如:
Dict://127.0.0.1:80/info
3.Gopher协议:
Gopher是一个可以信息查找的协议,格式为:
Gopher://<host>:<port>_<TCP数据流>
gopher的端口为70,
_:因为url后面的一个字符会被过滤所以多加一个任意字符
<TCP数据流>:可以是get和post请求,需要进行url全编码。
Get:包含get,host
Post:包含post,host,data
其中换行用%0d%0a隔开
结尾要加%0d%0a表示结束
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

&阿权&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值