このチュートリアルでは、Debian 8(Jessie)でのPSAD(ポートスキャン攻撃検出)ツールのインストールと構成を紹介します。プロジェクトのウェブサイトによると:PSADは、IPtables(Linuxファイアウォール)を使用した侵入検知とログ分析を提供します。 PSADツールは、IDS(侵入検知)システムをIPS(侵入防止システム)に変更するために使用されます。侵入イベントの検出には、よく知られているオープンソースIDS「SNORT」のルールを使用します。 VMまたはサーバーは、ポートスキャンなどのアクティブな攻撃がないかツールによって継続的に監視され、Linuxファイアウォール内の悪意のあるIPアドレスを自動的にブロックする可能性があります。別の同様のプロジェクトはガーディアンです 機能が非常に限られています。 PSADはDebian-8(Jessie)VMにインストールされ、スキャンツール「Nmap」を使用してVMで開いているポートをチェックします。最終的に、PSADツールの動作を確認するために、ウェブサーバー(Apache)でDOS攻撃が開始されます。
PSADのインストール
Debian Jessieは、ネットインストーラー(debian-8.3.0-i386-netinst.iso)を使用してVMwareVMにインストールされます。
Debianのインストールプロセスは前の記事で説明されています。 PSADマシンのIPアドレスは192.168.1.102/24です。
PSADツールは、ソースコードまたはDebianパッケージリポジトリからインストールできます。 Debianリポジトリからインストールします。まず、sources.listファイルに以下を追加し(または行がすでに存在するかどうかを確認し)、aptコマンドを実行してリポジトリリストを更新します。
deb http://httpredir.debian.org/debian jessie main deb-src http://httpredir.debian.org/debian jessie main deb http://httpredir.debian.org/debian jessie-updates main deb-src http://httpredir.debian.org/debian jessie-updates main deb http://security.debian.org/ jessie/updates main deb-src http://security.debian.org/ jessie/updates main
apt-get update
次のコマンドを実行して、VMにPSADをインストールします。
apt-get install psad
PSADツールのインストール中にいくつかのPerlパッケージが必要です。パッケージの依存関係は、Debianパッケージマネージャーによって自動的に解決されます。
Linuxプラットフォームのファイアウォール機能は、IPtablesパッケージによって提供されます。これはよく知られているLinuxファイアウォールであり、すでにすべてのLinuxディストリビューションにインストールされています。
PSADとファイアウォールの構成
デフォルトでは、DebianプラットフォームのIPtablesチェーンにルールはありません。次のコマンドを実行して、チェーンルールを一覧表示します。
iptables -L
PSADデーモンが異常なアクティビティを検出できるように、IPtablesの入力チェーンと転送チェーンへのログ記録を有効にします。
iptables -A INPUT -j LOGiptables -A FORWARD -j LOG
「iptables-L」コマンドの出力は、以下のようになります。
Chain INPUT (policy ACCEPT) target prot opt source destination LOG all -- anywhere anywhere LOG level warning Chain FORWARD (policy ACCEPT) target prot opt source destination LOG all -- anywhere anywhere LOG level warning Chain OUTPUT (policy ACCEPT) target prot opt source destination
Debianディストリビューションでは、PSADツールは設定ファイルとルールを/ etc/psadディレクトリに保存します。
メインのPSAD構成ファイルは/etc/psad/psad.conf 。 このチュートリアルでは、IPS機能を使用してWebサーバーに対するDOS攻撃を検出します。
PSADの基本設定を以下に示します。
EMAIL_ADDRESSES [email protected];
HOSTNAME PSAD-box;
HOME_NET any;
EXTERNAL_NET any;
次の図に、デフォルトの危険レベル設定、PSADチェック間隔、およびSIDの使用法を示します。
デフォルトでは、PSADデーモンは / var / log / messagesでログを検索します ファイル。したがって、 IPT_SYSLOG_FILEを変更します。 PSAD構成のパラメーター。
Debianベースのディストリビューションは、syslogメッセージを / var / log / syslogに保存します。 ファイル。
ENABLE_SYSLOG_FILE Y;
IPT_WRITE_FWDATA Y;
IPT_SYSLOG_FILE /var/log/syslog;
デフォルトでは、PSADはIDSモードで動作し、IPSパラメーターは構成ファイルで無効になっています。次のパラメータを有効にして、IPS機能と危険レベルを有効にします。構成ファイルでパラメーターを有効にすると、PSADデーモンは攻撃者のIPアドレスをIPtablesチェーンに追加することで攻撃者を自動的にブロックします。
ENABLE_AUTO_IDS Y;
AUTO_IDS_DANGER_LEVEL 1;
次に、次のコマンドを実行して、攻撃を検出するためにシグニチャデータベースを更新します。
psad --sig-update
現在、Apacheサーバーは以下に示すようにポート80でリッスンしています。
次のコマンドを使用してPSADを起動し、ステータスを確認します。
psad start
psad -S
以下に示すように、VMでLOIC(低軌道イオンキャノン)ツールを使用してDOS攻撃を開始し、PSADをテストします。
Syslogは、LOICツールを使用して生成されたDOSトラフィックを表示します。
シミュレートされた攻撃者192.168.1.100のIPアドレスは、以下に示すようにPSADデーモンによってブロックされます。次のコマンドを実行して、PSADによって追加された動的ルールを表示します。
psad --fw-list
次のスクリーンショットは、攻撃者が被害者のIPアドレスにpingを送信できなくなったため、PSADによって正常にブロックされたことを示しています。
次のコマンドを実行して、PSADの詳細な出力を確認します。
psad -S
1.署名が一致し攻撃者のIPアドレス
2.特定のポートのトラフィック
3.IPtablesチェーン内の攻撃者のIPアドレス。
4.攻撃者と被害者の間の通信に関する詳細。
PSADは、Linuxサーバーでのポートスキャン攻撃をブロックするためのよく知られたオープンソースツールです。 IDSとIPSの両方の機能を備えており、IPtablesを使用して悪意のあるIPアドレスを動的にブロックできます。