Radio
Last updated
Last updated
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
SigDigger є безкоштовним аналізатором цифрових сигналів для GNU/Linux та macOS, призначеним для витягування інформації з невідомих радіосигналів. Він підтримує різноманітні SDR пристрої через SoapySDR і дозволяє регулювати демодуляцію FSK, PSK та ASK сигналів, декодувати аналогове відео, аналізувати сплески сигналів і слухати аналогові голосові канали (все в реальному часі).
Після встановлення є кілька речей, які ви можете розглянути для налаштування. У налаштуваннях (друга вкладка) ви можете вибрати SDR пристрій або вибрати файл для читання, а також частоту для синхронізації та частоту вибірки (рекомендується до 2.56Msps, якщо ваш ПК це підтримує)\
У поведінці GUI рекомендується активувати кілька речей, якщо ваш ПК це підтримує:
Якщо ви помітили, що ваш ПК не захоплює сигнали, спробуйте вимкнути OpenGL і знизити частоту вибірки.
Просто захопіть деякий час сигналу та проаналізуйте його, утримуючи кнопку "Push to capture" стільки, скільки потрібно.
Тюнер SigDigger допомагає захоплювати кращі сигнали (але він також може їх погіршити). Ідеально почати з 0 і продовжувати збільшувати, поки ви не знайдете, що шум, який вводиться, є більшим, ніж покращення сигналу, яке вам потрібно).
З SigDigger синхронізуйтеся з каналом, який ви хочете почути, налаштуйте опцію "Baseband audio preview", налаштуйте ширину смуги, щоб отримати всю інформацію, що надсилається, а потім встановіть Тюнер на рівень, перед тим як шум почне дійсно зростати:
Коли пристрій надсилає сплески інформації, зазвичай перша частина буде преамбулою, тому вам не потрібно турбуватися, якщо ви не знайдете інформацію там або якщо там є деякі помилки.
У кадрах інформації ви зазвичай повинні знайти різні кадри, добре вирівняні між собою:
Після відновлення бітів вам, можливо, потрібно буде обробити їх якимось чином. Наприклад, у манчестерській кодуванні підйом+спад буде 1 або 0, а спад+підйом буде іншим. Таким чином, пари 1 і 0 (підйоми та спади) будуть реальним 1 або реальним 0.
Навіть якщо сигнал використовує манчестерське кодування (неможливо знайти більше ніж два 0 або 1 підряд), ви можете знайти кілька 1 або 0 разом у преамбулі!
Існує 3 способи зберігати інформацію в сигналах: модуляція амплітуди, частоти або фази. Якщо ви перевіряєте сигнал, є різні способи спробувати з'ясувати, що використовується для зберігання інформації (знайдіть більше способів нижче), але хороший спосіб - перевірити графік IQ.
Виявлення AM: Якщо на графіку IQ з'являються, наприклад, 2 кола (можливо, одне в 0, а інше на іншій амплітуді), це може означати, що це AM сигнал. Це тому, що на графіку IQ відстань між 0 і колом є амплітудою сигналу, тому легко візуалізувати різні амплітуди, що використовуються.
Виявлення PM: Як у попередньому зображенні, якщо ви знайдете маленькі кола, які не пов'язані між собою, це, ймовірно, означає, що використовується фазова модуляція. Це тому, що на графіку IQ кут між точкою та 0,0 є фазою сигналу, тому це означає, що використовуються 4 різні фази.
Зверніть увагу, що якщо інформація прихована в тому, що фаза змінюється, а не в самій фазі, ви не побачите чітко відрізнені різні фази.
Виявлення FM: IQ не має поля для ідентифікації частот (відстань до центру - це амплітуда, а кут - це фаза). Тому, щоб ідентифікувати FM, ви повинні бачити в основному коло на цьому графіку. Більше того, інша частота "представляється" графіком IQ через прискорення швидкості по колу (тому в SysDigger, вибираючи сигнал, графік IQ заповнюється, якщо ви знайдете прискорення або зміну напрямку в створеному колі, це може означати, що це FM):
Перевіряючи AM інформацію з SigDigger і просто дивлячись на обгортку, ви можете побачити різні чіткі рівні амплітуди. Використовуваний сигнал надсилає імпульси з інформацією в AM, ось як виглядає один імпульс:
А ось як виглядає частина символу з формою хвилі:
Ви можете вибрати весь сигнал, де знаходиться інформація, вибрати режим Амплітуда та Вибір і натиснути на Гістограму. Ви можете спостерігати, що 2 чіткі рівні лише знайдені
Наприклад, якщо ви виберете Частоту замість Амплітуди в цьому AM сигналі, ви знайдете лише 1 частоту (немає способу, щоб інформація, модуляція в частоті, використовувала лише 1 частоту).
Якщо ви знайдете багато частот, це, ймовірно, не буде FM, ймовірно, частота сигналу була просто змінена через канал.
У цьому прикладі ви можете побачити, як є велике коло, але також багато точок у центрі.
Виберіть найменший символ, який ви можете знайти (щоб ви були впевнені, що це лише 1) і перевірте "Вибір частоти". У цьому випадку це буде 1.013kHz (тобто 1kHz).
Ви також можете вказати кількість символів, які ви збираєтеся вибрати, і SigDigger розрахує частоту 1 символу (чим більше символів вибрано, тим краще, ймовірно). У цьому сценарії я вибрав 10 символів, і "Вибір частоти" становить 1.004 Khz:
Знайшовши, що це AM модуляційний сигнал і символьна частота (і знаючи, що в цьому випадку щось вгору означає 1, а щось вниз означає 0), дуже легко отримати біти, закодовані в сигналі. Отже, виберіть сигнал з інформацією, налаштуйте вибірку та рішення і натисніть вибірку (перевірте, що Амплітуда вибрана, виявлена Символьна частота налаштована, а Gadner clock recovery вибрана):
Синхронізація з вибірковими інтервалами означає, що якщо ви раніше вибрали інтервали для знаходження символічної частоти, ця символічна частота буде використана.
Ручний означає, що вказана символічна частота буде використана
У Виборі фіксованого інтервалу ви вказуєте кількість інтервалів, які повинні бути вибрані, і вона розраховує символічну частоту з цього
Gadner clock recovery зазвичай є найкращим варіантом, але вам все ще потрібно вказати приблизну символічну частоту.
Натискаючи вибірку, з'являється таке:
Тепер, щоб змусити SigDigger зрозуміти де знаходиться діапазон рівня, що несе інформацію, вам потрібно натиснути на нижній рівень і утримувати натиснутим до найбільшого рівня:
Якщо б було, наприклад, 4 різні рівні амплітуди, вам потрібно було б налаштувати Біти на символ до 2 і вибрати від найменшого до найбільшого.
Нарешті, збільшуючи Масштаб і змінюючи розмір рядка, ви можете побачити біти (і ви можете вибрати все та скопіювати, щоб отримати всі біти):
Якщо сигнал має більше ніж 1 біт на символ (наприклад, 2), SigDigger не має способу знати, який символ є 00, 01, 10, 11, тому він використовуватиме різні сірі відтінки, щоб представити кожен (і якщо ви скопіюєте біти, він використовуватиме числа від 0 до 3, вам потрібно буде їх обробити).
Також використовуйте кодування, такі як Манчестер, і підйом+спад може бути 1 або 0, а спад+підйом може бути 1 або 0. У таких випадках вам потрібно обробити отримані підйоми (1) і спади (0), щоб замінити пари 01 або 10 на 0 або 1.
Приклад сигналу, що надсилає інформацію, модуляцію в FM:
На попередньому зображенні ви можете досить добре спостерігати, що використовується 2 частоти, але якщо ви спостерігаєте за формою хвилі, ви можете не змігти правильно ідентифікувати 2 різні частоти:
Це тому, що я захопив сигнал на обох частотах, тому одна приблизно є інша в негативі:
Якщо синхронізована частота ближча до однієї частоти, ніж до іншої, ви можете легко побачити 2 різні частоти:
Перевіряючи частотну гістограму сигналу з інформацією, ви можете легко побачити 2 різні сигнали:
У цьому випадку, якщо ви перевірите Гістограму амплітуди, ви знайдете лише одну амплітуду, тому це не може бути AM (якщо ви знайдете багато амплітуд, це може бути через те, що сигнал втратив потужність по каналу):
А це була б гістограма фази (що дуже чітко показує, що сигнал не модуляційний у фазі):
IQ не має поля для ідентифікації частот (відстань до центру - це амплітуда, а кут - це фаза). Тому, щоб ідентифікувати FM, ви повинні бачити в основному коло на цьому графіку. Більше того, інша частота "представляється" графіком IQ через прискорення швидкості по колу (тому в SysDigger, вибираючи сигнал, графік IQ заповнюється, якщо ви знайдете прискорення або зміну напрямку в створеному колі, це може означати, що це FM):
Ви можете використовувати ту ж техніку, що й у прикладі AM, щоб отримати символічну частоту, як тільки ви знайдете частоти, що несуть символи.
Ви можете використовувати ту ж техніку, що й у прикладі AM, щоб отримати біти, як тільки ви знайдете, що сигнал модуляційний у частоті і символьна частота.
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)