DetourXSと呼ばれる関数迂回パッケージを使用するコードを見ています。私のアプリケーションは、Microsoft Serverオペレーティングシステムを対象としています。 Microsoft ResearchにはDetoursパッケージもあり、その仕組みについての記事があります。メモリにロードされたマシンコードにパッチを当て、新たに挿入されたコードに無条件にジャンプするコードを挿入します。関数の迂回パッケージがセキュリティを迂回する方法
実行時にマシンコードを変更してこのコードを動作させる場合は、オペレーティングシステムによるセキュリティ制限を受ける必要があります。カーネル32のような重要なDLLを修正して、私が望むことをすることができるようになると、これはOS上の重大なセキュリティ上の問題となります。私の理解は、ユーザープロセスが既にメモリにロードされているDLLのコードを変更しようとすると、OSによって停止されるはずです。このチェックを有効または無効にする設定はWidows Server OSにありますか?
これをどのように克服しますか?
エンタープライズプロダクション環境のどのアプリケーションでも、この種の迂回パッケージを使用した経験がありますか?
Microsoftは、Detoursを使用する場合、お客様またはお客様からのサポート呼び出しを考慮しません。そしてあなたのアプリケーションがそれを使用しているという事実は、あなたのアプリケーションを_marker_ DLLにリンクさせることによって人為的に明示されます - ** Detoured.dll ** – Andrey