Bug fixes for Nessus and Nmap parsers

Nessus was not assigning checklists to Oracle Solaris 11 for Sparc architectures.
Nmap was not correctly identifying normal text output files (.nmap)
This commit is contained in:
Jeff Odegard 2019-01-23 09:20:02 -07:00 committed by GitHub
parent 27bbeeca80
commit 0425adacb6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 2 deletions

View File

@ -148,7 +148,8 @@ class nessus_parser extends scan_xml_parser
"cpe:\/o:microsoft:windows_2003_server::sp([\d]).*" => "cpe:/o:microsoft:windows_2003_server:-:sp$1", "cpe:\/o:microsoft:windows_2003_server::sp([\d]).*" => "cpe:/o:microsoft:windows_2003_server:-:sp$1",
"cpe:\/o:microsoft:windows_server_2008:r2::x64.*" => "cpe:/o:microsoft:windows_server_2008:r2", "cpe:\/o:microsoft:windows_server_2008:r2::x64.*" => "cpe:/o:microsoft:windows_server_2008:r2",
"cpe:\/o:redhat:enterprise_linux:([\d]+)::.*" => "cpe:/o:redhat:enterprise_linux:$1", "cpe:\/o:redhat:enterprise_linux:([\d]+)::.*" => "cpe:/o:redhat:enterprise_linux:$1",
"cpe:\/o:sun:sunos:([\d]+)::x([\d]+).*" => "cpe:/o:oracle:solaris:$1", "cpe:\/o:sun:sunos:([\d]+)::.*" => "cpe:/o:oracle:solaris:$1",
"cpe:\/o:vmware:esx_server.*" => "cpe:/o:vmware:esxi:5.0",
"cpe:\/o:centos:centos:([\d]+).*" => "cpe:/o:centos:centos:$1", "cpe:\/o:centos:centos:([\d]+).*" => "cpe:/o:centos:centos:$1",
]; ];

View File

@ -22,6 +22,7 @@
* - Nov 7, 2016 - Added d parameter documentation * - Nov 7, 2016 - Added d parameter documentation
* - Dec 7, 2016 - Added check for "Interesting ports on {IP}" line * - Dec 7, 2016 - Added check for "Interesting ports on {IP}" line
* - Jan 30, 2017 - Updated to use parse_config.ini file, and added populating new targets with shortened os software string if available. * - Jan 30, 2017 - Updated to use parse_config.ini file, and added populating new targets with shortened os software string if available.
* - Jan 21, 2019 - fixed filetype check for .nmap and .gnmap files.
*/ */
$cmd = getopt("f:", ['debug::', 'help::']); $cmd = getopt("f:", ['debug::', 'help::']);
@ -94,7 +95,13 @@ foreach ($lines as $line_num => $line) {
$line = trim($line, "\t\n\r"); # chomp would be nice... $line = trim($line, "\t\n\r"); # chomp would be nice...
$matches = []; $matches = [];
if (!isset($filetype)) { if (!isset($filetype)) {
if (preg_match('/Starting|\-oN/', $line)) { if (preg_match('/\.nmap/', $cmd['f'])) {
$filetype = "text";
}
elseif (preg_match('/\.gnmap/', $cmd['f'])) {
$filetype = "grep";
}
elseif (preg_match('/Starting|\-oN/', $line)) {
$filetype = "text"; $filetype = "text";
} }
elseif (preg_match('/\-oG/', $line)) { elseif (preg_match('/\-oG/', $line)) {