NFsec Logo

Hashcat dla konkursu Sekuraka Academy 2024

09/11/2023 w Bezpieczeństwo Możliwość komentowania Hashcat dla konkursu Sekuraka Academy 2024 została wyłączona

S

ekurak opublikował kolejny konkurs dotyczący łamania haseł. Tym razem było 10 to pozycji, a nie 12. Konkurs wystartował 31 października 2023 o 11:37, a informacja o nim dotarła do mnie o 12:15. O 12:34 miałem już dwa hasła. Pierwszym krokiem było szybkie stworzenie “dedykowanego” słownika. Zaznaczyłem cały tekst na stronie konkursu i wkleiłem go do CyberChef. Zamiana spacji (“\s”) na znaki nowych linii (“\n”) szybko zwróciła słownik, który mógł zostać użyty do pierwszej próby. Czyste uruchomienie łamania słownikiem nie zwróciło żadnych wyników, ale dodanie modyfikatorów zwróciło pierwszy wynik:

hashcat -a0 -m100 to_crack.txt sekurak_dic.txt -r OneRuleToRuleThemStill.rule
db13ca089eb4860896567399a30558f2c1fc69e7:sekurak.academy

Kolejnym krokiem był tryb: słownik + słownik, aby połączyć w pary frazy z każdego słownika, co zwróciło drugi hasz:

hashcat -a1 -m100 to_crack.txt sekurak_dic.txt sekurak_dic.txt 
9ca2065c0db9c96e7c2610bc3646991b590620f8:sekurak2024

Wracając do pracy zostawiłem program hashcat w trybie brute-force, co po godzinie 16:00 wyświetlało już kolejne dwa złamane hasła:

hashcat -a3 -m100 to_crack.txt
cc713abadd413446b499a795a963e3358e6bea37:Ow0jw2
11611d749d0a4df9a91bdc6967a05a4a85df7ffb:anw22ii2

i perspektywę długiego łamania dłuższych haseł – dlatego przerwałem dalszą pracę programu. Przyszedł czas na “ślepą furię”, czyli słownik który tworzę od jakiegoś czasu wzbogacając go o różnego rodzaju polskie wycieki. Co ciekawe jego systematyczne uzupełnianie i nastawianie na polskie realia spowodowało wzrost złamanych haseł z serwisu pomarańcze.net z 105475 do 389598 pozycji (pokazując, że proste, stare hasła wciąż są powtarzane i używane w innych serwisach). Schemat działania był analogiczny do poprzedniego słownika: 0) czysty słownik #2 1) słownik #2 + zasady modyfikujące 2) słownik #2 + słownik #2 3) słownik #2 + słownik #2 + zasady modyfikujące 4) słownik #1 + słownik #2 (i odwrotnie) 5) słownik #1 + słownik #2 + mody (i odwrotnie). W ciągu godziny (z przerwami) zabawy kombinacje te wypluły:

d451fa69378f9a246cff1a0f3bf0979b1df643ee:grzechu1234
283d5cb401e9de6a2e56f97166a639479fb86aee:akademiasekuraka
3c37442f864f1921808a2440c7657311df38b919:bezpiecznykurak

Przy okazji pracy z słownikami – postanowiłem zaktualizować własny o nowe słowa dodane do literaków. Zauważyłem też, że jest wersja z odmianami słów zawierająca więcej wyrazów i zwrotów. Podobnie, jak w przypadku pierwszego słownika – ułożenie go wymagało kilku zabiegów – usunięcie kropek, przecinków; zamiana spacji na nowe linie itd. W ten sposób słowo et seq. zamieniło się w seq + rak, co złamało w trybie słownik #2 + słownik #2 kolejny hasz:

61e5851b40d661bd046bdd96577fc4e81b7ae625:seqrak

Przerwałem działanie programu hashcat i o 18:00 wysłałem pierwszą paczkę 8’miu haseł. Późnym wieczorem zrobiłem jeszcze przegląd dotychczas złamanych haseł i do “sekurakowego” słownika postanowiłem jeszcze dodać frazy, których nie było w tekście, ale były na obrazkach. Uznałem, że dobrymi kandydatami na hasło będą: WronBrodaty, on1Ry, SpaceOutlaw, ZygzakEtylowasyl, VPS, NAS, WireGuard i ich różne kombinacje. Gdy wznowiłem przerwane działanie programu hashcat podał on kolejny hasz:

