Ребзя предлагаю в этой теме делится частыми задачами по обработке текстовых документов.(словари для брута) Смысла обсуждать Виндозный софт я не вижу (для этого есть отдельная тема, тем более они ограничены функционалом). Сюда нацарапаю наиболее частые команды по обработке текста, так же не стесняемся задавать вопросы о своих потребностях, я думаю сообщество поможет. Итак Lets go! Для начала давайте наверное пройдёмся с азов работы с текстов в консоли линуха (не все обитатели античатика оказывается умеют пользоватся) Самая простая команда CAT, выполняет вывод текста на экран (и не только, об этом чуть позже) Anonymous@root: cat wordlist.dic password iloveyou princess 1234567 rockyou 12345678 abc123 nicole daniel babygirl monkey lovely jessica 654321 Команда HEAD выводит указанное кол-во строк с начала файла (очень легко запомнить HEAD - с англ. ГОЛОВА). Обязательный флаг -5 кол-во строк, в данном случае 5 может принимать любое нужно число. Anonymous@root: head wordlist.dic -5 password iloveyou princess 1234567 rockyou Команда TAIL выводит указанное кол-во строк с конца файла (очень легко запомнить TAIL - с англ. ХВОСТ ) Обязательный флаг -5 кол-во строк, в данном случае 5 может принимать любое нужно число. Anonymous@root: tail wordlist.dic -5 babygirl monkey lovely jessica 654321 Следующая команда это PIPLINE обозначается знаком | это значит выполнить дальнейшую обработку т.е. перенаправить вывод из команды далее... Anonymous@root: cat wordlist.dic | sort | uniq > wordlist_sorted.dic В данном случае сначала мы читаем файл далее сортируем его , удаляем дубликаты и сохраняем в файле wordlist_sorted.txt Следующая команда вывод информации > , применяется в основном для перенаправления данных из вывода на экран в файл... Может также применяться для конкатенации файлов (или по простому объединению ) Anonymous@root: cat wordlist.dic wordlist2.dic > wordlist_all.dic Обычно команда объединения словарей идут в паре с командами SORT и UNIQ. Anonymous@root: cat wordlist.dic wordlist2.dic | sort | uniq > wordlist_all.dic Любой уважающий себя хэш-крякер должен уметь работать с CRUNCH'ем ... Anonymous@root: crunch 6 6 -t taran%%%% -o taran.dic @ – строчные буквы; , – заглавные буквы; % – цифры; ^ – спец. символы. В данном случае будет создан словарь taran0000-taran9999 Anonymous@root: cat taran.dic taran0000 ... taran9999 Также можно обойтись без вывода в файл а работой через конвеер... (если допустим это разовый или целевой лом, а место на HDD очень не густо...) Команда ECHO также может генерировать словарик... Anonymous@root: echo -e {a..z}\\n | tr -d " " > a_z.txt Anonymous@root: cat a_z.txt a b .. z Anonymous@root: echo -e {1920..2015}.{01..12}.{01..31}\\n | tr -d " " > dates.dic Anonymous@root: cat dates.dic 19200101 .. 20151231 Давайте на базе ECHO создадим словарь для ника "taran" Anonymous@root: echo -e taran{1900..2020}\\n | tr -d " " > taran.dic Anonymous@root: cat taran.dic taran1900 .. taran2020 Как видите нет огромного куска словаря от 0000 до 1900 и от 2021 до 9999. Разница по размеру 1.2 кБ и 100 кБ соотв. Источники: http://nahlogin.blogspot.ru/2013/05/crunch.html https://forum.antichat.ru/threads/425367/
Для обработки баз "exploit.in" (базы mail : pass) написал простой скрипт, возможно выглядит очень топорно, но сработал исправно. Не силен в линуксе, почти все команды/параметры нашел на просторах форума (отдельное спасибо Andrey9999), остальное в различных мануалах. Прошу не судить строго, первый опыт так сказать. Критика и дополнения приветствуются. Spoiler: Скрипт Code: #!/bin/sh # 1. Собираем все файлы в один cat *.txt > all_mail_0.txt # 2. Удаляем символы перевода строки (^M) tr -d '\r' < all_mail_0.txt > all_mail_1.txt # 3. Удаляем символы табуляции, пробелы в начале и конце строк, пустые строки и символы таблицы ASCII выше 127 cat all_mail_1.txt | sed 's/[ \t]*$//' | sed 's/^[ \t]*//;s/[ \t]*$//' | sed '/^$/d' | tr -dc '\11\12\15\40-\176' > all_mail_2.txt # 4. Исправляем разделитель и сортируем по доменам cat all_mail_2.txt | sed 's/.ru;/.ru:/I' | grep -iF .ru: >> all_mail_ru.txt cat all_mail_2.txt | sed 's/.su;/.su:/I' | grep -iF .su: >> all_mail_ru.txt cat all_mail_2.txt | sed 's/.by;/.by:/I' | grep -iF .by: >> all_mail_ru.txt cat all_mail_2.txt | sed 's/.ua;/.ua:/I' | grep -iF .ua: >> all_mail_ru.txt cat all_mail_2.txt | sed 's/.kz;/.kz:/I' | grep -iF .kz: >> all_mail_ru.txt cat all_mail_2.txt | sed 's/.am;/.am:/I' | grep -iF .am: >> all_mail_ru.txt cat all_mail_2.txt | sed 's/.az;/.az:/I' | grep -iF .az: >> all_mail_ru.txt cat all_mail_2.txt | grep -iFv --file=domains.lst > all_mail_other.txt # 5. Отделяем пароли sed 's|.*:||' all_mail_ru.txt >> all_mail_ru_pass.dic sed 's|.*:||' all_mail_other.txt >> all_mail_other_pass.dic # 6. Отделяем почтовые логины sed 's|@.*||' all_mail_ru.txt >> all_mail_ru_login.dic sed 's|@.*||' all_mail_other.txt >> all_mail_other_login.dic # 7. Отделяем почты sed 's|:.*||' all_mail_ru.txt >> all_mail_ru_e-mail.dic sed 's|:.*||' all_mail_other.txt >> all_mail_other_e-mail.dic # 8. Сортируем пароли cat all_mail_ru_pass.dic | sort | uniq >> pass_ru.dic cat all_mail_other_pass.dic | sort | uniq >> pass_other.dic # 9. Удаляем пароли менее 8-ми символов cat pass_ru.dic | sed '/......../!d' >> pass_ru_more_than_8.dic cat pass_other.dic | sed '/......../!d' >> pass_other_more_than_8.dic # 10. Сортируем логины cat all_mail_ru_login.dic | sort | uniq >> login_ru.dic cat all_mail_other_login.dic | sort | uniq >> login_other.dic # 11. Удаляем логины менее 8-ми символов cat login_ru.dic | sed '/......../!d' >> login_ru_more_than_8.dic cat login_other.dic | sed '/......../!d' >> login_other_more_than_8.dic # 12. Сортируем почтовые адреса cat all_mail_ru_e-mail.dic | sort | uniq >> e-mail_ru.dic cat all_mail_other_e-mail.dic | sort | uniq >> e-mail_other.dic # 13. Удаляем временные файлы rm -f all_mail_*.txt rm -f all_mail_*.dic domains.lst - список ".ru" доменов: .ru .su .by .ua .kz .am .az