ターゲットサーバーで実行していることがわかったサービスのテストに関するガイダンスを探しています。私は「ブラックボックス」のペンテストを行っており、会社は「何も教えたくない」タイプの1つなので、どのサービスが実行されているかを教えてくれません。
NMapは開いているポートを拾い、それがSIPサービスであると提案しましたが、さまざまなSIP攻撃/クライアントをテストした後、それはほぼ間違いなく(私がテストしているボックスもjustウェブサーバーであると想定されています)。
私はファジングの経験があまりありませんでしたTCP以前のポートと私が見つけたものから、someファジングを開始する前に、プロトコルに関する情報(ある種のテンプレート)。さらに、サービスでスローするさまざまなものの「辞書」も必要です(これは通常、テストするアプリケーションのタイプに関連します) )これらのいずれもない場合、どうすればよいですか?
私はアプリケーションについて何も知りませんし、それが何を期待しているのかについては何も実行できないようです。あれは正しいですか?ここに役立つ役立つ何かがありませんか?
編集:明確にするために、443で実行されているApache + Tomcat Webサーバーもあり、これはLinuxボックスです。私はすでにそれをテストしたので、その部分は問題ではありません。私が知らない、まさにこの別の「ランダム」ポートです。
あなたは正しいです:技術的に、fuzzingは通常、無効またはランダムなリクエスト/データを送信していると見なされます、それはあなたが何をテストするかを知っていることを意味します入力を「中断」します。 一部の用語 (PDF)ホワイトボックスファジングは、以前の(生成された入力)およびブラックボックスファジング(ランダム入力)は後者です。
あなたがしようとしていることは、単に「ブラックボックステスト」としてよりよく説明されています。ここでの一般的な問題は、一部のプロトコル(SMTP、IMAP)がバナー付きの詳細を自由に提供するか、または一部の(HTTP)がプロトコル違反について過度におしゃべりである一方で、魔法のプロトコルハンドシェイクを必要とする多くのものがあります。 (LDAP、RPCなど)。
nmap
を再試行しますが、 バージョン検出は最大11 (実際には9のみですが、関係ありません):
nmap -sV --version-all --all-ports -p $port $Host
nmap -vvv -A --reason --script="+(safe or default) and not broadcast" -p $port $Host
2番目の例では、スクリプトの接頭辞+
に注意してください。これは、通常は実行されないスクリプトを実行することを意味します。とにかく多くのプラグインは実行に失敗します。出力を注意深く読む必要があります。うまくいけば、これによりいくつかの追加情報が得られます(最近のnmap
を使用してください。スクリプトは古いバージョンでハングすることがよくあります)。
ポートまたはnmap理由を指定していないので、それがSIPであると結論付けた理由を説明できません。おそらく、GET
またはOPTIONS
リクエストに応答したか、ポートであると推測します5060または5061。
より一般的なアドバイス:
nmap
レートを-T1
で調整するか、 -T0
IPSがブロックしている場合。最後に、他にもアプリケーションスキャナーがあります amap
はnmap
ほど包括的ではありませんが、試してみる価値はあります。
おそらく、Wiresharkを起動して、サービスの問い合わせ/プローブ中に、人気のあるWiresharkプロトコルディセクタがトラフィックを正常に識別できるかどうかを確認します(つまり、「decode as」機能を使用して、Wiresharkに特定のプロトコルとしてパケットをデコードさせます)。
ディセクタの現在のリスト: http://anonsvn.wireshark.org/viewvc/trunk/epan/dissectors/
プライベートプロトコルの場合、リバースエンジニアリングが可能な場合があります-> https://reverseengineering.stackexchange.com/a/2494 。