TRENDING
A mountain gorilla looks at the camera from green forest undergrowth
October 29, 2026
How to Compress Time-Series Metrics in Python With Gorilla Delta-of-Delta and XOR Encoding
A bronze-framed hourglass with white sand beside a small Ferris wheel ornament on a wooden table against a teal wall
October 29, 2026
NIST’s Final Post-Quantum Transition Report Puts Every Quantum-Vulnerable Public-Key Scheme on One 2030 and 2035 Clock, and Three Federal Documents Word the Deadline Three Ways
Six weathered stone columns of the Temple of Apollo at Delphi, Greece, standing on a stone platform above a valley of olive groves
October 29, 2026
Honeypots Recorded Probes Against Oracle E-Business Suite CVE-2026-101767 Seven Days After Its Patch, and the Finder’s Write-Up Is Dated Patch Day
Vintage silver stopwatch with a chain on a black background, its dial showing seconds from 5 to 60
October 29, 2026
How to Find a Slow Query in PostgreSQL 18 With pg_stat_statements, Read Its EXPLAIN ANALYZE Plan, and Fix It With the Right Index
A wooden Tower of Hanoi puzzle on a market table, with three pegs and stacked discs of different sizes
October 29, 2026
Two Labs’ Claimed Refutations of the Exponential Time Hypothesis Turn Verification Into a Statement-Reading Problem, and Their Lean Theorems Promise Only That a Constant Exists
29 Oct 2026
SXZ.io SXZ.io
  • Home
Search the Site
Popular Searches:
Technology Amazon AI
Recent Posts
A flock of snow geese in flight, seen as dark silhouettes against an orange and red sunset sky with layered clouds
How to Run Zero-Downtime Schema Migrations on PostgreSQL 18 and Block Unsafe ALTER TABLE Statements With a Python Lint Gate
October 28, 2026
An old green steel truss bridge resting on temporary supports beside a new arch bridge under completion on a river in Portland, Oregon
The Angular 2 Rewrite Turns a Migration Lesson Into a Security Bill: AngularJS Still Draws 533,480 Downloads a Week, and 10 Advisories Have No Open-Source Fix
October 28, 2026
Hundreds of yellow rubber ducks floating in a river enclosure during a duck race
WordPress 7.1.4 Closes an Unauthenticated Race in Its Own Update Routine, but 19 Older Branches Had No Backport Hours After Release
October 28, 2026
SXZ.io SXZ.io
  • Home

Categories

Articles 270 Posts
News 273 Posts
Learning Hub 243 Posts
Home/News/Gitea’s Critical Docker Auth Bypass Is Now Under Active Exploitation
News

Gitea’s Critical Docker Auth Bypass Is Now Under Active Exploitation

Sysdig says attackers began probing a critical Gitea Docker flaw that lets a single spoofed HTTP header impersonate any user, including admins, 13 days after the vulnerability's public disclosure.

July 7, 2026 4 Min Read
70

A critical authentication-bypass vulnerability in Gitea’s official Docker images is now being probed by real attackers, just weeks after a fix shipped.

Table Of Content

  • How a single header defeats Gitea’s login
  • Sysdig catches a scanner testing the door
  • What Gitea admins should do now
  • Why it matters
  • Sources and image credit

Cloud security firm Sysdig says it detected the first in-the-wild exploitation attempt against CVE-2026-20896, a critical-severity flaw (CVSS 9.8) in the self-hosted Git service Gitea, 13 days after the vulnerability’s public disclosure. The bug lets anyone who can reach a vulnerable container’s HTTP port directly impersonate any Gitea user (including admins) by sending a single forged HTTP header, with no password or token required.

How a single header defeats Gitea’s login

The flaw lives in Gitea’s Docker packaging, not its core authentication code. Gitea supports an optional “reverse-proxy authentication” mode for setups where a trusted proxy sits in front of Gitea and vouches for a user’s identity by attaching an X-WEBAUTH-USER header. Gitea is supposed to trust that header only when it arrives from a proxy listed in REVERSE_PROXY_TRUSTED_PROXIES, which the documented safe default restricts to loopback addresses (127.0.0.0/8,::1/128).

The official Docker images shipped a different default: a wildcard, REVERSE_PROXY_TRUSTED_PROXIES = *. Per the GitHub security advisory, that wildcard means any admin who turns on ENABLE_REVERSE_PROXY_AUTHENTICATION = true to put Gitea behind a proxy ends up trusting the X-WEBAUTH-USER header from any network source that can reach the container’s port directly, not just the intended proxy. Anyone who already knows or can guess a username, including default accounts like admin or gitea_admin, can be authenticated as that user with nothing more than the header. If the admin has also enabled auto-registration, the same primitive lets an attacker create new accounts under any username they choose.

The bug was reported by researcher Ali Mustafa (GitHub handle rz1027), credited in Gitea’s advisory and named directly in a statement to The Hacker News. Binary distributions and self-built Gitea deployments that follow the documented example configuration are not affected: the flaw is specific to the official Docker images.

Sysdig catches a scanner testing the door

Gitea patched the issue in version 1.26.3, released June 20, with 1.26.4 following a day later carrying the fix forward alongside unrelated bug fixes. The advisory went public June 21. According to The Hacker News, Sysdig’s Michael Clark, senior director of threat research, said the company’s sensors caught the first real-world probe 13 days later, traced to a ProtonVPN exit node (159.26.98[.]241). “So far, the activities have been related to initial investigation by the threat actor,” Clark said, adding that the attempt “has not so far progressed to any exploitation or attack progress,” in part because Sysdig caught it early.

