確立された接続を受信して​​アラートを生成する方法(低インタラクションハニーポット)

確立された接続を受信して​​アラートを生成する方法(低インタラクションハニーポット)

非常に単純なLinuxデーモンのための最も強力なソリューションは何ですか?特定のポートのみを受信して​​接続するたびにすぐに電子メール通知を送信しますか?

私は建物を建てています。低インタラクションハニーポット私の本番ネットワークで。ほとんどのオープンソースの「ハニーポット」ソリューションは、必要なものよりはるかに複雑であることがわかりました。

私は単に「貴重な」ポート(例えば、、、、22など)を受信し、何かが接続されたら私に電子メール警告を送信する簡単なデーモンが欲しいです。13933895900

有効な解決策は、起動時に開始されるサービスをデーモン化できる限り、既存のオープンソースプロジェクトを使用するか、単純なbash / perl / pythonスクリプトを使用することです。

答え1

wazuhHIDS(ホストベースの侵入検知システム)といくつかのファイアウォールルールを使用して設定できます。

まず、wazuhのインストール

アップデートを含む電子メール通知を送信するように設定します。/var/ossec/etc/rules/local_rules.xml

<email_notification>yes</email_notification>

次に、wazuhローカルルールファイルを編集してデフォルトグループに追加します。

  <rule id="100001" level="7">
    <if_sid>4100</if_sid>
    <description>Attempt to connect to honeypot</description>
  </rule>

上記のルールはファイアウォールルール(4100で定義されているルールID /var/ossec/ruleset/rules/0060-firewall_rules.xml)と一致し、ファイアウォールルールがログを生成すると警告を発します。これをさらに具体化することができますが、公的にアクセスできない、または従業員が使用していない製品イントラネットの相互作用が少ないハニーポットの場合は問題ありません。

項目を解析するためにデコーダを更新する必要があるかもしれません。に追加/var/ossec/etc/decoders/local_decoder.xml

<decoder name="iptables-3">
   <parent>kernel</parent>
   <type>firewall</type>
   <prematch>^[\s*\d+.\d+] IN=</prematch>

   <regex>^[\s*\d+.\d+] \.+ SRC=(\S+) DST=(\S+)</regex>
   <order>id,srcip,dstip,protocol</order>
</decoder>

<decoder name="iptables-3">
   <parent>kernel</parent>
   <type>firewall</type>
   <regex offset="after_regex">^SPT=(\d+) DPT=(\d+) </regex>
   <order>srcport,dstport</order>
</decoder>

ポート 22 に TCP 接続が行われるたびに記録する iptables ルールを作成します。そしてそれを持続させなさい。

iptables -A INPUT -p tcp --syn -m state --state NEW --dport 22 -j LOG
apt-get install iptables-persistent

誰かがSSHを介してサーバーに接続しようとするたびに、カーネルログにエントリが記録されます。 RDP、ドメインコントローラ、データベースなど、一般的に使用される他のポートに対してこの操作を繰り返すことができます。

そして再起動してください

systemctl status wazuh-manager

これで、誰かがポート22を介してサーバーに接続するたびに電子メール通知が届きます。

関連情報