ssrf漏洞内网渗透_渗透技巧之SSRF

SSRF——服务端请求伪造,上一篇,我谈到了CSRF客户端请求伪造,这个是我们通过攻击用户,引诱客户点击我们伪造好的表单,从而达到我们攻击的目的,是从客户端发起的,那么SSRF服务端请求伪造当然是通过我们的目标网站也就是我们的服务端而发起我们渗透攻击的目的。

再说一下,平常在做渗透测试工作的过程中哪些地方容易产生SSRF漏洞,可以看到大部分相关资料都会显示,容易产生SSRF的地方在社交分享、图片加载、邮件系统、数据库等。为什么这些地方会出现呢,社交分享可能会分享到其他网址对吧,如果我们替换其网址为我们的本地地址呢,会出现什么样得情况?同一个地址更换不同的端口又会有什么不同,加载图片请求的服务器可能和你所访问的网站不是同一个服务器,这样是不是能探测内网的同一局域网段的情况呢,邮件系统也是同一道理,这些都是探测SSRF漏洞的手段。

所以本质上就是因为你向其他地方请求的资源和你本身的网站资源不在同一个地方,因此,平常在做渗透测试过程中,只要参数带有URL的或者IP地址的就都有可能会产生SSRF漏洞,检查方法:改端口,探测哪些端口开启,换网址,局域网内不同的主机是否开启。这就和盲注的情况一样,存在和不存在会出现不同的情况。

接下来就让我们来看下Weblogic服务的SSRF漏洞是怎么体现的,通过这样的漏洞我们能获的什么样的信息。

本次复现的SSRF漏洞是Weblogic应用服务,版本号是10.3.6,漏洞编号为CVE-2014-4210,为了更好的让人理解,我将本次漏洞的展示与说明写的简洁明了,安装跳过,漏洞出现的页面位于 http://IP:7001/uddiexplorer/SearchPublicRegistries.jsp,这个是属于weblogic的一个组件,是不需要登录就能直接访问的网页,我们看下这个漏洞传输的数据包的展示,选择第一个Search PublicRegistries选项,我这里任意输入一个值text,点击Search按钮发送数据包。

a3ed7d2886a25af2733c633bfebc4aa8.png

这里我们知道请求并不是向某一网址发起请求,而是向本地发送一个test的表单数据,但这里我们可以看到表单数据其中的一个参数operator,它有一个网址值域名为http://www-3.ibm.com,这里是weblogic请求自带的一个参数,而这里就是产生SSRF漏洞的所在,和我们自己输入的参数值text却没有关系,我们只是为了发送这样一个请求才添加个test值。

为什么说在这里会产生SSRF漏洞呢,因为在这里我们通过变更这个URL的参数,根据响应包返回的数据获得服务器内部的相关信息。

这里我们既然开启了weblogic服务,那么,在没改默认端口的情况下,服务器的7001端口必然开启,为了方便,我直接将7001端口用来测试展示,发起请求,抓包将我们的operator参数后面的网址改为http://127.0.0.1:7001传给服务器,这里是要加上http协议的,此时我们可以看到页面响应的内容报出异常提示返回404错误码。

7ea9e44674db2a89989ee21549db03c6.png

我知道我自己的服务器上7002端口是关闭没有服务的,这里将我的operator参数更换为http://127.0.0.1:7002来发包,这个时候我们可以看到网页上面的内容显示和端口为7001的不一样,现在报的异常是不能链接本地7002端口,而不是7001这样的返回404错误码。

390f3725902aba7b3552536357c3afb6.png

也就是说,服务端口开启与未开启会给你返回两种不同的网页状态,通过这种不同的情况,我们能够探测该weblogic所在服务器哪些危险端口开启和未开启,这就和盲注判断数据的性质一样,通过这种朝向服务端自己的请求让我们能够了解内网信息的漏洞,我们将它归类为SSRF漏洞。

本次漏洞复现资源,微信公众号:渗透之师,回复005,另外附赠wooyun大佬-猪猪侠的ssrf渗透框架的ppt内容哦!下期内容XXE,敬请期待!

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

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

相关文章

引入故意缓存

几周前,我参加了ThoughtWorks 技术雷达研讨会。 我在ThoughtWorks工作了多年,想想是否有人知道这些人在软件开发方面的发展趋势。 在技​​巧上带有上升箭头的数字中,第17位被称为“周到缓存”。 和斯科特肖一起喝酒时,我问他是什…

(小议)面向对象

什么是面向对象?如果让我理解,只有一句话:它是一个与面向过程相对的概念,是一种进化或者升级。人们所设计的程序几乎都是线性思维,即一步一步往下执行。对于一个没有人机交互的简单程序来说,这是简单易行的…

int类型究竟占几个字节

最近在看深入理解计算机系统这本书,上面提到了在32位机器和64机器中int类型都占用4个字节。后来,查了The C Programming language这本书,里面有一句话是这样的:Each compiler is free to choose appropriate sizes for its own ha…

python fieldnames_csvreader.fieldnames在python中未被识别为csv reader对象的属性

我试图使用CSV模块在Python中提取CSV文件的标题.CSV文件非常扁平,看起来像:This, That, The Other1, 2, 3我正在做以下事情:>读入CSV文件并制作阅读器对象>将读者的迭代器推到下一行,强制它至少访问第一行一次(来自csv模块文档:“如果在…

Spring Insight – Web应用程序分析

您是否正在使用Spring Framework编写Web应用程序? 您是否曾经想过引擎盖下发生了什么? 为什么您的应用程序响应如此缓慢? 在您仍然等待应用程序响应的同时,为什么窗外的蜗牛如此之快地消失在远处? 您应该:)&#xff0c…

