「WebShellQuickScanner」とは
「WebShellQuickScanner」は、Linuxサーバの指定フォルダーのPHPファイル中に、WebShellと高リスクファイルを速いて探し出すのクイックチェックツール,そして、検査結果をTelegramにプッシュする。
「Telegram」はTelegram Messenger LLPが開発するインスタントメッセージシステムである。詳細はこちら(Telegram - ウィキペディア)をクリックしてください。
この記事は、日本語の使用ドキュメントとして発表されます。
「WebShellQuickScanner」プロジェクトのリポジトリ
Github: DeepSkyFire/WebShellQuickScanner
「WebShellQuickScanner」について
Linuxサーバの指定フォルダーのPHPファイル中に、WebShellと高リスクファイルを速いて探し出すのクイックチェックツール,そして、検査結果をTelegramにプッシュする。
しかし、検出されたファイルは削除されません。だから、これらのファイルをどうするかはあなた自分自身を決断するです。
「WebShellQuickScanner」にクイックスタート
-
「WebShellQuickScanner」のダウンロード
wget --no-check-certificate https://raw.githubusercontent.com/DeepSkyFire/WebShellQuickScanner/master/src/WebShellScanner.sh && chmod +x WebShellScanner.sh
-
クイックチェックをスタート
bash WebShellScanner.sh -p /data/www-data(ターゲットフォルダーを指定する)
「WebShellQuickScanner」の使用方法の詳細
- 必要の依存関係
もし、検査結果をTelegramにプッシュしての機能を利用するためには、OSにcURLをインストールするは必要があります。
- 検査結果をTelegramにプッシュする
この機能を利用するためには、まず、Telegramで@BotFather
に新しいBOTを申し込みします。そして、Telegramで@userinfobot
を使って、自分のアカウントのCHAT_IDを確認してください。
注意! 現在、Telegramでは、メッセージに送信できる最大文字数を制限するようになりました。最大文字数は4096文字。もし検査結果の文字数が4096文字を超えると送信失敗となります。その以後、私は新しいプッシュ方法を更新する予定です。*
- ホスト名(Host Name)について
ホスト名を自分で指定することができます。ホスト名を指定しない場合、スクリプトは自動的にOSからデフォルトのホスト名を読み込みます。
- ログファイルの保存について
ログファイルをサーバー中に保存したい場合は、以下の設定のような設定しましょう:
bash WebShellScanner.sh -p /data/www-data -l /home/wwwwlogs
注意! ログ保存フォルダーのアドレスの末尾に「/」記号を書かないでください。
- フルデモ
もし、あなたは「/data/www-data」フォルダーを検査し、ログファイルを「/home/wwwlogs」フォルダーに保存し、そして、「MyServer1」のホスト名を指定した、検査結果をTelegramにプッシュするの場合は、以下の設定にような設定しましょう:
bash WebShellScanner.sh -p /data/www-data -t TELEGRAM_BOT_TOKEN -c TELEGRAM_CHAT_ID -n MyServer1 -l /home/wwwwlogs
-
ヘルプメッセージを表示する
bash WebShellScanner.sh -h
定期点検
Linux OSからcrontab -e
を使って、スキャンタスクを設定します。
例:
15 4 * * * "/root"/WebShellScanner.sh -p "/data/www-data" -t "TELEGRAM_BOT_TOKEN" -c "TELEGRAM_CHAT_ID" -n "MyServer1" -l "/home/wwwlogs" > /dev/null
上記の例では、1日1回、午前4時15分にスキャンタスクが実行される。
パラメータ(変数)の説明
WebShellScanner.sh [-h] [-p <ターゲットフォルダー>] [-t <TELEGRAM BOT TOKEN>] [-c <TELEGRAM CHAT ID>] [-n <ホスト名>] [-l <ログファイルの保存フォルダー>]
使用可能なパラメータ:
-h ヘルプメッセージを表示する. オプションパラメータ(変数).
-p <ターゲットフォルダー> 検査したいなフォルダー.
-t <TELEGRAM BOT TOKEN> Telegram Bot Token. オプションパラメータ(変数).
-c <TELEGRAM CHAT ID> Telegram Chat id. オプションパラメータ(変数).
-n <HostName> カスタムホスト名. オプションパラメータ(変数).
-l <ログファイルの保存フォルダー> ログファイルの保存フォルダー(ログ保存フォルダーのアドレスの末尾に「/」記号を書かないでください). オプションパラメータ(変数).