Horcrux: menedżer haseł dla paranoików, który nie ma słabych punktów

Strona głównaHorcrux: menedżer haseł dla paranoików, który nie ma słabych punktów
05.07.2017 15:59
Horcrux: menedżer haseł dla paranoików, który nie ma słabych punktów

Receptą na niską siłę i powtarzalność haseł używanych wserwisach internetowych i aplikacjach webowych stały się menedżeryw rodzaju KeePassa. Przechowując unikatowe, trudne hasła, którychnikt raczej sam nie zapamięta, zabezpieczone jednym hasłem głównym,niewątpliwie zwiększają bezpieczeństwo – jednak jakoscentralizowane zbiory wrażliwych informacji same stają się celamiataku. Czy można stworzyć menedżer haseł, który na takie atakibyłby odporny? Rozwiązanie „dla paranoików” o nazwie Horcruxprzedstawiła dwójka informatyków z University of Virginia. Ichcelem było zminimalizowanie i rozproszenie zaufania, przyjednoczesnym zachowaniu podstawowych funkcji współczesnegomenedżera haseł.

bELoqqwl

Horcrux to magiczny obiekt ze świata Harry’ego Pottera,zapewniający czarownikom nieśmiertelność – pojemnik służącydo przechowywania części duszy. Grający w Advanced Dungeons andDragons mogą skojarzyć go z filakterium, wykorzystywanym przeznieumarłe licze pojemnikiem na ich energię życiową, ale horcruxjest bardziej zaawansowany – oferuje rozproszony „hosting”duszy w sfederowanych ze sobą oddzielnych naczyniach (o całkiemciekawych dodatkowych właściwościach, ale to już inna kwestia).Ciekawa geneza nazwy, jak zobaczycie sporo mająca wspólnego zfunkcjonowaniem menedżera haseł dla paranoików.

Twórcy Horcruxa (którzy podobno nikogo przy tym nie zabili –rzecz nie do pomyślenia w uniwersum Harry’ego Pottera) skupili sięna dwóch powierzchniach ataku, jakie ujawniają współczesnemenedżery haseł. Pierwsza dotyczy interakcji z formularzamilogowania. Zwykłe menedżery wypełniają je danymi zapisanymi wswojej bazie. To ryzykowne zachowanie: złośliwy kod w JavaScripcie,wprowadzony np. atakiem XSS, może śledzić dane wprowadzone welementy DOM.

Mroczny interfejs prototypu Horcruxa pasuje do nazwy
Mroczny interfejs prototypu Horcruxa pasuje do nazwy

Eksperymentalny menedżer chroni się przed tym w pomysłowysposób: w pola loginu i hasła wstrzykuje fałszywe dane. Gdyużytkownik kliknie przycisk Prześlij, wówczas przechwytywane jestżądanie HTTP POST i w nim dopiero dane fałszywe podmieniane są narealną parę loginu i hasła. Jest to pierwsza praktyczna realizacjapomysłu, który pojawił się w branży bezpieczeństwa trzy latatemu, w pracypt. Protecting Users Against XSS-based Password Manager Abuse.Co więcej, sprawdzono ją w praktyce – ma ona działać na 98%witryn z zestawienia Alexa Top 1 Million Sites.

bELoqqwn

Druga z powierzchni ataku dotyczy samego przechowywania haseł.Tradycyjne menedżery przechowują wszystko w jednym pliku czy bazie– przełamanie zabezpieczeń oznacza utratę wszystkiego. Horcruxrobi to samo, co jego książkowy odpowiednik: rozprasza chronionedane pomiędzy wiele serwerów. Nawet jeśli napastnik uzyska dostępdo jednego z nich, przejmie tylko część haseł.

Dodatkowo takie rozproszone hasła chronione są za pomocąkukułczegohaszowania – tak aby napastnik nie mógł odkryć, czyzgadnięte przez niego hasło główne jest tym poprawnym. Ma toznacząco ograniczyć jego możliwości odzyskania haseł, nawet poprzejęciu jednego z hostujących je serwerów.

Póki co Horcrux jest w prototypowej formie rozszerzenia doFirefoksa. Aby z tego menedżera skorzystać, należy dysponowaćFirefoksem w wersji beta lub nightly, w którym opcjaxpinstall.signatures.required w ustawieniach zaawansowanych(about:config) zostanie ustawiona na false.

Należy też dysponować środowiskiem deweloperskim Node.js, zzainstalowanym runtime jpm (npm install jpm --global), oraznarzędziem git. Po sklonowaniu repozytorium (git clonehttps://github.com/HainaLi/horcrux_password_manager.git) wydajemy zjego katalogu polecenie jpm run. Po około minucie uruchomi się namFirefox z działającym rozszerzeniem. Panel dialogowy poprosi nas ociąg JSON do skonfigurowanego magazynu danych oraz o hasło głównedo menedżera.

bELoqqwt

Skonfigurowanie magazynów danych to sporo roboty – póki cowspierana jest tylko usługa DynamoDB w chmurze Amazonu (niebawempojawić się ma wsparcie dla chmury Azure), szczegóły znajdzieciew dokumentacji.Jak widać, póki co to nie jest rozwiązanie dla ZwykłegoUżytkownika, ale na podstawie takiego prototypu można już pracowaćnad produktem, z którego mógłby korzystać każdy.

Więcej na temat tego ciekawego projektu dowiecie się z artykułupt. Horcrux: A Password Manager for Paranoids.

Programy

Aktualizacje
Aktualizacje
Nowości
Udostępnij:
bELoqqxj