2010-11-24 9 views
0

私はARMV4i CPUを搭載したWINCE 6.0用のアプリケーションを作成しています。私はアセンブリパッカーを使用して、私のアプリケーションに余分なセキュリティを追加したいと思います。しかし、私はUPX以外の良いものを見つけることができませんでした(これは簡単に解凍することができます)。誰かが私に1つを指摘できますか?ARM WINCEアプリケーション、ハッカー防止ソリューション

更新: 私の目標は、WinCEアプリケーションをクラッキングとリバースエンジニアリングから保護することです。 100%安全なアプリはありませんが、余分なセキュリティを保つためにどのような方法であれ、親切にアドバイスしてください。

+1

あなたはどのような「セキュリティ」の後にいますか? UPXはセキュリティのために設計されたものではありません。アプリケーションのバイナリを小さくするために設計されています。 – ctacke

+0

まあ、x86 exeでは、ASPackのようなものは、アーマチュアがアプリケーションを逆アセンブルするのをかなり止めることができます。私はそのようなパッカーを持っていますが、UPXは簡単に解凍するためにupx-dを持っています。私はそれを100%保護することはできませんが、私のアプリをクラックさせるのを難しくするために親切に助言します。 – VOX

+0

違法なコピープロテクションの後、あるいはコード全体がリバースエンジニアリングされないようにしようとしていますか?最初の場合は、すべてのものを梱包することはおそらく過剰なものになるでしょう。 –

答えて

1

ほとんどすべてのパッカーにはアンパックがあり、そうでない場合は手作業で簡単に解凍することができます。組み込みのUSB/RS232ドングルデバイスを作成し、その中にいくつかの重要かつ複雑な機能を入れ、WinCEデバイスから呼び出す必要があります。あなたが読書を許可しないヒューズを設定してあなたのドングルを守るなら、誰かがそれを壊すことはかなり難しいでしょう(保護されたメモリでさえもハックして読むことができますが、それは10.000 $を要します。異なるエリアおよび特定のMCU)。

1

"nicetext"をチェックアウトするとよいでしょう。暗号化されたデータを自然言語のテキストに変換する方式であり、暗号化されたデータの統計的構造を示さない。テキストの代わりにマシンコードを生成する同様のスキームを作成することができます。マシンコードスニペットを実際の場所、たとえばあなたのマシンにある静的リンクライブラリのような場所から取得することもできます。アイデアはに次のようになります。プログラム

    1. 暗号化マシンコードに暗号化されたプログラムを変換するnicetextのようなものを適用します。

    これは、有効なアンパックされた実行可能ファイルのように見えるようにします。攻撃者は、最初は、通常のコンパイラで生成されたマシンコードのようなものは、すべて暗号化を破る前に解明する必要があります。

    いくつかのポイントがあります。

    1. これが唯一の「あいまい」なものです。一度試してみると、簡単にnicetextのようなものを逆転させることができます。
    2. おそらく、ハードウェアに関係するおそらく、復号化に使用した鍵を保護する方法が必要です。
    3. これを、ハードウェアデバイスにコードを移動するという別の提案と組み合わせることは、おそらく適切でしょう。
    4. これはすべて実装するには少し高価かもしれません。あなたはそれが本当に必要ですか?
  • +0

    #4が鍵です。私はアドオンとして何を達成したいのかという価値があることに真剣に疑念を持っています。本当にそうなら、OSイメージにコードを持つカスタムCEデバイスを作成し、それを保護します方法。 – ctacke

    +0

    私の状況はそれを実装するのに十分深刻だと思います。私はハードウェアにアクセスする必要はありませんが、SDシリアルをキーとして使用できます。 – VOX