π¨ CVE-2026-59244
Apache Airflow's secrets masker did not mask `var.json` Variable values whose value is a dict in the Rendered Templates UI β the dict value failed an `isinstance(str)` guard β so a secret stored as a JSON Variable and referenced in a template via `var.json` was displayed in cleartext to any user with access to that task's Rendered Templates view. Users are advised to upgrade to apache-airflow 3.3.1 or later, which masks nested Variable values regardless of type.
π@cveNotify
Apache Airflow's secrets masker did not mask `var.json` Variable values whose value is a dict in the Rendered Templates UI β the dict value failed an `isinstance(str)` guard β so a secret stored as a JSON Variable and referenced in a template via `var.json` was displayed in cleartext to any user with access to that task's Rendered Templates view. Users are advised to upgrade to apache-airflow 3.3.1 or later, which masks nested Variable values regardless of type.
π@cveNotify
GitHub
Fix secrets not masked in Rendered Templates view with KubernetesPodOperator by juan-pablo-guereca Β· Pull Request #68975 Β· apache/airflow
Regression fix, restores Airflow 2 behavior, adds nothing new.
When var.json is used in a Jinja template (e.g. to pass secrets as env vars to a KubernetesPodOperator), _get_variable deserialised th...
When var.json is used in a Jinja template (e.g. to pass secrets as env vars to a KubernetesPodOperator), _get_variable deserialised th...
π¨ CVE-2026-65017
Apache Airflow's Config API did not mask team-scoped sensitive configuration values in multi-team deployments. When an administrator has enabled multi-team mode and exposed the Config API, an authenticated Viewer holding only configuration-read access β with no prior access to the secret β could read a team-scoped Celery broker URL, including its embedded credentials, in cleartext, while the equivalent global option was correctly masked. The secrets masker matched only base section and option names and did not normalize team-prefixed sections before the sensitivity check (CWE-200). This is a distinct masker bypass from CVE-2026-48828 and CVE-2026-48892: deployments that upgraded to apache-airflow 3.3.0 to address those issues remain affected by this team-scoped variant. Users are advised to upgrade to apache-airflow 3.3.1 or later, which normalizes team-scoped sections before masking.
π@cveNotify
Apache Airflow's Config API did not mask team-scoped sensitive configuration values in multi-team deployments. When an administrator has enabled multi-team mode and exposed the Config API, an authenticated Viewer holding only configuration-read access β with no prior access to the secret β could read a team-scoped Celery broker URL, including its embedded credentials, in cleartext, while the equivalent global option was correctly masked. The secrets masker matched only base section and option names and did not normalize team-prefixed sections before the sensitivity check (CWE-200). This is a distinct masker bypass from CVE-2026-48828 and CVE-2026-48892: deployments that upgraded to apache-airflow 3.3.0 to address those issues remain affected by this team-scoped variant. Users are advised to upgrade to apache-airflow 3.3.1 or later, which normalizes team-scoped sections before masking.
π@cveNotify
π¨ CVE-2026-68076
Apache Airflow's environment-variable secrets backend resolved a team-scoped Connection or Variable from the wrong team's scope. The guard meant to prevent this only ran when no team scope was supplied, and its pattern could not match a team name containing an underscore, which team names are allowed to contain. When the guard did not apply, the lookup fell through to an unconditional global read that resolved the stored `AIRFLOW_CONN__<TEAM>___<ID>` variable regardless of which team asked. In multi-team mode an authenticated user of one team could therefore have `POST /api/v2/connections/test` resolve another team's Connection and authenticate outward with that team's credentials; the endpoint uses the credentials rather than returning them. Exploitation requires `[core] multi_team` enabled, `[core] test_connection` set to `Enabled` (it ships `Disabled`), team-scoped secrets provisioned as environment variables in the API-server process, and knowledge of the encoded identifier. Redirecting the test at an attacker-controlled host is separately blocked. Users are advised to upgrade to apache-airflow 3.3.1 or later.
π@cveNotify
Apache Airflow's environment-variable secrets backend resolved a team-scoped Connection or Variable from the wrong team's scope. The guard meant to prevent this only ran when no team scope was supplied, and its pattern could not match a team name containing an underscore, which team names are allowed to contain. When the guard did not apply, the lookup fell through to an unconditional global read that resolved the stored `AIRFLOW_CONN__<TEAM>___<ID>` variable regardless of which team asked. In multi-team mode an authenticated user of one team could therefore have `POST /api/v2/connections/test` resolve another team's Connection and authenticate outward with that team's credentials; the endpoint uses the credentials rather than returning them. Exploitation requires `[core] multi_team` enabled, `[core] test_connection` set to `Enabled` (it ships `Disabled`), team-scoped secrets provisioned as environment variables in the API-server process, and knowledge of the encoded identifier. Redirecting the test at an attacker-controlled host is separately blocked. Users are advised to upgrade to apache-airflow 3.3.1 or later.
π@cveNotify
GitHub
Only resolve a team namespaced environment secret for its own team by potiuk Β· Pull Request #70736 Β· apache/airflow
A team specific Connection or Variable lives in the _<TEAM_NAME>___<SECRET_ID>
namespace of the environment. An id that already spells such a namespace out
therefore rea...
namespace of the environment. An id that already spells such a namespace out
therefore rea...
π¨ CVE-2026-13051
Form::Processor::Field::HtmlArea versions from 0.06 through 1.162360 for Perl allow attacker selected method dispatch and resource exhaustion via an HTML::Tidy diagnostic that validate passes to add_error as a Locale::Maketext template.
validate runs HTML::Tidy over the submitted markup and passes each resulting message to add_error as its first argument, which add_error hands to the language handle as the Locale::Maketext message key. The default handle's lexicon sets `_AUTO`, so a message that is not a lexicon entry is compiled as a bracket notation template instead of being looked up. Tidy diagnostics quote the offending attribute name or value, so a bracket group in the submitted markup reaches the template position, where the first token of the group names a method called on the language handle and the remaining tokens are its arguments. A group such as `[0]` makes the compile croak, and neither the field nor the handle catches it, so the exception leaves validate. `[sprintf,%2000000000d,7]` reaches CORE::sprintf with an attacker chosen field width.
One submission of crafted markup to an HtmlArea field throws an unhandled exception out of form validation or allocates an arbitrary amount of memory, and an application whose language handle subclass defines side effecting public methods makes those callable with attacker chosen arguments. The other field types pass fixed templates with the submitted value in an argument slot, where it stays inert, and are unaffected.
π@cveNotify
Form::Processor::Field::HtmlArea versions from 0.06 through 1.162360 for Perl allow attacker selected method dispatch and resource exhaustion via an HTML::Tidy diagnostic that validate passes to add_error as a Locale::Maketext template.
validate runs HTML::Tidy over the submitted markup and passes each resulting message to add_error as its first argument, which add_error hands to the language handle as the Locale::Maketext message key. The default handle's lexicon sets `_AUTO`, so a message that is not a lexicon entry is compiled as a bracket notation template instead of being looked up. Tidy diagnostics quote the offending attribute name or value, so a bracket group in the submitted markup reaches the template position, where the first token of the group names a method called on the language handle and the remaining tokens are its arguments. A group such as `[0]` makes the compile croak, and neither the field nor the handle catches it, so the exception leaves validate. `[sprintf,%2000000000d,7]` reaches CORE::sprintf with an attacker chosen field width.
One submission of crafted markup to an HtmlArea field throws an unhandled exception out of form validation or allocates an arbitrary amount of memory, and an application whose language handle subclass defines side effecting public methods makes those callable with attacker chosen arguments. The other field types pass fixed templates with the submitted value in an argument slot, where it stays inert, and are unaffected.
π@cveNotify
π¨ CVE-2026-23603
Blind SSRF in OAuth2 avatar synchronization via unvalidated OIDC picture claim
π@cveNotify
Blind SSRF in OAuth2 avatar synchronization via unvalidated OIDC picture claim
π@cveNotify
π¨ CVE-2026-24059
The GET /api/v1/user/actions/runners/registration-token endpoint (and its owner- and repository-level equivalents) creates a new runner registration token if none exists, yet the API scope middleware classifies it as read-only because it is a GET request. A holder of a leaked read:user-scoped token can therefore mint a registration token and register a malicious Actions runner that executes workflow jobs with access to repository secrets and source code.
π@cveNotify
The GET /api/v1/user/actions/runners/registration-token endpoint (and its owner- and repository-level equivalents) creates a new runner registration token if none exists, yet the API scope middleware classifies it as read-only because it is a GET request. A holder of a leaked read:user-scoped token can therefore mint a registration token and register a malicious Actions runner that executes workflow jobs with access to repository secrets and source code.
π@cveNotify
Gitea Blog
Gitea 1.25.5 is released
We're excited to announce the release of Gitea 1.25.5 We strongly recommend all users upgrade to this version, as it includes important security fixes, numerous bug fixes, and overall stability improvements. CVE 2026 25779: Prevent redirect bypasses via backslashβ¦
π¨ CVE-2026-54481
Internal API HTTP client hardcodes InsecureSkipVerify:true with no config override (CWE-295)
π@cveNotify
Internal API HTTP client hardcodes InsecureSkipVerify:true with no config override (CWE-295)
π@cveNotify
π¨ CVE-2026-55982
OIDC userinfo Endpoint Returns Identity Claims Without Enforcing API Token Scopes
π@cveNotify
OIDC userinfo Endpoint Returns Identity Claims Without Enforcing API Token Scopes
π@cveNotify
π¨ CVE-2026-55984
Null Pointer Dereference in AddTime API Causes Authenticated Denial of Service
π@cveNotify
Null Pointer Dereference in AddTime API Causes Authenticated Denial of Service
π@cveNotify
π¨ CVE-2026-57886
Cross-repository issue/comment attachment re-linking can expose private attachment content
π@cveNotify
Cross-repository issue/comment attachment re-linking can expose private attachment content
π@cveNotify
π¨ CVE-2026-57894
Repository Migration Follows Git HTTP Redirects After URL Allow/Block Validation, Enabling Internal Git Repository Exfiltration
π@cveNotify
Repository Migration Follows Git HTTP Redirects After URL Allow/Block Validation, Enabling Internal Git Repository Exfiltration
π@cveNotify
π¨ CVE-2026-58417
REST API exposes organization membership of private organizations to public
π@cveNotify
REST API exposes organization membership of private organizations to public
π@cveNotify
π¨ CVE-2026-58425
OAuth token introspection returns metadata of tokens issued to other clients (RFC 7662 section 4 violation)
π@cveNotify
OAuth token introspection returns metadata of tokens issued to other clients (RFC 7662 section 4 violation)
π@cveNotify
π¨ CVE-2026-58427
Private org member list leaked via /members API endpoint β incomplete fix for PR #38145
π@cveNotify
Private org member list leaked via /members API endpoint β incomplete fix for PR #38145
π@cveNotify
π¨ CVE-2026-58428
Release attachment extension allowlist bypass via web release edit form (variant of CVE-2025-68939)
π@cveNotify
Release attachment extension allowlist bypass via web release edit form (variant of CVE-2025-68939)
π@cveNotify
π¨ CVE-2026-58429
Public-Only Personal access tokens scope bypass in Organization and Permission Endpoints
π@cveNotify
Public-Only Personal access tokens scope bypass in Organization and Permission Endpoints
π@cveNotify
π¨ CVE-2026-58431
Public-only API token restriction is not enforced on team API routes
π@cveNotify
Public-only API token restriction is not enforced on team API routes
π@cveNotify
π¨ CVE-2026-58434
Private Repository Metadata Remains Accessible After Access Revocation
π@cveNotify
Private Repository Metadata Remains Accessible After Access Revocation
π@cveNotify