Инструкция и скрипты для серии роликов: "Роутер - как инструмент WiFi аудита".

Быстрый сброс роутера из консоли:

SOFT RESET => firstboot -y && reboot now
HARD RESET => umount /overlay && jffs2reset && reboot now
---
Установить все требуемые пакеты сразу:
opkg update && opkg install tcpdump-mini zram-swap kmod-button-hotplug
---

Предварительная настройка:

1. Установливаем Putty и WinSCP
2. Подключем роутер к ПК и интернету.
3. Проверяем объем свободного места
df -Th
4. Установливаем требуемые пакеты
opkg update && opkg install tcpdump-mini
5. Проверяем работу tcpdump
tcpdump -D
6. Проверяем параметры WiFi
iw list
7. Корректируем параметры WiFI интерфейса /etc/config/wireless
option country 'BZ'
option disabled '0'
8. Применяем новые настройки WiFi
wifi reload
iw list
9. Проверяем WiFi интерфейс
iwinfo phy0 info
iwinfo phy0 scan
---

Увеличение объема оперативной памяти:
[решает проблему с OOM-killer и увеличивает время захвата до залипания tcpdump]

opkg update && opkg install zram-swap

cat /proc/meminfo |grep -E '(MemTotal|SwapTotal)'
---

Отключаем ненужные службы:

Смотрим список не нужных процессов "ps"
service - посмотреть список доступных служб
service firewall disable - отключаем файрвол
service uhttpd disable - отключаем web-интерфейс
service odhcpd disable - отключаем службу IPv6
service sysntpd disable - отключаем службу времени

Подчистить "/etc/config/network"
(отключить всё связанное с ipv6 и сменить wan с "dhcp" на "static")
---

Решаем вопрос времени в роутере:

Устанавливаем временную зону и текущее время
"/etc/config/system"  => option timezone 'MSK-3'
Перезапускаем службу:  service system restart
date => отобразить текущее время и дату в роутере
date -s 2023.05.20-12:05:00 => установить время и дату в роутере

Копируем папку "time" в папку "/root" на роутере
Делаем исполняемыми файлы timerestore.sh и timesave_reboot.sh
Добавляем в "/etc/rc.local" => sleep 10 && /root/time/timerestore.sh

Для удобства создаем ссылку:  ln /root/time/timesave_reboot.sh /root/reb
!!! - перезагрузка роутера (если вручную) теперь только через команду "./reb"
---

Подключаем планировщик "cron" для запланированных перезагрузок:
https://openwrt.org/docs/guide-user/base-system/cron

crontab -e => редактировать конфигурацию
Вставляем "59 * * * * sleep 70 && touch /etc/banner && /root/time/timesave_reboot.sh"

crontab -l => просмотреть конфигурацию
В последствии планирование можно редактировать через WinSCP по пути "/etc/crontabs/root"

"/etc/init.d/cron restart" => применить изменения
---

Подключаем светоиндикацию:

Копируем папку "led" в папку "/root" на роутере
Делаем исполняемыми файлы count.sh и led.sh
Добавляем в capture.sh строчку "echo $EAPOL_FILE > /root/led/led_filename" перед захватом EAPOL
Добавляем в "/etc/crontabs/root" строчку "*/20 * * * * /root/led/count.sh" => (считаем кол-во eapol в файле захвата)
Добавляем в автозагрузку rc.local => "/root/led/led.sh" (вкл. лампочку при загрузке если хш был захвачен)
---

Поднимаем свою ТД:
opkg update && opkg install wireless-tools (не обязательно !!)
Копируем папку "ap" в папку "/root" на роутере
Делаем исполняемыми файлы ap_start.sh и ap_stop.sh

!!! Канал ТД в файле "hostapd.conf" должен совпадать с целевой ТД
---

Привязываем аппаратную кнопку "wps" к запуску/остановке вирт. ТД
https://openwrt.org/docs/guide-user/har … are.button

opkg update && opkg install kmod-button-hotplug

Определяем системное имя кнопки в OpenWRT
Создаем в "/etc/hotplug.d" папку "button" и копируем в неё скрипт "buttons-name"
Нажимаем аппаратную кнопку на роутере и через "logread" смотрим её название
Запоминаем название кнопки и удаляем скрипт "buttons-name"

Копируем в папку "/etc/hotplug.d/button" скрипт "00-button"
Добавляем в содержимое файла "/etc/config/system" содержимое из архива

https://t.me/dcbeelinekz/24 Скачать