SSRF漏洞

文章目录

漏洞介绍

SSRF中文名为服务端请求伪造。它允许攻击者通过篡改服务端发起的请求 ,向目标服务器发送伪造的网络请求。这种漏洞的严重性非常高,因为它允许攻击者绕过防火墙和访问控制机制,直接访问内部网络资源或执行未授权的操作。

如何判断存在SSRF漏洞

SSRF是由服务器发送请求的安全漏洞,所以我们可以通过抓包放包分析送达的请求是否由服务器送达的,从而判断是否存在SSRF漏洞。

SSRF常见协议

http/https

Http协议: 最常用的SSRF漏洞利用协议,作用为直接访问http资源。如: http://xxx.com/api/readFiles?url=http.//10.1.1.1/x

file

File协议:可利用此协议进行服务器文件读取

如:http://xxx.com/api/readFiles?url=file:///etc/passwd

dict

Dict协议:可用此协议进行端口开放探测(通常探测一个网段)

如:http://xxx.com/api/readFiles?url=dict//1000.1:22

gopher

Gopher协议是一种早期的互联网协议,尽管现在已经被HTTP协议所取代,但在SSRF漏洞利用中,它仍然具有独特的优势。Gopher协议支持发出GET、POST等HTTP请求,这使得攻击者可以通过构造符合Gopher协议的请求,绕过一些安全限制,实现对目标服务器的攻击。

(redis未授权写计划任务面试喜欢问)

如何用gopher协议构造get请求

1.构造http get型请求包

2.URL编码、替换回车换行符为%0d%0a

3.发送gopher协议

防御手段

1.限制请求的端口为http常用的端口,比如:80,443,8080,8090。

2.统一错误信息,避免用户可以根据错误信息来判断远端服务器的端口状态。

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

4.过滤返回信息,验证远程服务器对请求的响应是比较容易的方法。

可能会产生SSRF漏洞的函数(php)

1.file_get_contents

2.sockopen()

3.curl_exec()

...

可能会出现ssrf的场景/功能点

1.通过url地址进行王爷分享

2.通过url地址把原地址的网页转换格式

3.图片的加载与下载

4.目标网站或存活设的存活检测

  1. 远程资源调用功能

6.编辑器进行远程图片抓取,如:ueditor

7.PDF生成或者导出

...

常见绕过手段

1.@

一般用于http://www.xxx.com等域名不可更改,例如http://www.xxx.com@10.10.10.10,则实际上访问的是 10.10.10.10

2.+@

http://www.xxx.com/proxy?url=https:///10.10.10.10(403)

http://www.xxx.com/proxy?url=https:///10.10.10.10@www.xxx.com(200)

3./#/

一般用于.jpg等固定后缀不可更改

例如http://10.10.10.10:5001/#/abc.jpg

实际在浏览器访问的是 http://10.10.10.10:5001

4.302重定向

把一个302文件放在自己的vps上。有些网页设置了内网黑名单,当你请求url中包含内网地址就自动屏蔽,我们可以把302的跳转文件放在自己的vps主机上,当你发现有ssrf漏洞存在,可以直接请求你的vps上的302文件,然后再重定向到他的内网上,实现绕过。

5.dns重绑定(类似于条件竞争)

ssrf无回显如何利用?

利用dnslog来判断是否存在ssrf漏洞

autorepeater与ssrf挖掘

正则:
(https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()!@:%_\+.~#?&\/\/=]*)|https?%3(a|A)%2(f|F)%2(f|F)(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()!@:%_\+.~#?&\/\/=]*))

这段正则匹配url中请求的网页,可以用bp的autorepeater插件自动替换掉,然后来看响应体的情况确定是否存在ssrf漏洞。

相关推荐
学习溢出7 分钟前
【网络安全】逆向工程 练习示例
网络·安全·网络安全·渗透测试·逆向工程
孤独的履行者3 小时前
入门靶机:DC-1的渗透测试
数据库·python·网络安全
Blankspace学4 小时前
Wireshark软件下载安装及基础
网络·学习·测试工具·网络安全·wireshark
CVE-柠檬i8 小时前
Yakit靶场-高级前端加解密与验签实战-全关卡通关教程
网络安全
轨迹H20 小时前
kali设置中文输入法
linux·网络安全·渗透测试·kali
cr.sheeper20 小时前
Vulnhub靶场Apache解析漏洞
网络安全·apache
Autumn.h20 小时前
文件解析漏洞
web安全·网络安全·中间件
Mitch3111 天前
【漏洞复现】CVE-2023-37461 Arbitrary File Writing
web安全·网络安全·prometheus·metersphere·漏洞复现
CVE-柠檬i1 天前
渗透测试-前后端加密分析之RSA+AES
网络安全
TazmiDev1 天前
[极客大挑战 2019]BabySQL 1
服务器·数据库·安全·web安全·网络安全·密码学·安全威胁分析