1

アプリケーションのさまざまな「ジョブ」を実行する Windows サービスがあります (電子メールの送信、バックアップの作成、アプリケーションの更新の確認、いくつかのサービスの提供など)。

最近、一部の顧客から、一部のインターネット バンキング サイトと私のアプリケーションの使用に関する問題が報告されました。

解決策を探していたところ、インターネット バンキングの Web サイトによってインストールされたプラグイン (ActiveX) に関するレポートを見つけました。

この ActiveX は奇妙なサービス (GAS Tecnologia の GbPlugin) をインストールします。このサービスは、ばかげたヒューリスティックに基づいて疑わしいアプリケーションを強制終了します。私のサービスは被害者です!

今、私は自分のサービスを「免疫化」しようとしています。

サービスを保護するためにサービスの終了を制限する方法はありますか?

強制終了できないため、サービス プロパティの「自動再起動」オプションを使用できません。

両方のサービスが LO​​CALSYSTEM として実行されています。

4

2 に答える 2

4

ほとんどの場合、サービスはそのまま実行されるLOCALSYSTEMため、好きなものをすべて殺すことができます。したがって、それに対して防御できる可能性は非常に低いです。

実際、簡単なWeb検索では、サービスが実際にとして実行されていることを示すいくつかのヒットがスローされLOCALSYSTEMます。

あなたの唯一の持続可能な解決策は、他のソフトウェアを含むことになるでしょう。ユーザーに削除を強制するか、開発者と協力してプログラムをホワイトリストに登録する方法を見つけてください。

于 2012-12-04T12:29:31.090 に答える
2

GbPlugin が通常の SCM 手順を実行してサービスを停止し、ブルート フォースでサービスを停止すると仮定すると、サービスが停止しないようにするための選択肢がいくつかあります。

  1. サービスのAllowStopプロパティを False に設定します。

  2. OnStopイベントでは、パラメーターを False に設定しますStopped

どちらのアプローチでも、通常の状況下で自分のサービスを停止することはできません。これを回避するには、Win32 APIControlService()関数を使用してカスタム コマンドをサービスに送信する別のアプリを作成できます。サービス内で、仮想DoCustomControl()メソッドをオーバーライドしてそのコマンドを探します。プロパティを True にリセットするAllowStopか、イベントが参照できる場所にフラグを設定してOnStopから、呼び出しController(SERVICE_CONTROL_STOP)て通常の停止を開始します。

言うまでもなく、これは少しやり過ぎです。可能であれば、GAS Tecnologia に連絡して、GbPlugin のヒューリスティックによってサービスがフラグ付けされている理由を尋ねてから、サービスでその状態を変更するか、サービスを無視するように GbPlugin を修正するように依頼することをお勧めします。

于 2012-12-04T16:59:02.573 に答える