概要
- Catwatchful はAndroid向けの高度なスパイアプリとして発見
- サービス登録時に Firebase と独自サーバー両方にアカウント作成
- サーバー側APIに SQLインジェクション 脆弱性を確認
- 約62,000件の 平文アカウント情報 が流出可能な状態
- 報告後、サービスは一時停止も再開、最終的に WAF で脆弱性遮断
Catwatchfulとは何か
- Android端末向けの フル機能型スパイアプリ であるCatwatchfulの発見
- 公式FAQ で「相手に気付かれず監視可能」と明記
- アプリは「絶対に検知・アンインストール不可」と 自信満々に宣伝
- 実際には インストール後、全権限要求・バックグラウンド常駐
- アプリドロワー上では「Settings」など 偽装アイコン で隠蔽
アカウント作成とセットアップ
- サイトで無料トライアル登録時に Firebase と独自サーバー(catwatchful.pink)へアカウント同時作成
- 登録後、 APKファイル をダウンロード・インストール指示
- インストール時に 全権限要求 ・インストーラー自体の削除を促す
- アプリは ユーザーに気付かれず常駐 し、監視対象端末の情報収集
コントロールパネルの挙動
- Webインターフェースから リアルタイムで端末監視 が可能
- 写真撮影・マイク録音 等も即時反映、遅延ほぼ無し
- 収集データはFirebaseの Cloud Storage 上に保存
- Firebase Cloud Messaging (FCM) 経由でコマンド送信
- 一部バグ(カウンター値の誤表示)を除き、 高い完成度
catwatchful.pinkサーバーの調査
- コントロールパネル構築用に PHP API (servicios.php)へ複数リクエスト
- 例えばgetDeviceエンドポイントは 認証無しでアクセス可能
- ただし 端末ID(imei) は推測困難なランダム値で重大な情報は得られず
- 他エンドポイントも 機密情報や認証情報は取得不可
SQLインジェクション脆弱性の発見
- getDeviceエンドポイント でSQLインジェクションを試行
- sqlmap によりブラインド型・UNION型両方のインジェクション成功
- 非ブラインド型 でデータベース全体のダンプが可能
データベースから得られた情報
- userテーブル には約62,000件のアカウント情報(メールアドレス・パスワード平文)
- その他、端末情報や管理用統計テーブルも存在
- 全アカウントの乗っ取りが理論上可能
その後の対応と影響
- TechCrunchのZack Whittaker が運営者特定・各種通報を実施
- Googleへ報告、Safe Browsingで警告、Firebase側は調査継続(当初DBは稼働中)
- catwatchful.pinkのホスティング会社へ通報、 一時サービス停止
- 直後に 新ドメイン(xng.vju.temporary.site) で再開、脆弱性は継続
- その後 WAF設置 でSQLインジェクション遮断、サービスは継続運用
タイムライン
- 2025-06-09: 脆弱性発見・Zackへ連絡
- 2025-06-23: Googleへ通報、Safe Browsing警告
- 2025-06-25: ホスティング会社へ通報、サービス一時停止
- 2025-06-26: 新ドメインで再開、脆弱性未修正
- 2025-06-27: WAF設置、SQLインジェクション遮断
- 2025-07-02: 公開記事掲載
まとめ・教訓
- スパイアプリ運営のセキュリティ意識の低さ が露呈
- 平文パスワード保存 など基本的な対策も未実施
- 第三者による全アカウント乗っ取りリスク が現実化
- 報告・通報後も 運営側の対応は消極的 で再発の懸念
- 倫理的・法的課題 のあるサービスへの警鐘
サポート案内
- 広告・SNS無し、プライバシー重視運営
- 継続的な調査・執筆活動への ko-fiでの支援依頼