diff --git a/nselib/data/http-fingerprints.lua b/nselib/data/http-fingerprints.lua index 3efe35617..ec80d69dd 100644 --- a/nselib/data/http-fingerprints.lua +++ b/nselib/data/http-fingerprints.lua @@ -7128,7 +7128,178 @@ table.insert(fingerprints, { ---- Open Source CMS checks ---- ------------------------------------------------ --- Broad wordpress version identification +-- Wordpress versions (Scraping readme file) +table.insert(fingerprints, { + category = 'cms', + probes = { + { + path = '/readme.html', + method = 'GET' + } + }, + matches = { + { + match = 'WordPress= 1.60 + path = '/administrator/manifests/files/joomla.xml', + method = 'GET' + }, + { + -- Detects version >= 1.50 and <= 1.5.26 + path = '/language/en-GB/en-GB.xml', + method = 'GET' + }, + { + -- Detects version < 1.50 + path = '/modules/custom.xml', + method = 'GET' } }, matches = { { match = '(.-)', - output = 'Joomla! ' + output = 'Joomla version \\1' } } }); @@ -8507,6 +8701,24 @@ table.insert(fingerprints, { } }); +-- Drupal version +table.insert(fingerprints, { + category = 'cms', + probes = { + { + -- Must be executed on both ports 80, 443 for accurate results + path = '/', + method = 'GET' + } + }, + matches = { + { + match = '