Показать сообщение отдельно

  #353  
Старый 06.03.2014, 12:55
Eddi
Member
Регистрация: 02.08.2012
Сообщений: 223
С нами:
7251446

Репутация: 0
По умолчанию

Все, кто начинают перебор хэндшейков сразу сталкиваются с проблемой обработки словарей. Словари скачанные из Интернета, не всегда удовлетворяют условиям необходимым для максимально эффективного перебора. Они имеют многократные повторы строк и строки короче 8-ми сомволов, что снижает скорость перебора и увеличивает размер словаря. Программы предлагаемые для данной операции не всегда способны обработать словари больших размеров или корректо работают, также оставляет желать лучшего скорость их работы.

В этом статье предлагаю простое решение задачи подготовки словаря для линукс систем исключительно командами командного интерпретатора bash установленного в Линукс по умолчанию.

1. Объединение файлов-словарей.

cat 1.lst 2.lst > all.lst # "склеивает" содержимое файлов 1.lst и 2.lst в файл all.lst, количество склеиваемых файлов может быть любым:

cat 1.lst 2.lst 3.lst 4.lst > all.lst # "склеивает" содержимое файлов 1.lst, 2.lst, 3.lst и 4.lst в файл all.lst

2. Для удаления повторов в файле-словаря необходимо выполнить две команды:

sort all.lst > all_srt.lst # "сортировка" содержимого файла all.lst по убыванию с выводом уже отсортированных данных в файл all_sort.lst

uniq all_srt.lst all_srt_without_doubles.lst # удаление повторящихся строк (дублей) из файла all_srt.lst и запись итогового словаря в файл all_srt_without_doubles.lst уже без повторяющихся строк.

# Вторая и последующие копии повторяющихся соседних строк не записываются.

3. Итак. После выполения вышеприведенных команд вы имеете файл-словарь очищенный от дублей. Осталось лишь удалить из него строки длиной менее 8 символов,так как такие строки не могут быть паролями для алгоритмов WPA/WPA2.

Для этого выполним:

sed -n '/^.\{9\}/p' all_srt_without_doubles.lst > 8_and_longer.lst

# таким образом в файле 8_and_longer.lst содержутся все строки из файла all_srt_without_doubles.lst длиной 8 и более символов.

На здоровье=)

Плюсики приветствуются;-)
 
Ответить с цитированием