Всем привет! Когда понял, что 4 из 6 моих соседей используют номера телефонов в качестве пароля к вайфаю, решил написать небольшую тулзу на питоне. Суть в том, чтобы уменьшить время брутфорса за счет указания фильтров при создании словаря с телефонами. Фильтры по коду, региону, оператору. Думаю второе самое интересное. Интересно ваше мнение насколько это вообще имеет смысл. Ссылка на репу: https://github.com/555Russich/phones_range
Только не бейте, я совсем еще скрипторебенок... И если это оффтоп, а тема соответствующая есть, прошу направить, я не нашел.
Еще интересно кто как
склеивает словари с паролями? Сохраняете ли порядок? Как я понял последние версии словарей от binarymaster упорядочены по частоте использования, только я вот не понял как в bash нормально это сделать.
Сейчас накатал такой скрипт merge_dicts.sh:
Код:
#! /bin/bash
file_out="res.dict"
start_time=$(date +%s)
count_overall_before=0
for file in "$@"
do
count_in_file=$(wc -l "$file" | grep -o -P "^\d+")
echo "$count_in_file lines in $file"
let count_overall_before+=count_in_file
done
echo "Lines count before: $count_overall_before"
sort -u "$@" > $file_out
count_overall_after=$(wc -l $file_out | grep -o -P "^\d+")
time_in_seconds=$(($(date +%s)-start_time))
echo "Lines count after: $count_overall_after"
echo "Duplicate lines count: $((count_overall_before-count_overall_after))"
echo "Seconds estimated: $time_in_seconds"
Понимаю, что огромное количество времени затрачивается только echo некоторых значений, но мне хотелось бы видеть сколько новых паролей появилось, хоть и все это делается в одну строку функцией sort. Может быть кто-то поделится своей реализаций. Даже если без промежуточных выводов, как сохраняете подярок?