Land #5555, @Th3R3p0's support for for RFB Version 4

bug/bundler_fix
jvazquez-r7 2015-06-19 14:15:04 -05:00
commit 34d5d92646
No known key found for this signature in database
GPG Key ID: 38D99152B9352D83
3 changed files with 10 additions and 5 deletions

View File

@ -24,7 +24,7 @@ class Client
@opts = opts
@banner = nil
@majver = MajorVersion
@majver = MajorVersions
@minver = -1
@auth_types = []
end
@ -50,7 +50,7 @@ class Client
if @banner =~ /RFB ([0-9]{3})\.([0-9]{3})/
maj = $1.to_i
if maj != MajorVersion
unless MajorVersions.include?(maj)
@error = "Invalid major version number: #{maj}"
return false
end
@ -61,7 +61,12 @@ class Client
@minver = $2.to_i
our_ver = "RFB %03d.%03d\n" % [MajorVersion, @minver]
# Forces version 3 to be used. This adds support for version 4 servers.
# It may be necessary to hardcode minver as well.
# TODO: Add support for Version 4.
# Version 4 adds additional information to the packet regarding supported
# authentication types.
our_ver = "RFB %03d.%03d\n" % [3, @minver]
@sock.put(our_ver)
true

View File

@ -19,7 +19,7 @@ module RFB
DefaultPort = 5900
# Version information
MajorVersion = 3
MajorVersions = [3, 4]
# NOTE: We will emulate whatever minor version the server reports.
# Security types

View File

@ -21,7 +21,7 @@ class Metasploit3 < Msf::Auxiliary
'Description' => %q{
This module will test a VNC server on a range of machines and
report successful logins. Currently it supports RFB protocol
version 3.3, 3.7, and 3.8 using the VNC challenge response
version 3.3, 3.7, 3.8 and 4.001 using the VNC challenge response
authentication method.
},
'Author' =>