last update

ニセ位置情報アプリ「Location Spoofer」とその秘密

いろいろ思うところがあって1年近く書くのを我慢していた記事なんですが…状況も変わってきたので今さらですが書く事にします。

Android のジオメディア系アプリ開発に携わる人なら知らない人はいない擬似ロケーション機能と位置情報詐称について。

今回は、それをAndroid端末単体でカンタンに設定できるアプリ「Location Spoofer」を紹介します。

ダウンロードはこちら↓

Location Spoofer – Android Market
https://play.google.com/store/apps/details?id=org.ajeje.fakelocation

使い方

Location Spoofer 起動
→ 左上の「Select from map」をタップ
→ 地図から位置偽装したい場所を選ぶ
→ 上の「Use this location」をタップ

locationspoofer

「Duration」に何分間偽装するかを入れる
→ 「Start Spoofing」タップで位置情報を偽装開始。

locationspoofer3

※「Move randomly around this location」にチェックを入れると周辺をランダムに動きます。が、有料版でないと範囲を絞れないので使いづらいです。(逆に言えば、有料版なら微妙な揺らぎすら出せる…)

はい。Googleマップでもこの通り。

locationspoofer4

うまくいかない場合は、「設定」→「アプリケーション」→「開発」から「擬似ロケーションを許可」にチェックが入っているか確認しましょう。

locationspoofer6

こういう情報を公開するという事と、ジオメディアの技術的限界

このアプリ。実はAndroidマーケットに掲載される以前からxda-developer等で配布されていた経緯があります。

ですが、昨今、コロプラ・foursquareみたいなジオメディアや位置ゲーの流行や、radikoみたく理由があって現在地を確認するアプリがある中、ブログで位置情報詐称アプリを紹介するのはタブーなんじゃないか。とかとか。いろいろと思うところがあってこれまで紹介しませんでした。

その一方で、冷静に考えてみると、自分のスマホが吐く位置情報ってのは、結局のところ自分のもの。という側面もあるわけです。(サーバー側の誤動作を狙って。とか、別ユーザーを欺くため。となると、運用や倫理の面でいろいろ難しい話しはありますけどね。)

また、サーバ側から見た時、その端末がどういう位置情報を吐くのか。そして、それをどれくらい信用するのか、という問題も、技術的には確かに存在するわけです。

例えとして適切か分かりませんが、情報セキュリティで言う所のWEBブラウザからサーバーへ渡される情報の信ぴょう性。ってのは、これとよく似た話しだと思っていまして、法的うんぬんとは別に、技術的には、それは保証も担保もされていない。という本質があると思うんですね。

要は何を言いたいかと言うと、つまり現状では、GPS位置情報は詐称される前提でシステムを運用するべきなんじゃないか。と。思うわけです。

だから、位置ゲーとかジオメディアは、位置・場所情報だけに頼るのであれば、

クライアント側が紳士協定を守ってまぁ真っ当な位置情報を上げてくる前提で運用するけど、位置情報の詐称ができる以上、ゲームの勝者に極端なベネフィットは与えない運用にするよー。

というライトなスタンスが結構大事なんじゃないかなぁ。と思うわけです。

あるいは、そこに来た!というのをキチンと把握したいなら、店頭のNFCタグと連携するとか、現地にしかないQRコードを直接読ませる。とか、そういう運用を組み合わせるような工夫がいるよね。と。

位置ゲーの会社さんによっては、位置情報のいろんな要素を駆使して、これが本当のGPS情報なのかどうかを判断しようと工夫されたり、また、その方法を特許として申請する動きとかとかいろいろされてるようですが、しかし、それは本質を変えるものではありません。

何にせよ、技術的に可能。ということは、洗練された使いやすいアプリが出来て、法的に問題がなく、必要性があれば、みんなが使うようになる可能性があるっていう話なわけです。

ともかく、こういった技術的背景があって、紳士協定をベースに動いていると言えるジオメディアや位置ゲーの世界なわけで、そこへ位置情報利用の紳士協定を破るようなアプリ「カレログ」が出てきた。そして、その対策として位置情報詐称の方法が出まわる…。その結果困るのは、そういうマジメにやってるところなんじゃないか、とか、いろいろ思うところはあったりするわけです。

最後まで読んだ方に教えるLocation spoofer / Fake GPS Locationの秘密

こんな長文をここまでお読みになったあなたは、十分、上記の内容をご理解いただけている事と思います。

また、Android 2.x 時代の古いスクリーンショットが貼ってあるにも関わらずここまで読まれた、という事は、何か特別にお困りの事情があるのかもしれません。

その手助けになるかどうかは分かりませんが、面白い話しをお教えしましょう。

要rootedですが、「Location Spoofer」や「Fake GPS location」はズバリ「擬似ロケーションを許可」しなくても擬似ロケーションを使えるようにできます。

つまり、(倫理的にはともかく技術的には)「擬似ロケーションを許可」にチェックを入れるとエラーが出るアプリでも、擬似ロケーションを使えてしまう。という事です。

もったいぶりましたが、最近は Google Play ストアの説明欄にはっきり書かれているアプリも増えましたし、単純な GPS 詐称だけなら見破れるアプリも多いので、具体的な方法を書いておきます。

手順は簡単で、この手のアプリのapkファイルを /data/app から /system/app(Android 4.4 以降は /system/priv-app)の下に移動 → Permission を 644 に変更 → Android を再起動するだけです。

2014年現在、アプリ側の GPS 詐称対策も進化しており、私が知る範囲では GPS の変動パターンだけでなく、Wi-Fi 位置情報や基地局情報も絡めて総合的に判断するなど、かなり手の込んだものも出てきている状況です。対する GPS 位置情報詐称アプリ側も進化しており、なんというかイタチごっこの様相を呈しているわけですが、手の込んだ機能は有料アプリにしかなかったりもする状況です。

さて、そこで問題となるのが有料版アプリを /system/app 以下に移動する方法、とか、個別アプリとの相性の話しですが、これについては明らかに公序良俗に反する領域になるかと思いますので、書きません。

検索用キーワード:彼ログ, カレログ2, Ingress, モンスト マルチ

※2014/4/23 巻末のroot向けの機能について、Android 4.4や最新情報に対応。

コメントを記入