/var/log/auth.log
パブリックWebサーバーの1つでの監査中に、これを見つけました。
Jan 10 03:38:11 Bucksnort sshd[3571]: pam_unix(sshd:auth): authentication failure;
logname= uid=0 euid=0 tty=ssh ruser= rhost=61.19.255.53 user=bin
Jan 10 03:38:13 Bucksnort sshd[3571]: Failed password for bin from 61.19.255.53
port 50647 ssh2
一見したところ、これはssh
ランダムなハッカーからの典型的なログインスパムのように見えます。しかし、よく見ると何か他のものに気づきました。ほとんどの失敗した/var/log/auth.log
エントリはinvalid user
、次のようにそれらで言います:
Jan 9 10:45:23 Bucksnort sshd[3006]: Failed password for invalid user sales
from 123.212.43.5 port 10552 ssh2
以下のためにその失敗したログインメッセージに関する不穏な事はbin
、それがあるということである有効なユーザで/etc/passwd
あっても持っているログインシェルは:
[mpenning@Bucksnort ~]$ grep ^bin /etc/passwd
bin:x:2:2:bin:/bin:/bin/sh
で無効にPermitRootLogin
したときにリモートでログインできるすべてのデフォルトのユーザー名をカバーしたと思いました/etc/ssh/sshd_config
。このエントリを発見することは、私の妄想心に新しい可能性を開きました。何らかの方法でサービスが実行された場合bin
、誰かが何らかの方法でbin
ボックスで実行中のサービスからユーザーのディレクトリにsshキーを挿入できる可能性があるためbin
、可能であればユーザーのログインを完全に無効にしたいと思います。
ご質問
このサーバーはリモートであり、修正するのに費用がかかります(つまり、KVMを接続するためにリモートの手にお金を払うことになります)。
/etc/passwd
エントリを次のように変更すると、壊れる可能性があるものを見つけようとしbin
ています:bin:x:2:2:bin:/bin:/bin/false
次のコマンドを実行して、何
bin
が必要かを調べました...しかし、これらのコマンドにはファイルがなく、が所有するプロセスは見つかりませんでしたbin
。bin
とにかくユーザーは何をしますか?$ sudo find / -group bin
$ sudo find / -user bin
ログインシェルを設定する必要がある他のユーザーはいます
/bin/false
か?/bin/false
参考までに、私はすでに持っていますwww-data
。私は妄想しすぎていますか?
それが重要であれば、Debianを実行しています。