【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは


 チート。ゲームで自分が有利になるように不正を働くこと全般を指す言葉だ。ゲームを作る側,売る側からすれば非常に迷惑なモノなのだが,昨今ではチートの拡大がかなり大きな問題となりつつある。
 チートが実現するのはゲームデザイナーが想定しているゲームプレイではない。簡単に強くなったり,すべての装備を最初から使用できたり,壁の向こうからヘッドショットを決めたり,いくら撃たれても死なないといった要素が実装可能になれば,ゲームとして破綻してしまうだけでなく,さまざまな問題を発生させるようになってくる。

DNPハイパーテック 國澤佳代氏
 このあたりのモバイルゲームでのチートの現状についてCEDEC 2019でも同じテーマで講演を行っていたDNPハイパーテック(以下,DNPHT)の國澤佳代氏に,モバイルゲームでのチートの現状と対策などについて話を聞いてきたので紹介したい。

 國澤氏は,チートによってゲームメーカーが受ける可能性のある被害について大きく4点をまとめていた。

  • 課金機会の喪失
  • レビュー炎上によるKPI低下
  • ランキング不正などでのユーザー離れ
  • IPコンテンツからのデータ抜き取りによる信用問題

 ある程度課金することで入手するように想定されているアイテムがすぐに入手できてしまうと,単純に売り上げが低下する。チーターが目立てばレビューでの評価が下がり,登録者数に影響してくる。明らかにチートによる不正な成績ばかりが目立てば,コアなプレイヤーを失いかねない。
 さらに昨今は,さまざまなIPとのコラボイベントを行うゲームも多いが,グラフィックスの抜き取りなどが行われると管理責任を問われて信用問題に発展する。甚だしい場合には,キャンペーン開始前に抜き取られたコンテンツが出回ることもあるとのことだ。

【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは

 こういったゲームでのチート自体は大昔からあった概念であり,なかには微笑ましい話もあったりしたものだが,昨今では上記のようなリスクが,より深刻性を増しているという。

 これにはいくつかの要因がある。
 世界的規模でモバイルゲームが一般化したことで,ゲームプレイヤー基盤はとてつもなく大きくなった。これに伴い,それなりの知識がないと扱えなかったモバイルデバイスに対しても,よりカジュアルなチート手法が登場するようになったのだ。

 「チーターによって有利な状況となるように改造されたアプリが流通していることで技術的な知識がない人でも,軽はずみにチート行為に手を出しやすい状況になっています」(國澤氏)

【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは
 かつては,配信されるプログラムファイルを抜き出して解析し,パッチを当てて不正なプログラムを実行する,となかなかハードルの高かったチート行為なのだが,やがてチートに成功した人が配布するパッチ当てプログラムが登場するようになった。しかし,これもRoot化やJail Breakが必要だったため,ある程度の防壁になっていた。最近では改造済みのバイナリファイル自体が配布されるようになり,その防壁さえなくなった。Root化やJail Breakしなくてもチート行為が簡単にできるようになったのだ。

 「通常,スマートフォンなどのモバイル端末はアプリが持つ権限が制限されているため,他アプリに対し,解析や改ざんを行う場合には管理者権限の取得が必要となることがほとんどです。
 改造済みのアプリが流通しているということは,すでに解析が完了してチーターのニーズを満たす条件を付加して配布できる形になっていることを意味するため,アプリそのものが管理者権限を必要としない場合には,チーター自身が端末の管理者権限を取得する必要はありません。そのため,チート行為を始める人のリスクは低くなっています」(國澤氏)

 端末にどう考えても怪しいプログラムを導入するリスクはひとまず置いておくと,チートを始める人が行う作業自体が非常に簡素になり,誰でも手を出せるようになってきたのだ。このようなチートの「カジュアル化」が,チート問題を深刻化させていると國澤氏は語っている。

【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは
 それに関連して,かつては自己顕示欲を満足させることが中心だったチーターの動機も,金儲けの手段にシフトしつつある。チートツールを求める客層も広がっている。

 「最近はゲームをクリアするだけでなく,ソーシャルな場でどのユーザーが力を持っているかというランキング形式を採用しているゲームも多いです。上記のような状況の中,低コストでゲームを優位に進めたいと考えるユーザーには改造済アプリの販売や,レアアイテムの販売はニーズにマッチしていると考えます」(國澤氏)

 改造済みアプリやゲーム内アイテムの販売など,モバイルゲームに寄生したチートビジネスが成立しつつあるのだ。

 こうしてチートの産業化が進みつつある現在では,問題の深刻度が桁違いになっている。チートの質と量がともに向上してきており,もはや「うちくらいの規模なら大丈夫だろう」といったことも言ってはいられなくなっている。

 「モバイルゲームにおいては,Unity,Unreal Engineなどの大手ゲームエンジンでアプリを開発するケースが多いため,アプリの仕組みをひとつ把握すれば,同様に作られた別タイトルへのクラッキングの手間は少なくなります。そのため,改造アプリの販売元は,結果として複数タイトルの改造アプリを販売し,収益を上げることができています」(國澤氏)

 冒頭でも挙げたように,チートを放置することは多くのリスクを抱えることになる。直接的な売り上げ減少は見られなくても,ユーザー離れは見えないところで加速していく。さらに,ブランド価値の低下なども含めて損害の連鎖は続いていく。

 そのゲームを楽しみたいと思っている人がいるのと同様に,どんなゲームでも一定数,チートなどの狡猾な方法でプレイしたいと考える人もいて,汎用のチート用ツールというものも出回っている。チート情報の拡散は早く,もはやどんなゲームも安全とは言えない状況にあるのだ。
 また,チート対策をしない,簡単にチートを許してしまうことは,ビジネス化したチート産業を間接的に助ける行為でもある。もはやすべてのモバイルゲームがチート対策を導入せざるをえない時代になっていると思っていいだろう。


