Так и не нашел в доках по JTR возможность подставить заранее известную часть пароля (его начало).. Заметил, что у root'a все пароли начинаются с Shift, хотелось бы облегчить задачу подбора, сразу начиная искать с этой части слова. Если кто в курсе, как ето сделать, поделитесь советом.. заранее пасиб за помощь Думаю есть более изящный способ, чем писать скрипт для создания словаря с использованием john --stdout
в разделе расшифровки хешей есть статья по джону. там и ссылка на сборку под винду и фак по использованию (включая подбор по маске и т.д)
ну во 1 ты не немного ошибся разделом 2)почитай /thread43156.html 3)к сожалению пока у оф версии jtr не такой такой опции но есть альтернативное решения Code: [List.External:Shift] void init() { word[0] = 'S'; word[1] = 'h'; word[2] = 'i'; word[3] = 'f'; word[4] = 't'; word[5] = 'A'; word[6] = 'A'; word[7] = '0'; word[8] = '0'; word[9] = 'a'; word[10] = '`'; word[11] = 0; } void generate() { if(++word[10]>'z') { word[10] = 'a'; if(++word[9]>'z') { word[9] = 'a'; if(++word[8]>'9') { word[8] = '0'; if(++word[7]>'9') { word[7] = '0'; if(++word[6]>'Z') { word[6] = 'A'; if(++word[5]>'Z') word = 0; } return; } } } } } ./john_sse2 -e=Shift -stdout Code: ShiftAA00aa ShiftAA00ab ShiftAA00ac ShiftAA00ad .......... ShiftAA01bm ShiftAA01bn ShiftAA01bo
Большое всем спасибо! пока использую вариант x_Lex'a, жду результатов. а вариант: john --stdout -i:all | perl -e 'while (<STDIN>) {printf "Shift".$_}' | john --stdin passwd работать не захотел: Crash recovery file is locked: /root/.john/john.rec еще не разобрался почему...
не, проглядел, вариант x_Lex'a не катит... длина строки фиксированная, но по аналогии с работой external уже разберусь
добавь -ses=mask_passwd и почему не катит External обясни по падробней или дай пример маски которой ты хочеш
твой алгоритм генерирует строки длиной 11 символов, поэтому он и не подходит. Но сама идеяс External ясна. с сессией джон заработал, но выдает совсем не то, что от него требуется: john --stdout --incremental | perl -e 'while (<STDIN>) {printf "Shift".$_}' | john --session=root --stdin passwd Loaded 2 password hashes with 2 different salts (FreeBSD MD5 [32/64 X2]) words: 16246 time: 0:00:00:01 w/s: 14904 current: mact2 words: 19779 time: 0:00:00:02 w/s: 9156 current: merreth words: 22566 time: 0:00:00:03 w/s: 7497 current: ab2221 words: 26828 time: 0:00:00:04 w/s: 6495 current: sangod current != Shift[blab] но john --stdout --incremental | perl -e 'while (<STDIN>) {printf "Shift".$_}' выдает, разумеется, с Shift'ом .... Shiftamb504 Shiftamb503 Shiftamb502 ....