【web安全】ssrf漏洞的原理与使用

前言

菜某对ssrf漏洞的总结。

ssrf的作用

主要作用:访问外界无法访问的内网进行信息收集。

1.进行端口扫描,资源访问

2.指纹信息识别,访问相应的默认文件

3.利用漏洞或者和payload进一步运行其他程序

4.get类型漏洞利用,传参数实现攻击

5.post型漏洞利用,用gopher协议进行参数构造

6.拒绝服务攻击(访问大文件占用资源)

ssrf的原理

当网站有一个功能,能去访问网络上的其他资源时,我们可以更改他要访问的url地址,使其指向我们想让他访问的位置。

服务器处于一个内外网交界的位置,我们无法访问他们的内网,所以我们就可以利用ssrf漏洞,以他作为跳板去访问正常访问不到的内网的内容。

ssrf常出现的场景

任何服务器访问其他资源的地方,都可能有。

常常出现在:

1.通过URL地址进行页面分享

2.转码服务,通过URL把原文件地址的页面进行页面转换格式

3.在线翻译,一键翻译相应URL地址中的英文

4.图片加载与下载,通过URL进行图片获取的。

5.未公开的api实现以及其他调用URL的功能

6.设备后台管理进行存活测试,(测试开启状态时会访问)

7.远程图片访问或者加载

8.远程头像加载

10.打包附件或者内容编辑导出

ssrf漏洞的判定

1.回显变化,根据页面的回显情况进行判断

2.让他访问自己的服务器,然后看日志他是否访问过

3.从时间判断,有些外国网站明显访问速度应该比国内网站慢,有过有这种情况则存在

4.    DNS 请求检测:自己搭建 DNS 服务器,或者利用网上的 DNSLog

