パクリソフトの原神のクリップボード騒動について分析してみた
「原神」、iOS版でクリップボードの内容を読み取る不具合 「テスト版の機能が削除できていなかった」 - ITmedia NEWS
原神——冒険に満ち溢れた不思議な世界へ
iOS版『原神』について、ソフトウェアをiOS14にアップデートすると、クリップボード情報を自動的に読み取るという報告をいただいております。 該当の不具合につきまして調査を行い、調査の結果をご報告いたします。 1. 該当の問題は、 iOS版のみに存在いたします。 |
まず突っ込みどころとしては
1. iOS14にアップデートするとクリップボードを自動的に読み取るというのは嘘で、
iOS14にはクリップボードにアクセスしたソフトを検出する機能があるので判明したという事。
崩壊サードでもクリップボード(コピペ)情報取得?原神と同様IOS14機能で情報取得する仕様が発覚?
2.「各システムをテストするため、ゲームの早期内部テスト版でコンソール機能を設置しておりました」というのが、崩壊3rdでも見つかってしまったために、釈明に矛盾が出てしまった点
で、疑問に思ったのが本当に Android でもクリップボード抜いていないかという事
invoke-virtual {v2}, Landroid/content/ClipboardManager;->getPrimaryClip()Landroid/content/ClipData; move-result-object v2 invoke-virtual {v2, v1}, Landroid/content/ClipData;->getItemAt(I)Landroid/content/ClipData$Item; move-result-object v2 invoke-virtual {v2}, Landroid/content/ClipData$Item;->getText()Ljava/lang/CharSequence; move-result-object v2 .line 173 invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v3 if-nez v3, :cond_0 .line 174 invoke-static {v2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String; move-result-object v2 :try_end_0 .catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_0} :catch_0 return-object v2 :cond_0 return-object v0 :catch_0 move-exception v2 .line 182 invoke-static {}, Lcn/sharesdk/framework/utils/SSDKLog;->b()Lcom/mob/tools/log/NLog; move-result-object v3 new-instance v4, Ljava/lang/StringBuilder; invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V const-string v5, "LoopShare MobLinkAPI getClipContent catch: " |
調べてみるとクリップボードを読む関数があるのを発見。
ただ、アンドロイド版では本当にこの関数は呼ばれていないようだ。
※ 関数が呼ばれていないことを改造版を作って確認
ShareSDK-社会化分享登陆组件,一键分享登陆-MobTech
この関数の正体なんだろうとおもって調べてみると ShareSDKという、SNSの認証APIというのが分かりました。
どうやら、パスワード確認にコピペ制御禁止したりする機能のようなので、パスワードを引っこ抜くための機能では本当になさそうだ (・ω・)
何で嘘をついたのか分からないけど、そのせいで、逆に疑われることになったのでは?
Comments