Sysdig’s internet-wide scanning found roughly 6,200 Gitea instances reachable from the public internet; the firm has not said how many of those are still running unpatched Docker images with reverse-proxy authentication turned on. SecurityWeek notes that a successful attack can expose everything a compromised account’s repositories hold: source code, CI/CD configuration, deploy keys, and any secrets developers have committed by accident, such as API keys or database credentials.

What Gitea admins should do now

The fix is a version upgrade, not a config tweak layered on an old release: Gitea Docker deployments should move to 1.26.3 or later, which removes the wildcard default and makes reverse-proxy authentication opt-in and admin-configured rather than silently trusted. Administrators who can’t upgrade immediately should confirm whether ENABLE_REVERSE_PROXY_AUTHENTICATION is actually in use, and if so, restrict network access to the Gitea container’s HTTP port so only the authenticating proxy can reach it: the underlying problem is that the Docker image’s trusted-proxies allowlist wasn’t actually restricting anything.

Anyone who has been running an affected configuration should treat this as a possible compromise, not just a patch reminder: the standard response is to audit authentication logs for administrative logins or account creation that can’t be tied to a known, authorized admin, since a successful exploit leaves little other trace.

Gitea’s 1.26.3 release also closed at least seven other disclosed vulnerabilities in the same batch (including SSRF protection improvements for webhooks and migrations, a branch-write-permission escalation fix, and separate access-control fixes for cross-repository LFS object reuse and repository token scope on RSS/Atom feeds), reinforcing that the update is worth applying in full rather than patching around a single header check.

Why it matters

Gitea is popular precisely because it’s easy to self-host: a small team can stand up its own Git, issue tracking, and CI/CD platform in one Docker container instead of relying on a third-party SaaS. That convenience means its default configuration choices carry outsized weight: a packaging default that quietly ignored its own documented safe value turned a routine reverse-proxy setup into a network-wide skeleton key. The 13-day gap between disclosure and the first probe is also a reminder that “patch when convenient” isn’t a real option for critical, self-hosted developer infrastructure sitting on the open internet; automated scanning finds these windows quickly, whether or not an operator has gotten to the upgrade yet.

Sources and image credit

  • GitHub Security Advisory: GHSA-f75j-4cw6-rmx4 (CVE-2026-20896)
  • Gitea Blog: Gitea 1.26.3 and 1.26.4 are released
  • SecurityWeek: Critical Gitea Flaw Under Active Exploitation, Researchers Warn
  • The Hacker News: Threat Actors Probe Gitea Docker Flaw CVE-2026-20896 13 Days After Disclosure
  • Featured image: Greece padlocked fence by Jason Blackeye, CC0 1.0 Public Domain, via Wikimedia Commons.

Tags:

CVE-2026-20896DevOps SecurityDocker SecurityGiteaSysdig

Share

Close-up of a polished steel chain with sharp, connected links against a blue background, representing a verifiable software supply chain
Previous Post

How to Generate and Sign an SBOM for a Container Image With Syft and Cosign

Laptop screen showing a colorful analytics dashboard with charts and graphs
Next Post

Microsoft’s Flint Shows Why AI-Generated Charts Need a Semantic Compiler

No Comment! Be the first one.

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Latest
28 Oct
How to Run Zero-Downtime Schema Migrations on PostgreSQL 18 and Block Unsafe ALTER TABLE Statements With a Python Lint Gate
28 Oct
The Angular 2 Rewrite Turns a Migration Lesson Into a Security Bill: AngularJS Still Draws 533,480 Downloads a Week, and 10 Advisories Have No Open-Source Fix
Trending
October 28, 2026
How to Run Zero-Downtime Schema Migrations on PostgreSQL 18 and Block Unsafe ALTER TABLE Statements With a Python Lint Gate
October 28, 2026
The Angular 2 Rewrite Turns a Migration Lesson Into a Security Bill: AngularJS Still Draws 533,480 Downloads a Week, and 10 Advisories Have No Open-Source Fix
October 28, 2026
WordPress 7.1.4 Closes an Unauthenticated Race in Its Own Update Routine, but 19 Older Branches Had No Backport Hours After Release
October 28, 2026
How to Compress Time-Series Metrics in Python With Gorilla Delta-of-Delta and XOR Encoding
October 28, 2026
NIST’s Final Post-Quantum Transition Report Puts Every Quantum-Vulnerable Public-Key Scheme on One 2030 and 2035 Clock, and Three Federal Documents Word the Deadline Three Ways
October 28, 2026
Honeypots Recorded Probes Against Oracle E-Business Suite CVE-2026-101767 Seven Days After Its Patch, and the Finder’s Write-Up Is Dated Patch Day

Related Posts

Rows of server racks in a data center representing network infrastructure targeted by botnets
News

C0XMO Botnet Shows Why Old Router Firmware Still Matters

June 7, 2026
Close-up of a USB flash drive, representing physical data-theft risk in office security incidents
News

Fake IT Support Is Now Walking Through the Front Door

June 7, 2026
A phone security app on a smartphone resting on a laptop keyboard.
News

Everest Forms Pro Flaw Is Being Exploited to Create Rogue WordPress Admins

June 7, 2026
A phone secured by a padlock, illustrating AI data-leak containment and security controls.
News

OpenAI’s Lockdown Mode Is a Data-Leak Brake, Not a Prompt-Injection Cure

June 8, 2026
SXZ.io SXZ.io
  • [email protected]

Categories

Articles
Learning Hub
News

All Rights Reserved by SXZ.io ©2026