PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [unsolved] Frage zu nem Hash



maoshe
26.04.2015, 23:42
also sache ist, dass ich nen dump von ner db hab, wo der großteil der pws wsl noch auf der richtigen seite verwendet wird.
das problem ist, dass ich keinen plan hab, wie die hashes zustandekommen, außer, dass der salt blowfish ist und halt ein zufalls-md5 hash generiert wird
es gibt eine spalte 'pwd' und eine spalte 'salt'
hier ein beispiel:

pwd: $2a$07$963bda9385e7185ceeeebuYVq67xMZMxFgl4FYUP9c/IRVqkdhQxe
salt: $2a$07$963bda9385e7185ceeeeb53b042b752a$
das zugehörige pw ist 'test123'

das ist der teil vom newuser-script, wo das ganze generiert wird:

if(isset($password)) { $salt = "$2a$07$" . md5(mt_rand()) . "$"; } if($add) {
$db->query("INSERT INTO user VALUES(NULL, :name, '" . crypt($password, $salt)

hat jemand nen plan?
mein ziel wäre es, zu wissen, wie man die hashes cracken kann

bbking.nnf
26.04.2015, 23:47
Vielleicht hast du auch noch einen Auszug der Funktion "crypt" für uns.

mfg,
bbking

maoshe
26.04.2015, 23:50
ist nichts eigenes, sondern nur das, was php immer schon kann:
http://php.net/manual/de/function.crypt.php

edit: das steht im login-script:

$salt = $db->query("SELECT salt FROM user WHERE name = :user", array(":user" => $_POST['user']))->fetchColumn(0);
$pwd = crypt(trim($_POST['pwd']), $salt);

edit2: md5 von oben gecrackt: 1622097467
mt_rand() macht nicht besonders lange zahlenfolgen

edit3: die ersten 21 zeichen von 'pwd' sind immer identisch mit denen vom salt (nach der salt-anweiseung $2a$07$)
läuft unter php version 5.5

bbking.nnf
27.04.2015, 00:18
Sehen die anderen blowfish-hashes und die dazugehörigen salts auch so aus?

maoshe
27.04.2015, 02:50
yep, alle nachm gleichen pattern.
kann gerne damit getestet werden:

<?php
$rand = mt_rand();
$password = "test123";
$salt = "$2a$07$" . md5($rand) . "$";
$test = crypt($password, $salt);
echo "random: " . $rand . "<br />";
echo "password: " . $password . "<br />";
echo "salt: " . $salt . "<br />";
echo "crypt(): " . $test . "<br />";
?>