概要
本記事は、Worldline Yomani XR決済端末のリバースエンジニアリング調査記録。 分解・ファームウェア抽出・シリアルコンソール経由のrootシェル取得方法を解説。 ハードウェアのタンパー保護とソフトウェアの脆弱性の両面を分析。 最終的にセンシティブなデータへの直接的なリスクは限定的と結論。 調査の経緯と今後の課題、製造元への情報開示タイムラインも記載。
Worldline Yomani XR端末の初見と分解
- 調査対象 はスイスで普及している Worldline Yomani XR決済端末
- 端末のUI操作や ポートスキャン では有用な情報は得られず
- 分解すると 堅牢な筐体と複数のPCB構成 を確認
- メインSoCは カスタムASIC(Samoa II)、デュアルコアArmプロセッサ
- 外部フラッシュ と RAM も搭載
タンパープロテクションの仕組み
- 物理的な開封検知 はタンパースイッチではなく 基板間接続 で実現
- Zebraストリップ による圧力検知、ネジを緩めただけでタンパーイベント発生
- コイン電池 で電源断時もタンパー状態を保持
- ジグザグ配線 や フレキ基板 による物理侵入検知
- 1本でも銅線が切れると タンパー検出
- カードスロット周囲 にも追加のタンパー保護
ファームウェア抽出と解析
- 端末のフラッシュチップ をデサドルし、 ダンプ取得 に成功
- データは 暗号化されておらず、独自のECCレイアウトを採用
- YAFFS2ファイルシステム のメタデータが16バイトに縮小されており、 独自パッチ が必要
- ダンプから Linux 3.6カーネル(Buildroot 2010.02) で動作していることが判明
- カスタムブートローダー(Booter v1.7) を使用
シリアルコンソール経由でのrootシェル取得
- デバッグコネクタ のパッドでシリアル信号を検出
- ブートログ からLinuxの起動過程を観察
- rootアカウント でパスワードなしログインが可能
- タンパーメッセージ表示中 でもシステム操作が可能
- シリアルポートは 筐体外部のハッチからアクセス可能
- 端末を開封せずに rootシェル取得・マルウェア展開 が現実的
セキュリティ影響の再評価
- Linux側からカードリーダーやディスプレイ等の直接制御不可
- これらは mp1と呼ばれるセキュアプロセッサ で管理
- Linux(mp2)は ネットワークやアップデート、業務ロジック のみ担当
- セキュアブートローダー(loadercode) がタンパー状態を判定し、 暗号化・署名済みイメージ(mp1.img) を起動
- rootシェル露出 は重大な攻撃面だが、 センシティブデータ流出の証拠なし
情報開示タイムライン
- 2024/11/14 rootシェル発見
- 2024/11/15 製造元へ報告、90日後公開予定と通知
- 2024/11/18 製造元が受領を確認
- 2025/06/01 公開
結論・考察
- rootシェル露出 は設計上の大きな過失だが、 決済情報の安全性は維持
- ファームウェアバージョンの特定不可、rootログイン無効な端末も存在
- デバッグ機能が誤って製品版に混入した可能性
- さらなる解析余地 あり、挑戦者を歓迎
- 関係者への感謝 と今後の展望