CVE-2026-118391
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
Luka w zabezpieczeniach elixir-ecto ecto dotycząca alokacji zasobów bez ograniczeń lub dławienia umożliwia nieuwierzytelnionemu zdalnemu atakującemu wyczerpanie pamięci w aplikacji i serwerze bazy danych poprzez wysyłanie żądań z odrębnymi kluczami JSON lub długościami list, gdzie aplikacja interpoluje je do ścieżki json_extract_path/2, pola[^klucz] lub splice/1. Ekto buforuje przygotowane zapytania na repozytorium w tabeli ETS bez limitu rozmiaru i bez eksmisji. Interpolowane elementy ścieżki JSON stają się częścią wyrażenia zapytania, a nie jego parametrów, a splice/1 rozszerza się do jednego elementu zastępczego na element, więc każdy odrębny klucz lub długość listy tworzy nowy wpis w pamięci podręcznej. W przypadku ecto_sql każdy wpis jest także nowo przygotowaną instrukcją dotyczącą połączenia z bazą danych, które go uruchamia. Żadna część tej pamięci nie jest zwalniana do czasu ponownego uruchomienia procesów.
Ten problem dotyczy ecto: od wersji 3.4.0 do wersji 3.14.3.
>_ Słabości (CWE)
>_ Referencje
- https://cna.erlef.org/cves/CVE-2026-118391.html
- https://ecto.hexdocs.pm/Ecto.Query.API.html#json_extract_path/2
- https://ecto.hexdocs.pm/Ecto.Query.API.html#splice/1
- https://github.com/elixir-ecto/ecto/commit/cb2f03964dac324a9771f84f5088e395326e6de8
- https://github.com/elixir-ecto/ecto/commit/d0e97d8a6e274c81c25fbf08087da8d8b9bae0ea
- https://github.com/elixir-ecto/ecto/commit/eb03f45b999e2bf67ffae92811233eb6e56dba55
- https://github.com/elixir-ecto/ecto/commit/eef014ad090d27d1a5b69c0e32a50eabd44ab3bb
- https://github.com/elixir-ecto/ecto/issues/1031
- https://github.com/elixir-ecto/ecto/issues/4470
- https://github.com/elixir-ecto/ecto/security/advisories/GHSA-cxjx-vmm2-qr8r
- https://osv.dev/vulnerability/EEF-CVE-2026-118391
Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.
This product uses the NVD API but is not endorsed or certified by the NVD.
Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.
CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.
NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org