14 KiB
Radio
Aprende hacking en AWS de cero a héroe con htARTE (HackTricks AWS Red Team Expert)!
Otras formas de apoyar a HackTricks:
- Si quieres ver a tu empresa anunciada en HackTricks o descargar HackTricks en PDF revisa los PLANES DE SUSCRIPCIÓN!
- Consigue el merchandising oficial de PEASS & HackTricks
- Descubre La Familia PEASS, nuestra colección de NFTs exclusivos
- Únete al 💬 grupo de Discord o al grupo de telegram o sígueme en Twitter 🐦 @carlospolopm.
- Comparte tus trucos de hacking enviando PRs a los repositorios de GitHub de HackTricks y HackTricks Cloud.
SigDigger
SigDigger es un analizador de señales digitales gratuito para GNU/Linux y macOS, diseñado para extraer información de señales de radio desconocidas. Soporta una variedad de dispositivos SDR a través de SoapySDR, y permite la demodulación ajustable de señales FSK, PSK y ASK, decodificar video analógico, analizar señales intermitentes y escuchar canales de voz analógicos (todo en tiempo real).
Configuración Básica
Después de instalar hay algunas cosas que podrías considerar configurar.
En ajustes (el segundo botón de la pestaña) puedes seleccionar el dispositivo SDR o seleccionar un archivo para leer y qué frecuencia sintonizar y la tasa de muestreo (recomendado hasta 2.56Msps si tu PC lo soporta)\
En el comportamiento de la GUI se recomienda habilitar algunas cosas si tu PC lo soporta:
{% hint style="info" %} Si te das cuenta de que tu PC no está capturando cosas, intenta desactivar OpenGL y reducir la tasa de muestreo. {% endhint %}
Usos
- Solo para capturar algún tiempo de una señal y analizarla mantén presionado el botón "Push to capture" tanto tiempo como necesites.
- El Tuner de SigDigger ayuda a capturar mejores señales (pero también puede degradarlas). Idealmente comienza con 0 y sigue aumentándolo hasta que encuentres que el ruido introducido es mayor que la mejora de la señal que necesitas).
Sincronizar con canal de radio
Con SigDigger sincroniza con el canal que quieras escuchar, configura la opción "Vista previa de audio de banda base", configura el ancho de banda para obtener toda la información enviada y luego ajusta el Tuner al nivel antes de que el ruido realmente comience a aumentar:
Trucos Interesantes
- Cuando un dispositivo está enviando ráfagas de información, generalmente la primera parte va a ser un preámbulo así que no te preocupes si no encuentras información allí o si hay algunos errores.
- En marcos de información generalmente deberías encontrar diferentes marcos bien alineados entre ellos:
- Después de recuperar los bits es posible que necesites procesarlos de alguna manera. Por ejemplo, en la codificación Manchester un subida+bajada será un 1 o 0 y una bajada+subida será el otro. Así que pares de 1s y 0s (subidas y bajadas) serán un 1 o un 0 real.
- Incluso si una señal está usando codificación Manchester (es imposible encontrar más de dos 0s o 1s seguidos), podrías encontrar varios 1s o 0s juntos en el preámbulo.
Descubriendo el tipo de modulación con IQ
Hay 3 maneras de almacenar información en señales: Modulando la amplitud, frecuencia o fase.
Si estás revisando una señal hay diferentes maneras de intentar averiguar qué se está utilizando para almacenar información (encuentra más maneras abajo) pero una buena es revisar el gráfico IQ.
- Detectando AM: Si en el gráfico IQ aparecen por ejemplo 2 círculos (probablemente uno en 0 y otro en una amplitud diferente), podría significar que esta es una señal AM. Esto se debe a que en el gráfico IQ la distancia entre el 0 y el círculo es la amplitud de la señal, por lo que es fácil visualizar diferentes amplitudes utilizadas.
- Detectando PM: Como en la imagen anterior, si encuentras pequeños círculos no relacionados entre sí probablemente significa que se utiliza una modulación de fase. Esto se debe a que en el gráfico IQ, el ángulo entre el punto y el 0,0 es la fase de la señal, lo que significa que se utilizan 4 fases diferentes.
- Ten en cuenta que si la información está oculta en el hecho de que una fase cambia y no en la fase en sí, no verás diferentes fases claramente diferenciadas.
- Detectando FM: IQ no tiene un campo para identificar frecuencias (la distancia al centro es amplitud y el ángulo es fase).
Por lo tanto, para identificar FM, deberías ver básicamente un círculo en este gráfico.
Además, una frecuencia diferente está "representada" en el gráfico IQ por una aceleración de velocidad a través del círculo (así que en SysDigger seleccionando la señal el gráfico IQ se llena, si encuentras una aceleración o cambio de dirección en el círculo creado podría significar que esto es FM):
Ejemplo AM
{% file src="../../.gitbook/assets/sigdigger_20220308_165547Z_2560000_433500000_float32_iq.raw" %}
Descubriendo AM
Revisando el sobre
Revisando la información AM con SigDigger y simplemente mirando el sobre puedes ver diferentes niveles claros de amplitud. La señal utilizada está enviando pulsos con información en AM, así es como se ve un pulso:
Y así es como parte del símbolo se ve con la forma de onda:
Revisando el Histograma
Puedes seleccionar toda la señal donde se encuentra la información, seleccionar el modo Amplitud y Selección y hacer clic en Histograma. Puedes observar que solo se encuentran 2 niveles claros
Por ejemplo, si seleccionas Frecuencia en lugar de Amplitud en esta señal AM encontrarás solo 1 frecuencia (no hay manera de que la información modulada en frecuencia esté usando solo 1 frecuencia).
Si encuentras muchas frecuencias potencialmente esto no será una FM, probablemente la frecuencia de la señal fue modificada debido al canal.
Con IQ
En este ejemplo puedes ver cómo hay un gran círculo pero también muchos puntos en el centro.
Obtener Tasa de Símbolos
Con un símbolo
Selecciona el símbolo más pequeño que puedas encontrar (para estar seguro de que es solo 1) y revisa la "Frecuencia de selección". En este caso sería 1.013kHz (así que 1kHz).
Con un grupo de símbolos
También puedes indicar el número de símbolos que vas a seleccionar y SigDigger calculará la frecuencia de 1 símbolo (cuantos más símbolos seleccionados probablemente mejor). En este escenario seleccioné 10 símbolos y la "Frecuencia de selección" es 1.004 Khz:
Obtener Bits
Habiendo encontrado que esta es una señal modulada en AM y la tasa de símbolos (y sabiendo que en este caso algo hacia arriba significa 1 y algo hacia abajo significa 0), es muy fácil obtener los bits codificados en la señal. Entonces, selecciona la señal con información y configura el muestreo y la decisión y presiona muestrear (verifica que Amplitud esté seleccionado, la Tasa de Símbolos descubierta esté configurada y la recuperación de reloj de Gadner esté seleccionada):
- Sincronizar con intervalos de selección significa que si previamente seleccionaste intervalos para encontrar la tasa de símbolos, esa tasa de símbolos se usará.
- Manual significa que se va a usar la tasa de símbolos indicada
- En Selección de intervalo fijo indicas el número de intervalos que se deben seleccionar y calcula la tasa de símbolos a partir de ello
- Recuperación de reloj de Gadner suele ser la mejor opción, pero aún necesitas indicar alguna tasa de símbolos aproximada.
Al presionar muestrear aparece esto:
Ahora, para hacer que SigDigger entienda dónde está el rango del nivel que lleva información necesitas hacer clic en el nivel más bajo y mantenerlo presionado hasta el nivel más alto:
Si hubiera habido por ejemplo 4 niveles diferentes de amplitud, deberías haber necesitado configurar los Bits por símbolo a 2 y seleccionar desde el más pequeño hasta el más grande.
Finalmente aumentando el Zoom y cambiando el Tamaño de Fila puedes ver los bits (y puedes seleccionar todo y copiar para obtener todos los bits):
Si la señal tiene más de 1 bit por símbolo (por ejemplo 2), SigDigger no tiene forma de saber qué símbolo es 00, 01, 10, 11, por lo que usará diferentes escalas de grises para representar cada uno (y si copias los bits usará números del 0 al 3, necesitarás tratarlos).
Además, usa codificaciones como Manchester, y subida+bajada puede ser 1 o 0 y una bajada+subida puede ser un 1 o 0. En esos casos necesitas tratar los subidas (1) y bajadas (0) obtenidos para sustituir los pares de 01 o 10 como 0s o 1s.
Ejemplo FM
{% file src="../../.gitbook/assets/sigdigger_20220308_170858Z_2560000_433500000_float32_iq.raw" %}
Descubriendo FM
Revisando las frecuencias y la forma de onda
Ejemplo de señal enviando información modulada en FM:
En la imagen anterior puedes observar bastante bien que se utilizan 2 frecuencias pero si observas la forma de onda podrías no ser capaz de identificar correctamente las 2 frecuencias diferentes:
Esto se debe a que capturé la señal en ambas frecuencias, por lo tanto, una es aproximadamente la otra en negativo:
Si la frecuencia sincronizada está más cerca de una frecuencia que de la otra puedes ver fácilmente las 2 frecuencias diferentes:
Revisando el histograma
Revisando el histograma de frecuencias de la señal con información puedes ver fácilmente 2 señales diferentes:
En este caso si revisas el histograma de Amplitud encontrarás solo una amplitud, por lo que no puede ser AM (si encuentras muchas amplitudes podría ser porque la señal ha estado perdiendo potencia a lo largo del canal):
Y este sería el histograma de fase (que deja muy claro que la señal no está modulada en fase):
Con IQ
IQ no tiene un campo para identificar frecuencias (la distancia al centro es amplitud y el ángulo es fase).
Por lo tanto, para identificar FM, deberías ver básicamente un círculo en este gráfico.
Además, una frecuencia diferente está "representada" en el gráfico IQ por una aceleración de velocidad a través del círculo (así que en SysDigger seleccionando la señal el gráfico IQ se llena, si encuentras una aceleración o cambio de dirección en el círculo creado podría significar que esto es FM):
Obtener Tasa de Símbolos
Puedes usar la misma técnica que la utilizada en el ejemplo AM para obtener la tasa de símbolos una vez que hayas encontrado las frecuencias que llevan símbolos.
Obtener Bits
Puedes usar la misma técnica que la utilizada en el ejemplo AM para obtener los bits una vez que hayas encontrado que la señal está modulada en frecuencia y la tasa de símbolos.
Aprende hacking en AWS de cero a héroe con htARTE (HackTricks AWS Red Team Expert)!
Otras formas de apoyar a HackTricks:
- Si quieres ver a tu empresa anunciada en HackTricks o descargar HackTricks en PDF revisa los PLANES DE SUSCRIPCIÓN!
- Consigue el merchandising oficial de PEASS & HackTricks
- Descubre La Familia PEASS, nuestra colección de NFTs exclusivos
- Únete al 💬 grupo de Discord o al grupo de telegram o sígueme en Twitter 🐦 @carlospolopm.
- Comparte tus trucos de hacking enviando PRs a los repositorios de GitHub de HackTricks y HackTricks Cloud.