13 KiB
Raw Blame History

Radio

{{#include ../../banners/hacktricks-training.md}}

SigDigger

SigDigger は、未知の無線信号の情報を抽出するために設計された、GNU/LinuxおよびmacOS用の無料デジタル信号アナライザーです。SoapySDRを介してさまざまなSDRデバイスをサポートし、FSK、PSK、ASK信号の調整可能な復調、アナログビデオのデコード、バースト信号の分析、アナログ音声チャンネルのリアルタイムでの聴取を可能にします。

Basic Config

インストール後、いくつかの設定を考慮することができます。
設定2番目のタブボタンで、SDRデバイスを選択するか、ファイルを選択して読み取り、同調する周波数とサンプルレートPCがサポートしている場合は最大2.56Mspsを推奨)を設定できます。\

GUIの動作では、PCがサポートしている場合は、いくつかの設定を有効にすることをお勧めします

Note

PCが情報をキャプチャしていない場合は、OpenGLを無効にし、サンプルレートを下げてみてください。

Uses

  • 信号の一部をキャプチャして分析するには、「Push to capture」ボタンを必要なだけ押し続けてください。

  • SigDiggerのチューナーは、より良い信号をキャプチャするのに役立ちますただし、信号を劣化させることもあります。理想的には0から始めて、信号の改善よりもノイズの増加が大きくなるまで大きくしていきます。

Synchronize with radio channel

SigDigger を使用して、聞きたいチャンネルと同期し、「Baseband audio preview」オプションを設定し、送信されるすべての情報を取得するための帯域幅を設定し、イズが本当に増加し始める前のレベルにチューナーを設定します

Interesting tricks

  • デバイスが情報のバーストを送信しているとき、通常、最初の部分はプレアンブルになるため、そこに情報が見つからない場合やエラーがある場合心配する必要はありません
  • 情報のフレームでは、通常、異なるフレームが互いに整列しているのを見つけるべきです

  • ビットを回復した後、何らかの方法で処理する必要があるかもしれません。たとえば、マンチェスター符号化では、上+下は1または0、下+上はもう一方になります。したがって、1と0のペア上昇と下降は、実際の1または実際の0になります。
  • 信号がマンチェスター符号化を使用している場合連続して2つ以上の0または1を見つけることは不可能ですプレアンブル内で複数の1または0を見つけることができるかもしれません

Uncovering modulation type with IQ

信号に情報を格納する方法は3つあります振幅周波数、または位相を変調します。
信号をチェックしている場合、情報を格納するために何が使用されているかを特定するためのさまざまな方法があります以下に他の方法がありますが、良い方法の1つはIQグラフを確認することです。

  • AMの検出IQグラフに2つの円おそらく1つは0、もう1つは異なる振幅にあるを見つけた場合、これはAM信号である可能性があります。これは、IQグラフで0と円の間の距離が信号の振幅であるため、異なる振幅が使用されているのを視覚化しやすいからです。
  • PMの検出前の画像のように、互いに関連しない小さな円を見つけた場合、位相変調が使用されている可能性があります。これは、IQグラフで、点と0,0の間の角度が信号の位相であるため、4つの異なる位相が使用されていることを意味します。
  • 情報が位相の変化に隠されていて、位相自体には隠されていない場合、異なる位相が明確に区別されることはありません。
  • FMの検出IQには周波数を識別するためのフィールドがありません中心からの距離は振幅で、角度は位相です
    したがって、FMを識別するには、このグラフで基本的に円だけを見る必要があります
    さらに、異なる周波数は、IQグラフによって円を横切る速度の加速で「表現」されますしたがって、SysDiggerで信号を選択するとIQグラフが生成され、生成された円の加速や方向の変化が見つかると、これはFMである可能性があります

AM Example

{% file src="../../images/sigdigger_20220308_165547Z_2560000_433500000_float32_iq.raw" %}

Uncovering AM

Checking the envelope

SigDigger を使用してAM情報を確認し、エンベロープを見て、異なる明確な振幅レベルを確認できます。使用されている信号は、AMで情報を送信するパルスを送信しており、1つのパルスは次のようになります

そして、波形を持つシンボルの一部は次のようになります:

Checking the Histogram

情報がある信号全体を選択し、振幅モードと選択を選択してヒストグラムをクリックできます。2つの明確なレベルのみが見つかることが観察できます。

たとえば、このAM信号で振幅の代わりに周波数を選択すると、1つの周波数しか見つかりません周波数で変調された情報が1つの周波数を使用していることはありません

多くの周波数が見つかる場合、これはFMではない可能性が高く、信号の周波数はチャンネルの影響で変更された可能性があります。

With IQ

この例では、大きな円があることがわかりますが、中心に多くの点があります

Get Symbol Rate

With one symbol

見つけた最小のシンボルを選択しそれが1つだけであることを確認、"Selection freq"を確認します。この場合、1.013kHzつまり1kHzになります。

With a group of symbols

選択するシンボルの数を指定することもでき、SigDiggerは1つのシンボルの周波数を計算します選択したシンボルが多いほど、より良い結果が得られる可能性があります。このシナリオでは、10個のシンボルを選択し、"Selection freq"は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

{% file src="../../images/sigdigger_20220308_170858Z_2560000_433500000_float32_iq.raw" %}

Uncovering FM

Checking the frequencies and waveform

FMで変調された情報を送信する信号の例

前の画像では、2つの周波数が使用されていることがかなりよく観察できますが、波形を観察すると、2つの異なる周波数を正しく識別できないかもしれません

これは、両方の周波数で信号をキャプチャしたため、1つは負の他の周波数に近いからです

同期された周波数が他の周波数よりも1つの周波数に近い場合、2つの異なる周波数を簡単に見ることができます

Checking the histogram

情報を持つ信号の周波数ヒストグラムを確認すると、2つの異なる信号を簡単に見ることができます

この場合、振幅ヒストグラムを確認すると、1つの振幅しか見つからないため、AMではないことがわかります(多くの振幅が見つかる場合、信号がチャンネルに沿って電力を失っている可能性があります):

これは位相ヒストグラムであり、信号が位相で変調されていないことを非常に明確に示しています:

With IQ

IQには周波数を識別するためのフィールドがありません中心からの距離は振幅で、角度は位相です
したがって、FMを識別するには、このグラフで基本的に円だけを見る必要があります
さらに、異なる周波数は、IQグラフによって円を横切る速度の加速で「表現」されますしたがって、SysDiggerで信号を選択するとIQグラフが生成され、生成された円の加速や方向の変化が見つかると、これはFMである可能性があります

Get Symbol Rate

周波数を持つシンボルを見つけたら、AMの例で使用したのと同じ技術を使用してシンボルレートを取得できます。

Get Bits

周波数で変調されている信号を**見つけた後、**AMの例で使用したのと同じ技術を使用してビットを取得できます。

{{#include ../../banners/hacktricks-training.md}}