Создание инструмента разведки
Практический скрипт
«Создание инструмента разведки» — бесплатный урок Ethical Hacking Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ethical Hacking Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ethical Hacking Academy содержит 4 уроков всего.
Объединение всех компонентов
Теперь Вы объедините переменные, циклы, выполнение инструментов и разбор данных в один практический скрипт разведки.
Цель: получить цель, обнаружить открытые порты, определить службы и сохранить упорядоченные результаты — всё одной командой.
Планирование скрипта
Хорошие инструменты проектируют до написания кода. Наш скрипт разведки будет:
- Проверять входные данные (требовать указать цель).
- Создавать каталог для вывода.
- Запускать сканирование портов, а затем определение версий.
- Разбирать данные об открытых портах и составлять сводку.
Заголовок и проверка входных данных
Начните с шебанга, параметров безопасности и проверки аргумента, которая выводит инструкции по использованию, если цель не указана.
#!/bin/bash
set -euo pipefail
if [ "$#" -ne 1 ]; then
echo "Usage: $0 <target>"
exit 1
fi
target=$1Каталог для вывода
Создайте отдельную папку с отметкой времени для каждой цели, чтобы повторные запуски не перезаписывали результаты друг друга.
stamp=$(date +%F_%H%M)
outdir="recon_${target}_${stamp}"
mkdir -p "$outdir"
echo "[*] Results in $outdir"Шаг 1: быстрое сканирование портов
Сначала быстро найдите открытые порты во всём диапазоне.
echo "[*] Scanning ports on $target"
nmap -p- --open -T4 "$target" -oG "$outdir/ports.gnmap" >/dev/nullШаг 2: разбор открытых портов
Извлеките номера открытых портов из вывода, пригодного для поиска, в список, разделённый запятыми, для следующего сканирования.
ports=$(grep -oE '[0-9]+/open' "$outdir/ports.gnmap" | cut -d/ -f1 | paste -sd, -)
echo "[*] Open ports: $ports"Шаг 3: определение версий
Запустите целевое сканирование версий служб только для открытых портов — это быстрее и менее заметно, чем повторно сканировать всё.
if [ -n "$ports" ]; then
nmap -sV -p "$ports" "$target" -oN "$outdir/services.txt"
fiШаг 4: сводка
Выведите понятную сводку, чтобы оператор видел результаты, не открывая файлы.
echo "=== Summary for $target ==="
grep 'open' "$outdir/services.txt" | awk '{print $1, $3}'Добавление журналирования
Добавьте в журнал строку с отметкой времени, чтобы можно было восстановить, что и когда запускалось. Это важно для составления отчётов.
echo "$(date) scanned $target -> $ports" >> recon.logЗапуск инструмента
Сделайте его исполняемым и укажите виртуальную машину VM из лаборатории. Всё будет сохранено в папке вывода.
chmod +x recon.sh
./recon.sh 192.168.56.10Дальнейшее расширение
На основе этого решения можно добавить:
- Перебор веб-каталогов, если открыт порт 80/443.
- Получение баннеров с помощью netcat.
- Обход списка целей вместо одного узла.
- Создание отчётов в HTML или Markdown.
Быстрая проверка
Вспомните, зачем мы выполняем разбор перед сканированием версий.
Итоги
Вы создали работающий инструмент разведки:
- Проверили входные данные и создали каталог вывода с отметкой времени.
- Выполнили быстрое сканирование портов, разобрали открытые порты, а затем просканировали версии только этих портов.
- Вывели сводку и записали сведения о запуске в журнал.
- Определили понятные направления для расширения: перебор веб-каталогов, получение баннеров и создание отчётов.
На этом курс по написанию скриптов Bash завершён.
Часто задаваемые вопросы
Урок «Создание инструмента разведки» бесплатный?
Да — полный текст урока «Создание инструмента разведки» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ethical Hacking Academy, подпишись на CoddyKit PRO. Курс Ethical Hacking Academy содержит 4 уроков всего.
Чему я научусь в уроке «Создание инструмента разведки»?
Практический скрипт Ты практикуешь Ethical Hacking Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Ethical Hacking Academy?
Предыдущий опыт не требуется. Ethical Hacking Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Создание инструмента разведки»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Ethical Hacking Academy?
Да. Каждый урок Ethical Hacking Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Основы скриптов
- Автоматизация разведки
- Разбор вывода
- Создание инструмента разведки