У мене є три ідеї для вас. Всі вони мають свою складність, і ви можете змішувати та поєднувати, як вважаєте за потрібне. Перший, мабуть, найпростіший, але найменш надійний (сам по собі).
1. Пасивне виявлення MAC
Стандартним способом було б відстеження MAC-адрес, які вимагають DHCP-адреси від маршрутизатора. Більшість маршрутизаторів надають екран стилю "Приєднані пристрої", який підкаже, хто підключається.
Це не автоматично, але ви можете (досить легко) скриптувати деякий Bash / Python, щоб тягнути сторінку маршрутизатора вниз, проаналізувати MAC-адреси та перевірити їх на список відомих / дозволених MAC-адрес.
Проблема тут ні в чому не є миттєвою. Ви покладаєтесь на маршрутизатор, щоб оновити його сторінку, і вам доведеться часто опитувати це. Деяким маршрутизаторам це не сподобається. У мене є хитрий маршрутизатор Edimax, який виходить з ладу, якщо ви завантажуєте більше 10 сторінок за хвилину (жалко!), Тому це може не працювати.
MAC-адреси також надзвичайно підлягають підробці. macchanger
наприклад, дозволить підробляти MAC-адресу однією командою. Я думаю, що навіть Менеджер мережі дозволить вам це зробити. Якщо хтось не хоче виявляти його, він буде контролювати мережевий трафік та підробляти один із дійсних (відомих) пристроїв.
2. Активне обнюхування
Тут ми зриваємо колеса і копаємося. Вам знадобиться запасне бездротове щось або інше в місці, яке може перехоплювати трафік до / від маршрутизатора (в ідеалі досить близько до нього).
Коротше кажучи, ви підключаєтесь airodump-ng
і спостерігаєте за людьми, підключеними до вашої мережі. Потрібно мати можливість сценарію цього виходу, тому коли з’явиться новий пристрій і почне використовувати вашу мережу, ви можете миттєво щось зробити .
Ідея полягала б у тому, що ви запускаєте це під завантаженням (як root):
airmon-ng start wlan0
airodump-ng --bssid 00:1F:9F:14:6F:EB -w output --output-format csv mon0
Замініть BSSID на точки доступу.
Це записує файл з автоматичним збільшенням, який можна регулярно аналізувати. Наведена вище версія записує файл значень, розділених комами, що є досить базовим, але якщо ви задоволені XML (Python може зробити це досить просто), ви можете подивитися netxml
вихідний формат для airodump.
У будь-якому випадку це дає вам регулярну інформацію про те, які пристрої використовують мережу (і скільки трафіку вони також надсилають). Це все так само помилково, як і використання таблиці ARP маршрутизатора, але це в реальному часі.
Якщо ви перебуваєте в розбещеному режимі, якщо ваш скрипт підбирає клієнта, який, на його думку, не повинен знаходитись у мережі, ви можете використовувати tcpdump
для тралінгу пакетів та обміну журналами, що представляють інтерес (HTTP-запити тощо). Це більше програмування, але це можна зробити.
3. Відбитки пальців с nmap
Ще один метод - підмітати мережу для клієнтів nmap
. Зазвичай, ви можете подумати, це не допоможе вам надто, якщо хтось блокує пінг, він може не з’явитися.
Я пропоную вам використовувати це разом з будь-яким з двох інших методів. 1
дасть вам IP-адресу, щоб ви могли прямувати карту безпосередньо. 2
не дасть вам IP, але це дозволить вам знати, скільки клієнтів nmap
слід очікувати, щоб знайти саме в той момент часу. Переконайтеся, що всі ваші пристрої підлягають плагінгу.
Під час nmap
запуску (наприклад sudo nmap -O 192.168.1.1/24
) він спробує знайти хостів, а потім зробить сканування портів на них, щоб розробити, що вони є. Ваш контрольний список повинен містити, як повинен реагувати кожен з ваших пристроїв nmap
.
Якщо ви хочете піти далі, ви можете запустити простий сервер на кожному зі своїх комп’ютерів. Просто щось, що прийняло з'єднання, а потім перекинуло його. Коротше кажучи: щось nmap
шукати. Якщо він виявить його відкритим, можливо, це ваш комп'ютер.
4. Краще закріпіть свою мережу
Ви насправді повинні зробити це спочатку, якщо ви переживаєте. Використовуйте WPA2 / AES. Ніколи не використовуйте WEP (тріщин за п’ять хвилин).
Якщо ви все ще переживаєте, що хтось може виявити ключ (WPA2 вимагає багато даних та обчислювального часу, щоб зламати), перейдіть до моделі RADIUS. Це рамка аутентифікації, яка встановлює одноразовий ключ для кожного користувача. PITA для встановлення, хоча.
Але що робити ..?
Якби я не був задоволений речами, напевно, я б вручну дивився аеродуму. Якби я все ще не був задоволений, я б почав брати дактилоскопічні речі, які я бачив. Хоча дещо складно (аж ніяк не неможливо) сценарій.
Найпростіший сценарій - це прокручування маршрутизатора з відбитками пальців nmap
. Короткий і простий.