PreEmptive Solutions

PreEmptive Solutions


PreEmptive Protection for iOS
Dotfuscator for .NET/Xamarin
DashO for Java/Android

参考情報 サポート

AG-TECH製品ライン


ご利用いただくお客様層に合わせた AG-TECH サポートサービスをご用意しております。



製品別FAQ参考資料
サポートサービスサポートフォーム

お問い合わせはこちら



* Dotfuscator、DashO、Overload-Induction、Runtime Intelligence、PreEmptive Analytics、PreEmptive Analytics for TFS、PreEmptive Solutions ロゴ、Dotfuscator ロゴ、および DashO ロゴは PreEmptive Solutions, LLC の商標です。
*その他、会社名、アプリケーション名、システム名などは一般に各メーカの登録商標または商標です。

なぜ難読化をするのか

難読化は、実行ファイルを変更し、ハッカーによるリバースエンジニアリングを妨害しつつ、アプリ自体は完全に機能するようにするプロセスです。難読化により実際のメソッドや命令またはメタデータを変更することがありますが、プログラムの結果は変更されません。膨大な時間と労力をかければ、ほとんどすべてのコードをリバースエンジニアリングすることができます。

しかし、一部のプラットフォーム(Java、Android、iOS、.NET など)では、無償の逆コンパイラにより、時間と労力をかけずに、実行ファイルまたはライブラリからソースコードを簡単に復元することができます。自動化された難読化プロセスは、リバースエンジニアリングを困難にかつ、膨大な手間をかけされることでハッカーのやる気を喪失させます。

難読化ツールを使用する理由

アプリケーションをリバースエンジニアリングするのをはるかに困難にすることで、営業秘密(知的財産)の盗難、不正アクセス、ライセンスやその他の制御を回避し、脆弱性の発見から保護することができます。

難読化が必要なわけ

バイナリ = ソース

通常、ソースコードへのアクセスは企業のセキュリティポリシーにより厳重に制御され、権利のあるごく限られた者のみにアクセスが許可されています。 しかし、ソースコードの管理下から離れ外部に配布されるバイナリコードへのアクセス制御はどうでしょうか? .NET や Java のような現代の環境において、”バイナリ=ソース”は事実上トートロジー(同意反復)です。第三者はバイナリコードを逆コンパイルして容易にソースコードを解析することができます。リーバスエンジアリングはプログラミングスキルアップの教育目的にも利用されており、決して特別なことではありません。

制御されていないソースコードの配布によるリスク

ソースコードが公開されてもよいという場合にはリバースエンジニアリングは何の脅威でもありません。しかしながら、ソフトウェアベンダ、金融サービス業者、製造業者など、ソースコードに独占的なビジネスルールや重要なプログラムロジックを組み込んでビジネスを行っている場合にはリバースエンジニアリングは知的財産の損失、システムの脆弱性への攻撃など企業利益に影響を及ぼす大きなリスクとなります。

難読化はコードの保護を最大に

難読化はソースコードに対するアクセス制御のギャップを埋めるための補完的統制として大きな役割を果たし、未知のリスクからプログラムを最大限に保護します。 Dotfuscator および DashO は特許技術である識別子名の変更を始め、文字列の暗号化、制御フローの難読化など、高度な難読化技術を用いてリバースエンジニアリングの脅威に立ち向かいます。



PreEmptive Solutions 社 オーバーロード誘導 詳細ページへ

リバースエンジニアリングコード
この資料では、.NET と Java の世界で「バイナリとソースコードが等しい」ことを実証し、リバースエンジニアリングがもたらす可能性のある種類のリスクと、アプリケーションの難読化がどのように役立つかについて説明します。 >>> 詳しくはこちら


参考資料
「難読化なくしてソフトウェアは守れない」 詳しくはこちらをご覧ください。

貴重なアプケーションは、難読化し、保護する必要があります
あなた自身で制御不能なサイトに、貴重なソフトウェア(特にJava、Android、.NET、およびiOS)をリリースしていて、ソースコードを配布していない場合、難読化はおそらくアプリケーション開発プロセスの一部になるはずです。難読化では、攻撃者がコードを調査してアプリケーションを分析するのがずっと難しくなります。また、ハッカーがアプリケーションをデバッグして改ざんすることを困難にする可能性があります。最終目標は、アプリケーションから企業秘密(IP)、認証情報、セキュリティ脆弱性などの有用な情報を抽出または検出することを難しくすることです。また、アプリケーションロジックの変更や、悪意のあるコードを仕組んだアプリケーションを再パッケージするのが難しくなります。 ご不明な点がございましたら、お気軽にお問い合わせください。