hacktricks/todo/hardware-hacking/radio.md
2023-08-03 19:12:22 +00:00

12 KiB
Raw Blame History

无线电

☁️ HackTricks云 ☁️ -🐦 推特 🐦 - 🎙️ Twitch 🎙️ - 🎥 YouTube 🎥

SigDigger

SigDigger是一个免费的数字信号分析器适用于GNU/Linux和macOS旨在提取未知无线电信号的信息。它通过SoapySDR支持各种SDR设备并允许可调制FSK、PSK和ASK信号解码模拟视频分析突发信号并收听模拟语音通道实时

基本配置

安装完成后,您可以考虑进行一些配置。
在设置中(第二个选项卡按钮),您可以选择SDR设备选择一个文件进行读取以及要同步的频率和采样率如果您的PC支持建议将其提高到2.56Msps)。

在GUI行为中如果您的PC支持建议启用一些功能

{% hint style="info" %} 如果您发现您的PC没有捕获到信号请尝试禁用OpenGL并降低采样率。 {% endhint %}

用途

  • 只需捕获一段时间的信号并分析,只需按住"Push to capture"按钮即可。

  • SigDigger的调谐器有助于更好地捕获信号但也可能降低信号质量。理想情况下从0开始逐渐增加直到发现引入的噪声比所需信号的改进更大。

与无线电频道同步

使用SigDigger与您想要收听的频道同步,配置"Baseband audio preview"选项,配置带宽以获取发送的所有信息,然后将调谐器设置为噪声真正开始增加之前的水平:

有趣的技巧

  • 当设备发送信息突发时,通常首部将是前导码,因此如果在那里找不到信息或者有一些错误,您不需要担心。
  • 在信息帧中,通常应该找到彼此对齐的不同帧

  • 在恢复位之后,您可能需要以某种方式处理它们。例如,在曼彻斯特编码中,上+下将是1或0下+上将是另一个。因此一对1和0上和下将是真正的1或真正的0。
  • 即使信号使用曼彻斯特编码不可能连续出现两个0或1您可能会在前导码中找到几个连续的1或0

使用IQ揭示调制类型

信号中有3种存储信息的方式调制幅度频率相位
如果您正在检查一个信号有不同的方法可以尝试弄清楚用于存储信息的方式在下面找到更多方法但一个好的方法是检查IQ图。

  • 检测AM如果在IQ图中出现例如2个圆圈可能一个在0另一个在不同的幅度这可能意味着这是一个AM信号。这是因为在IQ图中0和圆圈之间的距离是信号的幅度因此很容易可视化使用不同幅度。
  • 检测PM与前一个图像类似如果您发现小圆圈彼此之间没有关联这可能意味着使用了相位调制。这是因为在IQ图中点与0,0之间的角度是信号的相位这意味着使用了4个不同的相位。
  • 请注意,如果信息隐藏在相位的改变而不是相位本身中,您将无法清楚地区分不同的相位。
  • 检测FMIQ图中没有用于识别频率的字段到中心的距离是幅度角度是相位
    因此要识别FM您应该在此图中只能看到基本上是一个圆圈
    此外通过IQ图中的速度加速度因此在SysDigger中选择信号时IQ图会填充如果在创建的圆圈中发现加速度或方向变化这可能意味着这是FM来"表示"不同的频率。

AM示例

{% file src="../../.gitbook/assets/sigdigger_20220308_165547Z_2560000_433500000_float32_iq.raw" %}

揭示AM

检查包络

使用SigDigger检查AM信息只需查看包络您可以看到不同的明显幅度级别。使用的信号以AM方式发送带有信息的脉冲以下是一个脉冲的样子

以下是符号的一部分的波形:

检查直方图

您可以选择包含信息的整个信号,选择幅度模式和选择,然后单击直方图。您可以观察到只有2个明显的幅度级别。

例如如果您在此AM信号中选择频率而不是幅度您将只找到1个频率不可能使用1个频率来调制信息

如果发现了许多频率那么可能不是FM可能是由于信道的原因信号频率被修改了。

使用IQ

在此示例中,您可以看到有一个大圆圈,但也有很多点在中心

获取符号速率

使用一个符号

选择您能找到的最小符号以确保只有1个符号然后检查“选择频率”。在这种情况下它将是1.013kHz即1kHz

使用一组符号

您还可以指示要选择的符号数量SigDigger将计算1个符号的频率选择的符号数量越多可能越好。在此场景中我选择了10个符号“选择频率”为1.004 kHz

获取比特

已经确定这是一个AM调制的信号和符号速率并且知道在这种情况下上升表示1下降表示0很容易获取编码在信号中的比特。因此,选择带有信息的信号,并配置采样和决策,然后按下采样(检查是否选择了幅度,配置了发现的符号速率,并选择了Gadner时钟恢复

  • 同步到选择间隔表示如果您之前选择了间隔以找到符号速率,则将使用该符号速率。
  • 手动表示将使用指定的符号速率。
  • 固定间隔选择中,您指示应选择的间隔数,并从中计算符号速率。
  • Gadner时钟恢复通常是最佳选择,但您仍然需要指示一些近似的符号速率。

按下采样后,会出现以下内容:

现在为了让SigDigger理解信息传递的幅度范围,您需要点击较低的级别并保持点击直到最大级别:

例如,如果有4个不同的幅度级别,您需要将每个符号的比特数配置为2,并从最小到最大进行选择。

最后,增加****缩放更改行大小,您可以看到比特(您可以全部选择并复制以获取所有比特):

如果信号每个符号有多个比特例如2个SigDigger无法知道哪个符号是00、01、10、11因此它将使用不同的灰度来表示每个符号(如果您复制比特,它将使用0到3的数字,您需要处理它们)。

此外,使用曼彻斯特编码编码,上升+下降可以是1或0下降+上升可以是1或0。在这些情况下您需要处理获得的上升1和下降0将01或10的配对替换为0或1。

FM示例

{% file src="../../.gitbook/assets/sigdigger_20220308_170858Z_2560000_433500000_float32_iq.raw" %}

揭示FM

检查频率和波形

示例信号以FM调制方式发送信息

在上图中,您可以明显看到使用了2个频率,但是如果您观察****波形您可能无法正确识别2个不同的频率

这是因为我在两个频率上捕获了信号,因此一个频率大致等于另一个频率的负数:

如果同步频率更接近一个频率而不是另一个频率您可以轻松看到这2个不同的频率

检查直方图

检查带有信息的信号的频率直方图您可以轻松看到2个不同的信号

在这种情况下,如果检查幅度直方图,您将找到只有一个幅度,因此它不能是AM(如果您找到了许多幅度,可能是因为信号在信道上失去了功率):

这将是相位直方图(非常清楚地表明信号没有调制相位):

使用 IQ

IQ 没有一个用于识别频率的字段(距离中心的幅度和角度是相位)。
因此,要识别 FM你应该在这个图中只看到一个基本的圆圈
此外,不同的频率在 IQ 图中通过圆圈上的速度加速度来"表示"(因此在 SysDigger 中选择信号时IQ 图会被填充,如果你在创建的圆圈中发现加速度或方向变化,这可能意味着这是 FM

获取符号速率

一旦你找到了携带符号的频率,你可以使用与 AM 示例中相同的技术来获取符号速率。

获取比特位

一旦你发现信号被调频调制并且知道符号速率,你可以使用与 AM 示例中相同的技术来获取比特位。

☁️ HackTricks 云 ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