
Siriのプロトコル、解明される 47
Siriをお触り 部門より
iOSおよびAndroid向けアプリを開発する仏ApplidiumがiPhone 4Sの音声認識システムSiriのプロトコル解析を行ったそうだ(Applidium、TechCrunch、本家/.)。
Siriは入力された音声をAppleのサーバーに送信、サーバー側で解析を行う仕組みで動作するが、Applidiumはこのやり取りに使われるプロトコルを解明したとのこと。テストではiPhone 4S以外のクライアントから音声を送信してレスポンスを受け取ることに成功しており、理論的にはどのような端末からもSiriにアクセスできるという。ただし、利用には端末に固有なIDを要するため現実的には難しいとのこと。
Applidiumの開発者らは、まずプロキシーサーバを立ててHTTPトラフィックを解析したそうだ。しかしこれではSiri関連のデータは取得できなかったそうだ。そこでtcpdumpでネットワーク通信全般を調査したところ、SiriはTCPのポート443を使い、17.174.4.4(guzzoni.apple.comというドメインに紐付けられている)に対しリクエストを送信していることを突き止めたという。
このサーバーへの通信にはHTTPSが使われていたため、今度は偽のHTTPSサーバとDNSサーバを立ててiPhone 4Sに偽サーバへ通信させてリクエストの解析を行ったという。その後データの圧縮方法を探し当て(zlibを使っていた)、復元データを更に解析していったとのこと。
開発者らは最終的にはiPhone 4Sを通さずに音声データを送りSiriと会話することに成功したとのことだ。端末とAppleのサーバ間では大量のデータのやり取りが行われているそうで、やりとりには端末固有のIDを要するとのこと。なお、Applidiumではこのプロトコルについて理解を深めるためのツール群を公開している。
nabaztag/tagェ… (スコア:2)
nabaztag/tag [srad.jp]に求めていたのはまさにSiri的なものだったんですけどねぇ。
買ってみると実態は指で数える程度の音声コマンドを使えるだけのチープなおもちゃでした。
(そんな乏しいコマンドの解析のためだけにサーバ処理を必要としたのも解せませんが)
nabaztag/tagをSiriに接続するようなハックが登場してくれることを願います(無理でしょうけど)
Siriのプロトコルなら (スコア:2)
で接続完了かと.
Re: (スコア:0)
いいかい?(ぴとっ)→
←え?そっちなの!?
だめ?→
←…いいわよ
こっちの方が好みです。
有意義な解析利用法ってあるのかな? (スコア:1)
どう考えてもSiriを悪用する方法しか思いつかない。
既に自分はダークサイドに落ちているのでしょうか?
ホットスポットを立ち上げてSiriのリクエスト回答を捏造するとか悪い業者がやりそうな予感。
・回答を全て宣伝にしてiPhoneに返す。
・勝手に電話させてQ2で儲けたりする。
・ブラウザ立ち上げてアフェリエイトをどんどん踏ませる。
色々出来そうな予感。
Re:有意義な解析利用法ってあるのかな? (スコア:2)
悪用というのは悪い人にとっての有意義な使い方のことですよ
Re: (スコア:0)
質問自動化プログラムを開発して、Siriの回答から次の質問を作り出して投げて回答をもらい・・・を繰り返すと、Siri同士で無理問答ができたりして。まあSiri同士でシリトリでもいいですが
Re: (スコア:0)
もちろんダークサイドにも落ちてるかも知れないけど、それ以前に頭が悪くてあなたには何もできない予感。
これってiPhone4S以外の端末からSiriのサーバにアクセスする方法について調べてるって話であって、他人の端末を不正なサーバに誘導できるって話は全く無いんだけどなぁ。
Re:有意義な解析利用法ってあるのかな? (スコア:1)
端末固有ID使用しているって時点で、他端末からアクセスはまずはiTunes経由でアクティベートをどうにかしないといけないでしょ。
他の端末からのアクセスについは、出来ないって思ったんだけどね。
こういうACに返信しても何も意味ないかもしれないけど・・・
Re:有意義な解析利用法ってあるのかな? (スコア:2)
おちついておちついて。何が言いたいのかよくわかりませんよ。
Re: (スコア:0)
>悪用する方法しか思いつかない
に対して、
>他の端末からのアクセスについは、出来ない
悪用する方法は結局思いついてないでしょ‥‥?
Re: (スコア:0)
Q2も儲けられるような状態ならサービス終了しませんって。
オレオレ証明書 (スコア:0)
Siriはオレオレ証明書を食うっぽい書き方ですね
Re:オレオレ証明書 (スコア:1)
webブラウザでアクセスするわけでもないしオレオレ証明書自体は問題ないのでは?
サーバーの認証をしていないってのは問題ですが…(もしかしたら脱獄して改造してある?)
Re:オレオレ証明書 (スコア:1, 参考になる)
iPhoneがオレオレ証明書を食うんじゃなくて(ちゃんとサーバ認証してる)、
iPhoneにユーザが証明書のインポートできてSiriサーバとのSSL通信時もそれが有効になるという話。
Jailbreak不要らしい。
単なるポカなのか、最初からプロトコルのリバースエンジニアリングを防ぐつもりが無いかは分かりません。
Re:オレオレ証明書 (スコア:1)
分かりませんだあ?
そこは「知りません」だろ、Siriだけに
Re: (スコア:0)
なるほど。じゃぁ攻撃者がターゲットにユーザ証明書を導入させる手段が存在しなければ問題はおきないですね。
# 銀行系フィッシングとか‥‥‥? あと某インターネット系のプロジェクトとかユーザ証明書使ってるから合宿地でアレをソレされたりすると危ないかも...
誰にでも応じるなんて・・・ (スコア:0)
これぞ本当のSiri軽女
Re: (スコア:0)
端末IDが必須なのだから誰でもというわけではないでしょう。謂れの無いそSiriです。
端末固有番号 (スコア:0)
UDID APIが非推奨になってプライバシー配慮かとか言われてたけど、結局「便利だから他社に使わせない」ってだけでAppleは使うんだな…
端末固有番号!=UDID (スコア:2)
Applidiumの原文を読んだところ、iPhone 4SはSiriにUDIDを送信していないかもしれません。
「X-Ace-host」番号を送信しているようです。そして、ApplidiumはこれがUDIDと似た固有番号ではないかと推測しています。
つまり、iPhoneが生成するUUIDかもしれません。
もっとも、UDIDを「X-Ace-host」と呼び変えていたとしても、私には分かりません。原文には次の文字列が載っています。これはUDIDなのでしょうか?
X-Ace-Host: 4620a9aa-88f4-4ac1-a49d-e2012910921
Re:端末固有番号!=UDID (スコア:1)
UDID=Unique Device Identifier=端末固有番号、で単なる和訳だから全てのUDIDは端末固有番号ですぞ
でも、これそもそも「端末固有」番号なのか?俺にもただのUUIDに見える。
ランダム生成されているものなのか、内部のUDIDをseedにしてUUIDっぽいハッシュを作ってるのかは分からん。
後者なら多少の衝突は覚悟の上で正規品かどうか区別するのに使ってますなんて言い訳も成り立つけど、ランダム生成だとほぼ確実にログ取り用だよね。
でもそれってsiri経由の全操作がログられるわけでみんな気持ち悪いとは思わないのかな…。あの超長い読ませない気満々のプライバシーポリシーのどこかに免責書かれてるんだとは思うけど。
# Appleユーザはそんなこと気にしないからApple製品使ってるんだ、と言われてしまうと身も蓋も無いけどそれはそうかなという気はする
端末に固有なID!=端末固有番号(UDID) (スコア:2)
つまり、こういうことですね。(タイトル)
「端末に固有なID=端末固有番号」と早合点してAppleはUDIDを自分では使っているじゃないか!と批判したACが愚かでした、と。
>でもそれってsiri経由の全操作がログられるわけでみんな気持ち悪いとは思わないのかな…。
ランダム生成のUUIDをキーにログをとるのは、siriの性質から必要不可欠と考えます。
ユーザの行為をsiriサーバに投げる際にUUIDを付けておかないと、どのユーザに戻すべきか判断できなくなるかもしれません。さらにsiriのセリフに対してユーザが応答する場合、siriサーバは前回のユーザの行為やsiriの回答を踏まえる必要があります。
これらを実現するには、UUIDが有効でしょう。
これだけなら、IPアドレスとセッションIDを使えば良いかもしれません。しかし、前日、先週、先月のやりとりを踏まえた会話は、UUIDがないと実現できません。
それが嫌なユーザには、siriをOFFにすることをお勧めします。どのみち、siriを使うにはAppleのsiriサーバと通信するしかないのですから。
Re: (スコア:0)
>「端末に固有なID=端末固有番号」と早合点してAppleはUDIDを自分では使っているじゃないか!と批判したACが愚かでした、と。
いやいやいやいやいや、「端末に固有なID」は「端末固有番号」じゃないか。自明に。全く同じ意味の単語だろ。むしろ君の脳内でこの二つの単語がどういう区別をされているのかが分からん。ハイフン入ってるから番号じゃない(キリッとか言うつもりか。
もしクライアント側でランダムなUUIDを作っているなら理論上の衝突があり得るし、Apple側でsiriの使える全端末に対して強制的に一意なIDを生成して端末ごとに振っているならそれは明らか
Re:端末に固有なID!=端末固有番号(UDID) (スコア:2)
>もしクライアント側でランダムなUUIDを作っているなら理論上の衝突があり得るし
そうなのでしょうか?UUIDは原理的に衝突がほぼあり得ないと聞いていました。
ともあれ、ほかのサービスと共用できないIDなので漏洩時の被害はsiriの持つデータに限られます。この点は、UUIDやログインIDを使うほかのWebサービスと同等です。
UDIDを使う場合、複数のWebサービスから漏れたデータを名寄せできます。または、1カ所から漏れたデータを、ほかのWebサービスの管理者が自身のデータに名寄せできます。端末固有番号(UDID/Android ID/IMEI)の問題点は、ここにあります。
利用時にユーザに告知があるか否かについては、iPhone 4Sユーザではないのでわかりません。告知があるべきだと思いますし、ほかの情報についてはiOS5ではセットアップ時に告知があるので、siriについてもあると思っています。
IDを消す手段とAppleのsiriサーバのデータを消す手段がユーザにないかどうかは分かりません。普通の発想なら、siriをOFFにすれば消去するように作るでしょう。消去していなければ、批判されてしかるべきです。
興味があるならば、消去されているか否かをApple社に問い合わせてはいかがでしょうか?
Re: (スコア:0)
UUIDの衝突性はエントロピー源に依存しますし、基本的にセキュリティがUUIDの非衝突性に依存している実装はアウトです。
siriでユーザデータの混線が起こると「嫁さんに電話」とかしゃべった時にとんでもない挙動を起こしかねないのでApple側でユニーク保証する必要があります。
siriの持つ情報については、siriを経由した全オペレーションがAppleに送信され恐らく全てがロギングされているわけですから名寄せ云々どころの騒ぎではありません。これ単体で凄まじい量の情報になります。
告知についてはプライバシーポリシーに「Appleはあらゆる情報を何でもで
Re: (スコア:0)
RFC 4122 に従った UUID だと仮定すると、「4620a9aa-88f4-4ac1-a49d-e2012910921」は乱数ベースの UUID ですね(最後が1桁足りないので本当にUUIDなのかは不明ですが)。
ハッシュベース(MD5 または SHA1)の UUID だと、3 番目の部分の頭の "4" が、"3"(MD5) か "5"(SHA1) になります。
Re: (スコア:0)
Re: (スコア:0)
Re: (スコア:0)
Re: (スコア:0)
Re:端末固有番号 (スコア:1)
偽のSiriクライアントを識別するのには有効なんでは?
何だったらアップデートなりアクティベートの際にUDIDを収集しておけば、存在しないUDIDを弾くことが出来るはずです。
有効UDIDリストの収集とかやられたらどうしようもないから、最終的にはユーザごとに電子証明書を作る必要が出るかもしれませんが・・・取り敢えずの対策としてはそれなりに。
あと、行動ターゲティング広告などと同じく、ユーザに合わせた回答や、他の自社サービスデータと連携するためにはIDが必要です。
これがUDIDである必要はないけれど、ワザワザSiri用(+Siriと連動するサービス用)にID生成する理由もないですから特に不自然なところはありません。
そもそもの行動ターゲティングが嫌って人は、iPhoneに限らず各種Apple製品との相性が悪いと思いますので、気にする必要はないと思います。
Re: (スコア:0)
端末固有IDじゃなくてたとえばApple IDとかでもいいのでは。
そのApple IDのユーザーがiPhone4Sを持ってるかどうかはアクティベート時に把握するでしょうし。
プライバシー以前にUDIDって「これに頼ってもいいの?」と思わせるモノがある。
Re: (スコア:0)
>そもそもの行動ターゲティングが嫌って人は、iPhoneに限らず各種Apple製品との相性が悪いと思いますので、
>気にする必要はないと思います。
それっていわゆる
「Appleがやることには根本的に問題なんて一切起こらない!!」
ですよね。
とてつもなく気持ち悪い意見だと思うのですが。
これはAppleに限ったことではありません。社会一般の話です。
もしあなたが「気持ち悪いな、俺」と思えないのなら、
残念ですが一度まともな人と会話する機会を持ってはどうでしょう?
周囲にまともな人はいないのでしょうし。
Re:端末固有番号 (スコア:1)
(#2051924)
とてつもなく気持ち悪い意見だと思うのですが。
んー、なんか誤解があるようです。
「そもそもの行動ターゲティングが嫌って人」は「非Apple信者」と読み替えて下さい。
後半部分で言いたかったことは「Apple信者なら行動ターゲティングなど気にしない。Apple信者で無いなら、そもそもApple製品を買うべきではない」です。
敢えて自分のスタンスを明確にしないで(#2051655)を書きましたが、私は消極的な行動ターゲティング反対派で消極的な反Apple信者です。
私は積極的に主張しているわけでは有りませんが・・・あなたが私に向けた発言は、私がApple信者に向けて抱いている思いとほぼ同じです。
ついでにココにぶら下げときます。
(#2051679)
端末固有IDじゃなくてたとえばApple IDとかでもいいのでは。
端末IDとクレカ連動のAppleIDのどっちが嫌かは人によると思いますが、どっちみちAppleには全て押さえられてる筈なので今更な上に五十歩百歩です。
Re: (スコア:0)
必要無いならそもそも使ってないでしょう。
Re: (スコア:0)
必要だという声明もないけどね。
Re: (スコア:0)
それの何が問題なのかよくわからんのだけど
どこの誰だかわからんやつに使われるより、当たり前の使われ方だと思うけど
Re: (スコア:0)
>どこの誰だかわからんやつに使われるより、当たり前の使われ方だと思うけど
自分が何を言ってるか理解できてますか?
「世の中のすべての人間はAppleを無条件で信頼しろ、それが当たり前だ」
くらい暴論吐いてますよ。
UDIDへの懸念は本質的なプライバシーへの懸念です。
Appleだから使っていいだのなんだのは通りません。もちろんiAdでもね。
使わないなら使わないで「絶対どうしても必ず必要」なとき以外は使わない努力が必要ですし、
その「絶対どうしても必ず必要」だった用途でもキッチリ横串にならないよう分断するべきです。
それをしないのに
「アプリにはUDID使わせないよ」などとAppleが言うから問題になるわけですが、
その流れは理解できてますか?
願わくば、あなたのApple脳がいつかまともになりますように。
Re: (スコア:0)
端末固有IDの何が問題であるのかを全くわかってないって宣言ですね。
Appleの切捨ては良い切捨て (スコア:0)
もちろんAndroidの切捨ては悪い切捨て
Re: (スコア:0)
何を言いたいのかわからんが、ホイホイ端末を切り捨ててるのはAndroid陣営だと思うが。
キャリアのせいとかメーカーのせいとかユーザーには関係ない。
Re: (スコア:0)
涙拭けよ、Apple信者さん。
Re: (スコア:0)
涙拭けよ、暗泥信者。
Re: (スコア:0)
林檎信者は相変わらず気持ち悪いな
Siri対応ギャルゲとか作れるってことですか? (スコア:0)
既出ネタなのでAC
Re: (スコア:0)
惜しい。Siriギャルなら既出じゃなかった。
結局4Sの目玉にするためか。 (スコア:0)
3G、3GS、4でも問題なく動くけど、4Sが4と比べてあんまり代わり映えしない出来だったんで、
4S限定の「売り」としてSiriをつけたということか。