ハッカーが300万台のホテルキーカードロックを数秒で開ける方法を発見

ハッカーが300万台のホテルキーカードロックを数秒で開ける方法を発見

毎年8月、数千人のセキュリティ研究者がラスベガスに集結し、「ハッカーサマーキャンプ」として知られるBlack HatとDefconの連続開催となるハッカーカンファレンスに参加する。その一部が、ラスベガスのインフラ、つまりカジノやホスピタリティ業界のテクノロジーが集積する街のインフラをハッキングしようとするのは当然のことだ。しかし、2022年のあるプライベートイベントでは、選抜された研究者グループが実際にラスベガスのホテルの部屋をハッキングするよう招待された。ノートパソコンとレッドブルの缶が詰め込まれたスイートルームで、テレビからベッドサイドのVoIP電話まで、部屋のあらゆる機器に潜むデジタル脆弱性を見つけるために競い合ったのだ。

あるハッカーチームは、その数日間、おそらく最も機密性の高い技術である部屋のドアの鍵に集中して取り組んでいました。そして今、1年半以上が経ち、ついにその成果を公表しました。彼らが発見した技術によって、侵入者は世界中の何百万ものホテルの部屋を、わずか2回タップするだけで数秒で開けることができるのです。

本日、イアン・キャロル氏、レナート・ウーターズ氏、そして他のセキュリティ研究者チームが、ホテルのキーカードハッキング手法「Unsaflok」を公開しました。この手法は、スイスのロックメーカーDormakabaが販売するSaflokブランドのRFIDベースのキーカードロックの複数のモデルを、ハッカーがほぼ瞬時に解錠できるセキュリティ上の脆弱性を集約したものです。Saflokシステムは、世界131カ国、13,000軒のホテルの300万枚のドアに設置されています。

キャロル氏とウーターズ氏は、ドルマカバの暗号化技術と、ドルマカバが基盤として使用しているMIFARE Classicと呼ばれるRFIDシステムの両方の脆弱性を悪用し、サフロックのキーカードロックをいかに簡単に解錠できるかを実証した。彼らの手法は、まず対象のホテルのキーカードを入手することから始まります。例えば、そのホテルの部屋を予約したり、中古品の箱からキーカードを取り出したりすることで、キーカードを入手します。そして、300ドルのRFID読み書き装置を使ってそのカードから特定のコードを読み取り、最後に独自のキーカード2枚に書き込みます。この2枚のキーカードをロックに軽く触れるだけで、1枚目のカードがロックの特定のデータを書き換え、2枚目のカードがロックを解除します。

「軽く2回タップするだけでドアが開きます」と、ベルギーのルーヴェン・カトリック大学のコンピューターセキュリティ・産業暗号グループの研究者であるウーターズ氏は言う。「ホテル内のすべてのドアで機能するのです。」

研究者たちが鍵のハッキング技術を実演する動画。(鍵に映る光のパターンは、研究者の要請により一部編集されています。これは、ドルマカバ社と非公開に合意した技術の詳細が明らかになるのを避けるためです。)動画:イアン・キャロル

独立系セキュリティ研究者で旅行ウェブサイトSeats.aeroの創設者でもあるウーターズ氏とキャロル氏は、2022年11月にDormakabaに対し、ハッキング手法の技術的詳細をすべて公開した。Dormakabaによると、同社は昨年初めから、Saflokを使用しているホテルにセキュリティ上の欠陥を認識させ、脆弱なロックの修理または交換を支援する取り組みを進めてきたという。過去8年間に販売されたSaflokシステムの多くでは、個々のロックのハードウェア交換は不要だ。ホテルはフロントデスクの管理システムを更新または交換し、技術者に各ロックをドアごとに比較的迅速に再プログラミングしてもらうだけで済む。

ウォーターズ氏とキャロル氏は、それでもドルマカバ社から、今月時点で設置済みのサフロックのうち、アップデートが完了しているのはわずか36%だと伝えられたと述べています。サフロックはインターネットに接続されておらず、古いロックの中にはハードウェアのアップグレードが必要なものもあるため、完全な修正が展開されるまでには少なくとも数ヶ月はかかるだろうと彼らは述べています。古い設置では数年かかる可能性もあります。

「当社はパートナーと緊密に協力し、この脆弱性に対する即時緩和策と長期的な解決策を特定・実装してきました」とドルマカバはWIREDへの声明で述べたが、「即時緩和策」が具体的にどのようなものかは明らかにしなかった。「当社の顧客とパートナーは皆、セキュリティを非常に重視しており、この問題に責任を持って対処するためにあらゆる合理的な措置が講じられると確信しています」

ウーターズ氏とキャロル氏の研究グループが発見したドルマカバの錠前をハッキングする手法には、2つの異なる種類の脆弱性が関わっている。1つはキーカードへの書き込みを可能にする脆弱性、もう1つは、サフロックの錠前を騙して開錠させるためにカードにどのようなデータを書き込めばよいかを知る脆弱性だ。研究チームがサフロックのキーカードを分析したところ、MIFARE Classic RFIDシステムが使用されていることがわかった。このシステムには、ハッカーがキーカードに書き込みを行える脆弱性があることが10年以上前から知られていたが、ブルートフォース攻撃には最大20秒かかることがある。研究チームは次に、ドルマカバ独自の暗号化システムの一部、いわゆる鍵導出機能を解読し、カードへの書き込み速度を大幅に向上させた。どちらの手法を用いても、研究チームはサフロックのキーカードを自由に複製できるが、別の部屋のキーカードを生成することはできない。

