Żądny wiedzy? Wbijaj na Mega Sekurak Hacking Party w maju! -30% z kodem: majearly

Podatność powodująca, że szyfrowanie PGP mogło zmienić temat wiadomości e-mail w Thunderbirdzie

19 marca 2024, 17:28 | W biegu | 0 komentarzy

Jeśli korzystacie z Thunderbirda i jego wbudowanej funkcjonalności OpenPGP do szyfrowania treści to przez ostatnie cztery miesiące mogliście nieświadomie wysyłać wiadomości z tematem pochodzącym od Waszych innych e-maili ze skrzynki.

Otwieranie wiadomości zaszyfrowanej przy użyciu PGP, zależnie od jej rozmiaru, może trwać nawet kilka sekund. Zatem Mozilla Thunderbird po odszyfrowaniu wiadomości przypisuje temat do aktualnie otwartej wiadomości e-mail, sprawdzając czy użytkownik w tym czasie oczekiwania nie przeskoczył do innej wiadomości za pomocą funkcji isCurrentMessage().

Jak możemy przeczytać w wątku na bugzilla, jeden z deweloperów podczas naprawiania innego błędu napotkał wspomnianą funkcję, która z jakiegoś względu dla niego za każdym razem zwracała wartość true. Możemy jedynie się domyślać co było powodem takiej wartości, prawdopodobnie deweloper nie testował programu z użyciem OpenPGP oraz zabrakło testu z szybkim przełączaniem się między dużymi wiadomościami. Dodatkowo po wprowadzeniu zmian w kodzie, przy kompilacji i wykonania testowej budowy aplikacji był u niego zwracany błąd. Bez dalszej analizy deweloper dodał komentarz „fix tests” i usunął cały kod funkcji, nie informując o tym osób odpowiedzialnych za nią 😉. Poniżej znajdziecie kilka ciekawych cytatów i zrzutów ekranu z wątku.

I wonder why I wasn’t involved in the review of that change…

I’m dropping isCurrentMessage() since it was always returning true.


Przez niewiedzę pozostałych deweloperów oraz czas, jaki upłynął między zmianą a wykryciem błędu, odnalezienie źródła problemu nie należało do łatwych zadań jak możemy przeczytać w wątku: https://phabricator.services.mozilla.com/D201366

Deweloperzy Betterbirda (czyli forka Thunderbirda) znaleźli problem i napisali własny kod naprawiający funkcję i udostępnili łatkę w liście zadań. Inny deweloper Thunderbirda zauważył, że taka funkcja była już kiedyś zaimplementowana, a obecnie zniknęła z aktualnej wersji kodu.

Na szczęście w krótkim czasie po wykryciu, udało się przywrócić funkcję i błąd nie powinien już występować w nowych wiadomościach po aktualizacji Thunderbirda do najnowszej wersji. Zgodnie z poradami Mozilli, dla starych wiadomości trzeba naprawić wszystkie foldery poczty do czego gorąco zachęcamy.

Błąd został opisany jako CVE-2024-1936 i wskazano, że aktualizacja 115.8.1 nie rozwiązała do końca problemu. Wątek został otwarty na nowo zgodnie z informacjami:

https://bugzilla.mozilla.org/show_bug.cgi?id=1860518#c11

https://bugzilla.mozilla.org/show_bug.cgi?id=1844149#c17

Będziemy Was informować na bieżąco.

~PaSi & tt

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

Odpowiedz