Strona 1 z 2 12 OstatniOstatni
Pokaż wyniki 1 do 10 z 18

Temat: Kodowanie haseł i spam.

  1. #1
    Zarejestrowany
    Jun 2011
    Postów
    39

    Domyślnie Kodowanie haseł i spam.

    Cześć. Jak wspomniałem w poprzednim temacie tworzę od jakiegoś czasu stronę internetową. Rozmawiałem z kolegą o bezpieczeństwie owej strony i użytkownikach, kiedy spytał mnie jak koduję hasła odpowiedziałem mu że w MD5 - ponieważ słyszałem że nie da się ich rozkodować - powiedział również żebym podesłał mu jakieś zakodowane hasło (póki co wszystkie należą do mnie, tworzę stronę na localhost'cie i wszystkie konta są moje), rozkodował je w ok. minutę. Teraz pytanie numer jeden, jak kodować hasła tak aby były jak najbardziej bezpieczne?

    Napisałem sobie pętlę która wysyła n e-mail'i na wpisany przeze mnie adres, jest to w jakikolwiek sposób karane?

  2. #2
    Zarejestrowany
    Jan 2009
    Postów
    836

    Domyślnie

    Podałeś epic fail hasło. Rozkodował tak szybko bo użył słownika a Ty popularnej nazwy.

    Daj mu hash z hasła:

    My$ECR3T1070video3

    to zobaczymy jaki będzie z niego minutowiec. Obecnie algorytmy nie są złe tylko ludzie są zbyt leniwi albo zbyt nieogarnięci i nie są w stanie pamiętać bezpiecznych haseł - choć musze przyznać, że niektórzy userzy potrafią zaskoczyć brzmieniem hasła)

    Co do n emaili to o ile spowodujesz przypadkowy DoS (np: zawiesisz jakiś serwer) i właściciel będzie Ci w stanie udowodnić poniesione straty to normalnie grozi Ci odpowiedzialność karna. Prawdopodobnie nie mógłbyś sobie tego bezkarnie robić na serverze Pentagonu xD Choć myślę, że możesz spróbować - na pewno się znają na żartach : P

  3. #3
    Zarejestrowany
    Jun 2011
    Postów
    39

    Domyślnie

    Tylko jak przekonać użytkownika do stosowania takiego hasła?

    Póki co wysłałem po 5 e-mail'i i na tym chyba zastopuję

  4. #4
    Zarejestrowany
    Jan 2009
    Postów
    836

    Domyślnie

    Z drugiej strony dałeś koledze gotowy hash, zacznijmy od tego, że w wersji www dostęp do takiego hasha jest trochę ciężki - szczególnie jak masz stronkę w dobrej firmie hostingowej spełniającej standardy bezpieczeństwa.

  5. #5
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    To gdzie hostujesz nie ma najmniejszego znaczenia, liczy sie jak aplikacja jest napisana. Uzywanie MD5 do przechowywania hasel to juz smiech na sali - nikt juz tego nie uzywa bo za latwo zlamac.
    SHA1, SHA256 - oba z salt'em (innym dla kazdego hasla) bo inaczej to nic nie daje albo ewentualnie wielokrotne hashowanie czyi np sha1(sha1(sha1(sha1(...(sha1('haslo))))))))))))) - na takie cos nie ma rainbow tables
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  6. #6
    Zarejestrowany
    Jun 2011
    Postów
    39

    Domyślnie

    Funkcja:
    Kod:
    function koduj($var)
    {
    return sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1($var))))))));
    }
    Załatwi sprawę bezpiecziegno przechowywania haseł?

  7. #7
    Zarejestrowany
    Jan 2009
    Postów
    836

    Domyślnie

    nie załatwi.

    Cały czas można zobaczyć przecież algorytm.

  8. #8
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    Zalatwi tak samo jak dodanie salt'u... mozesz zrobic N razy hashowanie i powodzenia z szukaniem kolizji albo brute-force. To ze widzisz algorytm nie znaczy ze poznasz haslo.

    Kazdy zna ogolnie uzywane algorytmy i jakos sa one uznawane za bezpieczne wiec ten argument nie ma sensu. Algorytmy szyfrujace sa uznawane za bezpieczne wlasnie dlatego ze sa publicznie znane i wiele osob je analizowalo i szukalo slabosci. Jesli ktos mi powie ze on ma swoj super tajny algorytm szyfrowania i jest on bezpieczny bo nikt inny go nie zna, to jest to dla mnie sygnal aby skierowac sie w strone bocznego wyjscia.

    Teraz co do hashowania:
    - MD5/SHA1 bez saltu sa podatne na ataki z uzyciem RT
    - MD5/SHA1 z saltem - wymagaja osobnej RT dla kazdego saltu
    - Wielokrotne MS5/SHA1 - nie widzialem jeszcze tablic ktore by daly rade bo nie widzialem tablic dla 32-znakowych 'hasel'... Gdybys takie mial to ok, wielokrotne hashowanie sha1 niewiele da bo wtedy N cykli szukania i masz wynik.
    - SHA-1 nie jest juz uznawane za bezpieczne... teraz wiele osob zaleca SHA-256 i SHA-512

    Teraz lekka modyfikacja...

    Kod:
    my $haslo = 'moje haslo';
    for ($cykl=1; $cykl<=32; $cykl++) {
      $haslo = sha1($cykl . ':' . $haslo);
    }
    ... i juz masz 32 przebiegi sha1 z dodaniem salt'u do kazdego, gdzie salt to numer cyklu i znak ':' - powiedz mi teraz co z tego ze znasz algorytm?!

    Problem nie jest w tym ze zaimplementujesz cos co da sie zlamac... chodzi o to aby nie bylo latwo zlamac hasla. Jesli bedzie trudniej zlamac haslo u Ciebie niz u mnie, to nie Ty bedziesz atakowany tylko ja.

    A teraz wezmy glebszy oddech i pomyslmy ile stron internetowych w ogole trzyma hasla w postaci jawnego teksu...

    PS.
    Tylko nie zrob tak jak niektorzy programisci co mieli dobre intencje ale zero pojecia o tym co robia http://30x.me/J4 - pelen niewypal
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  9. #9
    Zarejestrowany
    Jan 2009
    Postów
    836

    Domyślnie

    Cytat Napisał TQM Zobacz post
    i juz masz 32 przebiegi sha1 z dodaniem salt'u do kazdego, gdzie salt to numer cyklu i znak ':' - powiedz mi teraz co z tego ze znasz algorytm?!
    Jak znasz algorytm to znowu masz dwie metody - szyfrujesz algorytmem słowa słownika po kolei i porównujesz z haszem a jak nie przyniesie rezulatatów to zostaje brute force, który prędzej czy później rozbroi hasło na 100%.

    Cały czas zakładamy, że napastnik będzie miał dostęp do haszy... Ten dostęp jest właśnie najtrudniejszy w tym całym zadaniu odgadnięcia hasła. Polecałbym głównie skupić się na eliminacji INJECTION w kodzie logowania i bezpiecznej firmie hostingowej. Kodowanie SHA256 czy 512 jak pisze TQM spełni obecne normy bezpieczeństwa Twojego servera.
    Ostatnio edytowane przez Elitegroup : 08-23-2012 - 23:46

  10. #10
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    Cytat Napisał Elitegroup Zobacz post
    Jak znasz algorytm to znowu masz dwie metody - szyfrujesz algorytmem słowa słownika po kolei i porównujesz z haszem a jak nie przyniesie rezulatatów to zostaje brute force, który prędzej czy później rozbroi hasło na 100%.
    Musisz zalozyc ze algorytm jest ZAWSZE znany... a tutaj pozostaje brute-force jedynie, i to takie ktore bedzie 32x wolniejsze niz zwyczajne... przy tekscie wejsciowym rownym 32 znaki (przynajmniej w 31 z 32 cykli)... powodzenia ;-)

    Cytat Napisał Elitegroup Zobacz post
    Cały czas zakładamy, że napastnik będzie miał dostęp do haszy... Ten dostęp jest właśnie najtrudniejszy w tym całym zadaniu odgadnięcia hasła. Polecałbym głównie skupić się na eliminacji INJECTION w kodzie logowania i bezpiecznej firmie hostingowej. Kodowanie SHA256 czy 512 jak pisze TQM spełni obecne normy bezpieczeństwa Twojego servera.
    Ciekawy link - Lifetimes of cryptographic hash functions
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

Strona 1 z 2 12 OstatniOstatni

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj