Memoria - Auditorías de replicación de frecuencias - Con Raspberry Pi / RTL-SDR

De Wiket
Salta a la navegació Salta a la cerca



Esquemas de funcionamiendo





Esquema-ejemplo.png middle-right





Motivaciones


El origen del proyecto surge de la curiosidad por conocer la variedad de frecuencias que nos rodean así como investigar la manera de replicar dichas frecuencias para auditar y testar el tipo de seguridad con la que trabajan estos dispositivos para determinar si realmente son seguras.

Problemas


Los principales problemas que nos han surgido a la hora de investigar el tipo de herramientas que nos pueden facilitar el análisis y posterior replica han sido los siguientes:

Herramientas:

Hemos investigado entre múltiples herramientas y para nuestro caso concreto nos han dado resultado los programas URH, RPITX, RTL_433.

Casos prácticos


DINOSCRIPT


-#!/bin/bash
clear
echo ""
echo ""
echo "¡¡Bienvenido al script para mover el dinosaurio por radio con raspberry!!"
echo
cat << LIST
Para hacer que se mueva el dinosaurio pulsa (a)
Para hacer que haga ruido pulsa (s)
LIST
echo
echo
while [ "$OPTION" != "q" ]; do
read -n 1 OPTION
if [ "$OPTION" == "a" ] || [ "$OPTION" == "s" ]
then
echo
echo "__________________"
echo
echo "OPCION CORRECTA! "
echo "__________________"
echo
if [ "$OPTION" == "a" ]
then
echo
echo "###########################"
echo "____Moviendo Dinosaurio____"
echo "###########################"
echo
sendiq -s 250000 -f 27.145e6 -t u8 -i ../Carpeta_Grabaciones/ruido_dinosaurio.iq &
else
if [ "$OPTION" == "s" ]
then
echo
echo "###################################"
echo "___Haciendo ruido con Dinosaurio___"
echo "###################################"
echo
sendiq -s 250000 -f 27.145e6 -t u8 -i ../Carpeta_Grabaciones/movimiento_dinosaurio.iq &
fi
fi
else
echo "--------------opción incorrecta---------------"
fi
done


Como caso práctico hemos replicado la señal emitida por un mando de control remoto para un dinosaurio, hemos analizado la señal y una vez editada y grabada hemos programado un script en bash "Dinoscript" para poder hacer de la raspberry un radio control casero y controlar el dinosaurio.

También hemos analizado la señal de un mando de coche y hemos determinado el tipo de seguridad, siendo del tipo Rolling-Code y hemos visto como únicamente se modifican los últimos 5 bits de la trama.

Conclusiones


Como conclusiones sobre la seguridad de los dispositivos por radio podemos sacar que hay tipos de comunicaciones (OnOffKey "OOK") que no van seguras al poder ser interpretadas y replicadas de manera sencilla, como pueden ser radiocontroles ("coche teledirigido, puertas de parking, luzes de piscina..."), también hemos podido ver como ciertas señales si que tienen aplicado un sistema de codificación del tipo "Roll-Code" las cuales son dificiles de replicar dado que el código es cambiante y para poder replicar la señal debemos analizarla y sacar el patrón del cambio para posteriormente enviar la frecuencia adecuada.

Reflexión


Como reflexión sacamos que en la actualidad muchos dispositivos de radiofrecuencia no disponen de la seguridad adecuada para evitar la replica y control de los mismos, por otra parte vemos que ciertos tipos de dispositivos si que disponen de mecanismos de defensa antes ataques de replicación.

Podemos concluir que seria necesaria una medida correctora para proteger dichos dispositivos de manera que se dificulte el proceso de replica para evitar que nos controlen estos dispositivos y hagan un uso indebido de los mismos.

Webgrafía



  • ENLACES :


RTL_SDR: https://www.rtl-sdr.com/rpitx-v2-released-easily-record-and-replay-with-rtl-sdr-and-a-raspberry-pi/
RTL_433: https://github.com/merbanan/rtl_433
RPITX: https://github.com/F5OEO/rpitx
URH: https://github.com/jopohl/urh
RASPBIAN:https://www.raspberrypi.org/downloads/

AGRADECIMIENTOS


Agradecemos a todo el profesorado que nos ha formado durante el ciclo y nos ha guiado correctamente para la realización de nuestro proyecto. Damos las gracias por la resolución de las dudas planteadas así como los consejos recibidos .