hackrf関連コマンド

Kalilinux
この記事は約6分で読めます。

hackrf_infoというツールが、kali ー 01-Reconnaissance ー Radio Frequencyの下にあります。

下図はこれに関連する一連のhackrf関連のコマンドの一覧です。

hackrf

デフォルトで以下の9コマンドが登録されています。

このうち主なコマンドである ‘hackrf_info’ , ‘hackrf_transfer’ , ‘hackrf_sweep’ について、主に調べます。

hackrf_info

電波を収集してデジタル信号に変換するデバイスの情報確認コマンドです。

確認できる内容(主なもの)

hackrf_info

hackrf_transfer

CLIで受信・送信を行います。

受信

例として88.3MHzを ‘sample.iq’ というファイルに記録する場合です。

サンプルレート(記録する周波数帯域)は2MHzで設定しています。(つまり87.3MHzから89.3MHzまでの周波数を記録)

hackrf_transfer

1秒毎に1行ずつ記録状況が表示されます。

記録ストップは、 ‘Ctrl + C’ です。

記録されたファイルです。GUIでの表示はこんな感じ。
sample.iq

このツールは記録のみ行います。(記録されたファイルは後で別ツールで解析します。)

送信

下記例は ‘sample.iq’ ファイルを433.92GHzで送信する場合です。

但し無許可の送信は違法です

オプション

主なオプションです。

オプション意味
-r受信信号を保存するファイル名の指定
-t送信ファイルの指定
-f周波数の指定
-sサンプルレート(周波数幅)の指定
(デフォルト=10MHz)
-aRFアンプ:on(1)/off(0)
-lLNAゲイン(下記注釈)(RFアンプのゲイン)
-gVGAゲイン(下記注釈)
-n取得サンプル数(デフォルトは無制限)

注)LNAゲイン(Low Noise Amplifier Gain)とVGAゲイン(Variable Gain Amplifier Gain)について

オプション種類設定可能値増幅器の位置利点欠点
-lLNAゲイン0から40dBまで8dB刻み周波数変換前弱い電波の検知による受信感度改善強い電波が側にあると飽和・相互変調・ゴースト信号の発生
-gVGAゲイン0から62dBまで2dB刻み周波数変換後FFT表示を見やすくできるノイズも増幅してしまう

ヘルプ

hackrf_transfer -h

hackrf_sweep

広帯域スペクトラムアナライザです。

主な用途は以下の通りです。

実行

例)周波数88MHz~108MHzを、FFTビン幅100kHzで掃引。

FFTビン幅:周波数帯の区切り幅

実行結果の解釈

ヘッダ部

hackrf_sweep header

データ部

hackrf_sweep data

これを秒間400回で繰り返して記録されています。

信号の強さの目安
信号レベル意味
-40dB付近非常に強い
-50dB付近強い放送局
-60dB付近普通に受信
-70dB付近弱い
-80dB以下ほぼノイズ

フッタ部

hackrf_sweep footer

出力の保存

オプション ‘-r’ を使用します。

hackrf_sweep -r

記録されたデータは、電力値のCSV形式の出力になります。

haclrf_sweep result

各データは、最初に設定したスキャン周波数帯幅を4つに分けた上で、その各部分につき、” 年月日, 時分秒, 開始周波数, 終了周波数, ビン幅, ビン数, 電力値1, 電力値2, … 電力値51 “と並んでいます。

*周波数の低い順にスキャンされ、その順に電力値が並んでいますので、それぞれの電力値に対応する周波数帯は計算によって求められます。

  n番目の電力値に対応する周波数 = 開始周波数 + ビン幅✖️(n-1)

上記周波数を中心とする、上下1/2ビン幅の範囲内の平均電力値が表示されていることとなります。

ヘルプ

‘hackrf_sweep’ のヘルプです。

hackrf_sweep -h

その他のコマンド

その他の6コマンドは、 ‘hackrf_clock’ 、 ‘hackrf_debug’ 、 ‘hackrf_spiflash’ 、 ‘hackrf_cpldjtag’ 、 ‘hackrf_operacake’ 、 ‘hackrf_biast’ です。

あまり使わないみたいなので簡単に触れます。

hackrf_clock

外部クロック設定します

hackrf_debug

低レベルデバッグ用コマンド。開発者向けのツールで、通常のユーザーはほぼ使いません。

hackrf_spiflash

SPI Flashの操作を行います。

。SPI FlashとはNOR型フラッシュメモリであり、ファームウェアの読み書きに使用します。

hackrf_cpldjtag

HackRF内部のLattice Semiconductor CPLDを書き換えます。

Lattice Semiconductor:メーカー名
CPLD:複合成形ロジックデバイス

hackrf_operacake

アンテナ切替モジュールである、Opera Cakeを制御します。

hackrf_biast

HackRF OneのBias-T(バイアスティー)電源を制御するためのコマンドです。

bias-Tとは、通常の同軸ケーブルに、RF信号(交流)と同時に流せる電源(直流)のことです。

これにより例えば、下記のようなアンテナ周りの付属機器に給電できますので、これらをUSB給電なしで動作させられます。

まとめ

‘hackrf’ 関連コマンドは合計9つありますが、今回は頻用される3つを紹介しました。

に、それぞれ使用されます。

コメント

タイトルとURLをコピーしました