顔は交換できない:顔認識サービスFindFaceを検証

人が写っている写真を解析して、ロシアで人気のSNS、VK.comでその人のアカウントを探すというサービスがあります。どんな仕組みなのか、どんな写真なら検索できるのか実験してみました。

findface_experiment-featured

ロシア在住でなければおそらくご存じないと思いますが、人が写っている写真を解析し、SNSサイトVK.comでその人のアカウントを見つけるというサービスがあります。その名も「FindFace」。サービス開始は2016年2月ですが、最近になってかなり人気が出てきました。火付け役となったのは、印象的な写真プロジェクトを公開したサンクトペテルブルクの写真家、エゴール・ツヴェトコフ(Egor Tsvetkov)氏です(英語記事)。このプロジェクトは、最近Kaspersky Daily(当ブログ)でも取り上げました

Kaspersky Dailyでは、FindFaceとはどのような仕組みなのか、どんなタイプの画像が認識されてどんな画像が認識されないのか、調査することにしました。無作為に撮った写真、インターネット、そして最新の技術を使って、まったく見ず知らずの人の素性を詳しく知ることができるのかどうか、確かめたかったのです。

結論から言うと、確かに可能でした。気がかりな結果です。この調査では、いくつか興味深い発見もありました。たとえば、自分のデジタルIDが盗まれていることに気づいた同僚がいました。

FindFaceとは?どんな仕組みなのか?

FindFaceは、人物の写真を基に、VK.comのアカウントを検索できるサービスです。検索は30回まで無料で、それ以降は有料になります。

iOS向けとAndroid向けのモバイルアプリが提供されていて、無料のWeb版もあります。アプリの機能は少なく、動作に多少の不具合も見られますが、大きな利点が1つあります。撮った写真を、そのままFindFaceの検索に使えるのです。

検索の結果、一致する可能性のあるユーザーのプロフィール写真が表示されます。写真をクリックしていけば、そのユーザーアカウントの公開画像をすべて見ることができます。ツヴェトコフ氏のプロジェクト『Your Face is Big Data』(あなたの顔はビッグデータ)の作品を見れば、まったくの赤の他人でも簡単に特定できることがわかるでしょう。

Web版は、探している人のVK.comアカウントに直接移動できるので、さらに便利です。Web版を使って人を探す場合は、写真をハードディスクにコピーしてからFindFace.ruにアップロードするなど、アプリ版にない手順をいくつか実行する必要があります。

対象の人物がポーズをとっている写真をアップロードしたときは、申し分のない結果が得られます。調査の「餌食」となった当社社員10人のうち、9人を見つけることができました。

通りや地下鉄で知らない人をこっそり撮影する場合は、精度が2分の1か3分の1にまで落ちてしまいます。また、遠くから撮影した写真をアップロードすると、人が写っていると認識されない場合が多々ありました。それでも、画像を拡大表示するかトリミングすれば、認識されるようになります。

日中の外であれば、普通のスマートフォンでも、FindFaceで認識可能な写真を撮るのはさほど難しくありません。地下鉄での撮影には、三脚か高性能なカメラが必要です。

わかったこと

スマホを持った赤の他人に自分のことを詮索されたくないなら、いくつかできることがあります。

1. FindFaceが検索対象としているのは、VK.comのプロフィールにアップロードされた写真です。アカウント内の写真すべてが検索されるわけではありません。つまり、検索対象となるのは、「My profile photos」(マイプロフィール写真)アルバムに保存されている、現在のプロフィール写真と過去のすべてのプロフィール写真です。注意したいのは、このアルバムを非表示にできないことです。つまり、常に公開状態にあるのです。対策としては、古いプロフィール写真を削除するしかありません。このアルバム内にある写真が少ないほど、FindFaceに見つかる可能性が下がります。。

ヒント: 古い写真を削除しましょう。このアルバムには、最新の写真だけを保存するようにしてください。