服务(比如http://www.dnslog.cn/),生成一个域名(l08bgh.dnslog.cn)用于伪造请求,看漏洞服务器是否发起DNS 解析请求,若成功访问在 DNSLog.cn 上就会有解析日志。

ssrf常用的攻击协议

http(s),file,dict,gopher

--http协议:最常用的ssrf漏洞利用协议

  例:http://xxx.com?url=http://1.1.1.1/xxx

--file协议:可以读取服务器文件

  例:http://xxx.com?url=file://1.1.1.1/xxx

--dict协议:可以利用此协议进行端口开放测试

  例:http://xxx.com?url=dict://1.1.1.1/xxx

--gopher协议:支持发送get,post请求,可进行复杂漏洞利用。

但是支持的范围比较小

不同语言对于协议的支持情况

ssrf常用的绕过方法

开发人员常见的过滤手法:对域名和IP进行白名单或者黑名单的限制。

绕过方法

@字符:xxx.com@10.10.10.10访问10.10.10.10(对抗白名单)

后加xip.io:10.10.10.10.xip.io被解析成10.10.10.10

数字IP地址:127.0.0.1的十进制:2130706433

进制转换:127.0.0.1的八进制:0177.0.0.1。十六进制:0x7f.0.0.1

封闭式的字母数字:有些手机上打出来开的数字外面套着圈的也能被识别

DNS重绑定:使用此方法可以实现域名解析为内网IP

协议限制绕过:禁用了部分协议之后可以换用其他协议。

[::]绕过localhost:http://[::]:80/

ssrf案例

均在本地搭建简易漏洞

案例一

端口扫描敏感信息

因为mysql的端口在3306,当我们访问3306时得到了mysql的版本

案例2

利用get形式的其他漏洞

我同时装了xss-labs靶场,用这个端口可以去请求xss的第一关实现xss利用。

当然这个是对本机进行的,也可以对内网的其他机器进行。

(实战中通常是用内网中一些get型的软件漏洞进行攻击)

输入的内容

http://127.0.0.1/xss/level1.php?name=test<script>alert(1)</script>

案例三

查看文件

在对应的目录下,还有一个lookme的文件,可以用这个读取。

这里是看的本机的,如果把IP换成内网的就可以访问内网的了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/190856.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用CHAT 写一份销售人员激励方案

问CHAT &#xff1a;写一份销售人员早会激励方案 CHAT回复&#xff1a; 标题&#xff1a;鼓舞斗志&#xff0c;迎接新的一天 -- 销售人员早会激励方案 一、会议的氛围设定&#xff1a; 深呼吸&#xff0c;准备开始一天的事业&#xff1a;清晨的阳光&#xff0c;温暖而明亮&…

Nat. Rev. Chem. | 一份关于用机器学习研究化学问题的评估指导

今天为大家介绍的是来自Tiago Rodrigues团队的一篇论文。机器学习&#xff08;ML&#xff09;有望解决化学领域的重大挑战。尽管ML工作流程的适用性极广&#xff0c;但人们通常发现评估研究设计多种多样。目前评估技术和指标的异质性导致难以&#xff08;或不可能&#xff09;比…

Android BT HCI分析简介

对于蓝牙开发者来说&#xff0c;通过HCI log可以帮助我们更好地分析问题&#xff0c;理解蓝牙协议&#xff0c;就好像网络开发一定要会使用Wireshark分析网络协议一样。 本篇主要介绍HCI log的作用、如何抓取一份HCI log&#xff0c;并结合一个实际的例子来说明如何分析HCI log…

亚马逊云科技 re:Invent 2023:科技前沿风向标,探索未来云计算之窗

文章目录 一、前言二、什么是亚马逊云科技 re:Invent&#xff1f;三、亚马逊云科技 re:Invent 2023 将于何时何地举行四、亚马逊云科技 re:Invent 2023 有什么内容&#xff1f;4.1 亚马逊云科技 re:Invent 2023 主题演讲4.2 亚马逊云科技行业专家探实战 五、更多亚马逊云科技活…

单片机----汇编语言入门知识点

目录 汇编语句的格式 汇编语句的两个基本语句 子程序的调用 查表程序设计 1.x和y均为单字节数的查表程序设计 2.x为单字节数y为双字节数的查表程序设计 3.x和y均为双字节数的查表程序设计 分支转移程序设计 1.单分支选择结构 2.多分支选择结构 循环程序设计 (1) 计…

华为1+x网络系统建设与运维(中级)-练习题2

一.设备命令 LSW1 [Huawei]sys LSW1 同理可得&#xff0c;给所有设备改名 二.VLAN LSW1 [LSW1]vlan ba 10 20 [LSW1]int g0/0/1 [LSW1-GigabitEthernet0/0/1]port link-type trunk [LSW1-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20 [LSW1-GigabitEthernet0/0/1]in…

根目录/ 空间不够,扩容,导致web页面无法加载问题

现象就是&#xff1a;搭建的web页面无反应&#xff0c;也没报错&#xff0c;怀疑是内存空间不够导致的。/ 扩容步骤如下&#xff1a; 虚拟机为关机状态添加虚拟磁盘 #查看磁盘&#xff0c;并创建新分区 fdisk -l fdisk /dev/sdb p       查看已分区数量&#xff08;我看…

SQL Server 数据库,为products表添加数据

在插入数据的时候&#xff0c;需要注意以下事项。 > 每次插入一整行数据&#xff0c;不可能只插入半行或几列数据。 > 数据值的数目必须与列数相同&#xff0c;每个数据值的数据类型、精度和小数位数也必须与相应的 列匹配。 > INSERT语句不能为标识列指定值&#…

触控板绘画工具Inklet mac功能介绍

Inklet mac是一款触控板绘画工具&#xff0c;把你的触控板变成画画的板子&#xff0c;意思是&#xff0c;你点在触控板的哪里&#xff0c;鼠标就会出现载相应的地方。例如&#xff0c;但你把手指移动到触控盘左下角&#xff0c;那么鼠标也会出现在左下角&#xff0c;对于用户而…

虽有局限性,但在Windows 11上运行Android应用程序是一个不错的新功能

在Windows 11上,Android的Windows子系统(WSA)是一个集成,允许你在笔记本电脑或台式机上与Windows应用程序一起运行Android应用程序,在本指南中,我将向你展示入门步骤。官方规定,你只能从亚马逊应用商店安装应用程序,但也可以使用安卓调试桥(ADB)工具侧载安卓应用程序…

CAPL语言 自动化测试

CAPL语言 自动化测试 CAPL&#xff08;CAN Access Programming Language&#xff09;是一种专为CAN&#xff08;Controller Area Network&#xff09;网络开发的编程语言。这种语言主要用于汽车行业&#xff0c;尤其是在自动化测试和网络通信方面。以下是关于其在自动化测试中…

VSCode主题自定义

记录vscode主题配置 {"editor.minimap.enabled": true,"files.autoSave": "afterDelay","security.workspace.trust.untrustedFiles": "open","markdown-preview-enhanced.previewTheme": "atom-light.css&…

SQL-分页查询offset的用法

今天在做一道关于查询一张表中第二高工资的问题时发现没有思路&#xff0c;经过一番搜索发现需要用到offset偏移量来解决这个问题。 OFFSET关键字用于指定从结果集的哪一行开始返回数据。通常&#xff0c;它与LIMIT一起使用&#xff0c;以实现分页效果。其语法如下&#xff1a…

【mysql】mysgld.log文件太大怎么办

我们有一台测试服务器。跑着一个msyq&#xff0c;发现没有空间了。差看日志文件占用了很多。 怎么破 使用下面命令 echo "" >mysqld.log 执行命令后

Spring Boot统一异常处理 Spring拦截器

小编在前文中向大家描述了Spring AOP的相关内容&#xff1a;Spring AOP-CSDN博客感兴趣的各位老铁可查看一下&#xff01;&#xff01; 那么&#xff0c;我们本文主要是代理搭建来实现一个Spring Boot统一功能处理模块了&#xff0c;当然&#xff0c;这个也是Spring AOP的实战环…

Vue3获取阴历/农历日期

安装插件 pnpm add chinese-lunar-calendar引入阳历/阴历切换函数 import {getLunar} from chinese-lunar-calendarexport function lunarDate(pDate){const year pDate.getFullYear()const month pDate.getMonth() 1const day pDate.getDate()const result getLunar(yea…

以热爱的态度对待生活,就是最自己的温柔

粉色系拼接款羽绒服 90白鸭绒&#xff0b;连帽立领设计 防风又保暖&#xff0c;柔软蓬松舒适感十足 衣服上加了时尚的字母印花元素 袖口做了魔术贴设计 下摆也做了可调节抽绳 防风保暖五部做到实处哦 宽松版型&#xff0c;很耐穿保暖性又很强 简单大方&#xff0c;搭配…

隐形内嵌!触想智能发布全新B款内嵌式工控一体机及内嵌式工业显示器

近日&#xff0c;触想智能发布全新B款内嵌式工控系列TPC-19.该系列可支持显示器和一体机等多种品类、多级配置的灵活选购。标志性的2.5mm矮阶窄边面板设计&#xff0c;适配隐形内嵌式安装&#xff0c;专为机柜类设备应用打造&#xff0c;以高契合的物理结构&#xff0c;带动稳定…

mysql在linux环境下安装(rpm)以及初始化后的登录配置

注&#xff1a;该安装步骤转载于CSDN,下方配置为原创 按照图片安装并初始化完成MySQL等操作后进行&#xff1b; 安装对于rpm包集合 1-查看安装情况&#xff08;有4个路径&#xff09; whereis mysql 2-查看服务状态 systemctl status mysql 3-初始化数据库 mysqld --initial…

企业真题(数组\面向对象-基础)

二、企业真题 1. 数组有没有length()这个方法? String有没有length()这个方法&#xff1f;&#xff08;*蓝&#xff09; 数组没有length()&#xff0c;是length属性。 String有length() 2. 有数组int[] arr&#xff0c;用Java代码将数组元素顺序颠倒&#xff08;闪*购&…