Radio
Reading time: 13 minutes
tip
学习和实践 AWS 黑客技术:HackTricks Training AWS Red Team Expert (ARTE)
学习和实践 GCP 黑客技术:HackTricks Training GCP Red Team Expert (GRTE)
支持 HackTricks
- 查看 订阅计划!
- 加入 💬 Discord 群组 或 Telegram 群组 或 在 Twitter 🐦 上关注我们 @hacktricks_live.
- 通过向 HackTricks 和 HackTricks Cloud GitHub 仓库提交 PR 来分享黑客技巧。
SigDigger
SigDigger 是一个免费的数字信号分析仪,适用于GNU/Linux和macOS,旨在提取未知无线电信号的信息。它通过SoapySDR支持多种SDR设备,并允许可调的FSK、PSK和ASK信号解调,解码模拟视频,分析突发信号并实时收听模拟语音通道。
Basic Config
安装后,有一些配置选项可以考虑。
在设置(第二个标签按钮)中,您可以选择SDR设备或选择一个文件进行读取,以及要调谐的频率和采样率(如果您的PC支持,建议最高可达2.56Msps)。
在GUI行为中,如果您的PC支持,建议启用一些选项:
note
如果您发现您的PC没有捕获到信号,请尝试禁用OpenGL并降低采样率。
Uses
- 只需捕获信号的一段时间并分析它,只需按住“Push to capture”按钮,保持所需时间。
- SigDigger的调谐器有助于捕获更好的信号(但也可能会降低信号质量)。理想情况下,从0开始,继续增大,直到您发现引入的噪声大于您所需的信号改善。
Synchronize with radio channel
使用SigDigger 与您想要收听的频道同步,配置“基带音频预览”选项,配置带宽以获取所有发送的信息,然后将调谐器设置到噪声真正开始增加之前的水平:
Interesting tricks
- 当设备发送信息突发时,通常第一部分是前导码,因此您不必担心如果您没有找到信息或那里有一些错误。
- 在信息帧中,您通常应该找到不同的帧彼此对齐:
- 在恢复比特后,您可能需要以某种方式处理它们。例如,在曼彻斯特编码中,上+下将是1或0,下+上将是另一个。因此,1和0的对(上和下)将是真实的1或真实的0。
- 即使信号使用曼彻斯特编码(不可能找到连续超过两个的0或1),您也可能在前导码中找到多个1或0!
Uncovering modulation type with IQ
有3种方式在信号中存储信息:调制幅度、频率或相位。
如果您正在检查信号,有不同的方法可以尝试找出用于存储信息的方式(更多方法见下文),但一个好的方法是检查IQ图。
- 检测AM:如果在IQ图中出现例如2个圆圈(可能一个在0,另一个在不同的幅度),这可能意味着这是一个AM信号。这是因为在IQ图中,0和圆圈之间的距离是信号的幅度,因此很容易可视化使用的不同幅度。
- 检测PM:如前图所示,如果您发现小圆圈彼此无关,这可能意味着使用了相位调制。这是因为在IQ图中,点与0,0之间的角度是信号的相位,这意味着使用了4种不同的相位。
- 请注意,如果信息隐藏在相位变化的事实中,而不是相位本身,您将不会看到不同的相位清晰区分。
- 检测FM:IQ没有识别频率的字段(到中心的距离是幅度,角度是相位)。
因此,要识别FM,您应该在此图中基本上只看到一个圆。
此外,不同的频率通过IQ图的速度加速穿过圆来“表示”(因此在SysDigger中选择信号时,IQ图被填充,如果您发现创建的圆中的加速或方向变化,这可能意味着这是FM):
AM Example
Uncovering AM
Checking the envelope
使用SigDigger 检查AM信息,仅查看包络,您可以看到不同的清晰幅度水平。所用信号以AM发送信息脉冲,这就是一个脉冲的样子:
这就是符号的一部分与波形的样子:
Checking the Histogram
您可以选择包含信息的整个信号,选择幅度模式和选择,然后单击直方图。您可以观察到仅找到2个清晰的水平。
例如,如果您在此AM信号中选择频率而不是幅度,您只会找到1个频率(没有信息调制在频率上仅使用1个频率)。
如果您发现很多频率,这可能不会是FM,可能信号频率只是因为频道而被修改。
With IQ
在此示例中,您可以看到有一个大圆,但也有很多点在中心。
Get Symbol Rate
With one symbol
选择您能找到的最小符号(以确保它只是1个),并检查“选择频率”。在这种情况下,它将是1.013kHz(即1kHz)。
With a group of symbols
您还可以指示要选择的符号数量,SigDigger将计算1个符号的频率(选择的符号越多,可能越好)。在这种情况下,我选择了10个符号,“选择频率”为1.004 Khz:
Get Bits
发现这是一个AM调制信号和符号率(并且知道在这种情况下某个上意味着1,某个下意味着0),很容易获取信号中编码的比特。因此,选择包含信息的信号并配置采样和决策,然后按下采样(检查幅度已选择,发现的符号率已配置,Gadner时钟恢复已选择):
- 同步到选择间隔意味着如果您之前选择了间隔以找到符号率,则将使用该符号率。
- 手动意味着将使用指示的符号率。
- 在固定间隔选择中,您指示应选择的间隔数量,并从中计算符号率。
- Gadner时钟恢复通常是最佳选项,但您仍需指示一些近似的符号率。
按下采样后,出现以下内容:
现在,为了让SigDigger理解信息承载的水平范围,您需要单击较低水平并保持按住,直到达到最高水平:
如果例如有4个不同的幅度水平,您应该将每个符号的比特数配置为2,并从最小值选择到最大值。
最后增加****缩放和更改行大小,您可以看到比特(您可以选择所有并复制以获取所有比特):
如果信号每个符号有超过1个比特(例如2),SigDigger无法知道哪个符号是00、01、10、11,因此它将使用不同的灰度来表示每个(如果您复制比特,它将使用0到3的数字,您需要处理它们)。
此外,使用编码如曼彻斯特,上+下可以是1或0,而下+上可以是1或0。在这些情况下,您需要**处理获得的上(1)和下(0)**以替换成对的01或10为0或1。
FM Example
Uncovering FM
Checking the frequencies and waveform
发送信息调制为FM的信号示例:
在前面的图像中,您可以很好地观察到使用了2个频率,但如果您观察波形,您可能无法正确识别这2个不同的频率:
这是因为我在两个频率上捕获了信号,因此一个大约是另一个的负值:
如果同步频率更接近一个频率而不是另一个,您可以轻松看到这2个不同的频率:
Checking the histogram
检查带有信息的信号的频率直方图,您可以轻松看到2个不同的信号:
在这种情况下,如果您检查幅度直方图,您将发现只有一个幅度,因此不能是AM(如果您发现很多幅度,可能是因为信号在频道中失去了功率):
这将是相位直方图(这清楚表明信号不是相位调制):
With IQ
IQ没有识别频率的字段(到中心的距离是幅度,角度是相位)。
因此,要识别FM,您应该在此图中基本上只看到一个圆。
此外,不同的频率通过IQ图的速度加速穿过圆来“表示”(因此在SysDigger中选择信号时,IQ图被填充,如果您发现创建的圆中的加速或方向变化,这可能意味着这是FM):
Get Symbol Rate
您可以使用与AM示例中使用的相同技术来获取符号率,一旦您找到了承载符号的频率。
Get Bits
您可以使用与AM示例中使用的相同技术来获取比特,一旦您发现信号是频率调制的和符号率。
tip
学习和实践 AWS 黑客技术:HackTricks Training AWS Red Team Expert (ARTE)
学习和实践 GCP 黑客技术:HackTricks Training GCP Red Team Expert (GRTE)
支持 HackTricks
- 查看 订阅计划!
- 加入 💬 Discord 群组 或 Telegram 群组 或 在 Twitter 🐦 上关注我们 @hacktricks_live.
- 通过向 HackTricks 和 HackTricks Cloud GitHub 仓库提交 PR 来分享黑客技巧。