PreEmptive Protection for iOS(日本語版)
iOS アプリケーションに対する難読化ツール。
AG-TECH 社の製品
2003 年より日本国内にてComponentSourceで販売中。
PreEmptive Protection for iOS(略称:PPiOS)は、制御フローの難読化と、ヒントとなりやすいシンボルの名前変更という2つの手法を組み合わせることにより、プログラムの難読化を強固に実施し、iOSアプリケーションをリバースエンジニアリングの悪用による脅威から防御します。iOS アプリケーションは、構造的なことから高度なセキュリティは不必要だと言われてきましたが、その安全、安心の神話は崩壊してきています。iOS にもマルウェアが出現し、提供しているアプリケーションやサービスが犯罪の温床になる可能性があります。PPiOS は、リバース エンジニアリングに対して、iOS アプリケーションを強化し、知的財産の保護、アプリケーションの違法コピーや偽造の低減を実現します。
PreEmptive Protection for iOSの特徴
制御フローの難読化
この処理は、有効なフォワード (実行可能) ロジックを作り出している分岐処理、条件処理、反復処理などの構成要素を合成し、逆コンパイルが試みられたときに、その意味を判断できないコードを生成します。制御フローの難読化によって、アタッカーによる解析が非常に困難な、スパゲッティのように複雑にからみ合うロジックが生成されます。
名前変更
関数名や変数名などプログラム中のシンボル名を変更し、プログラムの難読化を施します。通常、関数や変数には、開発効率のために機能を特定できるような名前をつけていますが、それが、リバースエンジニアリングのための解析を行うためのヒントを与えてしまっております。そのため、その名前を意味のないものや記号化することにより、解析の妨害をいたします。難読化時に名前割り当てファイルを作成します。難読化された名前はその後のリリースにも適用することができるため、既に配置されたシステムに対して修正ファイルのみを提供することができます。
また、この変換により関数や変数の名前が短くなるため...