イタリアと英国に分かれて活動する研究者XNUMX人組は最近、 論文を発表 広く知られているスマート電球で見つかった暗号化上の安全性について。
研究者らは、次の点に基づいてターゲット デバイスである TP-Link Tapo L530E を選択したようです。 「現在、イタリアのアマゾンでベストセラーになっています。」 したがって、他のスマート電球がどのように積み重なるかはわかりませんが、いずれにせよ、彼らのレポートは私たちに多くのことを教えてくれます。
研究者らは次のように述べています。
私たちは TP-Link の脆弱性調査プログラム (VRP) を通じて律儀に連絡を取り、発見した XNUMX つの脆弱性すべてを報告しました。
彼らはそれらすべてを認め、アプリと電球ファームウェアの両方のレベルで修正に取り組み始め、やがてリリースする予定であると私たちに知らせました。
良くも悪くも (論文の著者らは、TP-Link と開示日について合意したかどうかを明らかにしていないため、TP-Link がパッチの開発にどれくらいの期間取り組んできたのかはわかりません)、研究者らは現在、どのように彼らの攻撃は機能しますが、ホームハッカー志望者が自由に悪用できるコピーアンドペースト可能な攻撃コードは提供されません。
したがって、私たちはこの論文を検討する価値があると考えました。
ワイヤレスセットアップ
多くのいわゆる「スマート」デバイスと同様、Tapo L530E は Wi-Fi 経由で迅速かつ簡単にセットアップできるように設計されています。
カメラや自転車アクセサリーなど、内蔵 USB ポート経由で充電およびセットアップできるバッテリー駆動のデバイスでもワイヤレス ベースの構成が一般的ですが、特にスペースと安全性の観点から、電球には通常 USB ポートがありません。その理由は、電源ソケットに差し込んだままにしておくように設計されているためです。
Tapo L530E 電球を壁のスイッチで XNUMX 秒ずつ繰り返しオン/オフすると、強制的にセットアップ モードにすることができます (どうやら、電球が自動的に XNUMX 回点滅して、設定の準備ができたことを知らせるようです)。
ほとんどの自動構成可能なデバイスと同様に、これによりスマート電球自体が、次の形式の認識しやすいネットワーク名を持つ Wi-Fi アクセス ポイントに変わります。 Tapo Bulb XXXX
, ここで、X は数字の文字列を形成します。
次に、スマートフォン上のアプリから、パスワードで保護されていない一時的なアクセス ポイントに接続します。
次に、パスワードで保護されたホーム Wi-Fi ネットワークと、今後 TP-Link クラウド アカウントの両方に接続する方法を電球に指示します。その後、電球のファームウェアが再起動してインターネットに接続し、管理できるようになります。携帯電話のアプリから。
この電球はホーム ネットワークに接続できるため、自宅にいるときは、たとえ ISP がオフラインであっても、自分の Wi-Fi 経由で電球に直接接続できます。
また、電球はインターネット経由でクラウド アカウントに接続できるため、外出中にクラウド アカウント経由で間接的にコマンドを送信することもできます。たとえば、帰宅が遅れた場合に照明をオン/オフするなどです。家に誰かがいるような印象を与えるため。
詐欺師に注意してください
おそらく、これがどこに向かっているのか推測できます。
携帯電話のアプリに、セットアップ プロセスを実行するときに、実際に本物の電球に接続されているかどうかを確認する強力な暗号化方法がない場合は…
…その後、近くにいた攻撃者がたまたま偽のツールを起動しただけです Tapo Bulb XXXX
アクセス ポイントが適切なタイミングでユーザーを誘導し、重要なセットアップ シークレットを本物ではなく「偽電球」デバイスに送信させ、Wi-Fi パスワードと TP-Link アカウントの詳細の両方をキャプチャする可能性があります。
良いニュースとして、研究者らは、Tapo アプリと L530E ファームウェアの両方に、アプリと電球が確実に相互に検出できるようにするための基本的な安全性チェックが含まれていることを認識しました。これにより、アプリが必要なときにパスワードを口走るリスクが軽減されます。って。
しかし、悪いニュースは、このために使用されているプロトコルです あなたは本当に電球ですか? 交換は攻撃を防ぐためではなく、間違いを避けるために明らかに設計されていました。
大まかに言うと、アプリは特別な UDP パケットをポート 20002 にブロードキャストし、どのデバイスが応答するかを確認することで、ネットワーク上の電球を見つけます。
聞いている電球が、 そこにいる? リクエストはたまたまポート 20002 を使用する他の未知の製品やサービスからではなく、Tapo アプリから送信されたもので、リクエストには専門用語で「 キー付きハッシュ.
私はここにいます! 電球からの応答には、アプリが予期しない不要な UDP 応答を除外できるように、同じ種類のキー付きチェックサムが含まれています。
簡単に言うと、キー付きハッシュは、UDP パケット内のデータだけでなく、チェックサムに組み込まれる追加のキー バイトにも基づくチェックサムです。
残念なことに、Tapo プロトコルはチェックサムに固定キー バイトを使用しており、同じ「キー」がアプリとすべての Tapo 電球のファームウェアに固定されています。
言い換えれば、誰かがアプリ、電球ファームウェア、またはその両方を逆コンパイルしてこの「キー」を回復したら、誰でもそれが何であるかを知ることができると想定する必要があります。そこにいるの?/私はここにいるよ! 偽造するのが簡単なメッセージ。
さらに悪いことに、このそれほど秘密ではない「鍵」の長さはわずか 32 ビットであるため、研究者らは何も逆コンパイルする必要がないことを発見しました。つまり、独自の Tapo 電球をセットアップ モードに設定して、それに入力することによって そこにいる? 2つすべてを使用したメッセージ32 考えられるチェックサム キーを入力すると、最終的にはいわゆる正しいキーを押すことになります。 強引な.
これは、ダイヤルを回して自転車のロックのすべての組み合わせを試すのと暗号的に同等です。 000
〜へ 999
運良くロックが開くまで。 (平均すると、考えられる組み合わせの半分を試した後にロックが開くことになりますが、1000 回以上かかることはありません。)
実際、2 つを送る必要はありませんでした。32 キーを解読するためにアプリから電球にメッセージを送信します。
有効なキー付きハッシュを含む既知の本物のメッセージを XNUMX つだけキャプチャすることで、保存したものと同じキー付きハッシュを持つメッセージが生成されるまで、考えられるすべてのキーをオフラインでテストできます。
これは、ブルート フォース攻撃が Wi-Fi ネットワークのパケット速度だけでなく CPU 速度でも進行する可能性があることを意味し、研究者らは次のように述べています。 「私たちの設定では、ブルート フォース攻撃は常に平均 140 分で成功しました。」
(彼らは、クラッキング コードが正しく機能することをテストするためだけに何度も試行したと考えられますが、すべての Tapo 電球で共有される固定キーを使用していれば、最初のクラックだけで十分でした。)
あなたがしっかり話してくれる限り、私はあなたが誰であろうと気にしません
次の暗号化の問題は、電球のセットアップ プロセスの次の段階で発生しましたが、これは同様の種類の間違いでした。
実際にはキーを持たないキー付きハッシュに基づいて電球を本物として受け入れた後、アプリは「本物の」電球を使用してトラフィックを暗号化するためのセッションキーに同意します。
…しかし、もう一度言いますが、重要な合意が本物の電球によって行われたのか、それとも偽者によって行われたのかを確認する方法はありません。
セッション キーに同意することは重要です。これにより、後で Tapo アプリから Tapo 電球と思われるものに Wi-Fi パスワードと Tapo パスワードが送信されるときに、ネットワーク上の他の誰もそれらを盗み見ることができなくなります。
しかし、鍵の合意自体の検証プロセスがないことは、HTTPS 経由で Web サイトに接続し、送り返される Web 証明書の最も基本的なチェックさえわざわざ実行しないのと似ています。トラフィックは転送中は安全ですが、それでも、そのまま詐欺師の手に渡ってしまう可能性があります。
Tapo アプリは、RSA 公開キーを送信することで電球 (または電球だと思われるもの) に対して自分自身を識別します。相手側はその公開キーを使用して、ランダムに生成された AES キーを暗号化し、セッション中に交換されるデータを保護します。
しかし、電球デバイスはいかなる種類の識別情報も提供せず、固定された 32 ビット キーによるチェックサムさえも Tapo アプリに提供しません。
したがって、アプリは、セッション キーが本物の電球からのものなのか、偽のデバイスからのものなのかを知らずに、セッション キーを受け入れるしかありません。
これら XNUMX つの欠陥が組み合わさった結果、ネットワーク上の攻撃者は、まず不正なアクセス ポイントが設定を待っている本物の電球であるとユーザーに信じ込ませ、ユーザーを間違った場所に誘導し、その後、そのアクセス ポイントを送信するよう誘導する可能性があります。自分の Wi-Fi および Tapo パスワードの暗号化されたコピー。
皮肉なことに、漏洩したパスワードは、不正なアクセス ポイントを使用した詐欺師を除いて、誰に対しても安全です。
何度も使用される XNUMX 回限りの番号
残念ながら、他にもあります。
上でそれを言ったとき 「漏洩したパスワードは本当に安全です。」 それは完全に正しくありませんでした。
プログラマーが AES の使用に誤りを犯したため、前に説明したキー合意プロセス中に確立されたセッション キーは正しく処理されません。
アプリが電球に送信する各リクエストを暗号化する場合、AES-128-CBC と呼ばれる暗号化モードが使用されます。
CBCについては説明しません(暗号ブロック連鎖)ここでは、CBC モードは、同じデータのチャンクを複数回暗号化する場合(繰り返しのリクエストなど)、 ライトをオンにする および ライトを消して、 ただし、リクエスト内の生データは毎回同じです)、毎回同じ出力が得られるわけではありません。
すべての場合 点灯 および 消灯 リクエストは同じように送信されましたが、攻撃者がそれを推測した後、 消して パケットは次のように見えました。将来的には、それらのパケットを復号化せずに認識できるだけでなく、最初に暗号化する方法を知らなくても、同じパケットを再生することができます。
偶然にも、CBC ベースの暗号化は、最初にランダムに選択された一意のデータ ブロックを暗号化プロセスに混合することで、データの各チャンクの暗号化プロセスを「シード」することに効果的に依存しており、これにより、残りの部分に一意の暗号化データ シーケンスが作成されます。チャンクの。
この「シード」データは、専門用語では IV (略称) として知られています。 初期化ベクトル、秘密にするつもりはありませんが、毎回予想外に異なる必要があります。
簡単に言えば、同じキー + 一意の IV = 一意の暗号文出力ですが、同じキー + 同じ IV = 予測可能な暗号化です。
残念なことに、TP-Link のコーダーは、AES セッション キーの作成と同時に IV を生成し、その後、前のデータが正確に繰り返された場合でも、後続のすべてのデータ パケットに対して同じ IV を何度も繰り返し使用しました。
それは暗号的にはノーノーです。
XNUMX つのパケットを送信しましたか、それとも XNUMX つのパケットだけを送信しましたか?
研究者らが発見した最後の暗号化問題は、たとえ初期化ベクトルの問題が修正されたとしても依然としてセキュリティに害を及ぼす可能性がある問題、つまり、古いメッセージは、攻撃者がその意味を知っているかどうかに関係なく、後で新しいメッセージであるかのように再生できる可能性があるというものです。
通常、このタイプの リプレイ攻撃 暗号化プロトコルでは、有効性を制限するために各データ パケットに含まれるある種のシーケンス番号、タイムスタンプ、またはその両方によって処理されます。
たとえチケット自体が券売機でキャンセルされたり、検札官に打ち抜かれなかったとしても、XNUMX日連続で使用しようとすると無料になる鉄道チケットの日付のように、データパケット内のシーケンス番号とタイムスタンプXNUMX つの重要な目的を果たします。
まず、攻撃者は現在、トラフィックを記録して後で簡単に再生することができず、大混乱を引き起こす可能性があります。
次に、応答の欠落やネットワーク確認応答の欠落などにより、誤ってリクエストを繰り返し送信するバグのあるコードを確実に検出して制御できます。
何をするか?
Tapo 電球ユーザーの場合は、 これらの問題に対処する TP-Link からのファームウェアのアップデートに常に注目してください。
あなたがネットワーク トラフィックのセキュリティ保護とネットワーク ベースの製品セットアップを担当するプログラマである場合、 読める 研究論文を参照して、同様の間違いを犯していないかどうかを確認してください。
次の規則を覚えておいてください。
- 暗号化は秘密を守るだけではありません。 暗号化は、暗号化の「聖三位一体」の一部にすぎません。 秘密 (暗号化します)、 信頼性 (相手が誰であるかを確認する)、そして 整合性 (途中で誰かがそれを改ざんしないようにしてください)。
- ワンタイム キーまたは IV が真に一意であることを確認してください。 一般的な専門用語 使節この種のデータに使用される は、の略です。 一度使用された番号、 この言葉は、点滴を決して再利用してはいけないことを明確に思い出させます。
- リプレイ攻撃から保護します。 これは、 信頼性 および 整合性 上で述べました。 攻撃者は、現在実行中のリクエストを捕捉し、後で発見されることなくそれをやみくもに再実行することができてはなりません。 メッセージを再生して大混乱を引き起こす可能性がある場合、攻撃者はメッセージを理解できる必要はないことに注意してください。
- SEO を活用したコンテンツと PR 配信。 今日増幅されます。
- PlatoData.Network 垂直生成 Ai。 自分自身に力を与えましょう。 こちらからアクセスしてください。
- プラトアイストリーム。 Web3 インテリジェンス。 知識増幅。 こちらからアクセスしてください。
- プラトンESG。 自動車/EV、 カーボン、 クリーンテック、 エネルギー、 環境、 太陽、 廃棄物管理。 こちらからアクセスしてください。
- プラトンヘルス。 バイオテクノロジーと臨床試験のインテリジェンス。 こちらからアクセスしてください。
- チャートプライム。 ChartPrime でトレーディング ゲームをレベルアップしましょう。 こちらからアクセスしてください。
- ブロックオフセット。 環境オフセット所有権の近代化。 こちらからアクセスしてください。
- 情報源: https://nakedsecurity.sophos.com/2023/08/22/smart-light-bulbs-could-give-away-your-password-secrets/
- :持っている
- :は
- :not
- :どこ
- $UP
- 1
- 125
- 視聴者の38%が
- 25
- 32
- 700
- a
- できる
- 私たちについて
- 上記の.
- 絶対の
- 同意
- 受諾
- アクセス
- アクセサリー
- 認め
- NEW
- 住所
- AES
- 後
- 再び
- に対して
- 同意して
- 契約
- すべて
- 許可
- 沿って
- また
- しかし
- 常に
- am
- Amazon
- an
- および
- どれか
- 何でも
- アプリ
- です
- AS
- 側面
- 引き受けます
- At
- 攻撃
- 攻撃
- 著者
- 著者
- オート
- 自動的に
- 平均
- 避ける
- 離れて
- バック
- 背景画像
- 悪い
- ベース
- 基本
- 基礎
- BE
- なぜなら
- き
- BEST
- より良いです
- の間に
- ビット
- やみくもに
- ブロック
- 国境
- 両言語で
- ボトム
- 放送
- 強引な
- 内蔵
- 焙煎が極度に未発達や過発達のコーヒーにて、クロロゲン酸の味わいへの影響は強くなり、金属を思わせる味わいと乾いたマウスフィールを感じさせます。
- by
- 呼ばれます
- came
- カメラ
- 缶
- キャプチャー
- キャプチャ
- これ
- 原因
- センター
- 証明書
- 荷担した
- チェック
- 点検
- 選択
- 選ばれた
- はっきりと
- クラウド
- コード
- カラー
- 組み合わせ
- 組み合わせ
- 組み合わせた
- コマンドと
- 会社
- 設定された
- お問合せ
- 交流
- 接続する
- 接触
- 制御
- 納得させる
- 正しい
- 可能性
- コース
- カバー
- クラック
- 作ります
- 作成した
- 作成
- 暗号
- データ
- 日付
- 試合日
- 日
- 決めます
- 記載された
- 設計
- 細部
- 検出された
- デバイス
- Devices
- 異なります
- 数字
- 直接に
- 開示
- ディスプレイ
- do
- ありません
- そうではありません
- ドント
- 落とした
- 原因
- 間に
- 各
- 前
- 簡単に
- 効果的に
- どちら
- ほかに
- では使用できません
- 暗号化
- end
- 十分な
- 確保
- 確実に
- 確保する
- 完全に
- 同等の
- 設立
- さらに
- 最終的に
- あらゆる
- 正確に
- 例
- 除く
- 交換
- 交換した
- 説明する
- 悪用する
- 視線
- 実際
- 偽
- 摂食
- filter
- もう完成させ、ワークスペースに掲示しましたか?
- 名
- 固定の
- 欠陥
- フォロー中
- 強
- 偽造する
- フォーム
- 発見
- 4
- から
- 未来
- 一般に
- 生成された
- 本物の
- 取得する
- 受け
- 与える
- 与えられた
- Go
- ゴエス
- 行く
- 良い
- 推測された
- 持っていました
- 半分
- ハンド
- 起こります
- 害
- ハッシュ
- 持ってる
- 持って
- 高さ
- 助けます
- こちら
- ヒット
- ホーム
- ホバー
- 認定条件
- How To
- HTTPS
- i
- 識別
- 識別する
- if
- 重要
- in
- 含まれました
- 含ま
- 間接的に
- 情報に基づく
- を取得する必要がある者
- インターネット
- に
- ISP
- 問題
- IT
- Italy
- ITS
- 自体
- 専門用語
- join
- ただ
- 一つだけ
- キープ
- キー
- キー
- 知っている
- 知っている
- 既知の
- 姓
- 遅く
- 後で
- 最低
- 左
- レベル
- 光
- 電球
- ような
- LIMIT
- 耳を傾ける
- 長い
- 見
- 探して
- 機械
- 製
- make
- 作成
- 管理します
- 多くの
- マージン
- 最大幅
- 意味する
- 手段
- 意味した
- 言及した
- 単に
- メッセージ
- メッセージ
- 分
- 行方不明
- ミス
- ミス
- 混合
- モード
- 瞬間
- 他には?
- 最も
- しなければなりません
- 名
- すなわち
- 必要
- 必要
- ネットワーク
- ネットワーク名
- ネットワークトラフィック
- ネットワークベース
- 決して
- それにもかかわらず
- 新作
- ニュース
- 次の
- いいえ
- なし
- 通常の
- 今
- 数
- 番号
- of
- オフ
- オンライン
- 古い
- on
- かつて
- ONE
- の
- 開いた
- or
- 注文
- その他
- 私たちの
- でる
- 結果
- 出力
- が
- 自分の
- パケット
- 紙素材
- 部
- パスワード
- パスワード
- パッチ
- Paul Cairns
- 実行する
- 電話
- 場所
- 計画
- プラトン
- プラトンデータインテリジェンス
- プラトデータ
- プレイ
- 演奏
- プレンティ
- 差し込まれた
- ポイント
- ポップス
- 位置
- 可能
- 投稿
- :
- 予測可能な
- 防ぐ
- 前
- 多分
- 問題
- 進む
- プロセス
- 生産された
- プロダクト
- 演奏曲目
- プログラマー
- プログラマ
- 保護された
- プロトコル
- 提供します
- 提供
- 公共
- 公開鍵
- 目的
- 置きます
- すぐに
- ランダムに生成
- むしろ
- Raw
- 準備
- リアル
- 本当に
- 理由は
- 最近
- 認める
- 記録
- 縮小
- 相対
- リリース
- 覚えています
- 繰り返される
- 繰り返し
- 返信
- レポート
- 各種レポート作成
- 要求
- リクエスト
- 研究
- 研究者
- 責任
- REST
- 明らかに
- 右
- リスク
- ロード
- 行
- RSA
- ルール
- 安全性
- 前記
- 同じ
- 言う
- 二番
- 秘密
- 安全に
- しっかりと
- 確保する
- セキュリティ
- 見ること
- 思われる
- 送信
- 送信
- 送る
- 送信
- シーケンス
- 役立つ
- サービス
- セッション
- セッションに
- 設定
- shared
- ショート
- すべき
- 同様の
- SIX
- スマート
- スマートフォン
- スヌープ
- So
- 固体
- 一部
- 誰か
- スペース
- 話す
- 特別
- スピード
- split
- スタック
- ステージ
- start
- 開始
- 都道府県
- まだ
- ストレート
- 文字列
- 強い
- それに続きます
- 続いて
- そのような
- 確か
- SVG
- スイッチ
- 取る
- ターゲット
- 言う
- 一時的
- 期間
- test
- より
- それ
- 英国
- アプリ環境に合わせて
- それら
- その後
- そこ。
- したがって、
- ボーマン
- 彼ら
- もの
- 考え
- この
- それらの
- 考え
- 三
- 介して
- 従って
- チケット
- 時間
- <font style="vertical-align: inherit;">回数</font>
- タイムスタンプ
- 〜へ
- 今日
- 取った
- top
- トラフィック
- トレーニング
- トランジット
- 遷移
- トランスペアレント
- 試み
- トリオ
- 真に
- 試します
- 順番
- オン
- ターニング
- 2
- type
- Uk
- わかる
- 予期しない
- 残念ながら
- ユニーク
- 未知の
- まで
- 更新版
- URL
- us
- USB
- つかいます
- 中古
- ユーザー
- 使用されます
- Verification
- 確認する
- 、
- 脆弱性
- 脆弱性
- 待っています
- 壁
- ました
- 仕方..
- we
- ウェブ
- ウェブサイト
- WELL
- した
- この試験は
- いつ
- かどうか
- which
- while
- 誰
- Wi-Fiあり
- 幅
- 意志
- 無し
- Word
- 言葉
- 仕事
- ワーキング
- もっと悪い
- 価値
- でしょう
- 間違った
- Xの
- You
- あなたの
- ゼファーネット