Kali Linux:システム保護と監視の演習

→パート1. Kali Linux:セキュリティポリシー、コンピューターとネットワークサービスの保護
→パート2. Kali Linux:netfilterを使用したトラフィックのフィルタリング
→パート3. Kali Linux:監視とログ

前の3つの記事では、Kali Linuxの保護、トラフィックフィルタリング、および監視について説明しました。 今日はいくつかの演習をまとめて紹介します。 これは、 Kali Linux Revealedの第7章のセクション7.6および「演習」の翻訳です。


7.6。 まとめ


この章では、セキュリティポリシーの形成の概念を検討し、そのようなポリシーを作成する際に注意すべき点について説明し、コンピューターと情報セキュリティの専門家自身の両方を対象とした脅威について説明しました。 ラップトップおよびデスクトップコンピューターを保護する方法について説明し、Linuxカーネルに組み込まれたnetfilterファイアウォールを構成する方法を示しました。 そして最後に、カリを監視するためのツールと戦略を検討し、潜在的な脅威を時間通りに検出できるようにそれらを実装する方法を示しました。 まとめてみましょう、最も重要なことを思い出してください。


演習


以下は、Kali Linuxセキュリティの実践に役立ついくつかの演習です。

▍演習番号1:ネットワークでの作業時の保護


  1. Kali Linuxインストールで開いているすべてのポートを特定します。
  2. ポート22、80、および443へのTCP接続のみを許可するように、Kaliファイアウォールを構成します。
  3. netcatユーティリティを使用して、他のすべてのポートがブロックされているかどうかを確認します。
  4. 再起動後もファイアウォールルールが残るようにシステムを構成します。 これを確認するには、コンピューターを再起動します。

注:このような機会がある場合は、折りたたみ可能なブロックで質問に回答することをお勧めします。 同様に、他の質問への回答用。

exercise1番を行使することへの回答


表示する
  1. 開いているポートを確認します。

     root@kali:~# netstat -tulpen root@kali:~# iptables -n -L INPUT 

    一部のポートがシステムですでにブロックされている場合、または以前に確立されたiptablesルールがある場合は、これをすべて取り除くことができます。

     root@kali:~# iptables -F INPUT root@kali:~# iptables -P INPUT ACCEPT root@kali:~# iptables -P FORWARD ACCEPT root@kali:~# iptables -P OUTPUT ACCEPT 

    次のように、 netcatを使用してコンピューターのポート4444に接続できるかどうかを確認します。

     root@kali:~# nc -lnvp 4444 listening on [any] 4444 ... 

    ホスト(Kaliが仮想マシンで実行されている場合)または別のコンピューターから、ポート4444でリッスンしているnetcatインスタンスに接続してみます。接続後、キーボードから何かを入力します。 netcat実行されている場所にテキストが表示されます。

     root@HOST_MACHINE:~#  nc -v 172.16.161.136 4444 aaaaaaaa 

    キーボードからテキストを入力しても画面に表示されない場合は、何かが間違っていることを意味します。 続行する前にこれを理解してください。 Kaliが仮想マシンにインストールされている場合、NATの代わりにネットワークブリッジを使用するように切り替えます。 ネットワーク接続を確立して実行します。
  2. 次のコマンドを使用してファイアウォールを構成できます。

     iptables -P INPUT DROP iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -m state --state NEW -p tcp --dport 22 -j ACCEPT iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT 

    次に、ファイアウォールで保護されたマシンのポート4444に再接続できるかどうかを確認します。

     root@kali:~# nc -lvp 4444 listening on [any] 4444 ... 
  3. ホストコンピューターからnetcat接続してみてください。 接続試行は失敗するはずです。

     root@HOST_MACHINE:~# nc -v 172.16.161.136 4444 nc: connectx to 172.16.161.136 port 4444 (tcp) failed: Operation timed out 
  4. 次に、以前に定義したルールからiptablesスクリプトを作成します。

     root@kali:~# iptables-save  > /usr/local/etc/myconfig.fw 

    ファイル/etc/network/interfacespre-upディレクティブに構成スクリプトを登録します。 システムを再起動して、ファイアウォール設定が保存されていることを確認します。

     auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp pre-up iptables-restore < /usr/local/etc/myconfig.fw 

→これ Asciinema のソリューションです(ビデオのテキストはコピーできません)。

Kali Linux仮想マシンに接続するホストシステムの観点から見ると次のようになります

▍演習2:監視サービス


  1. logcheckをインストールします。
  2. 独自のSSHサービスでブルートフォースを使用して攻撃を試み、 logcheckに気付くかどうか、攻撃レポートを送信するかどうかを確認します。
  3. ログファイルを分析した後、 /data/$(date-time).logログファイルを作成するように、 cronジョブを1時間ごとにlogcheckを実行するように/data/$(date-time).logます。

exercise2番を行使することへの回答


表示する
  1. logcheckをインストールして初めて実行します。

     apt-get install logcheck sudo -u logcheck logcheck -o 
  2. パスワードのリストをダウンロードし、 hydraブルートフォースを使用して独自のSSHサービスを攻撃し、 logcheckレポートする内容を確認します。

     wget https://raw.githubusercontent.com/danielmiessler/SecLists/master/Passwords/500-worst-passwords.txt hydra -l root -P 500-worst-passwords.txt 127.0.0.1 ssh tail -f /var/log/auth.log sudo -u logcheck logcheck -o 
  3. 以下を読み取るbashスクリプトを作成します。

     mkdir -p /data/ sudo -u logcheck logcheck -o > /data/$(date +"%m-%d-%Y-%T").log 

    実行可能にし、/ /etc/cron.hourlyディレクトリに配置します。

→Asciinema のソリューションを次に示します(テキストはビデオからコピーできます)。

▍演習番号3:ファイルシステムの保護


  1. tripwireをインストールします。 /var/www/html/ディレクトリでファイルの変更の監視を開始します。
  2. すべてを正しく行った場合、多くのファイルシステムエラーエラーが発生します。 たぶんあなたはハッキングされましたか? いずれにしても、状況を修正してください。

exercise運動番号3への回答


表示する
  1. tripwireをインストールし、保護するファイルを設定します。

     apt-get install tripwire # yes, yes, yes, yes nano /etc/tripwire/twpol.txt  # list the directories and files you want to protect 

    次のコードブロックをtripwireポリシーtripwire追加しtripwire

     # Webserver file and folder monitoring ( rulename = "Web server file and directories", severity = $(SIG_HI) ) {       /var/www/html   -> $(SEC_BIN); } 

    次に、 tripwire /var/www/htmlディレクトリ内のファイルの変更に応答させます。

     twadmin -m P /etc/tripwire/twpol.txt #Create Policy File tripwire --init #Initialize database tripwire --check #Initial integrity check touch /var/www/html/shell_backdoor.php tripwire --check tripwire --update-policy -Z low /etc/tripwire/twpol.txt tripwire --check 

→Asciinema のソリューションを次に示します(ビデオからテキストをコピーすることはできません)。

▍思考情報



▍結果


Kali Linux Revealedの第7章の断片の翻訳を公開した一連の資料から学んだことが、システムの安全性と信頼性の向上に役立つことを願っています。

親愛なる読者! エクササイズを管理しましたか、それとも答えを覗かなければなりませんでしたか?

Source: https://habr.com/ru/post/J338712/


All Articles