ある種のDNSベースのブラックホール操作用にWindowsDNSサーバーを構成することを検討しています。理想的には、MalwareDomains.comなどからのフィードを使用できるはずです。どうすればそのようなセットアップをセットアップして実装できるのか興味がありました。ワークフローは次のようになります。
私が抱えている課題はステップ2です。DNSエントリの大規模なリストをWindowsDNSサーバーに公開する方法がわかりません。理想的には、これはServer2008以降で機能します。
#2を攻撃するには、「フィードリストをWindows DNSに公開するスクリプト」では、おそらく dnscmd
を使用します。ある程度の容量。フィードリストをA
またはCNAME
レコードの作成に関連する情報のビットに分割するには、いくつかのPowerShellコマンドレット(可能な例では_get-content
_や_write-Host
_など)を使用する必要があります。独自のDNSサーバー。次に、関連情報をdnscmd
が使用できる変数に貼り付けます。
#3を攻撃するには、人々を誤った方向に向けるレコードを作成します。したがって、A
は、制御下のIPアドレスを指すレコードを記録します(おそらく、制御しているWebサーバーが「ブロックされました!HRからの呼び出しを期待してください笑!!」)または単に人々を0.0.0.0に送ります。もう1つのオプションは、ドメインを制御するWebサーバーにCNAMEすることです。
これを自分で構築する代わりに、この作業の多くを行ってくれた人の後ろに立つことを検討してください: Windows DNSサーバーシンクホールドメインツール 。これは、WindowsDNSサーバー上のDNSブラックリストを管理するSANSInstituteが支援するPowerShellスクリプトです。 Windows HOSTS File Script To Block Bad Domains という姉妹プロジェクトがあります。これは予想通り、ローカルマシン上のhostsファイルを使用します。これは厄介に聞こえますが、おそらくGPO to Push Windowsクライアントに送信することもできます(ユーザーのアクセス許可がhostsファイルの改ざんを許可せず、Active Directoryがブラックリストを使用するすべてのPCを制御していることを前提としている場合)。
閉塞に関するレポートについては、Windows DNSには、私が見つけたドメインごとの応答レポートが実際にはないため、少し難しいです。ブラックリストに登録されたドメインにCNAMEを付けてから、ブラックリストに登録されたドメインにCNAMEを付けたWebサーバーの機能を使用して、誰が何をしているのかを確認することをお勧めします。参照ドメインと送信元IPアドレスに基づいて着信HTTPリクエストを理論的に分解し、かなりの気の利いたレポートを作成できます。 AWStatsは、すぐに使える助けになるかもしれません。
あなたが言及するサイトでこれに関する指示があります: http://www.malwaredomains.com/?page_id=6#MS そしてこの指示のための特別なファイル形式: http:// mirror1.malwaredomains.com/files/BOOT
しばらく前に、 GitHub および PowerShell Gallery で利用可能なPowerShellモジュールDnsBlockList
を公開しました。
SANS、ZeusTracker、およびマルウェアドメインからリストをネイティブに取り込み、リストを追加したり、独自のリストを作成したりできます。このプロセスでは、入力する形式によっては追加のロジックが必要になる場合があるため、これらのリストを解析するのがコツです。ただし、余裕があります。そのためにも!
ブロックするドメインごとにクエリ解決ポリシーが作成されます。これにより、ループバックアドレスのDNSレコードが作成されなくなります。
[〜#〜] readme [〜#〜] に記載されている機能は他にもたくさんあります。ぜひチェックしてみてください。
PowerShellギャラリーに公開されているため、モジュールのインストールは簡単です。
Install-Module DnsBlockList