1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-15 12:19:02 +00:00

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)
This commit is contained in:
nnposter
2017-03-03 23:41:12 +00:00
parent 1164a8e7df
commit fe622e182d
2 changed files with 142 additions and 0 deletions

View File

@@ -1,5 +1,8 @@
# Nmap Changelog ($Id$); -*-text-*- # 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 o [GH#629][NSE] Added two new fingerprints to http-default-accounts
(APC Management Card, older NetScreen ScreenOS) [Steve Benson, nnposter] (APC Management Card, older NetScreen ScreenOS) [Steve Benson, nnposter]

View File

@@ -8063,6 +8063,145 @@ table.insert(fingerprints, {
} }
}); });
-- Apache Ambari Web UI
table.insert(fingerprints, {
category = 'management',
probes = {
{
path = '/',
method = 'GET'
},
},
matches = {
{
match = '<title>Ambari</title>',
output = 'Apache Ambari WebUI'
}
}
});
-- Apache Oozie Web Console
table.insert(fingerprints, {
category = 'management',
probes = {
{
path = '/oozie/',
method = 'GET'
},
},
matches = {
{
match = '<title>Oozie Web Console</title>',
output = 'Apache Oozie Web Console'
}
}
});
-- Apache Ranger Web UI
table.insert(fingerprints, {
category = 'management',
probes = {
{
path = '/login.jsp',
method = 'GET'
},
},
matches = {
{
match = '<title>%s*Ranger %- Sign In%s*</title>',
output = 'Apache Ranger WebUI'
}
}
});
-- Cloudera Hue
table.insert(fingerprints, {
category = 'management',
probes = {
{
path = '/about/',
method = 'GET'
},
},
matches = {
{
match = 'Hue&trade;%s(.-)%s[-]%s<a href="http://gethue%.com"',
output = 'Cloudera Hue \\1'
}
}
});
-- Cloudera Manager login page
table.insert(fingerprints, {
category = 'management',
probes = {
{
path = '/cmf/login',
method = 'GET'
},
},
matches = {
{
match = 'var%s+clouderaManager%s*=%s*{.-version:%s*\'(.-)\'',
output = 'Cloudera Manager version \\1 '
}
}
});
-- Hadoop MapReduce JobHistory WebUI
table.insert(fingerprints, {
category = 'management',
probes = {
{
path = '/jobhistory',
method = 'GET'
},
},
matches = {
{
match = '<title>%s*JobHistory%s*</title>',
output = 'Hadoop MapReduce JobHistory WebUI'
}
}
});
-- Hadoop YARN Resource Manager
table.insert(fingerprints, {
category = 'management',
probes = {
{
path = '/cluster/cluster',
method = 'GET'
},
},
matches = {
{
match = 'ResourceManager state:.-<td>%s*([^%s<]*)'
.. '.-ResourceManager version:.-<td>%s*([^%s<]*)'
.. '.-Hadoop version:.-<td>%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:.-<td>%s*([^%s<]*)'
.. '.-Hadoop Version:.-<td>%s*([^%s<]*)',
output = 'Hadoop YARN Node Manager version \\1, Hadoop version \\2'
},
}
});
table.insert(fingerprints, { table.insert(fingerprints, {
category = 'cms', category = 'cms',
probes = { probes = {