web-dev-qa-db-ja.com

これらの正規表現は、私がハッキングされたことを示していますか?

これらの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人だけがサーバーへの管理者アクセス権を持ち、どちらもこれらのコマンドを認識しません。

8
OldCastle

コマンド自体は特に心配しているようには見えません-それらは特定の部分文字列を検索するランダムに見える少数の検索です。

ただし、シェルの履歴に説明のつかないエントリがある場合は、ハッキングされた兆候です

この時点で、私がお勧めするのはSSHログをチェックして、いつ(およびどのIPから)これが発生したかを確認し、サーバーを保護します-おそらくOSを再インストールし、バックアップからコンテンツを復元し、最初に侵害につながった穴を差し込みます(可能な場合)それを識別します)。

SSHログの確認

CentOSでは、SSHログは/var/log/secureデフォルト に書き込まれます。 Ubuntuでは、デフォルトで/var/log/auth.logに書き込まれます。

次に、これらの場所のいずれかでSSHログエントリを検索するコマンドを示します。

grep -i 'ssh' /var/log/secure /var/log/auth.log

おそらくは、そのコマンドの出力の最後にある最新のログエントリに関心があります。

侵入を示すログにエントリがない可能性があることに注意してください。これは、攻撃者がSSHログをワイプしたが、シェルの履歴はワイプしなかったことが原因である可能性があります。

ログの調査に役立つコマンドには、greptaillessがあります。また、あるコマンドの出力を別のコマンドにパイプ処理できることも覚えておいてください。このようなコマンドラインツールについてさらにヘルプが必要な場合は、マンページまたは nix&Linux Stack Exchange を確認してください。

19
Ethan Kaminski

いくつかのテキスト検索です。最初の例では、すべてのサブフォルダーでupdate.creditcard(ドットは任意の1文字のワイルドカード)を検索します。 (StackOverflowの grep -rnwについての詳細 。)

そして、あなたや他の管理者がこれらのコマンドを実行しなかった場合、私は非常に心配して、そのサーバーを消去して再インストールします。

検索自体は無害です。しかし、権限のない人がアクセスした場合、他に何をしたのかはわかりません。

16
StackzOfZtuff