Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2021-37580 PoC — Apache ShenYu 授权问题漏洞

Source
Associated Vulnerability
Title:Apache ShenYu 授权问题漏洞 (CVE-2021-37580)
Description:Apache ShenYu是美国阿帕奇(Apache)基金会的一个异步的,高性能的,跨语言的,响应式的 API 网关。 Apache ShenYu Admin 存在授权问题漏洞,该漏洞源于ShenyuAdminBootstrap 中 JWT 的错误使用允许攻击者绕过身份验证。
Description
CVE-2021-37580的poc
Readme
# CVE-2021-37580

>  CVE-2021-37580 的 poc

## 0x00 漏洞原理

漏洞原理:[# Apache ShenYu Admin bypass JWT authentication CVE-2021-37580](https://articles.zsxq.com/id_crk7w2w1wjwa.html)

## 0x01 单个url

```bash
Usage: python3 CVE-2021-37580.py -u url -n username.txt
```

`shenyu-admin-2.4.0`的,有漏洞的如下:

![2021-11-17-22-35-58-image.png](_v_images/2021-11-17-22-35-58-image.png)

`shenyu-admin-2.4.1`的,没有漏洞的如下:

![](_v_images/2021-11-17-22-36-45-image.png)

## 0x02 批量url检测

```bash
Usage: python3 CVE-2021-37580.py -f url.txt -n username.txt
```

![](_v_images/2021-11-17-23-42-06-image.png)

## 0x03 脚本报错

如果脚本运行报错:

```
AttributeError: module 'jwt' has no attribute 'encode'
```

执行如下命令:

```bash
python3 -m pip uninstall jwt
python3 -m pip uninstall pyjwt
python3 -m pip install pyjwt==1.5.3 --user
```

## 0x04 免责声明
本工具仅面向合法授权的企业安全建设行为,如您需要测试本工具的可用性,请自行搭建靶机环境。

在使用本工具进行检测时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。请勿对非授权目标进行扫描。

如您在使用本工具的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任。

在安装并使用本工具前,请您务必审慎阅读、充分理解各条款内容,限制、免责条款或者其他涉及您重大权益的条款可能会以加粗、加下划线等形式提示您重点注意。 除非您已充分阅读、完全理解并接受本协议所有条款,否则,请您不要安装并使用本工具。您的使用行为或者您以其他任何明示或者默示方式表示接受本协议的,即视为您已阅读并同意本协议的约束。
File Snapshot

[4.0K] /data/pocs/e3bcc4106536ac99cc64fb3f8b36204b6ff3a193 ├── [5.5K] CVE-2021-37580.py ├── [1.8K] README.md ├── [ 21] url.txt ├── [ 26] username.txt └── [4.0K] _v_images ├── [338K] 2021-11-17-22-35-58-image.png ├── [179K] 2021-11-17-22-36-45-image.png └── [900K] 2021-11-17-23-42-06-image.png 1 directory, 7 files
Shenlong Bot has cached this for you
Remarks
    1. It is advised to access via the original source first.
    2. If the original source is unavailable, please email f.jinxu#gmail.com for a local snapshot (replace # with @).
    3. Shenlong has snapshotted the POC code for you. To support long-term maintenance, please consider donating. Thank you for your support.