Перебор директорий, паролей, параметров, поддоменов и многих других задач требует наличия подходящего словаря. Чтобы упростить процесс поиска нужного, я написал небольшой инструмент, который использует fzf для быстрого поиска и выбора словаря.
🔹 Особенности:
- Поиск словарей в указанной директории с использованием расширенного поиска.
- Возможность предварительного просмотра файлов с подсчетом строк и размеров.
- Подстановка пути к словарю сразу в терминал по нажатию
Enter.Поддержка hotkeys:
В оболочке
zsh:Alt+E — Открывает меню поиска и подставляет путь к словарю в командную строку после выбора.Внутри поиска:
Ctrl+P — включает/выключает предпросмотр.Ctrl+E — редактирование выбранного файла в nvim.Ctrl+Y — копирование пути файла в буфер обмена.🔹 Как установить:
Установите fzf и по желанию neovim.
Добавьте следующий скрипт в ваш
.zshrc.function ws() {
local DIR_PATH="${1:-/usr/share/wordlists}"
local CACHE_DIR="$HOME/.wordlist_cache"
mkdir -p "$CACHE_DIR"
local CACHE_FILE="$CACHE_DIR/$(find -L "$DIR_PATH" -type f -name "*.txt" | md5sum | cut -d ' ' -f1)"
DELIMITER="\t"
if [[ ! -f "$CACHE_FILE" ]]; then
find -L "$DIR_PATH" -type f -name "*.txt" -print0 |
xargs -0 -n1 -P$(nproc) bash -c 'for f; do
lines=$(($(wc -l < "$f" 2>/dev/null) + 1))
printf "%-13s\t%s\n" "[$lines]" "$f"
done' _ > "$CACHE_FILE"
fi
selected=$(<"$CACHE_FILE" fzf \
--delimiter=$DELIMITER \
--bind 'ctrl-p:toggle-preview' \
--bind 'ctrl-e:execute(nvim {2})' \
--bind 'ctrl-y:execute-silent(printf %s {2} | xclip -selection clipboard)' \
--preview '
printf "\033[1;32m📄 File:\033[0m %s\n" {2}
printf "\033[1;34m📏 Lines:\033[0m "
expr $(wc -l < {2}) + 1
printf "\033[1;34m💾 Size:\033[0m "
du -h {2} | cut -f1
printf "\n\033[1;36m📜 Preview:\033[0m\n"
head -n 100 {2}
' \
--preview-window=up:50%:wrap \
--header '╱ Ctrl+P: toggle preview │ Ctrl+E: edit │ Ctrl+Y: copy path /')
echo "$selected" | awk -F $DELIMITER '{print $2}'
}
function _ws_insert() {
local selected
selected=$(ws "$1")
[[ -z "$selected" ]] && return
LBUFFER+="$selected"
}
zle -N _ws_insert
bindkey "^[e" _ws_insertТеперь вы можете легко искать, выбирать и редактировать нужные словари прямо из терминала!
💻 Попробуйте и упростите процесс работы с файлами словарей!
#Cybersecurity #PenTest #Wordlist #fzf #zsh #Automation #Security