
侵入テストを実施する際の重要な段階は、監査オブジェクトとその相互作用に関する情報の初期収集です。 これを行うには、さまざまなツールとユーティリティを使用してインフラストラクチャをマッピングし、さらに分析するために異なる資料を取得する必要があります。 今日は、侵入テスト中に情報を収集および分析するための基本ツールを組み合わせたSpartaフレームワークを検討します。
Spartaは、コマンドと構文ではなく、発見された脆弱性の分析にPentesterを集中させることを目的としたPythonで作成された侵入テストツールです。
Spartaは、スキャンツール、ブルートフォース、脆弱性スキャナーなどのコントロールセンターのようなユーザーフレンドリーなグラフィカルインターフェイスを提供します。 Spartaは標準のKali Linuxユーティリティパッケージの一部であり、ディストリビューションのインストール後すぐに使用する準備ができています。
公式サイト:
https://github.com/SECFORCE/sparta/
http://sparta.secforce.com/
機能的
- nmapを使用してネットワーク上のホストとサービスを検出するか、nmapスキャン結果をXML形式でダウンロードします。
- 標準値および辞書値(辞書/ usr / share / sparta / wordlists)の資格情報を確認します。
- 一般的な脆弱性スキャナー(nikto)を使用して脆弱性を検出します。
- 見つかったウェブサイトのスクリーンショットを撮ります。
- 任意のサービス(どのサービスに対してどのツールをどのパラメーターで実行するか)に関連してSpartaの動作を構成できます。
- 情報に興味がないホストをマークして、時間を無駄にしないようにすることができます。
カスタマイズ
プログラムについて知りたいだけの読者は、このセクションをスキップできます。 Kali LinuxにインストールされたSpartaツールは、基本構成で使用する準備ができています。
Sparta設定は、次のファイルに含まれています。
- /etc/sparta.conf
- /usr/share/sparta/sparta.conf
- /var/lib/dpkg/info/sparta.conffiles
Spartaはそれらの存在をチェックし、ファイルがない場合は新しいファイルを作成します。 開発者は、いつかグラフィカルインターフェイスからツールを設定できるようにすることを約束しますが、現時点では、手動モードでファイルを編集する必要があります。
このファイルには、一般設定、ブルート設定、StagedNmapSettingsなどのグループに分けられたパラメーターのリストが含まれています。 開発者は、構成ファイルから行を削除することをお勧めしません。 これはプログラムを混乱させる可能性があります。 ToolSettings、HostActions、PortActions、およびPortTerminalActionsグループは、右クリックで使用可能なオプションの構成を担当します。 SchedulerSettingsグループは、検出されたサービスに関連してツールを自動的に起動する役割を果たします。
たとえば、UDP / TCPポート53サービス用のdigツールを-t axfrスイッチとともに追加して、ゾーン転送を実行します。
このツールはホストではなくサービスで機能するため、入力する必要があるグループはPortActionsです。 見つかったDNSサーバーに関して次のコマンドを実行する必要があります
# dig -t axfr _ @DNS_IP
Spartaには、[PORT]や[IP]などの特別な設計があり、攻撃しているサービスポートとホストIPアドレスをツールに配信できます。
しかし、ドメイン名を知る必要があります。 次の構成を使用するには
$(dig -x [IP] +short @[IP] | head -n 1 | cut -d '.' -f 2-3)
したがって、次の行は、すでにファイルにあるものと同様に、PortActionsグループに分類されます。
[PortActions]
dig-axfr=Try Zone Transfer, bash -c \"dig -t axfr $(dig -x [IP] +short @[IP] | head -n 1 | cut -d '.' -f2-3) @[IP]\", "domain"
ただし、DNSサービスが検出されるたびにゾーン転送の試行を実行する必要があります。
これを行うために、SchedulerActionsグループにこの方法でデータを追加します
[SchedulerSettings]
dig-axfr="domain", udp
これで、Spartaを再起動して、追加したツールの動作を確認できます。
Spartaは、脆弱性分析セクションのメニューから起動できます。

またはコンソールから
# sparta
作業例
開始後、次のインターフェイスが表示されます

そして、最初に行う必要があるのは、目標の概要を説明することです。
この領域をクリックします。

そして、たとえば、次のようなサブネットを設定します。