创建动态链接库时设置导出函数的方法

有两种方法1.使用模块定义文件, 2.在要导出的函数前加上 __declspec(dllexport) 我们用VS2008新建个DLL工程,工程名为“TestDLL” 把默认的源文件后缀 .CPP改为.C(C文件) int _stdcall MyFunction(int iVariant){return 0; } 1. 使用传统的模…

javascript的浏览器Bom详解,window、location、history对象

BOM(BrowserObjectModel)也叫浏览器对象模型,描述与浏览器进行交互的方法和接口。BOM由多个对象组成, 其中代表浏览器窗口的Window对象是BOM的顶层对象,其他对象都是该对象的子对象。 JavaScript由三部分组成:ECMAScript,BOM&…

python右斜杠_Python中的左斜杠、右斜杠(正斜杠和反斜杠)

首先,"/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,Unix和Web用正斜杠/,Windows用反斜杠,但是现在Windows(一)目录中的斜杠们python读文件需要输入的目录参…

重用生成的JAXB类

在本文中,我将演示如何利用– XJC扩展来重用以前从XML模式生成的类。 当其他XML架构导入XML架构并且您不想每次都生成相同的类时,这很有用。 导入的架构(Product.xsd) 以下XML模式代表有关产品的基本信息。 产品是此示例域中的常…

MySQL的Master/Slave群集安装和配置

本文介绍MySQL的Master/Slave群集安装和配置,版本号安装最新的稳定版GA 5.6.19。 为了支持有限HA。我们用Master/Slave读写简单孤立的集群。有限HA这是当Master不可用,数据不会丢失。但在Master写的,必须手工处理故障。假设要支持更高的可用性…

动态申请二维数组

以下是动态申请a[m][n]的源代码 代码一&#xff1a; /* 编译器&#xff1a;DEV C */ #include<stdio.h> #include<stdlib.h> int main() {int **a;int i,j,m,n;scanf("%d%d",&m,&n); a (int **)malloc(sizeof(int *)*m);for (i0;i<m; i){a[i…

判断线段和直线相交 POJ 3304

1 // 判断线段和直线相交 POJ 33042 // 思路&#xff1a;3 // 如果存在一条直线和所有线段相交&#xff0c;那么平移该直线一定可以经过线段上任意两个点&#xff0c;并且和所有线段相交。4 5 #include <cstdio>6 #include <cstring>7 #include <iostream>8 …

JavaOne正在重建动力

在JavaOne上度过了一个非常忙碌的一周&#xff0c;今年的活动有很多让人喜欢的地方。 有很多惊喜的公告&#xff0c;很多很好的内容/会议&#xff0c;并且在场地和组织上都有很多改进。 对于一直耐心等待我发表我所有演讲的人们&#xff0c;我为您的延迟表示歉意……给4个演讲一…

tensorflow http调用_《TensorFlow 内核剖析》笔记——系统架构

3 系统架构系统整体组成&#xff1a;Tensorflow的系统结构以C API为界&#xff0c;将整个系统分为前端和后端两个子系统&#xff1a;前端构造计算图后端执行计算图&#xff0c;可再细分为&#xff1a;运行时&#xff1a;提供本地模式和分布式模式计算层&#xff1a;由kernal函数…

SGU 187.Twist and whirl - want to cheat( splay )

维护一个支持翻转次数M的长度N的序列..最后输出序列.1<N<130000, 1<M<2000splay裸题...-------------------------------------------------------------#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int ma…

练习一万小时成天才

随着畅销书《异类》的流行&#xff0c;“练习一万小时成天才”这个口号现在是尽人皆知。也许仍然有不少人相信那些不世出的天才必有天生的神秘能力&#xff0c;但科学家通过大量的调查研究已经达成共识&#xff0c;那就是所有顶级高手都是练出来的。不但如此&#xff0c;最近几…

(转)数据流图

转自:http://jingyan.baidu.com/article/4f34706eefdb04e387b56deb.html 数据流图4种图元 数据流图的实例 转载于:https://www.cnblogs.com/wrencai/p/5852389.html

从CLI监视OpenJDK

目前&#xff0c;我大部分时间在Java虚拟机 &#xff08;JVM&#xff09;内或周围进行大量工作&#xff0c;大部分时间是在Linux上。 当事情变得不对劲并且我试图确定原因时&#xff0c;我接触了Java性能分析工具。 这些工具有两种形式&#xff0c;一种是精美的GUI&#xff08;…

python数据库优化_python | Mysql性能优化一

对mysql优化是一个综合性的技术&#xff0c;主要包括表的设计合理化(符合3NF)添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引]分表技术(水平分割、垂直分割)读写[写: update/delete/add]分离存储过程 [模块化编程&#xff0c;可以提高速度]对mysql配…

MySQL中文乱码问题

项目中用到MySQL数据库时中文出现乱码问题&#xff08;中文字符都变成了&#xff1f;&#xff09;解决&#xff1a; 1、统一项目与数据库的编码&#xff0c;项目中用的是UTF-8因此我的把数据库的编码统一成UTF-8 修改方式&#xff1a;修改 MySQL根目录中的 my.ini 文件替换d…