W aplikacji Answer (platforma Q&A) w wersjach przed 1.0.4 istnieje podatność typu Stored Cross-site Scripting (XSS), która pozwala uwierzytelnionemu atakującemu na trwałe osadzenie złośliwego skryptu w bazie danych serwisu. Ze względu na wysoki wynik CVSS (9.0) i możliwość wpływu na poufność, integralność oraz dostępność, podatność jest oceniana jako krytyczna.
▸ Pokaż oryginał (EN)
Cross-site Scripting (XSS) - Stored in GitHub repository answerdev/answer prior to 1.0.4.
Atakujący z dostępem do konta użytkownika wprowadza złośliwy kod JavaScript do pola akceptującego dane wejściowe (np. treści pytania, odpowiedzi lub komentarza), które nie jest odpowiednio sanityzowane przed zapisem. Payload jest następnie przechowywany po stronie serwera i renderowany w przeglądarce każdego użytkownika, który wyświetli zainfekowaną stronę. Ponieważ skrypt wykonuje się w kontekście domeny aplikacji, może uzyskać dostęp do sesji i danych ofiary.
Atakujący może przejąć sesje innych użytkowników (w tym administratorów), wykraść poufne dane, modyfikować zawartość wyświetlaną ofiarom lub wykonywać działania w ich imieniu w aplikacji, co zagraża poufności, integralności i dostępności systemu.
Należy zaktualizować Answer do wersji 1.0.4 lub nowszej, w której problem został naprawiony zgodnie z commitem c3001de52af91f09c96e701facbce0b9fa0c98ad w repozytorium GitHub answerdev/answer.
Answer (answerdev/answer) w wersjach wcześniejszych niż 1.0.4
Podatność została zgłoszona za pośrednictwem platformy huntr.dev (bounty: 802ee76d-fe01-482b-a9a4-34699a7c9110). Wektor ataku wymaga interakcji użytkownika (UI:R) oraz uwierzytelnienia (PR:L), co obniża realne ryzyko w porównaniu z podatnościami niewymagającymi logowania.
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:HAnswer
APPAnswer< 1.0.4
Powiązane podatności
Pominięcie uwierzytelnienia przez atak capture-replay w Answer
Stored XSS w aplikacji Answer (przed wersją 1.0.4)
XSS w Answer — przejęcie sesji i eskalacja uprawnień
Nieprawidłowa kontrola dostępu w Answer umożliwiająca przejęcie konta
DOM-based XSS w Answer — eskalacja uprawnień i przejęcie sesji