深刻なグローバルメタデータ問題


【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは
 こういったチートの危険性やどのようなチートが行われるのかについてはCEDECの講演でも紹介されたのだが,その途中で一瞬あたりをザワつかせたのが主にゲームエンジンUnityで使われるGMD(Global Meta Data)の問題だ。

 通常,チートを行う際には,対象プログラムを逆アセンブル/逆コンパイルによって解析を行う。C#ならほぼソースレベルまで逆コンパイルできてしまうため,最近ではC#を使うUnityでもIL2CPPというツールで一旦C++に変換してからネイティブコンパイルすることが多いという。IL2CPPを使うことで,パフォーマンスが上がるだけでなく,セキュリティ的にも強化が期待できるわけだ。

 しかし,実際には逆にチートが出てくるのが早くなるケースが多く見られた。実は,IL2CPPでC++のソースとともに出力されるGMDファイルを利用すれば,シンボルを削除したオブジェクトから関数名とエントリーを復元できるのである。

 GMDの話題は,最初はランタイムやクラスライブラリのシンボル情報が出回っているような話かと思って聞いていたのだが,実はプログラマが付けた関数名がすべて含まれるものとのことだった。それは解析が簡単になるのも頷ける。
 現状でかなり多くのモバイルゲームがUnityで作られている。全世界のゲームの半分はUnityで作られているという発表もあったほどだ。その大半はチートの前に無防備で公開されているわけだ。DNPHTでは,GMDデータへの対策を行うとともにまだ認知度の低いこの問題に対して啓蒙を続けているという。

【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは 【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは

 こういう話題を出すわけだから,DNPHTが扱っている「CrackProof」にはGMD対策も含まれているわけだが,もちろんそれだけではない。
 チート対策にはいくつかの手法があるが,主軸になるのは,プログラムの解析難度を上げることと,実行中のメモリの改竄を防止することだ。

【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは
 そのほか,さまざまなケースを想定してセキュリティ対策が用意されているという。しかし,すべての設定をオンにしておけばいいかというとそういうものでもないらしい。
 基本的にCrackProofは,オリジナルアプリのアプリ実行速度にほぼ影響を与えることはない。
 ただし,一部セキュリティ強度を大きく上げると処理負荷がかかる場合はある。もちろん,それらはオプションとして取捨選択することが可能だ。このように,企業が求める堅牢度に合わせカスタマイズができる点も,CrackProofが選ばれている理由の一つなのだろう。

 セキュリティはほしいが,開発が複雑になるのはちょっとと悩む人もいるかもしれない。CrackProofは導入の手軽さでも評価は高いようだ。簡単に言えば,クラウドにAPKファイルをアップロードすると,指定した設定でセキュリティ強化したAPKをダウンロード出来るようなサービスが提供されている(※iOSでは一部ソースへの組み込みが必要)。Webベースのインタフェースもあり,エンジニアではなく,管理部門がCrackProofを使用している場合も多いとのことだ。

【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは

 國澤氏は,どこを守りたいのかを明確にすることが重要だと語る。
 これはチート対策を取り扱う製品すべてに言えることだが,解析されないという保証はない。CrackProofは,「守る必要がある」部分にフォーカスを当ててチート行為からアプリを守るというのを基本方針としている。

【PR】アプリ改竄から始まるチートを一掃。「CrackProof」が守るものとは

 CrackProofは月に1回くらいは更新されるとのことなので,理想的には,CrackProofの更新と同期してアプリもビルドしなおすのがよいのだろうが,QAを通すコストなどもあって,実際の運用は利用者側に委ねられる
 ともすればイタチごっこになりがちなセキュリティ対策だが,おそらく自社で行っているゲーム会社はほぼ存在しないだろう。面倒でコストのかかる部分は専門企業に任せて,ゲーム部分に専念するのが正しい選択だろう。
 DNPHTはWindows用のセキュリティ製品から始まって,さらにiOS,Android,Linuxなど多くのプラットフォームで豊富な経験を有している企業である。ゲーム開発会社ではなかなか賄いきれないセキュリティ分野へも,十分効果的なセキュリティ体制を供給できる。それだけの技術を蓄積した結果がCrackProofとして提供されているのだ。
 このようなチート対策を徹底することで,アプリを守ることができる。収益だけでなく会社の信用やユーザーの信頼にもつながっていき,すべてのアプリでチートが有効に働かない状態が維持されれば,ビジネスとしてのチートを抑制することもできるだろう。チートを許さぬ立場を貫くことはモバイルゲーム業界の未来を守ることにもつながっていく。
 ともあれ,チートに関連した悩みを抱えているなら,一度同社に相談してみるのがよいかもしれない。

CrackProof公式サイト