C++ ビルダーでビルドされた大規模なアプリケーションがあり、起動時にフォルダーを参照し、存在するすべての dll ファイルをロードします。私はこれはあまり良いことではないかもしれないと考え、web ブラウザーを起動し、所有されているという言葉で画像を開くだけの dll を作成して考えてみました:P
とにかく、うまくいきました。そのため、DLL が切り替えられたり、新しい DLL が追加されたりすることで、システムが何らかの形で危険にさらされる可能性があります。リモート管理アクセス、ドライブのフォーマット、名前を付けます。
そこで私の考えは、この穴をふさごうとする方向に向かいました。これのベストプラクティスは何ですか? 私は、DLLの. 有効な dll の名前のリストを.exe に保持しても、dll が置き換えられる可能性があるため、実際には解決しません。名前とチェックサムのリストは機能しますが、自動読み込み機能を維持し、正しく署名された dllのみを読み込むと便利です。
編集:仕事をしているように見えるsigntool.exeの使用を検討しています。しかし、後でC++でdllの署名を実際にチェックする方法についての良い参考文献が見つかりません。リンクを持っている人はいますか?