GNU/Linux >> Linux の 問題 >  >> Cent OS

RPM ファイルのいずれかが改ざんされていないかどうかを確認する方法

質問 :一部のシナリオでは、rpm インストールからのシステム内のファイルが変更、変更、または改ざんされていることが疑われます。たとえば、システムがハッキングされ、ssh のバイナリ ファイルが改ざんされました。インストール以降と比較して、変更が加えられたかどうかを確認する方法は?

次のコマンドを使用して、rpm または yum を使用してシステムにインストールされたファイルがインストール後に変更されたかどうかを検証および確認するには:

# rpm -V [PACKAGE_NAME]

インストール後に rpm で変更されたファイルがある場合は、上記のコマンド出力にリストされます。各行は、変更を示す特定のフラグで始まります。各フラグの意味は以下の表に記載されています:

フラグ 意味
S ファイルサイズが異なります
M モードが異なります (権限とファイルの種類を含む)
5 MD5 合計が異なります
D デバイスのメジャー/マイナー番号の不一致
L readLink(2) パスの不一致
ユーザーの所有権が異なります
G グループの所有権が異なります
T mTime が異なります

1.SSHサーバーが改ざんされた疑いがあります。それでは、まずファイルを配布する rpm を確認しましょう:

# yum provides */sshd
openssh-server

だから openssh-server システムで ssh バイナリを提供する rpm です。

2. 次に、openssh-server rpm によって提供されるファイルに変更がないか確認します。

# rpm -V openssh-server

いずれかのファイルが改ざんされている場合、上記のコマンド出力にリストされます。以下のようなもの:

S.5....T. /usr/sbin/sshd

ここでのフラグは、SSH サーバーのバイナリ ファイルが改ざんされたことを意味します。

S file Size differs
5 MD5 sum differs
T mTime differs

このファイルのサイズ、MD5 チェックサム、変更タイムスタンプは、RPM で配布されたものとは異なります。

3. ここで、yum を使用してパッケージを再インストールし、リポジトリから元の配布ファイルを取得できます。

# yum reinstall openssh-server

この特定の例では。 SSH サーバーを再起動する必要があります。

# service sshd restart

systemd ベースのディストリビューションの場合、systemctl を使用してサービスを再起動します:

# systemctl restart sshd


Cent OS
  1. Linuxの基本:Wgetを使用してシェルにファイルをダウンロードする方法

  2. コンソールで大きなファイルをチェックする方法

  3. ファイルを移動して進行状況を表示する方法(例:プログレスバーを使用)?

  1. Ppaパッケージが改ざんされているかどうかを確認する方法は?

  2. パターンを使用してファイルのセットの名前を変更するにはどうすればよいですか?

  3. ターミナルでHZを確認するには?

  1. コマンドラインでCentOS8でファイルを検索する方法

  2. rpm の内容を抽出するにはどうすればよいですか?

  3. Linux シェルを使用してスペースを含むファイルの名前を変更するにはどうすればよいですか?