プロセスリスト:/bin/sh -e /proc/self/fd/11

プロセスリスト:/bin/sh -e /proc/self/fd/11

わかります:

  PID TTY      STAT   TIME COMMAND
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:00  \_ [migration/0]
            :
  844 ?        S      0:00  \_ [vmmemctl]
    1 ?        Ss     0:02 /sbin/init
  306 ?        S      0:00 upstart-udev-bridge --daemon
  309 ?        S<s    0:00 udevd --daemon
  445 ?        S<     0:00  \_ udevd --daemon
  446 ?        S<     0:00  \_ udevd --daemon
  668 ?        Ss     0:00 dhclient3 -e IF_METRIC=100 -pf /var/run/dhclient.eth0.pid -lf /var/lib/dhcp3/dhclient.eth0.leases eth0
  713 ?        Sl     0:00 rsyslogd -c4
  717 ?        Ss     0:00 dbus-daemon --system --fork
  947 ?        S      0:03 /usr/sbin/vmtoolsd
  991 tty2     Ss+    0:00 /sbin/getty -8 38400 tty2
 1000 ?        Ss     0:00 cron
 1001 ?        Ss     0:00 atd
 1137 ?        Sl     0:00 /usr/sbin/console-kit-daemon --no-daemon
 1476 tty1     Ss+    0:00 /sbin/getty -8 38400 tty1
 9939 ?        Ss     0:00 /bin/sh -e /proc/self/fd/11
 9993 ?        S      0:00  \_ sleep 1

最後のプロセス9939で何が起こったのかご存知ですか?私は以前これを見たことがありません...それは自分で新しいPIDを生成し続けるだけです。

ベストアンサー1

bashさまざまな単一文字のコマンドラインオプションがサポートされています。

   All of the  single-character shell options documented in the
   description of the set builtin command can be used as options
   when the shell is invoked.  In addition, bash interprets the
   following options when it is invoked:

set -e少し複雑です:

          -e      Exit immediately if a pipeline (which may
                  consist of a single simple command),  a
                  subshell command enclosed in parentheses, or
                  one of the commands executed as part of a
                  command list enclosed by braces (see SHELL
                  GRAMMAR above) exits with a non-zero status.
                  ....

bash(1)これが実行されているようです/proc/self/fd/11。生成されたものは何でもコマンドを起動しpipe(2)、時間の経過とともに実行するコマンドを送信する可能性が高くなりますbash(1)。このパイプからコマンドsleep(1)を実行できます。スクリプトの次の行は新しいものを再起動する可能性がありますbash -e /proc/self/fd/11。 (おそらく上から下へbash -e /proc/self/fd/11 11</dev/fd/11伝播されるのでしょう11か?)

どのプロセスが原因であるかを確認するには、bash(1)実行します。パイプラインに対応する列のinode番号をlsof -p 9939記録します。 (または列または列にNODEリストされている可能性があります。)次に、対応するファイル記述子に関連付けられたinode番号を使用して実行します。FIFOSOCKETTYPEpipeNAMElsof | grep inode_number

これは非常に奇妙な現象であり、私はこれが攻撃者のツールキットの一部であると考える傾向があります。これは合理的かもしれませんが、私はそれが非常に疑わしいです。ログを慎重にスキャンして実行を検討することをお勧めします。http://www.chkrootkit.org/システムからファイアウォールなどを介して入ってくるすべての接続を調べます。一般的な妄想。

おすすめ記事