疑わしい起動実行可能ファイルを見つけるためのLinuxの自動実行ツールは何ですか?

疑わしい起動実行可能ファイルを見つけるためのLinuxの自動実行ツールは何ですか?

Windows では、自動実行ツールは法医学研究者にとって非常に便利なツールであり、疑わしい起動実行可能ファイルを見つけ、無害な実行可能ファイルをフィルタリングするのに役立ちます。

しかし、Linuxではそれほど良いことはできません。それでは、疑わしい起動アプリケーションを見つけるときに自動実行を実装する最も簡単な方法は何ですか? Linuxにも同様のツールがありますか?

基本的に、法医学研究者であり、UbuntuのようなLinuxシステムがあり、疑わしいブート実行可能ファイルを見つけるように求められたとしましょう。プロセスを高速化するために何をし、どのツールを使用しますか?

ベストアンサー1

基本的に、法医学研究者であり、UbuntuのようなLinuxシステムがあり、疑わしいブート実行可能ファイルを見つけるように求められたとしましょう。プロセスを高速化するために何をし、どのツールを使用しますか?

次のコマンドを使用して、コンピュータで実行されているすべてのプログラムを確認できます。 キツネの塔。与えられた時間に生成されるプロセスの数が多すぎるため、出力には多くのノイズが含まれますが、ここで得られるリストは徹底する必要があります。 [0]

分析しているシステムのカーネルに次のものがあるとします。 NETLINK_CONNECTOR この機能が有効になっており、たとえば直接コンパイルしてデプロイする場合、forkstat バイナリは破損しません。イベントの受信をどれだけ早く開始するかを決定する必要があります。ユニットファイルを作成してリンクします。システム起動 適切な瞬間に、例えば次のようになりますbasic.target

# cat /etc/systemd/system/forkstat.service 
[Unit]
Description=process sniffer

[Service]
ExecStart=/sbin/forkstat

[Install]
WantedBy=basic.target

サービスを開始し、観察結果を使用して機能していることを確認してください journalctl -f。これにより、forkstat 出力がシステムログに取り込まれます。これは、ルートファイルシステムが利用可能になる前のブートプロセスの非常に初期段階なので、動作させるにはforkstat バイナリは initrd で使用できる必要があります。。 initrdに追加する方法はディストリビューションによって異なります。 Archの場合は、BINARIES=…行に追加するだけですmkinitcpio.conf

サービスを有効にしてinitrdを再構築してから再起動します。新しく起動したら、journalctl -b次のコマンドを使用してキャプチャされたイベントを表示できます。

Dec 04 10:12:17 zombo.com systemd[1]: Started process sniffer.
Dec 04 10:12:17 zombo.com forkstat[318]: Time     Event     PID Info   Duration Process
Dec 04 10:12:17 zombo.com forkstat[318]: 10:12:17 exec      321                 [/sbin/modprobe -q -- iptable_nat]
Dec 04 10:12:17 zombo.com forkstat[318]: 10:12:17 fork        1 parent          /sbin/init
Dec 04 10:12:17 zombo.com forkstat[318]: 10:12:17 fork      322 child           /sbin/init
Dec 04 10:12:17 zombo.com forkstat[318]: 10:12:17 exit      313      0   0.610s /usr/sbin/rpc.idmapd
Dec 04 10:12:17 zombo.com forkstat[318]: 10:12:17 fork        2 parent          [kthreadd]
Dec 04 10:12:17 zombo.com forkstat[318]: 10:12:17 fork      323 child           [kthreadd]
Dec 04 10:12:17 zombo.com forkstat[318]: 10:12:17 fork      265 parent          /usr/lib/systemd/systemd-udevd
Dec 04 10:12:17 zombo.com forkstat[318]: 10:12:17 fork      324 child           /usr/lib/systemd/systemd-udevd

最も興味深いのは、どのプロセスがどのバイナリを実行したかを示すparent行です。child私はあなたにお勧めしますフォークスタートマンページ もっと学ぶ。

注:これはプロセス生成アクティビティの徹底的な概要であるため、ログが大幅に大きくなる可能性があります。生成された多数のログメッセージに対応できるように、ログ制限を合理的に大きな値に設定する必要があります。

また、この出力の精度は信頼できるカーネルによって異なります。カーネル自体がルートキットの形で破損していると思われる場合は、まず信頼できると知られているカーネルを展開することをお勧めします。

[0]非常に忙しいシステムでは、いくつかのイベントが削除されることがあります。これは forkstat で使用されるデフォルトの netlink API の成果物です。

おすすめ記事