スキャンされた有害なプログラムを完全に削除する 1 つのコマンド
著者: Tian Yi (formyz
)
NFS
サーバーは複数の Web
プロジェクト
によって共有されます。これらのディレクトリには、PHP
プログラム、画像、HTML
ページ、ユーザーがアップロードしたドキュメントと添付ファイルなどが含まれます。一部の Web
フレームワークは古く、アップロードされたファイルに対して厳密なセキュリティ チェックを実行しないため、この NFS
サーバーは保護された内部ネットワークに配置されていますが、依然として多数の悪意のあるファイルが下心を持つ人々によってアップロードされています。プログラマーはプログラムの更新 (Discuz
) を強く要求されましたが、更新はプログラムで処理するのが難しすぎるとの返答でした。システム管理レベルから見ると、一時的な対策は、shadu
ソフトウェアをインストールし、共有ディレクトリをスキャンして、これらの有害なファイルを削除することだけです (症状は治療されますが、根本原因は治療されません)。
共有ストレージ NFS
は Centos 7.9
にデプロイされており、ストレージ スペースは 44T
、使用スペースは 4.5T
です (次の図を参照)。管理上、大量のスパム情報が存在します。クリーンアップしてアーカイブします。
過去の経験と使用習慣に基づいて、オープンソースの有名なセキュリティ ソフトウェアである Clavam
を、NFS
サービスが配置されているホスト システムである Centos 7.9
に導入することにしました。プロモーションは「
ClamAV
」です
®
は、トロイの木馬、ウイルス、マルウェア、その他の悪意のある脅威を検出するためのオープンソースのウイルス対策エンジンです。
"–ClamAV®
は、特殊な脅威を検出するためのオープンソースの仮想ウイルス対策エンジンです。 **loy***iMuma
、ウイルス、マルウェア、その他の悪意のある脅威 公式 Web サイトの下部にあるロゴが、いつネットワーク機器メーカー CISCO
に置き換えられたのかはわかりません。
これはまだオープン ソースで無料であり、制限なく使用できます。Centos 7.9
では、Clamav をデプロイおよびインストールするには少なくとも 3
の方法があります
: RPM
バイナリ パッケージ、バイナリ以下の図に示すように、ソース コードとオンライン パッケージ管理ツール「yum」
。
Clamav を Centos 7.9
にデプロイしてインストールする最も簡単で便利な方法は「yum install
」です。システム コマンド ラインで「yum install clamav
」を実行してみてください。プロセスと出力は次のとおりです。以下の通り。
残念ながら、Clamav はソフトウェア リポジトリに含まれていないため、システムに正しくインストールできません。 「epel-release
」追加ソフトウェア リポジトリを再度追加して、「yum install epel-release
」コマンドを実行してください。次に、「yum list clamav
」の実行を続けます。
出力からわかるように、以下の図に示すように、添付されたウェアハウス リストにはソフトウェア パッケージ「clamav
」がすでに含まれています。
「yum install clamav」コマンドを実行して正式インストールします。以下の図に示すように、メイン ソフトウェア Clamav
に加えて、他のいくつかの依存パッケージが一緒にインストールされます。
ソース パッケージからインストールする場合と比較して、インストール プロセス中に出力されるエラーに基づいて必要な依存関係を 1 つずつインストールする必要がないため、効率が大幅に向上します。
初めてインストールおよびデプロイされる Clamav
の bingdu
ライブラリは比較的古く、遅れています。bingdu
署名ライブラリは、システム コマンド ラインで更新する必要があります。スキャン識別。 bingdu
ライブラリの更新を実行するコマンドは、パラメーターやオプションなしで「freshclam
」です。実行プロセスと出力は、次の図に示されています。
Bingdu ライブラリはすでに最新です。スキャンを正式に実行する前に、SSH
リモート ターミナルが切断されてスキャンが中断されるのを防ぐために、スキャンを実行することを強くお勧めします。画面上で###"。コマンド「screen
」を実行すると、コマンドが存在しないというメッセージが表示される場合は、「yum install screen
」を使用してインストールしてください。コマンド「screen
」を正しく実行すると、システムはすぐに Shell
プロンプトに戻ります。この時点で、次のコマンドを正式に入力して、問題があると思われる共有ディレクトリを完全にスキャンし、出力をログ ファイルに記録します。 /var/log/clamscan.log”
。
clamscan -r /data -l /var/log/clamscan.log
長い間待った後、このスキャンを完了するまでに何日もかかりました。スキャン ログ ファイルをチェックして、悪意のあるファイルが存在するかどうかを確認します。次のコマンドを使用します:
[root@nas wenku]# grep FOUND /var/log/clamscan.log
/data/cu/attachment/forum/201305/29/22155372jcjxtt0vfx2uk2.zip: Win.Trojan.IRCBot-785 が見つかりました
/data/cu/attachment/forum/201501/05/155857clzd9d10bwdpl3s0.zip: Unix.Trojan.Agent-37008 が見つかりました
/data/cu/attachment/forum/201501/10/2110526a6afrfrzvas2h25.zip: Win.Tool.Chopper-9839749-0 が見つかりました
/data/cu/attachment/forum/201501/10/210932qsy27wsnwazswagr.zip: Win.Tool.Chopper-9839749-0 が見つかりました
/data/cu/attachment/forum/201405/18/082512hhjnzummmnuu4i8i.zip: Unix.Dropper.Mirai-7338045-0 FOUND
/data/cu/attachment/forum/201205/11/084024426448y1bk6jmmb9.zip: Win.Trojan.SdBot-13589 が見つかりました
/data/cu/attachment/forum/201206/05/092231faffjiak6z3gkzqv.zip: Win.Malware.Aa93a15d-6745814-0 が見つかりました
/data/kong/blog/attach/attachment/201603/9/30229789_1457535724sulu.jpg: Win.Trojan.Generic-6584387-0 が見つかりました
………………. これ以上省略…………………………..
/data/wenku/App_Data/Documents/2012-03-10/7da3d2c7-6d16-44c2-aab1-e8a317716c15.txt: Dos.Trojan.Munga-4 が見つかりました
/data/wenku/App_Data/Documents/2014-02-17/4ed74e66-54d1-46b5-8a41-4915ced095a5.ppt: Xls.Trojan.Agent-36856 が見つかりました
/data/wenku/App_Data/Documents/2014-02-23/c5c1dfa6-9f04-4e53-b418-4d711ce5408d.ppt: Win.Exploit.Fnstenv_mov-1 が見つかりました
/data/wenku/App_Data/Documents/2014-07-15/ae2dfca5-ddef-4c41-8812-bcc5543415e1.txt: Legacy.Trojan.Agent-34669 が見つかりました
|
キーワード「FOUND 」を含む複数のレコードが合計 500 件存在し、配布経路も不規則であり、これらの散在する悪意のあるファイルはディレクトリの削除では処理できません。絶対パスに従って 1 つずつ手動で削除する場合、非効率でエラーが発生しやすくなります。この方法で配布された悪意のあるファイルが数千個ある場合、それらを 1 つずつ手動で削除することは基本的に不可能です。
コマンド「clamscan 」自体には、スキャンされた悪意のあるファイルを直接削除するためのオプション「--remove 」がありますが、これは関係者によって確認されていないため、議論を引き起こす可能性があります。したがって、これらの問題のある悪意のあるファイルは関係者に提示して確認し、異議がない場合にのみ移動または削除することができます。
Clamav によってスキャンされたログ ファイルから開始します。 次の手順に従って、ツールを使用して悪意のあるファイルのフル パスを抽出します。
[root@nas wenku]#grep FOUND /var/log/clamscan.log |awk -F[:] ‘{print $1}’
/data/wenku/App_Data/Documents/2016-04-11/8fe8d01e-e752-4e52-80df-f202374b2b6d.doc
/data/wenku/App_Data/Documents/2016-04-11/03a14021-279f-45cd-83c5-b63076032c9e.doc
/data/wenku/App_Data/Documents/2016-04-11/c45ddc01-ec3d-4a54-b674-8c2082d76ce3.doc
/data/cu/attachment/forum/201305/29/22155372jcjxtt0vfx2uk2.zip
/data/cu/attachment/forum/201501/05/155857clzd9d10bwdpl3s0.zip
/data/cu/attachment/forum/201501/10/2110526a6afrfrzvas2h25.zip
/data/cu/attachment/forum/201501/10/210932qsy27wsnwazswagr.zip
/data/cu/attachment/forum/201405/18/082512hhjnzummmnuu4i8i.zip
/data/cu/attachment/forum/201205/11/084024426448y1bk6jmmb9.zip
/data/cu/attachment/forum/201206/05/092231faffjiak6z3gkzqv.zip
……………… 一部省略 …………………………
|
元のログと比較すると、コロン「: 」とそれに続くすべてのフィールドが削除されています。このコマンドの後に、パイプラインを追加し、「xargs 」でパラメータを渡し、配布先のパスに関係なく、スキャンされたすべての悪意のあるファイルをクリーンアップします。完全なコマンドは次のとおりです。
grep FOUND /var/log/clamscan.log |awk -F[:] ‘{print $1}’| xargs rm -rf
|
実行後、スキャンされたいくつかの悪意のあるファイルのフル パスがランダムに検索されます。ファイルは存在しないはずです ( 下の図に示すように) これは、スクリプトが正しく、期待した結果であることを意味します。
|
以上がスキャンされた有害なプログラムを 1 つのコマンドで完全に削除の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。