Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book
Niezałatany 0-day w Zimbra 8.x. XSS-em kradną e-maile ofiar…
Tutaj dość rozbudowany opis trwającej kampanii o dość mało oryginalnej nazwie: EmailThief.
Celem jest Zimbra, czyli:
Secure Private Business Email & Collaboration
Badacze nadmieniają, że wśród organizacji które są atakowane, znajdują się m.in. europejskie instytucje rządowe oraz media.
Napastnicy wykorzystują lukę XSS (pod tym linkiem dajemy za darmo cały rozdział z naszej książki, dotyczący XSS), która było zgłoszona wcześniej do twórców, ale nie została jeszcze załatana w wersjach 8.x Zimbry. Atak nie działa na wersję 9.0.0:
Volexity can confirm and has tested that the most recent versions of Zimbra—8.8.15 P29 & P30—remain vulnerable; testing of version 9.0.0 indicates it is likely unaffected.
Jak działa atak?
- Rekonesans. Atakujący wysyłają całkiem niewinnego e-maila na dany adres, jednak zawierającego linki do tego typu plików graficznych (kto rozpoznaje nazwy użyte w domenach? ;-)
Jeśli zostanie wysłana komunikacja HTTP do jednego z tych linków – e-mail jest prawdziwy oraz aktywny. Można przejść do fazy 2:
2. Atak. Tutaj wysyłane są maile, które wykorzystują XSSa:
Ktoś klika w linka, nieświadomie uruchamiając kod JavaScript (XSS), który wykonuje żądanie POST atakowanej instalacji Zimbry. Użytkownik jest zalogowany (ofiara nie wylogowała się z webmaila, tylko patrzy co ciekawego dostała np. od Amazona), więc przeglądarka sama dodaje potrzebne ciasteczka. Nota bene, kod JS wykrada również token CSRF, potrzebny do wykonania żądania HTTP:
Efekt? Kradzież e-maili:
The functionality of the attacker code is simple: (…) For each email encountered, send the email body and any attachments to the configured callback address (mail.bruising-intellect[.]ml) via HTTP POST requests.
Cały atak w graficznej formie wygląda tak:
Na marginesie warto wspomnieć, że jakiś czas temu namierzyliśmy podobną podatność w YetiCRM. Praktycznie nie wymagała żadnej interakcji od ofiary. Poniżej wykonuje się niewinny kod JS: alert(document.domain) – ale równie dobrze mogłoby to być coś bardziej złośliwego (np. wykradającego e-maile):
Punkt 2. XSS i wykonywanie dowolnego kodu w systemie operacyjnym przez załącznik w mailu
~Michał Sajdak
Biedny Dworczyk ;)
Jak ktoś nie lubi użytkowników to może im wyłączyć wyświetlanie html-a i obrazków :)
zmprov getAllCos | xargs -I CNAME zmprov modifyCOS CNAME zimbraPrefDisplayExternalImages FALSE
zmprov getAllCos | xargs -I CNAME zmprov modifyCOS CNAME zimbraPrefMessageViewHtmlPreferred FALSE
Tyle że to „uchroni” tylko przez fazą „rekonesans”.
Jeśli atakujący zna email to może od razu wysłać mail z linkiem i JSem.
Dopiero kliknięcie w link powoduje atak.
> Jeśli atakujący zna email to może od razu wysłać mail z linkiem i JSem.
To prawda. Jednak przy wyłączonym wyświetlaniu html-a musiałbyś otworzyć źródło email-a i wyszukać w treści html-a link. Tego się nie da zrobić przypadkiem.
btw:
Wyżej jest tylko pół rozwiązania bo jeszcze trzeba wyłączyć indywidualnie per skrzynka.
https://blog.zimbra.com/2022/02/hotfix-available-5-feb-for-zero-day-exploit-vulnerability-in-zimbra-8-8-15/
Super! Tylko że dla tych co mają support, a reszcie zostaje tylko upgrade do niepodatnej wersji – co wymaga pewnie mega czasu i testów.