CVE-2021-37705 Improper Authorization and Origin Validation Error in OneFuzz
Authenticated users from any Azure AD tenant can access private data and execute code on Azure resources if OneFuzz is deployed with multi-tenant support enabled.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2021-37705?
CVE-2021-37705 is a critical missing authorization vulnerability in microsoft onefuzz, published on 13 Aug 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
OneFuzz is an open source self-hosted Fuzzing-As-A-Service platform. Starting with OneFuzz 2.12.0 or greater, an incomplete authorization check allows an authenticated user from any Azure Active Directory tenant to make authorized API calls to a vulnerable OneFuzz instance. To be vulnerable, a OneFuzz deployment must be both version 2.12.0 or greater and deployed with the non-default --multi_tenant_domain option. This can result in read/write access to private data such as software vulnerability and crash information, security testing tools and proprietary code and symbols. Via authorized API calls, this also enables tampering with existing data and unauthorized code execution on Azure compute resources. This issue is resolved starting in release 2.31.0, via the addition of application-level check of the bearer token's `issuer` against an administrator-configured allowlist. As a workaround users can restrict access to the tenant of a deployed OneFuzz instance < 2.31.0 by redeploying in the default configuration, which omits the `--multi_tenant_domain` option.
Which versions are affected by CVE-2021-37705?
3 open source packages ship an affected version, including onefuzz. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
onefuzz PyPI | From 2.12.0 | 2.31.0 |
onefuzz PyPI | From 2.12.0 | 2.31.0 |
onefuzz PyPI | From 2.12.0 | 2.31.0 |
Products include Microsoft Onefuzz.
How do I fix CVE-2021-37705?
Upgrade onefuzz to 2.31.0 or later.
Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.
Is CVE-2021-37705 being exploited?
There is no known exploitation of CVE-2021-37705 in the wild and no public exploit code.
Sources
Also known as GHSA-q5vh-6whw-x745, PYSEC-2021-344.