e68e8854e4da8055832f1a00ced5ac8772611a64:bezpiecznakura

Powtórzenie kombinacji z nowymi hasłami nie wniosło nic do procesu. O 22:18 wysłałem drugą paczkę 9’ciu haseł. Przed snem puściłem jeszcze w ruch wszystkie, czyste słowniki z SecLists oraz wersje z modyfikatorami. Zero wyników sugerowało hasło bardziej złożone np. z trzech słów, jak to miało miejsce w poprzedniej edycji (ciezkatosprawa). Do tworzenia słownika potrzebnego do łamania tego typu haseł przystąpiłem dopiero wieczorem kolejnego dnia. Optymistycznie patrząc zadanie wydawało się dość proste: wystarczy z jednego słownika zrobić inny, który będzie miał połączone ze sobą każde słowo z tego samego słownika:

hashcat -a1 --stdout nfsec_pl.txt nfsec_pl.txt > double_nfsec_pl.txt

Po kilkudziesięciu minutach intensywnej pracy dysku i komunikacie o kończącym się miejscu zdałem sobie sprawę, że chyba przesadziłem z ilością słów, które chciałem wzajemnie połączyć. “Przecież one będą działać jak mnożnik wielkości pierwotnego pliku”. Przerwałem proces, jak nowy słownik posiadał już 385 GB. Usunąłem go i skupiłem się na stworzeniu trzeciego słownika zawierającego tylko zaimki i przyimki umieszczając słowo “to” na pierwszym miejscu. Połączyłem nowy słownik z moim mając nadzieje, że wiele słów w różnych odmianach z tymi częściami mowy stworzy jakieś logiczne frazy:

hashcat -a1 --stdout nfsec_pl.txt zaimki_przyimki.txt > double_nfsec_pl.txt

Łączenie trwało kilkanaście minut, a kilku gigabajtowy słownik spokojnie zmieścił się na dysku. Alternatywą dla tego takiego łączenia słowników może być generowanie w locie drugiego słowa, co oszczędza miejsce na dysku, ale wymaga wielokrotnego uruchamiania programu hashcat:

for i in `cat zaimki_przyimki.txt`; 
do echo hashcat -a1 -m100 to_crack.txt nfsec_pl.txt \
nfsec_pl.txt --rule-left \'\$"$i"\' | bash; done

Dodając jeszcze jedną pętlę i opcję -rule-right możemy nawet stworzyć potworka łamiącego hasło czterowyrazowe. Niemniej jednak dodanie tego samego słownika jako źródła trzeciego słowa rozpoczęło proces łamania:

hashcat -a1 -m100 to_crack.txt double_nfsec_pl.txt nfsec_pl.txt

37 minut później ukazał się ostatni hash:

61d54fe02ce6edcde2f5762f2677b3c83d876417:trudnotozgadnac

2 listopada o 00:20 wysłałem ostatnią paczkę 10’ciu haseł. 8 lis 2023 o 11:22 otrzymałem informację o wygranej. Oprócz frajdy konkurs był doskonałym pretekstem, aby dopracować własny słownik i uzupełnić w nim małą lukę, czyli odmianę polskich słów “z” i “bez” znaków diakrytycznych.

OneRuleToRuleThemStill

17/08/2023 w Bezpieczeństwo Możliwość komentowania OneRuleToRuleThemStill została wyłączona

M

inęło kilka lat, odkąd Will Hunt stworzył regułę hashcat OneRuleToRuleThemAll. Od tego czasu wprowadzono w niej jedną czy dwie poprawki, ale głównym celem było stworzenie wydajnego zestawu reguł, które nadawałyby się do atakowania szybkich funkcji skrótów, takich jak NTLM, MD5, SHA1/2 itp. Zawiera ona 52.000 reguł, które obejmują najlepsze reguły z domyślnej instalacji programu hashcat jak i te niestandardowe: hob064, best64, T0XICv1, toggles5, InsidePro-PasswordsPro, rockyou-30000, InsidePro-HashManager, d3ad0ne, dive, unix-ninja-leetspeak, generated2, d3adhob0, KoreLogic’s Rockyou50000, _NSAKEY.v2.dive – zostały one przetestowane na około 4.3 miliona niesolonych skrótów MD5 pochodzących z naruszenia bezpieczeństwa danych MineCraft Lifeboat community w 2016 roku.
[ czytaj całość… ]

