W bibliotece github.com/satori/go.uuid wykryto podatność polegającą na używaniu kryptograficznie słabego generatora liczb pseudolosowych do tworzenia identyfikatorów UUID. Sprawia to, że generowane UUID są przewidywalne dla atakującego, co może prowadzić do poważnych naruszeń bezpieczeństwa w systemach opierających się na ich unikalności i nieprzewidywalności.
▸ Pokaż oryginał (EN)
A flaw was found in github.com/satori/go.uuid in versions from commit 0ef6afb2f6cdd6cdaeee3885a95099c63f18fc8c to d91630c8510268e75203009fe7daf2b8e1d60c45. Due to insecure randomness in the g.rand.Read function the generated UUIDs are predictable for an attacker.
Biblioteka go.uuid korzysta z funkcji g.rand.Read, która nie zapewnia kryptograficznie bezpiecznej losowości (CWE-338 — użycie słabego generatora liczb pseudolosowych w kontekście bezpieczeństwa). Atakujący, znając lub odgadując stan wewnętrzny generatora, może przewidzieć wartości UUID generowane przez podatną aplikację. Podatność dotyczy kodu między commitami 0ef6afb2f6cdd6cdaeee3885a95099c63f18fc8c a d91630c8510268e75203009fe7daf2b8e1d60c45 w repozytorium GitHub.
Atakujący może przewidywać generowane identyfikatory UUID, co w zależności od zastosowania może umożliwić nieautoryzowany dostęp do zasobów, obejście mechanizmów uwierzytelniania lub autoryzacji, a także naruszenie poufności i integralności danych.
Należy zaktualizować bibliotekę github.com/satori/go.uuid do wersji zawierającej poprawkę (po commicie d91630c8510268e75203009fe7daf2b8e1d60c45) lub rozważyć migrację do alternatywnej, aktywnie utrzymywanej biblioteki UUID dla Go. Należy zastosować patche dostępne u producenta zgodnie z referencjami.
Biblioteka github.com/satori/go.uuid — wersje oparte na commitach od 0ef6afb2f6cdd6cdaeee3885a95099c63f18fc8c do d91630c8510268e75203009fe7daf2b8e1d60c45
Podatność zgłoszona w Red Hat Bugzilla pod numerem 1954376. Pomimo oceny CVSS 9.8 (CRITICAL), realny wpływ jest silnie uzależniony od sposobu użycia UUID w konkretnej aplikacji — szczególnie narażone są systemy używające UUID jako tokenów sesji, tokenów resetowania hasła lub innych mechanizmów bezpieczeństwa.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HSatori Uuid
APPSatoriwszystkie wersje