Katalog CVE

CVE-2026-81930

ŚrednieCVSS 6.3
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.43%

Percentyl 36 - wyżej niż 36% wszystkich znanych CVE

Streszczenie

Dostawca Snowflake dla Apache Airflow nie walidował pól `account` i `region` połączenia przed wstawieniem ich do adresów URL żądań. Wartość `account` zawierająca znaki `/`, `?` lub `#` pozwalała atakującemu przejąć kontrolę nad hostem żądania, do którego wysyłany był token uwierzytelniający. Ta sama niezwalidowana wartość była używana również przy budowaniu adresu URL żądania tokenu OAuth oraz bazowego adresu Cortex Agent.

Ocena ryzyka

Użytkownik mogący edytować połączenie Snowflake, ale niemający dostępu do jego sekretów, może doprowadzić do przesłania ważnego tokenu (JWT, OAuth lub tokenu dostępu) do wybranego przez siebie hosta i użyć go przeciwko prawdziwemu endpointowi Snowflake. Nie wymaga to uprawnień do tworzenia Dagów — wystarczy edycja połączenia i oczekiwanie na użycie go przez istniejący Dag.

Rekomendacja

Zaktualizuj pakiet `apache-airflow-providers-snowflake` do wersji `6.18.0` lub nowszej, która odrzuca wartości `account` i `region` zawierające znaki inne niż litery, cyfry, `.`, `_` i `-`. Dodatkowo ogranicz możliwość edycji połączeń Snowflake wyłącznie do zaufanych użytkowników.

Powiązane podatności

Oryginalny opis (angielski, źródło NVD)

Apache Airflow's Snowflake provider did not validate the connection's `account` and `region` fields before interpolating them into request URLs. The SQL API endpoint is built as `https://{account}.snowflakecomputing.com/api/v2/statements`, so an `account` value containing `/`, `?` or `#` demotes the intended domain to a path, query or fragment and leaves the attacker in control of the request host. The provider sends that request with an `Authorization: Bearer` header carrying a JWT minted from the connection's private key, or the configured OAuth or programmatic access token. A user who can edit the Snowflake connection but cannot read its secrets — Airflow gives connection-configuration users write-only access to stored credentials, and a `private_key_file` lives on the worker rather than in the connection — can therefore cause a valid token for the account to be delivered to a host of their choosing and replay it against the genuine Snowflake endpoint. No Dag-authoring ability is required: the attacker edits the connection and waits for an existing Dag to use it. The same unvalidated value was also used to build the OAuth token-request URL and the Cortex Agent base URL. Affects deployments where Snowflake connections are editable by users who are not trusted with the connection's credentials. Users are advised to upgrade to `apache-airflow-providers-snowflake` `6.18.0` or later, which rejects `account` and `region` values containing anything other than letters, digits, `.`, `_` and `-` in every URL the provider builds from them.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS