NSEスクリプトでApacheのバージョンを取得する
提供: セキュリティ
スポンサーリンク
nmapのNSEスクリプトで、Apache HTTP Server(httpd)のバージョンを調べるスクリプトのサンプルコードを紹介します。Apache のバージョンを調べることは、既存のスクリプトで出来ることで特別なことではありません。
読み方
- NSEスクリプト
- えぬえすいー すくりぷと
概要
NSEスクリプトの書き方については、はじめてのNSEスクリプトの説明を参考にしてください。 Apache がレスポンスにサーバーのバナーを返すことが前提です。
NSEスクリプトの主なアクション関数の動作は、以下の通りです。
- Apache HTTP Serverの適当なエントリーポイントに対して、HTTPリクエストを送信します。
- アクション関数は、HTTPレスポンスのヘッダを返す
HTTPリクエストを送信するには、NSEライブラリのhttpを使用します。
使い方
nmap --script ./glab-apache.nse localhost -p 80
glab-apache.nse
description = [[ Glab Apache Version ]] author = "Kaoru"; license = "" categories = {"default,safe"} local shortport = require "shortport" local http = require "http" local stdnse = require "stdnse" portrule = shortport.port_or_service ({80,443}, {"http","https"}) action = function (host, port) local response = http.get (host, port, "/status.html") return response.header ["server"] end
実行例
$ nmap --script ./glab-apache.nse localhost -p 80 Starting Nmap 6.46 ( http://nmap.org ) at 2014-07-18 01:20 JST Nmap scan report for localhost (127.0.0.1) Host is up (0.00081s latency). PORT STATE SERVICE 80/tcp open http |_glab-apache: Apache/2.4.9 (FreeBSD) OpenSSL/1.0.1e-freebsd PHP/5.5.12 Nmap done: 1 IP address (1 host up) scanned in 0.16 seconds
関連項目
- nmap NSEスクリプト
- はじめてのNSEスクリプト
- NSEスクリプトでApacheのバージョンを取得する
ツイート
スポンサーリンク