2. フードをかぶるか、カメラから顔を背けるか、普通は向かないような角度を向いていれば、顔認識を妨害できる可能性があります。変顔をするのもいいでしょう(例外もありますが)。ごついフレームのメガネをかけるのも非常に有効です。ただし、プロフィール写真でも同じメガネをかけている(または同じ変顔をしている)場合は、意味がありませんが。

3. この実験に参加したボランティアの多くは、自分が大量の写真を公開していたことに気づいていませんでした。確かに、VK.comの設定でプライバシーのオプションはチェックしていましたが、それだけでは足りません。アルバムへのアクセスが制限されるだけで(しかも、全アルバムが対象というわけではありません)、特定の写真へのアクセスは制限されないからです。

https://46qasb3uw5yn639ko4bz2ptr8u-wpengine.netdna-ssl.com/files/2016/04/sjkljkl.jpg

ヒント: 信頼できる知り合いに頼んで、いったん友達解除してもらい(テスト後にまた友達になります)、自分のアカウントの何が表示されて何が表示されないかを確認してもらいましょう。必要があれば、公開アルバムの写真を非公開アルバムに移してください。

4. FindFaceの機能は完全に合法です。データをキャッシュして、VK.comで非表示設定になっている情報を表示することはありません。VK.comの写真をすべて削除してから、FindFaceでもう一度検索してみたところ、ヒットしなくなりました。とはいえ、今後もっとひどいサービスが新たに登場する可能性も十分に考えられます。たとえば、FacebookやInstagramなど、他の人気SNSのデータを保存するサービスです。そこで、あらかじめSNSアカウントでも、セキュリティ設定を再確認しておくといいでしょう。

5. FindFaceは自称、出会い系サービスです。たとえば、魅力的な人を見かけたら、写真を撮って、その人のアカウントに目を通して…おっと、口説き方の話になってきましたね。実際には、もっと便利な(そして変な)ことを他にもいろいろできるサービスです。

ABCニュースが先日、こんな事件を伝えました(英語記事)。家に押し入った強盗が監視カメラに映っていたという話ですが、もしこれがロシア語圏の国で起きた事件なら、犯人は99%間違いなく、VK.comのアカウントを持っているでしょう。FindFaceを使って犯人を見つけられるかもしれません。

一方、SNS利用者の多くは、プライバシー上の不安から偽名を使っていますが、投稿する写真は本人のものです。インターネットは巨大すぎるから写真1枚で自分が特定されるはずはない、と考えているのです。でも、必要であれば探そうとする人はいます。たとえば企業の採用担当者は、面接の前にSNSで候補者のページをチェックしたいと考えます。

デジタルIDが盗まれたことに気づいたKaspersky Lab社員

SNSに写真を一切投稿しない人もいます。1枚たりとも。たとえば、当社のある社員もそうしています。しかし、FindFaceは彼を見つけ出しました。

というのは、「Vitek Tizinksilov」なるどこかの誰かが、VKではないSNSで公開されていた別の人のギャラリーから、この社員の写真をコピーして、それをプロフィール写真として使っていたのです。

まったく同じ写真をGoogle画像検索で探してみたところ、Fotostrana(翻訳すると「写真の国」の意)というさらに別のSNSでもプロフィール写真に使われていることが判明しました。少しもうれしくない発見です。

このように、自分がネットに何もアップロードしないからといって、人から見られないとは限りません。友達が勝手に写真をアップロードすることもあります。自分が写っている写真を投稿されてしまった場合は、たとえグループ写真であっても、その結果どうなるのか、誰にも予測できません。

ヒント: このアプリで使われているAPIをVK.comが凍結する前に、SNS上に自分のアカウント情報が複製されていないか確認しておきましょう。

免責: 今回の実験で、公開する承諾を得ずに写真を撮影させていただいた方のデータは、削除しました。

ヒント

Windows Downdate攻撃から身を守る方法

Windows Downdateは、最新バージョンのOSを古いバージョンにロールバックさせ、脆弱性が残る状態を復活させ、攻撃者がシステムを容易に侵害できるような状態にする攻撃です。この攻撃のリスクを低減するにはどうしたらよいでしょうか?