OK Google, złam mi hasło

18/04/2021 w Bezpieczeństwo Możliwość komentowania OK Google, złam mi hasło została wyłączona

U

sługa Colaboratory, w skrócie “Colab” to produkt firmy Google, który umożliwia każdemu pisanie i wykonywanie dowolnego kodu Pythona za pośrednictwem przeglądarki. Najczęściej wykorzystuje się go w szybkim przygotowaniu jakiegoś dowodu koncepcji w analizie danych lub napisania kawałka skryptu. Z technicznego punktu widzenia Colab to hostowana usługa oparta na rozwiązaniu Jupyter, która nie wymaga żadnej konfiguracji, a jednocześnie zapewnia bezpłatny dostęp do zasobów obliczeniowych, w tym procesorów graficznych*.
[ czytaj całość… ]

Historyczne hasła Uniksa

13/10/2019 w Hackultura Możliwość komentowania Historyczne hasła Uniksa została wyłączona

3

9 letnie hasło Kena Thompsona – współtwórcy systemu operacyjnego Unix zostało w końcu złamane. Stworzone na systemie opartym na BSD – jednej z oryginalnych wersji systemu Unix, która była wtedy używana przez różnych pionierów informatyki. W 2014 r. programistka Leah Neukirchen zauważył interesujący plik /etc/passwd w publicznie dostępnym drzewie kodu źródłowego historycznej, trzeciej wersji BSD. Zawiera on zahashowane hasła należące do ponad dwudziestu luminarzy uniksowych, którzy pracowali nad rozwojem Uniksa, w tym: Dennis Ritchie, Stephen R. Bourne, Ken Thompson, Eric Schmidt, Stuart Feldman i Bian W. Kernighan.
[ czytaj całość… ]

Chroniąc SSH przed zbieraniem adresów z known_hosts

25/05/2019 w Administracja, Bezpieczeństwo Możliwość komentowania Chroniąc SSH przed zbieraniem adresów z known_hosts została wyłączona

J

eśli używasz SSH to Twój klient przechowuje w katalogu domowym listę mapującą nazwy hostów i adresy IP każdego zdalnego hosta, z którym się połączyłeś. Ta “baza danych”, znana jako plik known_hosts może zostać wykorzystana przez atakujących, którzy naruszyli konta użytkowników. Rezultatem odczytania tego pliku jest “obraz” sieci, ujawniający, do których systemów mamy jeszcze połączenie. Może ułatwić to szkodliwemu oprogramowaniu i innym szkodliwym skryptom w rozprzestrzenianiu się na inne systemy, gdy tylko jeden system w sieci został skompromitowany. Plik ten jest dostępny w katalogu ~/.ssh każdego użytkownika, który chociaż raz łączył się jako klient SSH z zdalnym systemem. Jest on na tyle użyteczny, że w przypadku zmiany podpisu serwera – klient SSH będzie chronić użytkownika, powiadamiając go o tej sytuacji komunikatem typu:
[ czytaj całość… ]

Hashcat dla bazy pomarańcze.dot.net

28/04/2019 w Bezpieczeństwo 2 komentarze.

Z

ałóżmy, że mamy listę 2.036.445 haseł, które są zahaszowane algorytmem md5crypt. Naszym celem nie jest złamanie jak największej liczby haseł w dowolnym czasie, ale chcemy to zrobić jak najszybciej (24h). W tym celu musimy sięgnąć po najniżej wiszące owoce – czyli wykorzystać dane odnoszące się do najczęściej używanych haseł przez użytkowników. Najpopularniejsze hasła to te błyszczące słowa, które od razu pojawiają się w czyimś umyśle, gdy strona internetowa poprosi o utworzenie jednego z nich. Wszystkie są niezwykle łatwe do zapamiętania i dzięki temu dziecinnie proste do odgadnięcia za pomocą ataku słownikowego. Kiedy Mark Burnett przeanalizował 3.3 miliona haseł w 2014 roku w celu określenia tych najczęściej używanych – odkrył, że 0.6 procent to 123456. Dlatego używając 10 najczęstszych haseł – cracker może średnio odgadnąć 16 z 1000.
[ czytaj całość… ]