赤外線
Reading time: 8 minutes
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
赤外線の仕組み
赤外線は人間には見えません。IRの波長は0.7から1000ミクロンです。家庭用リモコンはデータ伝送にIR信号を使用し、波長範囲は0.75..1.4ミクロンです。リモコン内のマイクロコントローラーは、特定の周波数で赤外線LEDを点滅させ、デジタル信号をIR信号に変換します。
IR信号を受信するためにフォトレシーバーが使用されます。これはIR光を電圧パルスに変換し、すでにデジタル信号です。通常、受信機内には暗い光フィルターがあり、望ましい波長のみを通過させ、ノイズをカットします。
IRプロトコルの多様性
IRプロトコルは3つの要素で異なります:
- ビットエンコーディング
- データ構造
- キャリア周波数 — 通常36..38 kHzの範囲
ビットエンコーディングの方法
1. パルス間隔エンコーディング
ビットはパルス間の間隔の持続時間を変調することでエンコードされます。パルス自体の幅は一定です。
.png)
2. パルス幅エンコーディング
ビットはパルス幅の変調によってエンコードされます。パルスバースト後の間隔の幅は一定です。
.png)
3. 位相エンコーディング
これはマンチェスターエンコーディングとも呼ばれます。論理値はパルスバーストと間隔の間の遷移の極性によって定義されます。「間隔からパルスバースト」は論理「0」を示し、「パルスバーストから間隔」は論理「1」を示します。
.png)
4. 前述のものと他のエキゾチックな組み合わせ
note
いくつかのデバイスタイプに対して普遍的になろうとしているIRプロトコルがあります。最も有名なものはRC5とNECです。残念ながら、最も有名であることは最も一般的であることを意味しません。私の環境では、NECリモコンを2つしか見かけず、RC5のものはありませんでした。
製造業者は、同じデバイスの範囲内でも独自のユニークなIRプロトコルを使用するのが好きです(例えば、テレビボックス)。したがって、異なる会社のリモコンや、同じ会社の異なるモデルのリモコンは、同じタイプの他のデバイスと連携できないことがあります。
IR信号の探索
リモコンのIR信号がどのように見えるかを確認する最も信頼性の高い方法は、オシロスコープを使用することです。これは受信した信号を復調したり反転したりせず、「そのまま」表示されます。これはテストやデバッグに役立ちます。NEC IRプロトコルの例で期待される信号を示します。
.png)
通常、エンコードされたパケットの最初にはプレアンブルがあります。これにより、受信機はゲインとバックグラウンドのレベルを決定できます。プレアンブルのないプロトコルもあります。例えば、シャープです。
次にデータが送信されます。構造、プレアンブル、およびビットエンコーディング方法は特定のプロトコルによって決まります。
NEC IRプロトコルは短いコマンドとリピートコードを含み、ボタンが押されている間に送信されます。コマンドとリピートコードの両方は、最初に同じプレアンブルを持っています。
NECのコマンドは、プレアンブルに加えて、デバイスが何を実行する必要があるかを理解するためのアドレスバイトとコマンド番号バイトで構成されています。アドレスとコマンド番号バイトは、伝送の整合性を確認するために逆の値で複製されます。コマンドの最後には追加のストップビットがあります。
リピートコードは、プレアンブルの後に「1」があり、これはストップビットです。
**論理「0」と「1」**のために、NECはパルス間隔エンコーディングを使用します:最初にパルスバーストが送信され、その後に間隔があり、その長さがビットの値を設定します。
エアコン
他のリモコンとは異なり、エアコンは押されたボタンのコードだけを送信しません。ボタンが押されると、すべての情報を送信して、エアコンとリモコンが同期していることを確認します。
これにより、20ºCに設定された機械が1つのリモコンで21ºCに上昇し、次に温度が20ºCのままの別のリモコンを使用してさらに温度を上げると、21ºCに「上昇」することを避けることができます(21ºCにいると思って22ºCにはならない)。
攻撃
Flipper Zeroを使用して赤外線を攻撃できます:
参考文献
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。