研究者たちは、より重要なステップとして、ドルマカバがホテルに配布しているロックプログラミングデバイスと、キーカード管理用のフロントデスクソフトウェアを入手する必要がありました。ソフトウェアをリバースエンジニアリングすることで、カードに保存されているすべてのデータを理解し、ホテルの施設コードと各部屋のコードを抽出しました。そして、独自の値を作成し、ドルマカバのシステムと同じように暗号化することで、ホテル内のどの部屋でも開けられるマスターキーを偽装することができました。「実質的に、ドルマカバのソフトウェアで作成されたように見えるカードを作ることができるのです」とウーターズ氏は言います。

では、キャロル氏とウーターズ氏はどのようにしてドルマカバのフロントデスクソフトウェアを入手したのだろうか?「何人かに丁寧に頼みました」とウーターズ氏は語る。「メーカーは、自社の機器をeBayで売ったり、自社のソフトウェアをコピーしたりする人はいないと想定していますが、こうした想定は実際には当てはまらないことは誰もが知っていると思います。」

リバースエンジニアリングの作業をすべて終えると、最終的な攻撃は、300 ドルの Proxmark RFID 読み取り/書き込みデバイスと数枚の空の RFID カード、Android フォン、または Flipper Zero 無線ハッキング ツールだけで実行できるようになります。

ホテルの部屋のドアの鍵にキーカードをかざしている人

Saflokブランドのロック。

写真:ドルマカバ

ハッカーのUnsaflokテクニックの最大の弱点は、標的の部屋と同じホテル内のどこかの部屋のキーカード(有効期限切れのものでも構いません)を持っていなければならないことです。これは、各カードにホテル固有のコードと部屋固有のコードが付与されており、ハッカーはそれを読み取り、偽造カードに複製する必要があるためです。

物件コードを入手したら、この技術ではRFID読み取り書き込み装置を使って2枚のカードに書き込みを行う必要がある。1枚目は対象のロックを再プログラムするカード、もう1枚はロックを解除する偽装カードだ。(研究者によると、2枚のカードの代わりにAndroidスマートフォンやFlipper Zeroを使って信号を次々と発信することもできるという。)研究者たちは、最初のカードを使えばホテルのシステムに登録されている固有のIDを推測することなく対象の部屋を開けられると示唆しているが、そのカードが具体的に何をするのかについては明らかにしていない。侵入者や窃盗犯に明確な指示を与えてしまうのを避けるため、この技術の要素は秘密にしているという。

対照的に、あるセキュリティ研究者は、2012年のBlack Hatカンファレンスで、Onity社が販売する鍵を解錠できる同様のホテルキーカードハッキング事例を発表しました。このハッキングは難読化を一切行わず、ハッカーであれば誰でも、世界中に1000万個あるOnity社の鍵を解錠できるデバイスを開発できるものでした。Onity社は問題解決に必要なハードウェアのアップグレード費用を負担せず、顧客に負担を強いたため、多くのホテルでこの問題は未解決のままとなり、最終的には少なくとも1人のハッカーによる全国規模の窃盗事件に悪用されました。

キャロル氏とウーターズ氏は、ドルマカバ社が修正プログラムを公開した現在でも、数百の施設がこの脆弱性に対して脆弱な状態が続く可能性が高いことを踏まえ、より慎重なアプローチを取りつつも、自社の技術について一般の人々に警告することで、そのような事態を回避しようとしていると述べています。「ドルマカバ社が迅速に修正できるよう支援しつつ、宿泊客にも周知するという妥協点を見つけようとしています」とキャロル氏は言います。「もし誰かが今日、この脆弱性をリバースエンジニアリングし、人々が気付く前に悪用し始めたら、さらに大きな問題になる可能性があります。」

キャロル氏とウーターズ氏は、ホテル宿泊客は、その特徴的なデザイン(円形のRFIDリーダーに波線が入ったもの)で脆弱なロックを最もよく見分けられるが、必ずしもそうではないと指摘する。彼らは、ホテル宿泊客がドアにSaflokを取り付けている場合は、iOSまたはAndroidで利用可能なNXPのNFC Taginfoアプリでキーカードを確認することで、ロックがアップデートされているかどうかを確認できると示唆している。ロックがDormakaba製で、アプリでキーカードがまだMIFARE Classicカードであると表示される場合、そのロックは依然として脆弱である可能性が高い。

もしそうだとすれば、貴重品を部屋に残さないようにし、部屋に入ったらドアにチェーンをかける以外に対策はあまりないと、二人の研究者は述べています。彼らは、部屋のデッドボルトもキーカードロックで制御されているため、追加の安全策にはならないと警告しています。「デッドボルトを施錠しても、依然として安全ではありません」とキャロル氏は言います。

完璧な、あるいは完全に実装された対策がなくても、ホテル宿泊客は誤った安心感を抱くよりもリスクを認識しておく方が良いと、ウーターズ氏とキャロル氏は主張する。彼らは、サフロックブランドは30年以上販売されており、その間、大半、あるいは全期間にわたって脆弱性を抱えていた可能性があると指摘する。ドルマカバ社はウーターズ氏とキャロル氏の技術が過去に使用された事例を認識していないとしているが、研究者らは、それが秘密裏に行われなかったことを意味するわけではないと指摘する。

「この脆弱性はずっと前から存在していたと考えています」とウーターズ氏は言う。「私たちが初めて発見したとは考えにくいです。」