sanic-cors w wersji 2.2.0 i starszych zawiera nieprawidłowe wyrażenie regularne w funkcji try_match() w pliku sanic_cors/core.py, które używa re.match bez zakotyczenia końca. Pozwala to atakującemu obejść listy dozwolonych źródeł CORS, rejestrując domenę rozpoczynającą się od zaufanego ciągu pochodzenia, aby uzyskać nieuprawnionych dostęp do żądań cross-origin dla zasobów wymagających uwierzytelnienia.
▸ Pokaż oryginał (EN)
sanic-cors version 2.2.0 and prior contains an improper regular expression in the try_match() function in sanic_cors/core.py that uses re.match without end-anchoring. This allows an attacker to bypass CORS origin allowlists by registering a domain that begins with a trusted origin string, to gain unauthorized access to cross-origin requests for authenticated resources.
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N