Blueborne脆弱性のまとめ

1.Overview 最近、Bluetoothプロトコルで短距離無線通信技術を使用したゼロデイ脆弱性が8種類発見された。この脆弱性はAndroid、iOS、Windows、Linux、IoT機器など、約53億台以上の機器に影響を与えることがわかった。 今回発見された、脆弱性を悪用する「BlueBorne」と命名された攻撃を実行する際、攻撃者がBluetoothが活性化されている機器の制御権を完全に奪い、Malware(マルウェア)をばら撒き、さらにはユーザが何のアクションもしなくても機器の重要なデータ、およびネットワークにアクセスする中間者攻撃を行うこともできることが明らかになった。 攻撃者は被害者の装置のBluetoothが活性化された状態で、近くにいるだけでよい。さらに、攻撃に成功した後は攻撃者の機器とペアリングされている必要もない。 BlueBorne攻撃にはサイバースパイ、データ奪取、Ransomware(ランサムウェア)、Mirai(ミライ)などの大規模IoT Botnet(ボットネット)生成、WireXなどの大規模モバイルBotnet生成など、ハッカーが求める機能が多い。BlueBorne攻撃はインターネットを含むその他のネットワークとつながっていなくて安全な「Air gap(エアギャップ)」ネットワークに浸透することができるため、他の攻撃以上の威力を発揮する。   2.Blueborneの脆弱性 CVE番号 脆弱性の要約 CVE-2017-0781 Android BNEP(Bluetooth Network Encapsulation Protocol、テザリング)で発生する遠隔コード実行脆弱性 CVE-2017-0782 AndroidのBNEP PAN(Personal Area Networking、IP基盤装置間のネットワーク接続)プロファイルで発生する遠隔コード実行脆弱性 CVE-2017-0783 Android BluetoothのPANプロファイルで発生する中間者攻撃脆弱性 CVE-2017-0785 Android SDP(Service Discovery Protocol、周辺装置識別)で発生する情報露出脆弱性 CVE-2017-8628 WindowsのBluetoothドライバで発生するスプーフィング脆弱性 CVE-2017-1000250 Linux Bluetooth stack(BlueZ)で発生する情報露出脆弱性 CVE-2017-1000251 Linux Kernel(カーネル)遠隔コード実行脆弱性 CVE-2017-14315 AppleのLow Energyオーディオ・プロトコルで発生する遠隔コード実行脆弱性 参照:https://www.krcert.or.kr/data/secNoticeView.do?bulletin_writing_sequence=26687     (1)Androidの脆弱性   情報流出脆弱性(CVE-2017-0785) Android OSの脆弱性として、一つ目は攻撃者が下記の遠隔コード実行脆弱性のうちの一つを活用する際に有用な情報を提供するということである。この脆弱性はSDP(Service Discovery Protocol)サーバで発見されたため、装置が周辺にある他のBluetoothサービスを識別することができる。この欠陥は侵入者が一連の精巧な要請をサーバに送り、その応答としてメモリ領域を露出させる。このような情報は以降、セキュリティ対策を迂回して装置を制御するために攻撃者が悪用する可能性がある。また、この脆弱性により侵入者は対象の装置から暗号化キーを抜き取り、Bluetooth通信を盗聴することができる。   遠隔コード実行脆弱性(CVE-2017-0781) この脆弱性はBNEP(Bluetooth…

WPA2 KRACK脆弱性のまとめ

  1.Overview ルーヴェン大学のセキュリティ研究員であるMathy Vanhoef氏によると、発見された「WPA2 Key Reinstallation Vulnerabilities(KRACK) Explained」脆弱性は、WPA2の強力な暗号化機能を無用の長物にする可能性があるという。KRACKの脆弱性は中間者(Man-in-the-Middle、MITM)攻撃の一種であり、APに接続していない状態でもAPとStation間の暗号化されたデータを盗み取ることができ、クレジットカード情報、パスワード、チャットメッセージ、電子メールなどのネットワークを行き来するすべての情報の盗用が可能である。   2.Details KRACKの脆弱性はAPとStation間で相互作用する認証手続きの過程で発生する(KRACK攻撃を行うためにはAPの接続パスワードを知らなければならない)。APまたはStationが送った暗号化検証メッセージを間で盗み取り、同じように伝えることで発生するエラーを利用した再認証攻撃方法である。同じパケットを受け取った対象は、これまでに受け取っていたパケットと同じパケットを受け取ったため、検証パケットを送っていないと判断して、暗号化検証手続きを再び行う。このとき、暗号化及び復号の際に使用されるキーの値が再設定され、パケットが0に初期化されて新たなパケット組み立てが可能になる。   1)WPA2の暗号化タイプとKRACK攻撃との相関関係 Encryption Vulnerability Decryption AES CCMP パケット復号 KRACK攻撃によりPacket Numberを初期化してパケット再組み立て可能 WPA TKIP パケット復号 偽変造・挿入 可能 IV*再使用で発生したWEP脆弱性を守るためIV FieldをPN(Packet Number)として使用. KRACK攻撃によりPacket Numberを初期化することができるため、暗号化時に使用されたIV値を獲得可能 GCMP Wireless Gigabit(WiGig)に使用される暗号化方式. 二つの通信方向で同じ認証キーを使用するため、KRACK脆弱性による認証キー奪取可能 *IV(initialization vector):最初のブロックを暗号化するときに使用される値。「初期化ベクトル」と呼ばれ、繰り返し使用される場合、暗号化されたデータを復号可能。類似用語にnonce(number used once)。   2)既存のMITM(ARP Spoofing)とKRACK攻撃の比較 Attack Common Different KRACK APパスワードの事前把握が要求される 攻撃時、APに接続している必要なし MACスプーフィングが必要(ターゲットAPの、またはStationに偽装) 特定の対象*に限定された攻撃のみ可能(ターゲット全体の選定は不可) HTTPSなど保護されたインターネット通信プロトコルを使用するパケットの復号可能 KRACK攻撃前にパケット変造から攻撃探知ができない場合、ユーザが攻撃を確認する方法なし ARP Spoofing 攻撃時、APに接続していなければならない…