特定のWebサーバーに関する情報をすばやく取得するには?

特定のWebサーバーに関する情報をすばやく取得するには?
$ time nmap -q -sV -P0 -p80 google.com | fgrep '80/tcp open'
80/tcp open  http    Google httpd 2.0 (GFE)

real    0m6.563s
user    0m0.280s
sys 0m0.016s
$ 

お持ちですか?急いでWebサーバーに関する情報を取得するには?

Google httpd 2.0(GFE)で十分です。

答え1

まあ、それはあなたが探している「情報」によって異なります。実行しているHTTP(S)サービスとバージョン(IIS / Apache / nginx)がわかっていると仮定すると、基本的なオペレーティングシステムが何であるかを理解できます。

より多くの情報が見つかるほど、検索に時間がかかります(IDSを実行すると検索に時間がかかることがあります)。

nmapを使用する(高速):

$ nmap -PN -sV -n -T4 --host-timeout 20s -p80 www.website.tld

nmapを使用する(遅いがより有益)

$ nmap -PN -n -sU -sS -A www.website.tld

-Aは-sV -O -T4(バージョン検出/OS検出/攻撃的なタイミング)と同じです。

答え2

ほとんどのHTTPサーバーでは、Nmapはサーバーヘッダーのみを取得するため、これで十分です。この情報を入手するには、以下を試してください。

printf "HEAD / HTTP/1.0\r\nHost: $TARGET\r\n\r\n" | nc $TARGET 80 | awk '$1=="Server:"{$1="";print}'

そうではなく、Nmapを使用したい場合は、作業を高速化する方法がいくつかあります。

  • -n名前解決を避けるために使用されます。
  • 送信されるプローブの数を減らすには、または--version-lightを使用します。--version-intensity 0デフォルトのプローブは通常一致するため、これはほとんどのHTTPサーバーには影響しません。
  • -Pnホスト検索をスキップするために使用されます。すでにこれを持っていて-P0動作しますが、構文は古いです。

全体的に数ミリ秒を節約できます。残念ながら、あなたが見る6秒は、Nmapがサーバーが最初にデータを送信するのを待つ時間です。 Nmap は特定の順序でサービス検出プローブを試みます。最初にNULLプローブ(サーバーが最初にそれを送信するのを待つ)、スキャンしているポートのすべてのプローブ、次にバージョン強度(デフォルト)よりも希少度が低い他のプローブnmap-service-probes)あるファイルで定義されています。ただし、これはグローバル設定なので、編集すると通常のバージョン検出にNmapの使い勝手が悪くなります。そのProbe TCP NULL行を見つけて、totalwaitmsその下の値を小さい値(たとえば)に変更します100。次のようにする必要があります。

# This is the NULL probe that just compares any banners given to us
##############################NEXT PROBE##############################
Probe TCP NULL q||
# Wait for at least 6 seconds for data.  It used to be 5, but some
# smtp services have lately been instituting an artificial pause (see
# FEATURE('greet_pause') in Sendmail, for example)
totalwaitms 100

他のすべてのNmapスキャンが複雑にならないようにするには、ファイルをコピーしてnmap-service-probesこのオプションを使用してその場所を参照してください--datadir。これが私が得た結果です:

$ time nmap -Pn -sV -n -p80 $TARGET --datadir=. | grep '^80/tcp'
80/tcp open  http    Google httpd 2.0 (GFE)

real    0m0.753s
user    0m0.472s
sys     0m0.032s

答え3

どうですか?

wget -q -O /dev/null -S www.google.com

関連情報