reklama

Krytyczna luka w popularnym rozszerzeniu do sprawdzania pisowni

Strona główna Aktualności

O autorze

Na dziobie okrętu. Stawia znaczące nad znaczonym, lubi czapki z daszkiem, teorię gier, tłumaczenia maszynowe i karabiny maszynowe.

Rozszerzenie Grammarly raczej nie trzeba nikomu przedstawiać. Jest to jedno z najpopularniejszych narzędzi do sprawdzania poprawności pisowni, skuteczne i nieocenione dla użytkowników, którzy często piszą po angielsku. Grammarly ma na całym świecie ponad 22 mln użytkowników na samym Chrome. Niestety, narażało ich na spore niebezpieczeństwo.

W ramach Google Project Zero upubliczniona została krytyczna luka w rozszerzeniu dla Chrome'a i Firefoksa. Za pomocą zaledwie czterech linijek JavaScriptu możliwe jest uzyskanie dostępu do dokumentów, historii, logów i innego typu wrażliwych danych przez każdą witrynę, jaką odwiedził użytkownik. Można powiedzieć, że podatność Grammarly zadziałała w drugą stronę do oczekiwanych rezultatów – zamiast analizować treść wprowadzaną przez użytkownika na stronach, pozwalała stronom uzyskać dostęp do informacji o użytkowniku. Oto przykładowy skrypt, który zwracał token:

> document.body.contentEditable=true
// Aktywowanie grammarly po przejściu do formularza
> document.querySelector("[data-action=editor]").click()
// Kliknięcie przycisku rozszerzenia
> document.querySelector("iframe.gr_-ifr").contentWindow.addEventListener("message", function (a) { console.log(a.data.user.email, a.data.user.grauth); })
// Autoryzacja przez token i maila
> window.postMessage({grammarly: 1, action: "user" }, "*")
// Żądanie danych

Ze szczegółami metody przejęcia tokena można przeczytać na stronach Google Project Zero. W praktyce przejęcie tokena pozwala na uzyskanie dostępu do wszystkich danych, jakie użytkownik wprowadził na innych witrynach, łącznie z tak wrażliwymi informacjami jak loginy, hasła czy prywatne wiadomości. Twórcy Grammarly zostali oczywiście powiadomieni o sprawie z wyprzedzeniem. Według nich, nie ma jak dotąd informacji o wykorzystaniu tej podatności.

Krytyczna luka została załatana w ostatniej aktualizacji rozszerzenia. Można ją już pobierać za pośrednictwem Chrome Web Store oraz z oficjalnego repozytorium rozszerzeń dla Firefoksa.

© dobreprogramy

Komentarze

reklama