From fe622e182daffe4b3651e9ade691ad91909ae7c5 Mon Sep 17 00:00:00 2001 From: nnposter Date: Fri, 3 Mar 2017 23:41:12 +0000 Subject: [PATCH] Adds 8 new http-enum fingerprints for Hadoop infrastructure components. Originally submitted as NSE scripts by Thomas Debize. (Closes #620) Refactored as entries for http-fingerprints by Varunram Ganesh. (Closes #715) --- CHANGELOG | 3 + nselib/data/http-fingerprints.lua | 139 ++++++++++++++++++++++++++++++ 2 files changed, 142 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index 4f72086bd..5e9784f7c 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,5 +1,8 @@ # Nmap Changelog ($Id$); -*-text-*- +o [GH#620][GH#715][NSE] Added 8 new http-enum fingerprints for Hadoop + infrastructure components. [Thomas Debize, Varunram Ganesh] + o [GH#629][NSE] Added two new fingerprints to http-default-accounts (APC Management Card, older NetScreen ScreenOS) [Steve Benson, nnposter] diff --git a/nselib/data/http-fingerprints.lua b/nselib/data/http-fingerprints.lua index 6ceab7687..ed89e916a 100644 --- a/nselib/data/http-fingerprints.lua +++ b/nselib/data/http-fingerprints.lua @@ -8063,6 +8063,145 @@ table.insert(fingerprints, { } }); +-- Apache Ambari Web UI +table.insert(fingerprints, { + category = 'management', + probes = { + { + path = '/', + method = 'GET' + }, + }, + matches = { + { + match = 'Ambari', + output = 'Apache Ambari WebUI' + } + } + }); + +-- Apache Oozie Web Console +table.insert(fingerprints, { + category = 'management', + probes = { + { + path = '/oozie/', + method = 'GET' + }, + }, + matches = { + { + match = 'Oozie Web Console', + output = 'Apache Oozie Web Console' + } + } + }); + +-- Apache Ranger Web UI +table.insert(fingerprints, { + category = 'management', + probes = { + { + path = '/login.jsp', + method = 'GET' + }, + }, + matches = { + { + match = '%s*Ranger %- Sign In%s*', + output = 'Apache Ranger WebUI' + } + } + }); + +-- Cloudera Hue +table.insert(fingerprints, { + category = 'management', + probes = { + { + path = '/about/', + method = 'GET' + }, + }, + matches = { + { + match = 'Hue™%s(.-)%s[-]%s%s*([^%s<]*)' + .. '.-Hadoop version:.-%s*([^%s<]*)', + output = 'Hadoop YARN Resource Manager version \\2, state "\\1", Hadoop version \\3' + }, + } + }); + +-- Hadoop Node Resource Manager +table.insert(fingerprints, { + category = 'info', + probes = { + { + path = '/node', + method = 'GET' + }, + }, + matches = { + { + match = 'Node Manager Version:.-%s*([^%s<]*)' + .. '.-Hadoop Version:.-%s*([^%s<]*)', + output = 'Hadoop YARN Node Manager version \\1, Hadoop version \\2' + }, + } + }); + table.insert(fingerprints, { category = 'cms', probes = {