久久综合伊人噜噜色,日本三级香港三级人妇电影精品,亚洲中文色资源,国产高清一区二区三区人妖

      <small id="r7w9x"></small>
          <td id="r7w9x"></td><sub id="r7w9x"><menu id="r7w9x"><samp id="r7w9x"></samp></menu></sub>
        1. <th id="r7w9x"></th>
          1.  找回密碼
             注冊

            QQ登錄

            只需一步,快速開始

            冰河淺析 - 揭開木馬的神秘面紗(上)

            [復制鏈接]
            1#
            發(fā)表于 2011-1-13 17:02:16 | 只看該作者 |倒序瀏覽 |閱讀模式
            在網(wǎng)上,大家最關(guān)心的事情之一就是木馬:最近出了新的木馬嗎?木馬究竟能實現(xiàn)哪些功能?木馬如何防治?木馬究竟是如何工作的?本文試圖以我國最著名的木馬之一 冰河為例,向大家剖析木馬的基本原理,為大家揭開木馬的神秘面紗。
            " N+ s0 R9 z  n5 Z3 u- ~  Q3 E
            # s. m" Z& Q& t# ?& F! w- r  木馬冰河是用C++Builder寫的,為了便于大家理解,我將用相對比較簡單的VB來說明它,其中涉及到一些WinSock編程和Windows API的知識,如果你不是很了解的話,請去查閱相關(guān)的資料。
            # y( B9 L* a8 ^+ b4 @  q4 R' I& l0 K1 l7 h4 U) y, H
                               一、基礎(chǔ)篇(揭開木馬的神秘面紗)
            . I! K- q/ G/ D' b: h) N0 S/ P0 Y' j% T* A
              無論大家把木馬看得多神秘,也無論木馬能實現(xiàn)多么強大的功能,木馬,其實質(zhì)只是一個網(wǎng)絡(luò)客戶/服務(wù)程序。那么,就讓我們從網(wǎng)絡(luò)客戶/服務(wù)程序的編寫開始。' q0 }; X  {& k9 J% ]; R
              1.基本概念:3 k: i$ z; c! L  _5 A/ F
               網(wǎng)絡(luò)客戶/服務(wù)模式的原理是一臺主機提供服務(wù)(服務(wù)器),另一臺主機接受服務(wù)(客戶機)。作為服務(wù)器的主機一般會打開一個默認的端口并進行監(jiān)聽(Listen), 如果有客戶機向服務(wù)器的這一端口提出連接請求(Connect Request), 服務(wù)器上的相應(yīng)程序就會自動運行,來應(yīng)答客戶機的請求,這個程序我們稱為守護進程(UNIX的術(shù)語,不過已經(jīng)被移植到了MS系統(tǒng)上)。對于冰河,被控制端就成為一臺服務(wù)器,控制端則是一臺客戶機,G_server.exe是守護進程, G_client是客戶端應(yīng)用程序。(這一點經(jīng)常有人混淆,而且往往會給自己種了木馬!甚至還有人跟我爭得面紅耳赤,昏倒!!)
            ' w( y6 s, O+ y4 Q; G; ^$ F1 v   
            + S4 t$ p4 o: L8 w  2.程序?qū)崿F(xiàn):
            " ?9 p% U( U1 ]! y: I2 u; f   在VB中,可以使用Winsock控件來編寫網(wǎng)絡(luò)客戶/服務(wù)程序, 實現(xiàn)方法如下:' y$ G, w) P$ w- u* Q  ^3 ^
               (其中,G_Server和G_Client均為Winsock控件)) c$ [; K' o% S9 R3 [  @
               服務(wù)端:2 n! r7 b& D$ h; ?' d+ D) e
               G_Server.LocalPort=7626(冰河的默認端口,可以改為別的值)
            " G! L- U" t7 m7 `   G_Server.Listen(等待連接)
            * L( f' p- r5 r. B! ^$ e   ( K" x" e/ Z% E. _; O
               客戶端:
            % G1 N* y/ W; h4 |, b   G_Client.RemoteHost=ServerIP(設(shè)遠端地址為服務(wù)器地址)
            8 l# d. t+ p! S   G_Client.RemotePort=7626  (設(shè)遠程端口為冰河的默認端口,呵呵,知道嗎?這是冰河的生日哦)) g6 R; `+ u7 c/ f* l& p7 F& v
               (在這里可以分配一個本地端口給G_Client, 如果不分配, 計算機將會自動分配一個, 建議讓計算機自動分配)- i7 w' ^5 y; y  ]' `- d
               G_Client.Connect      (調(diào)用Winsock控件的連接方法)2 s) B) g7 m3 f! A' r
               
            & E' |& M! {5 x& k+ b   一旦服務(wù)端接到客戶端的連接請求ConnectionRequest,就接受連接5 ]; t: _  e8 N+ A& `
               Private Sub G_Server_ConnectionRequest(ByVal requestID As Long)5 y$ u1 j6 I& K- t; \$ F; O/ o1 A
                   G_Server.Accept requestID
              c# Y& ]/ R( z   End Sub, g/ K1 c$ Y5 p# [. ?. e7 a& C; N
               
            ' l6 v/ \3 Y4 J0 D# s   客戶機端用G_Client.SendData發(fā)送命令,而服務(wù)器在G_Server_DateArrive事件中接受并執(zhí)行命令(幾乎所有的木馬功能都在這個事件處理程序中實現(xiàn))
            # F# I% c' D% m
            2 f# @  V8 P4 s" \) i   如果客戶斷開連接,則關(guān)閉連接并重新監(jiān)聽端口   3 c$ V+ q! v  ~. d% L
               Private Sub G_Server_Close()
            4 W9 O/ f4 D/ V       G_Server.Close  (關(guān)閉連接)9 }. O% O" x. H+ i( W& e
                   G_Server.Listen (再次監(jiān)聽)
            & A- a% ~- b  D; F( P  N   End Sub
              ]! ?4 S6 |" j2 l/ @0 m" O8 c/ k6 [
            ) x5 p* D9 D1 L. Q   其他的部分可以用命令傳遞來進行,客戶端上傳一個命令,服務(wù)端解釋并執(zhí)行命令......- E+ ~8 B+ [: p
                ' `, l0 f" G- F* t3 R1 y; n
            ( }- ~# F( f4 r: f9 _
            您需要登錄后才可以回帖 登錄 | 注冊

            本版積分規(guī)則

            QQ|本地廣告聯(lián)系: QQ:905790666 TEL:13176190456|Archiver|手機版|小黑屋|汶上信息港 ( 魯ICP備19052200號-1 )

            GMT+8, 2025-6-25 04:59

            Powered by Discuz! X3.5

            © 2001-2025 Discuz! Team.

            快速回復 返回頂部 返回列表