비밀번호 파일에서 가능한 모든 솔트 값을 계산하는 데 도움을 줄 수 있는 사람이 있나요? 그래서 솔트 처리되고 MD5 해시된 file_1.txt라는 비밀번호 파일이 있고 일치 항목을 비교하고 찾기 위해 레인보우 테이블을 준비하고 싶지만 내 스크립트에 솔트 값이 없습니다. 내 비밀번호 파일은 이 형식(237ac9d0,$1$237ac9d0$lcqhZ0SmxQ.0JsEDdwiEq0)이고 100줄의 솔트 해시가 있습니다. 여기에 스크립트가 있습니다.
#!/bin/bash
While read word
do
hashed=`echo "$word" | openssl passwd -1 -salt ?? "$word"`
while read hash
do
echo About to compare:
echo word:"$word"
echo hashed: "$hashed"
echo hash: "$hash"
echo --------
if [ "$hashed" == "$hash" ]
then
echo "Hash found for word "$word": "$hashed""
continue
fi
done < file_2.txt
done < rockyoutop1000.txt
답변1
"소금 부족"이 무슨 뜻인지 잘 모르겠습니다. 해시된 비밀번호의 솔트는 해시 자체와 함께 저장됩니다. 이는 분명한 이유이므로 해시가 있으면 솔트도 있는 것입니다. $1$
이러한 MD5 기반 해시의 형식은 매뉴얼 페이지 에 설명되어 있습니다 crypt
.
salt가 문자 "$id$"로 시작하고 선택적으로 "$"로 끝나는 문자열이 뒤에 오는 문자열인 경우 결과는 다음과 같은 형식입니다.
$id$salt$encrypted