CVE-2021-21247 Post-Auth Unsafe Deserialization on BasePage (AJAX)

Critical 9.6 Published Updated

Authenticated attackers can achieve remote code execution via unsafe deserialization of AJAX parameters in OneDev.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
None listed

What is CVE-2021-21247?

CVE-2021-21247 is a critical unsafe deserialization vulnerability in theonedev onedev, published on 15 Jan 2021. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

OneDev is an all-in-one devops platform. In OneDev before version 4.0.3, the application's BasePage registers an AJAX event listener (`AbstractPostAjaxBehavior`) in all pages other than the login page. This listener decodes and deserializes the `data` query parameter. We can access this listener by submitting a POST request to any page. This issue may lead to `post-auth RCE` This endpoint is subject to authentication and, therefore, requires a valid user to carry on the attack. This issue was addressed in 4.0.3 by encrypting serialization payload with secrets only known to server.

Weakness: CWE-502, CWE-74

Which versions are affected by CVE-2021-21247?

It affects 1 product.

Products include Onedev Project Onedev.

How do I fix CVE-2021-21247?

No fix has been published for CVE-2021-21247 yet. Limit exposure of the affected software until one is available.

Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.

Is CVE-2021-21247 being exploited?

There is no known exploitation of CVE-2021-21247 in the wild and no public exploit code.

Sources

Also known as GHSA-6pxf-75cf-vwjp.

Is CVE-2021-21247 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free