CVE-2020-28991 Improper Access Control in Gitea

Critical 9.8 Published Updated

Attackers can bypass git protocol restrictions by injecting newlines into URLs, potentially accessing internal network resources.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2020-28991?

CVE-2020-28991 is a critical server-side request forgery vulnerability in Gitea Gitea, published on 24 Nov 2020. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Gitea 0.9.99 through 1.12.x before 1.12.6 does not prevent a git protocol path that specifies a TCP port number and also contains newlines (with URL encoding) in ParseRemoteAddr in modules/auth/repo_form.go.

Which versions are affected by CVE-2020-28991?

3 open source packages ship an affected version, including github.com/go-gitea/gitea and gitea. It affects 1 product.

PackageAffectedFixed in
github.com/go-gitea/gitea GoFrom 0.9.991.12.6
github.com/go-gitea/gitea GoFrom 0.9.991.12.6
gitea BitnamiFrom 0.9.991.12.6

Products include Gitea Gitea.

How do I fix CVE-2020-28991?

Upgrade github.com/go-gitea/gitea to 1.12.6 or later.

Upgrade, and send outbound requests through an allow-list that blocks internal addresses. More about Server-side request forgery.

Is CVE-2020-28991 being exploited?

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

All Gitea Gitea vulnerabilities

Sources

Also known as BIT-gitea-2020-28991, GHSA-r7h7-chh4-5rvm.

Is CVE-2020-28991 in your software?

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

Check your SBOMs for free