ハッキング · 1 min read · Oct 19, 2025
開発者が無料のビールを手に入れるためにAndroidアプリをハッキングした方法

無料のビールを手に入れるためにAndroidアプリをハッキングすることを想像してみてください!これはポーランドの開発者クバ・グレツキーが行ったことで、冷えたビールを手に入れました。
世界中のほとんどのパブやレストランは、潜在的な顧客を惹きつけるために、Androidアプリで無料のビール、ディナー、またはランチクーポンを提供しています。しかし、グレツキーはそのようなオファーをハッキングして何かを得る価値があると考えました。BreakDev.orgの投稿で、クバ・グレツキーはEatApp Androidアプリをハッキングしてビーコンをバイパスし、無料のビールを得る方法を説明しています。
どうやら、ポーランドのパブやレストランは、スマートフォンアプリで購入を確認するためにBluetoothビーコンを使用してボーナスポイントや報酬を授与しています。グレツキーは放送信号をハッキングし、自分にビールを得ました。
グレツキーはブログ投稿で「例えば、ある場所では5ポイントで無料のビールを提供しており、購入したビール1杯ごとに1ポイントが付与されます。つまり、その場所で5杯のビールを購入するごとに1杯の無料ビールが得られます」と述べています。
彼がどのようにそれを行ったか
Bluetoothビーコンは、スマートフォンによって受信される無線信号を放送するセンサーで、マイクロロケーションと文脈認識を解除します。これにより、レストランやパブは購入を確認し、顧客にポイント、オファー、クーポンを授与することができます。グレツキーは、ポーランドのほとんどのビーコンがEstimoteという会社によって製造されていることを発見しました。
グレツキーはEstimoteのアプリドキュメントを研究し、ビーコンが送信する情報についてのインプットを得ました。さらに、彼は任意のアプリケーションを介してビーコンの放送を簡素化するためのAndroidライブラリにアクセスしました。彼は放送範囲が最大70メートルであることを発見し、理論的には報酬を認証するために使用される可能性のある放送値が空中で放送されていることを理解しました。
範囲を絞り込むことができた後、彼は開発者アプリを使用してビーコンから重要な情報を収集しました。その後、HTTP/HTTPS WindowsプロキシFiddlerを使用して、レストラン内の電話からサーバーとの通信を学ぶためにHTTPS通信を傍受し、復号化しました。
Fiddlerが設定されると、彼は公開アプリのトラフィックを傍受できました。なぜなら、彼らは証明書ピンニングを実装していなかったからです。ターゲットレストランのビーコンが近くにない場合、グレツキーはその場所のplace_idを使用しましたが、関連する4桁のPINを推測することはできませんでした。
4桁のPINをブルートフォースしている間、彼は5回の失敗後にアカウントが30分間ロックされました。彼はその後、レストラン内で3G/4Gを介して使用するための傍受VPNを設定しました。これはAndroid 6.0でVPNを接続するための小さな作業が必要でしたが、グレツキーは開発者アプリでライブパケットキャプチャをテストするためにレストランを訪れ始め、3つ目の会場で成功を収め、UUID、メジャー番号、およびマイナー番号の放送値を収集しました。
グレツキーはsslsplitパケットを平文形式にデコードするためのシンプルなスクリプトを公開し、リクエスト認証パケット内の値が開発者アプリでのライブ放送で検出されたものと同じであることを確認できるようにしました。
これらの値は、すべての提携レストランで常に空中に放送されている可能性が高く、ハッカーに対して複数の脆弱性を露呈しています。しかし、グレツキーはこのプロセスを通じて得たビールに満足していました。
彼はここでブログにプロセス全体を説明しています。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。