Do logowania z wykorzystaniem co najmniej dwóch stopni weryfikacji (2FA) zachęcają dziś najwięksi dostawcy usług internetowych czy serwisów społecznościowych. Najczęściej na pierwszym etapie wykorzystywany jest login i hasło, w drugim PIN wysyłany na przykład SMS-em. Dzięki nowemu narzędziu phishingowemu Piotra Duszyńskiego można w zautomatyzowany sposób przechwycić oba składniki, a nawet podszyć się pod ofiarę.
Modlishka – jak działa?
Gwoli wyjaśnienia, Modlishka nie jest exploitem, który wykorzystuje podatność dwustopniowej weryfikacji danych. Nie sposób stwierdzić także, że Duszyński złamał 2FA, co zresztą sam podkreśla. Wyjątkowość Modlishki polega na tym, że w zautomatyzowany sposób umożliwia przejęcie obu składników w najpopularniejszych implementacjach dwuetapowej weryfikacji, np. tej wykorzystywanej przez Google. Dzięki rozwiązaniu Duszyńskiego, przy relatywnie niewielkim nakładzie własnej pracy przechwycić czyjąś tożsamość może także użytkownik bez wieloletniego doświadczenia w pentestach.
Od strony technicznej Modlishka jest ogniwem pośredniczącym – do tego, aby była skuteczna jest zatem potrzebne ulokowanie jej na maszynie ofiary. Tutaj z pomocą przychodzi oczywiście socjotechnika. Zachęcenie kogoś do „skorzystania” z Modlishki przez odpowiednio spreparowanego maila może nie jest szczytem technicznej finezji, ale z całą pewnością jest tanie, proste i skuteczne. Gdy scenariusz już się powiedzie, Modlishka działa nieco jak serwer proxy – pośredniczy w wymianie składników logowania pomiędzy użytkownikiem i usługą. Mamy zatem do czynienia z rozszerzonym, dwuetapowym atakiem typu man in the middle.
To oczywiście potrafi i zwykły keylogger, jednak Modlishkę różnią od niego dwie właściwości: działa jako zwrotne proxy i przechwytuje cały ruch oraz nie wykorzystuje spreparowanych stron logowania, lecz prawdziwe witryny pod własną domeną. W ten sposób proces wygląda bardziej przekonująco, ale umożliwia też doprowadzenie (wtórne, po wcześniejszym przejęciu danych) do prawdziwego logowania. To zaś, jeśli 2FA jest włączone, może spowodować wysłanie SMS-a z drugim składnikiem, który także może zostać przechwycony – ofiara znów bowiem będzie wpisywać drugi składnik na serwerze Modlishki, a nie na prawdziwej stronie logowania. Cały proces w praktyce można obejrzeć na Vimeo.
Kradzież tożsamości w wersji beta
Oczywiście wszystkie wprowadzone przez użytkownika dane są zapisywane w logach Modlishki. Rozszerzony scenariusz man in the middle to jedno, a jego konsekwencje to drugie. Duszyński opracował także zautomatyzowany sposób na podszywanie się pod ofiarę, choć na razie jest ona dostępna w wersji beta. Kod źródłowy do samodzielnej edycji i kompilacji (Modlishka została napisana w Go) dostępny jest wraz z dokumentacją i licencją (narzędzie ma charakter edukacyjny) w repozytorium GitHub. Nikt nie twierdzi, że pod względem technicznym Modlishka jest rewolucją, ale stopień automatyzacji i łatwości użycia robi duże wrażenie.