すぐに、Nmapを使用してホスト検出を実行するようにspartaに指示できます。
2番目のオプション「段階的なnmapスキャンの実行」は、nmapを特別な方法で起動し、スキャンを段階的に分割します。 これらは、Sparta.conf構成ファイルに記載されています。
[StagedNmapSettings]
stage1-ports="T:80,443" stage2-ports="T:25,135,137,139,445,1433,3306,5432,U:137,161,162,1434" stage3-ports="T:23,21,22,110,111,2049,3389,8080,U:500,5060" stage4-ports="T:0-20,24,26-79,81-109,112-134,136,138,140-442,444,446-1432,1434-2048,2050-3305,3307-3388,3390-5431,5433-8079,8081-29999" stage5-ports=T:30000-65535
このモードでは、見つかったサービスに関する情報をすばやく取得し、タスクの自動起動の作業を最適化します。
画面の下部にある[範囲に追加]ボタンをクリックすると、作業タスクに関する情報が表示されます。 多くのツールが並行して動作することがわかります。

右クリックして、タスクを完了します。
また、ホストのあるテーブルがいっぱいになり、ホストの1つを選択すると、インターフェイスの右側にスクリプトの結果のタブが表示されます。

検出された開いているポートを右クリックすることで、たとえば、telnetまたはncを使用してサービスに接続する、ブルートフォースを実行するなど、あらゆる種類のタスクを実行できます。
メニューの外観はサービスに依存することに注意してください。 以下はFTPサービスのスクリーンショットです

さらに、whatweb、dirbusterを実行して、選択したWebアプリケーションのスクリーンショットを撮ることができます。

MySQLの場合、それぞれmysqlクライアントオプションが使用可能になります。
DNSのゾーン転送は利用可能です。これは記事の冒頭で追加しました。

ログには、dig-axfrタスクが自動的に完了したことも示されています。
ツールのリスト全体を表示するには、Shiftキーを押しながら右クリックします。
実行中のツールからの出力を含むタブには、ツールの結果の完全な出力が含まれます

追加したツールの出力は正しく表示されます。

Spartaによって起動されたツールに関連付けられたタブに加えて、次のものを使用できます。
- サービス -検出されたサービスのリストが含まれています
- スクリプト -nmap NSEスクリプトの結果が含まれます(nmapが-sCで開始されるか、サービスを右クリックして適切なオプションを選択すると満たされます)。
- 情報 -ホストに関する基本情報(IP、MACアドレス、OSタイプとバージョン、静的インジケーターなど)が含まれます
- 注 -ホストに独自のコメントを追加できます
- リスト内の選択したホストを右クリックして、選択したホストの追加スキャンを実行することができます。

また、ホストだけでなく、サービスや使用済みツールごとに、見つかった情報を表示することもできます
たとえば、すべてのホストでniktoの結果を確認します。

または、どのマシンにWebアプリケーションがあるかを確認します。

[サービス]タブからツールを実行すると、Spartaはツールが既にスキャンされているホストに対して同じツールを実行しないという重要な機能があります。 すべてのホストに対してツールを実行するには、Shiftキーを押しながら右クリックします。

ホストを確認したと判断したら、右クリックして「チェック済みとしてマーク」オプションを使用して、ホストをリストでマークできます。

その後、このホストに対してツールは実行されなくなります。
[ブルートフォース]タブでは、hydraでブルートフォースを設定および実行できます。
主なオプションは、ユーザーとパスワードを含むファイルの選択、ユーザーごとのループオプションなどのグラフィカルインターフェイスで行われます。これにより、すべてのユーザーや他のユーザーのすべてのパスワードではなく、各ユーザーのすべての辞書パスワードを順番に確認できます。 [追加オプション]オプションを使用して、キーを追加できます。

すでに見つかったユーザー名とパスワードによるブルートフォースのユーザー名とパスワードの検索オプションも役立ちます。 [ファイル]-[保存]メニューを使用して、特別な形式で調査結果を保存できます。

おわりに
Spartaは、幅広い専門家が使用できます。 使いやすいインターフェースを備えているため、ニーズと習慣に合わせて微調整する機能が提供されるため、初心者とプロの両方にとって便利です。これにより、将来、侵入テスト中に情報を収集する段階で時間を節約できます。