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/interfaces



    pre-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章の断片の翻訳を公開した一連の資料から学んだことが、システムの安全性と信頼性の向上に役立つことを願っています。



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



All Articles