Headline
CVE-2022-36436: Fix CVE-2022-36436 - Authentication bypass in RFB security handshake … · osuosl/twisted_vncauthproxy@edc149a
OSU Open Source Lab VNCAuthProxy through 1.1.1 is affected by an vncap/vnc/protocol.py VNCServerAuthenticator authentication-bypass vulnerability that could allow a malicious actor to gain unauthorized access to a VNC session or to disconnect a legitimate user from a VNC session. A remote attacker with network access to the proxy server could leverage this vulnerability to connect to VNC servers protected by the proxy server without providing any authentication credentials. Exploitation of this issue requires that the proxy server is currently accepting connections for the target VNC server.
@@ -13,6 +13,9 @@ def write(self, data): def loseConnection(self): self.lost = True
def pauseProducing(self): pass
class TestVNCServerAuthenticator(unittest.TestCase):
def setUp(self): @@ -29,9 +32,20 @@ def test_connectionMade(self): def test_check_version(self): self.t.buf = “” self.p.check_version(“RFB 003.008\n”) self.assertEqual(self.t.buf, “\x02\x01\x02”) self.assertEqual(self.t.buf, “\x01\x02”)
def test_check_invalid_version(self): self.t.buf = “” self.p.check_version(“RFB 002.000\n”) self.assertTrue(self.t.lost)
def test_select_security_type_none(self): self.t.buf = “” self.p.select_security_type(“\x01”) self.assertTrue(self.t.lost)
def test_select_security_type_vnc_auth(self): self.t.buf = “” self.p.select_security_type(“\x02”) self.assertFalse(self.t.lost) self.assertEqual(len(self.t.buf), 16)
Related news
OSU Open Source Lab VNCAuthProxy through 1.1.1 is affected by an vncap/vnc/protocol.py VNCServerAuthenticator authentication-bypass vulnerability that could allow a malicious actor to gain unauthorized access to a VNC session or to disconnect a legitimate user from a VNC session. A remote attacker with network access to the proxy server could leverage this vulnerability to connect to VNC servers protected by the proxy server without providing any authentication credentials. Exploitation of this issue requires that the proxy server is currently accepting connections for the target VNC server.