HxD (16 進エディター) を使用すると、RAM を検索/表示/編集できます。
このようなエディタから EXE を保護するにはどうすればよいですか? データは INI/レジストリ/DB 内で暗号化されますが、RAM でデコードされます。
解決策は何ですか?実行時に RAM 内のデータをできるだけ早くデコード、使用、再コード化しますか?
HxD (16 進エディター) を使用すると、RAM を検索/表示/編集できます。
このようなエディタから EXE を保護するにはどうすればよいですか? データは INI/レジストリ/DB 内で暗号化されますが、RAM でデコードされます。
解決策は何ですか?実行時に RAM 内のデータをできるだけ早くデコード、使用、再コード化しますか?
あなたは小さじ1杯で海を抑えようとしています。
この種の「メモリ内保護」は、良い (悪意のある?) マルウェアが行うことです。この種の「保護」を破る方法のライブデモンストレーションを見てきました。最終的には役に立ちません。ある時点で、クリア テキストをコンピュータで実行できるようにする必要があります。有能なプログラマー/リバース エンジニアは、平文が利用可能になるタイミングを簡単に見つけることができ、プログラムを一時停止してプロセス メモリを自由に調べることができます。
これは、RIAA が DRM で直面している問題と同じです。要件に欠陥があります。プログラムをユーザーから隠したいと考えていますが、ユーザーがプログラムを使用するには、ある時点でクリア テキストが必要です。
唯一の救いとなるTPMですが、消費者市場では非常にまれであり、ユーザー ベースは 1 桁にまで減少します。
Themida のような exe プロテクタ (メモリを表示することさえ困難にするもの) を使用できますが、そのためにユーザーがあなたを嫌うことを忘れないでください。また、Themida は、他のすべてのプロテクターと同様に、そのようなソフトウェアのベンダーが何を主張していても、定期的にクラックされることを忘れないでください。
短い: リバース エンジニアリングを防ぐ良い方法はありません。
彼らがこのレベルでそれを行っているかどうかはよくわかりませんが、オープンソースのパスワード マネージャーであるKeePassは、調査からパスワードを隠すために可能な限りの注意を払っていると主張しています。彼らがどのようにそれを行うかを見るのは興味深いかもしれません... :-)