Unity AssetStoreまとめ

アセットストア日替わりタイムセールの記事を書いていきます。

Obfuscator 悪質なハッカー対策 コードを難読化させるUnity版「オブファスケーター」

f:id:assetsale:20160611221851j:plain f:id:assetsale:20160611010922j:plain

今日のアセット

Obfuscator

$60 => $40    33%OFF

 

悪質なハッカー・クラッカーが覗き見した時に読み取りにくくさせる難読化スクリプト

 

C#で作られたUnityのバイナリはツールを使えば解読できてしまいます。

ソースコードを読み取られないように自分のゲームを保護しよう!

 

難読化コード - Wikipedia

難読化コード(Obfuscated code)とは、コンピュータプログラムにおいて、その内部的な動作の手続き内容・構造・データなどを人間が理解しにくい、あるいはそのようになるよう加工されたソースコードやマシンコードのこと。

Obfuscator - YouTube

動画内に登場したソースコード覗き見する「ILSpy」

こちらのスパイツールを使いますと、バイナリデータを解析してC#のメソッドやコードが丸見えになる。怖えぇ・・・

 

デコンパイルツール「ILSpy」について

コンパイル済みの exe や dll からソースコードを生成する - Microsoft.NET - Project Group

 C#で作られたプログラムをデコンパイルしてみよう - ほげほげー

 

ソースコードが見えることで、どのように悪用されるかコメントしにくいですが、

例えば、ネットワークを介してアイテム付与を行う通信先を特定して、課金しなければ手に入らないアイテムを自分のIDに付与するような悪質行為が出来てしまうような気がします。

 

こちらの画面が「ILSpy」

f:id:assetsale:20160611011942j:plain

左は、メソッド名や変数、string形式のテキストが丸見えです。

アクセス先のURLが入っていれば完全に読み取る事が可能ですね。

右はオブファスケーター適応後の画面で、メソッドや変数、テキストは全く読み取れない、あるいは読み取れる可能性はあるけれど凄い手間がかかるし解読しようとする気が失せるレベルまで落ち込みます。

 

ちなみに、オブファスケーターをかければ絶対に解読されないという保証は御座いません。

人間が読み取り辛くするための難読化ですから、悪質なハッカーが解読にかける時間を大幅に延ばす為のものとして活用しましょう。

 

エディタ内で暗号をかける箇所を指定

f:id:assetsale:20160611011957j:plain

Advanced Option辺り、この指定を独自の数値にすることで防御力がアップする。

f:id:assetsale:20160611012003j:plain

まれにコピー作品(海賊版)を見かけるけど、オブファスケーターを掛けておけば対策になるのかしら?

 

関連

チート検出ツール

40ドルの計算結果 (1ドル 106.9400 円)
40ドル は、 4,277円

定価60ドルなら、6,416円