02-26-2011, 09:36 AM
that was a good hint mastercracker. i found somthing. it is exactly as i said in the beginning. it is salted with a null-byte. or better said its the unicode version of something. take the first example:
4144e195f46de78a3623da7364d04f11:a:61
if i so this:
thumbstone ~ # perl -e 'print "a"' | md5sum
0cc175b9c0f1b6a831c399e269772661 -
but then i did this:
thumbstone ~ # perl -e 'print "a\x00"' | md5sum
4144e195f46de78a3623da7364d04f11 -
so what we can call a bug is that the hex-output does not indicate a null-byte. however it just looks like wrong hash:password pair but it is not. it is because a null-byte is "invisible".
i guess the reason behind is a way how i optimize the rule processing on gpu. it can happend that some values are generated additionally. some that you do not instruct with the rule configurations. however it also generates all you have programmed so this is usually not a problem. sometimes its better to check some "garbage" data instead of skipping it because the skipping if () would take more time than checking the garbage. this is what happend here but accidentially the garbage was a real plain so it found it.
4144e195f46de78a3623da7364d04f11:a:61
if i so this:
thumbstone ~ # perl -e 'print "a"' | md5sum
0cc175b9c0f1b6a831c399e269772661 -
but then i did this:
thumbstone ~ # perl -e 'print "a\x00"' | md5sum
4144e195f46de78a3623da7364d04f11 -
so what we can call a bug is that the hex-output does not indicate a null-byte. however it just looks like wrong hash:password pair but it is not. it is because a null-byte is "invisible".
i guess the reason behind is a way how i optimize the rule processing on gpu. it can happend that some values are generated additionally. some that you do not instruct with the rule configurations. however it also generates all you have programmed so this is usually not a problem. sometimes its better to check some "garbage" data instead of skipping it because the skipping if () would take more time than checking the garbage. this is what happend here but accidentially the garbage was a real plain so it found it.