Menu dostępności

Podatność w KeePass – master key zagrożony

Podatność w KeePass – master key zagrożony

Specjalista i fascynat bezpieczeństwa posługujący się nickiem vdohney opublikował niedawno Proof of Concept narzędzia, które wykorzystuje niezałataną lukę w zabezpieczeniach KeePass pozwalającą na odzyskanie hasła głównego z pamięci programu.

KeePass to chyba najpopularniejszy menadżer haseł open source, zaprojektowany głównie dla systemu Windows. Dzięki otwartej społeczności powstały też wydania na systemy macOS czy Linux za pośrednictwem platformy Mono zgodnej z .NET.

Cechą charakterystyczną programu jest to, że przechowuje dane w zaszyfrowanym pliku i nie zapisuje niczego w dedykowanej chmurze ani w systemie. Korzysta z mocnych algorytmów kryptograficznych, jak AES czy Twofish, i nie pozostawia żadnego pola z bazy czy tekstu w pamięci bez szyfrowania.

Wykryta podatność, śledzona jako CVE-2023-32784, dotyczy wersji KeePass 2.x i umożliwia atakującemu odzyskanie hasła głównego w postaci zwykłego tekstu ze zrzutu pamięci. Lukę można wykorzystać nawet w obszarach roboczych, które zostały zablokowane lub już nie działają.

„Zrzut pamięci może być zrzutem procesu KeePass, plikiem wymiany (pagefile.sys), plikiem hibernacji (hiberfil.sys) lub zrzutem pamięci RAM całego systemu. Tylko pierwszego znaku nie można odzyskać” – czytamy w poradniku NIST.

Problem polega na tym, że specjalnie opracowane pole tekstowe, którego KeePass używa do wprowadzania hasła, tworzy w pamięci pozostały ciąg znaków dla każdego wpisanego znaku. Ze względu na to, jak działa .NET, pozbycie się go po utworzeniu jest prawie niemożliwe. Na przykład wpisanie słowa „Hasło” spowoduje pozostawienie ciągów znaków: •a, ••s, •••ł, ••••o. Pierwszy znak to już tylko formalność i może być złamany nawet metodą brute force.

Narzędzie PoC od vdohney, zwane KeePass 2.X Master Password Dumper, przeszukuje zrzut pamięci w poszukiwaniu tych wzorców, aby odzyskać dowolne wpisane hasło – ponieważ KeePass używa tego samego pola tekstowego również w polach edycji hasła, te hasła także można odzyskać.

Według badacza nawet jeśli w tej samej sesji wpisywanych jest wiele haseł, ciągi te powinny być uporządkowane w pamięci, co oznacza, że narzędzie może być użyte do odzyskania wszystkich z nich. Oprócz pierwszego znaku hasła, w większości jest w stanie odzyskać hasło w postaci zwykłego tekstu. Nie jest wymagane wykonanie kodu w systemie docelowym, wystarczy zrzut pamięci.

Chociaż poprawka tej luki została uwzględniona w testowych wersjach KeePass 2.54, oficjalne wydanie będzie dostępne dopiero w lipcu! Poprawka dodaje wywołanie funkcji interfejsu API systemu Windows, aby uniknąć tworzenia zarządzanych ciągów znaków. Dodatkowo KeePass tworzy teraz w pamięci fikcyjne fragmenty, które są mieszane z poprawnymi fragmentami.

Nawet jeśli oficjalna łatka zostanie wydana za kilka miesięcy, nie ma powodu do paniki, mówi vdohney. Luki nie można przecież wykorzystać zdalnie, co oznacza, że jeśli komputer nie jest zainfekowany złośliwym oprogramowaniem, użytkownicy nie powinni się martwić. Podstawowa ochrona AV pod kątem manipulacji pamięcią procesów powinna załatwić sprawę.

Popularne

Koniec ery VPN? Jak sztuczna inteligencja zmienia krajobraz cyberzagrożeń i przyspiesza przejście do Zero Trust

Koniec ery VPN? Jak sztuczna inteligencja zmienia krajobraz cyberzagrożeń i przyspiesza przejście do Zero Trust

Przez ponad dwie dekady sieci VPN (Virtual Private Network) stanowiły podstawowy mechanizm zapewniający bezpieczny dostęp zdalny do zasobów przedsiębiorstw. W czasach, gdy większość pracowników wykonywa...
FIFA i Broken Access Control. Jak konto bez uprawnień uzyskało dostęp do systemów Mistrzostw Świata 2026

FIFA i Broken Access Control. Jak konto bez uprawnień uzyskało dostęp do systemów Mistrzostw Świata 2026

16 czerwca, czyli zaledwie pięć dni po rozpoczęciu Mistrzostw Świata 2026, badaczka cyberbezpieczeństwa działająca pod pseudonimem „BobDaHacker” opisała na swoim blogu lukę odkrytą w systemach FIFA. Według...
External MFA w Microsoft Entra ID – koniec Custom Controls

External MFA w Microsoft Entra ID – koniec Custom Controls

MFA, czyli uwierzytelnianie wieloskładnikowe, opiera się na prostej zasadzie: samo hasło nie wystarcza. Po wpisaniu loginu i hasła użytkownik musi jeszcze potwierdzić swoją tożsamość drugim składniki...
Masowa kampania password spray wymierzona w Azure CLI

Masowa kampania password spray wymierzona w Azure CLI

Cyberprzestępcy prowadzą zakrojoną na szeroką skalę kampanię password spray, wymierzoną w środowiska Microsoft 365 za pośrednictwem Azure CLI, o czym informuje Huntress – firma zajmująca się cyberbezpiec...
Accenture potwierdza wyciek danych

Accenture potwierdza wyciek danych

Accenture, obecny również w Polsce gigant usług profesjonalnych, potwierdziło naruszenie bezpieczeństwa danych po tym, jak haker przyznał się do kradzieży kodu źródłowego firmy. Accenture to przedsi...