Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book
Złam sekurakowe hasło i wygraj 5000 zł!
Jakiś czas temu ogłosiliśmy konkurs na złamanie hasła:
Hasło to pięć słów w języku polskim układających się w jedno sensowne zdanie. Tylko małe litery. PL literki zastąpione znakami bez ogonków np. mąka = maka.
535be00fc31ff6612ee8fcc3d80aaf35ffb2c1e6487fac88bb81ab04a8ead089
Nikomu nie udało się go złamać w zakładanym czasie (3 tygodnie).
Teraz osłabiona wersja konkursu, ale z taką samą nagrodą (tj. 5000 zł dla pierwszej osoby, która złamie hasło poniżej, w maksymalnym terminie do końca 27.09.2024).
Nowe hasło konkursowe składa się z 4 słów w języku polskim. Tylko małe litery. PL literki zastąpione znakami bez ogonków np. mąka = maka. Bez spacji czy innych znaków specjalnych.
SHA256: 0a2551e134fca8fc124380498e7802f79576fac3291f855a6030225dd5839717
Złamane hasło wyślijcie na adres haslo@securitum.pl i nie zgłaszajcie proszę głupot, które wypisuje ChatGPT.
~ms
Czy słowa tworzą sensowne zdanie?
nie, tym razem losowe
Czy słowa są w podstawowej formie czy w odmianie skoro są losowe?
Obawiam się, że w takim razie ta wersja wcale nie jest osłabiona, a wzmocniona. „Piątych” słów pasujących do czterowyrazowego zdania jest bardzo mało, znacznie mniej niż wszystkich słów w języku Polskim, stąd liczba kombinacji spełniających kryteria znacznie się zwiększa, a nie zmniejsza. Kochani Sekurak, przemyśleliście to?
małe tło całej akcji / offtop:
1) Najpierw mam dużo mesgów – nie no 4 słowa jako hasło – mega słabe, da się złamać, mało entropii
2) To robimy konkurs z łamaniem
3) Nie da rady, dłużej niż czas wszechświata, niełamalne
PS
Jak ten konkurs nie pójdzie, to będzie kolejna wersja z 4 słowami, dającymi poprawne zdanie
Ale nie no poważnie, to ciężej trafić niż w totolotka, przy totalnie losowych polskich słowach nieułożonych w zdanie. Przeliczyłem, że przy liście 10k najpopularniejszych słów w bezokolicznikach, to jakiś 140pln wydane na wynajem 4090 żeby pokryć całość czyli realnie. Ale patrząc na wasze ostatnie hasło z 5 słów, to to nie są bezokoliczniki i tych słów na tej liście nie było. Znalazłem inną listę z odmianami na której te słowa są i wc -w pokazuje 4.7mln słów xD. Nawet jakby połowę odrzucić z jakiś powodów. To dalej zostaje ~2mln czyli jakieś 247mld pln w 4090 (to są mniej więcej wydatki budżetu państwa w okresie styczeń-kwiecień 2024) xD. Także nooo… czekam na wersje z sensownym zdaniem, bo wtedy schodzimy na pułap który jest realny i się opłaca. Jak coś to za 5000pln można na wynajętym 4090 policzyć 3.23*10^17 hashy SHA256 także możecie wziąć to pod uwagę. :D
W skrócie też uważamy że jest to bardzo trudne. Ale kto wie… może znajdzie się ktoś sprytniejszy od nas.
Zastanawia mnie, w jaki sposób „sensowność” zdania pomaga w znalezieniu frazy.
Może i błędnie, ale z mojej strony wziąłem słownik z wpolish (Kali).
CombinerX robie zestaw słów. I to wpuszcam do hashcata. Ale mam marne 7500 kH/s.
Przy nagrodzie wysokości 5 tys. myślę że udowodnicie swoją rację, bo po prostu nikomu za tyle się nie opłaca tego łamać ;) Koszt łamania przekracza 5 tys. (zakładając że nie trafi się na rozwiązanie „fartem”)
nota bene – było kilka poprzednich konkursów bez żadnej nagrody $$$, a ludzie i tak łamali prawie wszystkie hasła. Challenge + dodatkowo jeszcze boostowany $$$.
Dawid chodzi o to, że jak to jest sensowne zdanie to raczej np. nie będzie z czterech czasowników itp. także tym sposobem zawężasz liczbę kombinacji
4 losowe są o kilka rzędów wielkości trudniejsze niż 5 mających sens, food for thought !
Super inicjatywa biorę się do pracy
Podaje hasło: Okoń
Wiem stare , ale ciągle bawi
a ptaki latają kluczem!
Muszę coś zoptymalizować, bo szacuje 33083310673924637 godzin :/
Nie optymalizuj. Po co się męczyć? Więcej czasu zajmie ci optymalizacja niż poczekanie tych 33083310673924637 godzin ;-)
Czy słowa mogą się powtarzać?
„hasło konkursowe składa się z 4 słów w języku polskim”
czy słowa tworzące hasło mogą się powtarzać, czy są unikalne?
wszystkie założenia są w poście
Czy słowa w haśle mogą występować w odmienionej formie (liczba, przypadki)?
Czy jest jakiś salt?
Przy słowniku 2000 najpopularniejszych słów mamy 16000000000000 obliczeń sha256. Nawet na wielu wątkach to zajmie mnóstwo czasu i prądu na zwykłym komputerze. Rachunek za prąd przewyższy wartość wygranej :(
Musisz najpierw wyhaczyć jakiś botnet ;)
Czy słowa są w formie odmienionej czy są to bezokoliczniki?
Mam sobie słownik ze dużą liczbą słów używanych w języku polskim (również z odmianą) – jest ich tam 4M. Jeżeli by policzyć liczbę 4 kombinacji bez powtórzeń to daje nam ok 2.6E25 kombinacji… – chyba nie mam tyle dysku, żeby użyć takiego słownika :P
Ale fajna zabawa! Jeśli możecie to podpwiedzcie czy słowa to całkowicie randomowe czy jakieś rzeczowniki czy przymiotniki :)
Czy w haśle są liczebniki?
pomidor
Czy słowa to rzeczowniki w mianowniku liczby pojedynczej? Czy trzeba brać pod uwagę wszystkie części mowy i ich odmianę?
Można powiedzieć, że to jest fundamentalne pytanie, które decyduje o tym czy to się opłaca czy nie xD
Po pobraniu dostępnego słownika wyrazów polskich, mamy 3211944 wyrazów. Po usunięciu polskich znaków, wyrazów zostaje dokładnie 3000578. Kombinacja czterech wyrazów spośród wspomnianych 3 milionów to około 3.4 * 10^24 kombinacji. Gdy zawęzimy poszukiwania do jedynie wyrazów między 3 a 7-znakowych, to wychodzi nam 7.6 * 10^19 kombinacji, a i to nie gwarantuje nam wygranej.
No i gdzie w tym wszystkim ekologia, potrzeba niesamowitej ilości watów żeby takie obliczenia przeprowadzić…
Być może można przemyśleć ten konkurs, zawęzić informacje na temat wyrazów, np. „jedynie rzeczownik w mianowniku”, podać konkretnie ilość liter w wyrazach, niech algorytm ma trochę więcej użytego mózgu, a trochę mniej bruteforce’a – nie każdy ma dostęp do AGHowej Atheny…
Bo w tym konkursie raczej chodzi o to by nam uświadomić, że hasło złożone z kilku losowych słów będzie wielokrotnie trudniejsze do złamania niż klasyczne co najmniej 8 znaków małe i duże litery cyfry i znaki specjalne…
Czy te słowa są oddzielone spacjami, czy wszystko jest jednym ciągiem?
Jednym ciągiem
1. Czy słowa składają się z jednakowej ilości liter czy różnej? I być może kluczowe pytanie:
2. W jakim programie (chodzi o nazwę) lub przez jaką stronę został wygenerowany ten hash SHA-256?
shasum
Proszę o małą podpowiedź; czy do wygenerowania tego hasza SHA256 użyto programu czy jakieś strony?
nie ma to znaczenia
niematoznaczenia nie wchodzi :)
czekoladatruskawkamalinawanilia
Mam propozycję – może by tak po prostu zawiązać współpracę i skorzystać z rozproszonego przetwarzania u wszystkich chętnych osób?
Nagroda do podziału byłaby mała – przy 5000 osób byłoby to 1 zł ale byłby to niezły dowód, że przy dostatecznie dużej ilości komputerów każde hasło da się złamać.
No i też przestroga, że dostatecznie rozległy botnet lub współpraca służb np. z Microsoftem mogłaby dostarczyć wystarczający potencjał by łamać każde zabezpieczenia i to bez użycia komputerów kwantowych itd
Ja chętnie. Możemy zbudowac łamacza na dockerze. Wystawić to na kilkanaście instancji w aws EC2 z GPU. Podzielić słownik per instancja
Przy obecnych założeniach tego hasha to powodzenia w atakch siłowych i na 100 takich instancjach :D
I jak chcesz podzielić słownik per instancja skoro w rozwiązaniu mogłyby się pojawić słowa z różnych chunków?
Czy opublikowaliście jakie było hasło z pierwszej wersji niezłamanego konkursu?
tak ;)
mdlawymisiaczektluczeostrookienko
Heh, spoko :D
A czy „sekurak” to polskie słowo ?
Najważniejsze pytanie czy jest realna szansa do zgadnięcia tego głowa bez hashcata ?
Słownik języka polskiego wzięty z githuba libre offica ma około 300 000 słów, Profesor Mirosław Bańko z Uniwersytetu Warszawskiego oszacował, że przeciętny Polak zna około 30 tysięcy wyrazów. Wybitnie oczytani erudyci znają ich nawet 100 tysięcy. Profesor zaznacza jednak, że takie przypadki są niezwykle rzadkie. 3000 procesów, każdy operuje na tej samej liście słowników i każdy z nich wysyła do pozostałych zdanie 4 wyrazowe, które już sprawdził, tak by reszta procesów już go nie przetwarzała, czy to zadanie policzalne?
Policzalne – owszem, ale nie da się do wyniku dojść w rozsądnym czasie przy użyciu współczesnych komputerów ;)
Sprawdz czy slowo „mdławy” użyty w poprzednim hasle jest w tym slowniku :)
zyrafy wchodza do szafy
Czy opublikujecie od razu jeśli komuś uda się to złamać?
tak
Wszyscy tu o słownikach, prawdopodobieństwach, o liczeniach. A ja czytam dziesiąty raz post i szukam podpowiedzi. Przecież większość ataków to socjotechnika, a nie łamanie hashy
być może podpowiedzią jest rozwiązanie hasła z poprzedniego konkursu (patrz komentarze)
Tylko skoro tym razem są losowe słowa nieukładające się w zdanie, to ciężko coś wymyślić z poprzedniego hasła. Do tego mogą być i bezokoliczniki i wszystkie odmiany. Itp. Jedyne co pozostaje to permutacje poprzedniego hasła, a i to nie daje gwarancji sukcesu. Odpowiedź „pomidor” przy liczebnikach też zasiewa nutkę niepewności xD.
wlasciwykonbateriazszywka
Correct Horse Battery Staple z XKCD
powodzenia Sekurak 👍
Przecież wiadomo od dawna że tworzy się takie hasła jak np to „oczywiście że haslo ma szesc wyrazow.”
srednia dlugosc wyrazu w j polskim to 6 znakow, 4*6 i masz 24 znaki
w gre wchodzi tylko bruteforce troche bardziej okrojony niz cale 24 znaki a-z ale nadal praktycznie niemozliwy do wykonania, kazdy kalkulator kombinatoryki jakim probowalem policzyc liczbe kombinacji zakladajac 130000 slow w polskim slowniku wywalal sie z liczba NAN/INF
Trafiłem na taki problem, że przy top10k lub nawet 1k polskich słów, generując możliwe hasła przy pomocy combinatorX, wychodzą mi dziesiątki terabajtów danych. Można bezpośrednio pipe do hashcata zrobić bez zapisywania na dysk, ale wtedy prędkość lamania jest nieakceptowalnie niska. Ciekaw jestem jak to rozwiązać.
Czy zdanie „Tylko małe litery.” oznacza, że do budowy hasła wykorzystano tylko i wyłącznie słowa, które w oryginalnej formie nie zawierają dużych liter?
w oryginale mogły być duże litery – ale jeśli tak było to zostały zamienione na małe
Hasło krótsze lub równe 32 znaki czy dłuższe? :)
bez spoilerów :)
Bez podpowiedzi raczej nikt nie podoła.
i o to im chodzi :)
Teoretycznie jest to możliwe, praktycznie hmmm zależy w dużym stopniu od:
1.zasobów/sprzętu
2.pieniędzy
3.czasu
Ale np mając dostęp do komputera kwantowego choćby IBM (co jest obecnie możliwe, ale strasznie kosztowne) lub do symulatora (możliwość instalacji lokalnej) Qiskit, można wykorzystać algorytm Grovera, odpowiednio zmodyfikowany i zaimplementowany w Qiskit oraz odpowiednio duży słownik wyrazów polskich, to być może się uda z naciskiem na być może ;)
Sekurak chyba liczyć nie potrafi, skoro robi takie konkursy xD Napisałem na szybko apkę na CUDA i odpalam to na 4090. Korzystam z bazy słów z SJP. Odrzuciłem trochę dziwnych nazw własnych i jakieś dziwolągi językowe i na oko wychodzi 10k lat liczenia, żeby przejść przez wszystkie kombinacje. Oczywiście można dodać losowanie słów, żeby zwiększyć szansę, ale to i tak kwestia super farta, nie do policzenia bez jakiegoś turbo super klastra…
Chyba ze wszystkimi podpowiedziamy metoda brutforce spedzilem ze 4 godziny i nie udalo sie :) jesli beda nowe podpowiedzi to bede probowal dalej
chyba ze na cos nie zwrocilem uwagi, ale chyba nie :))
IMO konkurs (w tej lub jednej z kolejnych iteracji) sprowadzi się do tego, że jeśli sporo osób uruchomi niezależnie brute force to w końcu ktoś trafi na farcie w rozsądnym czasie
Mam ważne pytanie czy to jest zadanie z serii CTF czy tylko akcja zachęcająca do ustawiania długich haseł.
Jako podpowiedź: nie jest to kod zbudowany z wyrazów, które pojawiły się w tym newsie.
BTW. Można mocno zoptymalizować algorytm obliczania sha256 dla tego typu konkursów (ale trzeba mieć na to czas).
Czy słowo „nieszczęście” było by policzone jako 2 słowa „nie” i „szczęście”czy jako jedno, w założeniu że to są 4 słowa?
jako jedno
Uwielbiam takich marzycieli :D
https://hackforums.net/showthread.php?tid=6279293&pid=62486451#pid62486451
Jeżeli ktoś ma jakiś ASIC pod Bitcoina który da się programować żeby hashował podane mu rzeczy w celu dopasowania digestu to może będzie to całkiem sensowne.
Dobra, poddajemy się
Dlaczego się już poddajesz?
Czy wyrazy to rzeczowniki?
Jakie było hasło?
Chyba wszyscy na to czekają
Zdążyłem sprawdzić tylko 37 300 000 000. Nie było to sekwencyjnie tylko losowo sprawdzane. Nie udało się niestety :D
Ja odrobinkę więcej… 376 864 200 000.