たばっきゅ retweetledi

【注意喚起】音声入力アプリ「Typeless」をリバースエンジニアリングした結果、かなり深刻なプライバシーリスクが見つかったので共有します。
■ 結論から
Typelessは「On-device history」「Zero data retention」を謳っていますが、実際にはすべての音声データがAWS(米国オハイオ)のサーバーに送信されて処理されています。ローカルの音声認識モデルは一切入っていません。
それだけなら「クラウドSTTサービス」として普通ですが、問題は音声以外に収集しているデータの範囲です。
■ 何を調べたか
macOS上でTypeless v0.9.3のバイナリ解析、ネットワーク通信調査、ローカルDB解析、ネイティブライブラリの文字列解析を実施しました。
■ 確認された事実
1. 音声処理は100%クラウド
アプリ内にWhisper等のSTTモデルは存在せず、音声はOpusで圧縮後、WebSocket(wss://api.typeless.com/ws/rt_voice_flow)経由でAWS us-east-2のサーバーにリアルタイム送信されます。
api.typeless.com → …565501648.us-east-2.elb.amazonaws.com
公式プライバシーポリシーにも「processed in real time on our cloud servers」と書いてあるので嘘ではないのですが、マーケティングの「On-device」という表現は履歴保存に限定されており、かなりミスリーディングです。
2. 音声以外にも広範なデータを収集
ローカルのSQLiteデータベースとネイティブライブラリの解析で、以下のデータ収集を確認しました:
・ 閲覧中のWebサイトの完全URL(Gmail、Google Docs等も記録)
・ フォーカス中のアプリ名、ウィンドウタイトル
・ 画面上のテキスト(アクセシビリティAPIで再帰的に収集する「collectVisibleTexts」関数)
・ クリップボードの読み書き(パスワードマネージャのTransientTypeも処理可能)
・ CGEventTapによるシステムレベルのキーボード入力監視
・ ブラウザのDOM要素情報(Safari, Chrome, Edge, Firefox, Brave対応)
・ ユーザーがテキストを編集した内容(TrackEditTextService → sendTrackResultToServer)
3. ローカルDBに個人情報が平文保存
typeless.dbに音声認識結果のテキスト、閲覧URL、アプリ情報が平文で保存されています。「Zero data retention」を謳いながら、ローカルには全て残っています。音声ファイル(.ogg)も削除されずに残存。
4. 過剰な権限要求
音声入力ツールなのに、マイクに加えて画面録画、カメラ、Bluetooth、アクセシビリティの権限を要求します。スクリーンショット機能も内蔵されています。
5. 会社の透明性がほぼゼロ
・ 利用規約・プライバシーポリシーに法人名の記載なし
・ 所在地は「サンフランシスコ郡、CA」(利用規約の管轄地のみ)
・ WHOISは非公開(GoDaddy + Cloudflare)
・ SOC2、ISO27001等のセキュリティ監査の記載なし
・ 連絡先は hello@typeless.com のみ
■ 技術的な根拠(再現可能)
以下のコマンドで誰でも確認できます:
# ネットワーク通信先
nslookup api.typeless.com
# app.asar内のAPI URL
strings /Applications/Typeless.app/Contents/Resources/app.asar | grep "api.typeless.com"
# WebSocket通信プロトコル
strings /Applications/Typeless.app/Contents/Resources/app.asar | grep "rt_voice_flow"
# キーボード監視のネイティブライブラリ
strings /Applications/Typeless.app/Contents/Resources/lib/keyboard-helper/build/libKeyboardHelper.dylib | grep -i "key pressed"
# 画面テキスト収集
strings /Applications/Typeless.app/Contents/Resources/lib/context-helper/build/libContextHelper.dylib | grep -i "collectVisibleTexts"
# ローカルDBの中身
sqlite3 ~/Library/Application\ Support/Typeless/typeless.db ".schema history"
■ 何がまずいのか
CGEventTap(キーボード監視) + アクセシビリティAPI(画面テキスト収集) + クリップボードアクセス。この3つの組み合わせは技術的にキーロガーと同等の能力を持ちます。
これを運営法人が不明なサービスに許可しているということです。
音声入力の精度向上のためにコンテキスト(使用中のアプリや入力フィールドの情報)を取得すること自体は合理的な設計です。しかし、それをクラウドに送信する場合、運営の信頼性とセキュリティ体制が問われます。法人名すら公開していない会社にその信頼を置けるかは、各自で判断してください。
■ 代替手段
完全ローカルで動作する音声入力ツールは存在します:
・ Whisper.cpp / MLX Whisper(OSS、完全ローカル、無料)
・ macOS標準の音声入力(Apple Silicon上でオンデバイス処理)
・ Superwhisper(Whisperベース、Mac向け、ただし要検証)
■ まとめ
・ Typelessの音声認識は100%クラウド処理(ローカルモデルなし)
・ 音声以外にも画面テキスト・URL・キーボード入力を収集可能な技術基盤
・ 運営法人が不透明(法人名・所在地の公開なし)
・ セキュリティ監査の証拠なし
利用中の方はリスクを認識した上で判断してください。少なくともLittle Snitch等でネットワーク通信を監視することを推奨します。
#typeless
日本語
















