これらのregex
コマンドはどういう意味ですか? historyコマンドを実行したときにそれらを見つけました:
grep --include=\*.php -rnw . -e "update.creditcard"
grep --include=\*.php -rnw . -e "e41e"
grep --include=\*.php -rnw . -e "nobugs.com"
grep --include=\*.{php|js} -rnw . -e "nobugs.com"
grep --include=\*.[php|js] -rnw . -e "update.creditcard|nobugs.com|slimmingworldcyprus.com|chr\("
grep --include=\*.php -rnw . -e "update.creditcard|nobugs.com|slimmingworldcyprus.com|chr\("
grep --include=\*.php -rnw . -e "update.creditcard|nobugs.com|slimmingworldcyprus.com"
grep --include=\*.js -rnw . -e "update.creditcard|nobugs.com|slimmingworldcyprus.com"
私のウェブサイトには多くのページが欠落していることに気付いたので、サーバーに行き、history
を使用してそれらのコマンドを見つけました。しかし、私は彼らが何をしているのか全くわかりません。
私と他の1人だけがサーバーへの管理者アクセス権を持ち、どちらもこれらのコマンドを認識しません。
コマンド自体は特に心配しているようには見えません-それらは特定の部分文字列を検索するランダムに見える少数の検索です。
ただし、シェルの履歴に説明のつかないエントリがある場合は、ハッキングされた兆候です。
この時点で、私がお勧めするのはSSHログをチェックして、いつ(およびどのIPから)これが発生したかを確認し、サーバーを保護します-おそらくOSを再インストールし、バックアップからコンテンツを復元し、最初に侵害につながった穴を差し込みます(可能な場合)それを識別します)。
CentOSでは、SSHログは/var/log/secure
デフォルト に書き込まれます。 Ubuntuでは、デフォルトで/var/log/auth.log
に書き込まれます。
次に、これらの場所のいずれかでSSHログエントリを検索するコマンドを示します。
grep -i 'ssh' /var/log/secure /var/log/auth.log
おそらくは、そのコマンドの出力の最後にある最新のログエントリに関心があります。
侵入を示すログにエントリがない可能性があることに注意してください。これは、攻撃者がSSHログをワイプしたが、シェルの履歴はワイプしなかったことが原因である可能性があります。
ログの調査に役立つコマンドには、grep
、tail
、less
があります。また、あるコマンドの出力を別のコマンドにパイプ処理できることも覚えておいてください。このようなコマンドラインツールについてさらにヘルプが必要な場合は、マンページまたは nix&Linux Stack Exchange を確認してください。
いくつかのテキスト検索です。最初の例では、すべてのサブフォルダーでupdate.creditcard
(ドットは任意の1文字のワイルドカード)を検索します。 (StackOverflowの grep -rnw
についての詳細 。)
そして、あなたや他の管理者がこれらのコマンドを実行しなかった場合、私は非常に心配して、そのサーバーを消去して再インストールします。
検索自体は無害です。しかし、権限のない人がアクセスした場合、他に何をしたのかはわかりません。