Mastodon to bezpłatny serwer sieci społecznej o otwartym kodzie źródłowym oparty na ActivityPub. W wersjach poprzedzających 4.3.19, 4.4.13, 4.5.6 Mastodon jest podatny na web cache poisoning poprzez `Rails.cache`. Gdy AUTHORIZED_FETCH jest włączony, punkty końcowe ActivityPub dla przypiętych postów i polecanych hashtagów zawierają zawartość zależną od konta, które podpisało żądanie HTTP, jednak ta zawartość jest przechowywana w wewnętrznej pamięci podręcznej i ponownie używana bez względu na podpisującego aktora. W rezultacie pusta odpowiedź wygenerowana dla zablokowanego konta może zostać zwrócona żądaniom od uzasadnionych aktorów niezablokowanych, lub odwrotnie, zawartość przeznaczona dla aktorów niezablokowanych może być zwrócona zablokowanym aktorom. Problem został naprawiony w wersjach 4.3.19, 4.4.13, 4.5.6.
▸ Pokaż oryginał (EN)
Mastodon is a free, open-source social network server based on ActivityPub. Prior to versions 4.3.19, 4.4.13, 4.5.6, Mastodon is vulnerable to web cache poisoning via `Rails.cache. When AUTHORIZED_FETCH is enabled, the ActivityPub endpoints for pinned posts and featured hashtags have contents that depend on the account that signed the HTTP request. However, these contents are stored in an internal cache and reused with no regards to the signing actor. As a result, an empty response generated for a blocked user account may be served to requests from legitimate non-blocked actors, or conversely, content intended for non-blocked actors may be returned to blocked actors. This issue has been patched in versions 4.3.19, 4.4.13, 4.5.6.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:LJoinmastodon Mastodon
APPJoinmastodon< 4.3.194.4.0 – 4.4.13 (bez)4.5.0 – 4.5.6 (bez)
Powiązane podatności
Mastodon: Podszywanie się pod zdalne konta poprzez brak walidacji origin
XSS w Mastodon poprzez spreparowane dane oEmbed w kartach podglądu
Mastodon: path traversal w przetwarzaniu mediów umożliwia RCE
Brak ograniczenia prób uwierzytelniania w Mastodon (przed 4.0.0)
Mastodon: nieprawidłowa kontrola dostępu przez brak kompaktowania JSON-LD