Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Skrypty obsługi baz danych _ Zmiana kodowania hasla w skrypcie

Napisany przez: dudekkris3 9.01.2013, 23:45:44

Witam, nie wiem czy to dobry temat jeżeli nie to proszę o przeniesienie
poszukuje osoby która była by w stanie zmienić mi kodowanie hasła w skrypcie który posiadam, chodzi o to ze skrypt ten odczytuje hasło w SHA256
a mi jest potrzebne Whirlpool gdyż w nim mam zakodowana bazę danych.

link do skryptu: http://pastebin.com/nNu5hRgJ
link do strony pluginu który zapisuje moje hasła: https://github.com/lycano/xAuth/wiki/Password-Hashing

Nie wiem czy to jest trudne bo znam tylko "powierzchownie" HTML wiec proszę nie spamować komentarzy typu "nie da rady" itp.

Po więcej informacji lub jakieś propozycje proszę pisać na PW

Napisany przez: thek 10.01.2013, 00:10:14

To głównie operacje przy funkcji hash, które możesz nawet sam przeprowadzić. Zmień tam 'sha256' na 'whirlpool' i powinno zadziergać.

Jakby co.... Linia 24 i 27 smile.gif

EDIT: A na przyszłość nie strasz takim starym kodem wink.gif stripslashes, mysql_real_escape_string... to już powinno być deprecated dawno i na zasadzie: "A tak dzieci kochane pisało się ponad 10 lat temu i jest to tylko pole dla dziur w skrypcie pod kątem bezpieczeństwa". Spal, zapomnij, użyj PDO smile.gif

Napisany przez: dudekkris3 10.01.2013, 00:32:59

Dzieki za szybką odpowiedź jednak to chyba nie dziala,

zamieniłem tak jak mówiłeś : http://pastebin.com/Mb0Murpb

lecz teraz po wpisaniu loginu i hasla z whirlpool i kliknięciu login strona sie "odświeża" i znowu wyskakuje okno logowania,

dodam ze inne hasło zapisane w SHA256 tez nie działa ale wyskakuje ze jest błędna nazwa użytkownika lub hasło

Napisany przez: thek 10.01.2013, 00:47:59

pewnie trzeba jeszcze zmodyfikować linię 22, bo tam masz rozpoznawanie typu algorytmu. Chodzi mi o
if( $sha_info[1] === "SHA" )

Nie wiem co tam w bazie trzymasz do rozpoznania, że masz do czynienia z whirlpoolem.

Napisany przez: dudekkris3 10.01.2013, 00:51:23

CREATE TABLE `authme` (
`id` INTEGER AUTO_INCREMENT,
`username` VARCHAR(255) NOT NULL,
`password` VARCHAR(255) NOT NULL,
`ip` VARCHAR(40) NOT NULL,
`lastlogin` BIGINT,
to jest tabela
skrypt ma odczytywać username jako login i password jaki hasło w kodowaniu whirlpoolem

moim zdaniem : if( $sha_info[1] === "SHA" ) odpowiada za poczatek kodowanego hasla w SHA256

przykładowy klucz SHA : $SHA$fc4a06408aa9c60e$c4bac5d0...
w whirlpool juz tego nie ma : df850941a9cc6d61306fd32d37ca7ea5280d30f02...

EDIT:
z ciekawości usunąłem ta linijkę i przy kodowaniu SHA256 można się było normalnie zalogować bez niej lecz po zmianie w tych 2 miejscach na whirlpool na nowe konto gdzie wcześniej nic się nie działo, wyskakuje komunikat ze jest niepoprawna nazwa użytkownika lub hasło

w tym linku: https://github.com/lycano/xAuth/wiki/Password-Hashing nie ma nic ciekawego ?
nie znam się na tym za bardzo ale myślę ze jest tam wyjaśnione ( przynajmniej częściowo) jak to napisać bo to jest strona tego pluginu który to zapisuje do bazy danych

Napisany przez: thek 10.01.2013, 08:59:01

To co napisałeś, to nie jest kod w SHA smile.gif To string złożony z 3 elementów, który zresztą w kodzie potem rozbijasz na elementy tablicy, dzieląc w chwili znalezienia $ smile.gif Skoro po rozbiciu masz od razu hash (a tak sądzę patrzac na przykładowe dane), to zapewne musisz jedynie zrobić porównanie tego hasha z operacją hashowania nadesłanego z formularza hasła. W takim wypadku nie są już potrzebne dodatkowe sprawdzenia i cudowanie.

Napisany przez: dudekkris3 10.01.2013, 11:12:46

Niestety nie bardzo znam sie na tego typu kodzie wiec sam tego nie napisze ....

Trudne by to było do napisania dla kogoś kto to zna ? Nie ukrywam ze jest mi to potrzebne bo przeniesienie z bazy danych 10k kont i zmiana ich hasel z whirlpoolea na tamto nie wchodzi w grę ...

Napisany przez: thek 10.01.2013, 12:35:39

Z tego co widziałem, to plugin pozwalał na zmianę kodowania... Chyba switch tam był z odpowiednim parametrem, ale nie zgłębiałem się gdzie konkretnie ta zmiana ma nastapić.

Napisany przez: dudekkris3 10.01.2013, 18:52:10

thek,
Napisałem ci wiadomość na PW jak byś mógł odczytać będę wdzięczny wink.gif

Napisany przez: thek 10.01.2013, 22:02:27

Czytałem, ale to że pomagałem komuś nie od razu sprawia, że jestem odpowiedzialny za doprowadzenie pomocy do końca. Nieważne czy w formie zlecenia lub wolontariatu. Każdy poświęca na pomoc tyle czasu ile uważa za właściwe. Ja staram się pomóc wielu osobom w jakiś sposób bardziej radą. Czasem jedynie dając rozwiązanie bliższe gotowcowi, gdy widzę, że przyda się większej liczbie osób. Poza tym mam także życie prywatne, na które także czas wydzielam. No i kiedyś muszę odpoczywać także. Nie sądzę byś tak jak ja sypiał po 5 godzin dziennie smile.gif

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)