3

この顧客は、製品が 2 ~ 5 分間正常に動作した後、常にクラッシュしていると不満を漏らしていました。推測に数日かかりましたが、次の結論に達しました:
プロセスが痕跡 (イベント ログ/クラッシュ ダンプ) を残さずに終了する場合、2 つのオプションがあります:
1. 自分のプロセスが TerminateProcess() を呼び出している
2. 他の誰かが呼び出している私たちを殺している。

自殺的なコールスタック (ケース 1) をキャッチするには、「Adplus -crash -CTCFG …」を実行するだけです

私たちは顧客の耳に「誰かが私たちを殺しているのではないか、ウイルスか何かではないか…?!」とささやき始めました。
顧客は懐疑的でした (「ゴースト / ウイルス / デーモン?」)。彼は、私たちのプロセスを監視するスクリプトを定期的に実行していたことを思い出しました。そのスクリプトは、私たちがぶら下がっていると誤って考え、プロセスを強制的に終了させました (Yack!)。

次の質問は次のとおりです
。次回は、誰がプロセスを停止させているかを特定するためのツールまたは手法が必要ですか? (殺されるのを避けるためのハッカーツールがいくつかあることは知っていますが、シリアルキラープロセスのPID / NAMEをログに記録したいだけです。)

彼らはそれを行うための公式/非ハッカーの方法はありますか?

4

2 に答える 2

1

システムコールにフックをインストールする必要があります。これらの通話をブロックすることもできます。それがハッカー以外の方法であるかどうかは完全にはわかりません:)

于 2009-07-14T10:44:56.653 に答える
0

私があなただったら、アプリケーションのすべての開始をログに記録します。不正なツールはおそらく定期的にあなたのアプリケーションを殺しており、10 分または 10 秒ごと (または設定されているもの) ごとにアプリの起動が見られるとしたら、眉をひそめるでしょう。

私の知る限り、この問題に対する特効薬は、システム コールの追跡のようなもの以外にはなく、かなりハックですが、すぐに使えるはずです。

于 2009-08-19T18:11:44.327 に答える