From 9632f8251ab4b5bb0358b399056ac757aebfd821 Mon Sep 17 00:00:00 2001 From: HD Moore Date: Mon, 22 Mar 2010 00:09:04 +0000 Subject: [PATCH] Move OS-level fingerprints out, report note-level fingerprints instead git-svn-id: file:///home/svn/framework3/trunk@8869 4d416f70-5f16-0410-b530-b9f4589650da --- .../auxiliary/scanner/http/http_version.rb | 2 +- modules/auxiliary/scanner/smb/smb_version.rb | 11 ++++-- modules/auxiliary/scanner/ssh/ssh_version.rb | 35 ------------------- 3 files changed, 10 insertions(+), 38 deletions(-) diff --git a/modules/auxiliary/scanner/http/http_version.rb b/modules/auxiliary/scanner/http/http_version.rb index aa4d5a78ff..1012408a61 100644 --- a/modules/auxiliary/scanner/http/http_version.rb +++ b/modules/auxiliary/scanner/http/http_version.rb @@ -99,7 +99,7 @@ class Metasploit3 < Msf::Auxiliary extras << "Windows SBS #{$1}" when /Asterisk@Home/ - extras << "Asterix" + extras << "Asterisk" when /swfs\/Shell\.html/ extras << "BPS-1000" diff --git a/modules/auxiliary/scanner/smb/smb_version.rb b/modules/auxiliary/scanner/smb/smb_version.rb index c1f63cc43f..87556ce454 100644 --- a/modules/auxiliary/scanner/smb/smb_version.rb +++ b/modules/auxiliary/scanner/smb/smb_version.rb @@ -95,14 +95,21 @@ class Metasploit3 < Msf::Auxiliary ) conf = { - :host => ip, :os_flavor => res['os'], :os_name => os } - conf[:os_sp] = res['sp'] if res['os'] =~ /Windows/ + conf[:os_sp] = res['sp'] if res['sp'] conf[:os_lang] = res['lang'] if res['os'] =~ /Windows/ + report_note( + :host => ip, + :port => info[0], + :proto => 'tcp', + :ntype => 'smb.fingerprint', + :data => conf + ) + report_host(conf) else diff --git a/modules/auxiliary/scanner/ssh/ssh_version.rb b/modules/auxiliary/scanner/ssh/ssh_version.rb index b6366b092a..e6c1b4f95c 100644 --- a/modules/auxiliary/scanner/ssh/ssh_version.rb +++ b/modules/auxiliary/scanner/ssh/ssh_version.rb @@ -46,41 +46,6 @@ class Metasploit3 < Msf::Auxiliary ver,msg = (ver.split(/(\n|\r)/)) print_status("#{target_host}:#{rport}, SSH server version: #{ver}") report_service(:host => rhost, :port => rport, :name => "ssh", :info => ver) - - os_name = nil - os_flav = nil - case ver - when /ubuntu/i - os_name = 'Linux' - os_flav = 'Ubuntu' - when /debian/i - os_name = 'Linux' - os_flav = 'Debian' - when /sun_ssh/i - os_name = 'Solaris' - when /vshell|remotelyanywhere|freessh/i - os_name = 'Windows' - when /vshell/i - os_name = 'Windows' - when /radware/i - os_name = 'Radware' - when /dropbear/i - os_name = 'Linux' - when /netscreen/i - os_name = 'NetScreen' - when /cisco|vpn3/i - os_name = 'Cisco' - when /mpSSH/ - os_name = 'HP iLO' - os_flav = 'HP Integrated Lights-Out Controller' - end - - if(os_name || os_flav) - info = {:host => target_host} - info[:os_flavor] = os_flav if os_flav - info[:os_name] = os_name if os_name - report_host(info) - end else print_status("#{target_host}:#{rport}, SSH server version detection failed!") end