91精品人妻互换日韩精品久久影视|又粗又大的网站激情文学制服91|亚州A∨无码片中文字慕鲁丝片区|jizz中国无码91麻豆精品福利|午夜成人AA婷婷五月天精品|素人AV在线国产高清不卡片|尤物精品视频影院91日韩|亚洲精品18国产精品闷骚

您當(dāng)前位置:首頁(yè) > 新聞?lì)l道 > 技術(shù)動(dòng)態(tài) > 正文
簡(jiǎn)析“黑客”程序
只要掌握了原理,你也能寫(xiě)出一個(gè)所謂的“黑客”程序。下面筆者帶領(lǐng)大家用VB親自編寫(xiě)一個(gè)遠(yuǎn)程控制程序。從而揭開(kāi)它的神秘面紗。

  一、所用控件

  在程序中將使用Winsock控件。Winsock控件是一個(gè)ActiveX控件,使用TCP協(xié)議或UDP協(xié)  
議連接到遠(yuǎn)程計(jì)算機(jī)上并與之交換數(shù)據(jù)。和定時(shí)器控件一樣,Winsock控件在運(yùn)行時(shí)是不可見(jiàn)的。Winsock的工作原理是:客戶端向服務(wù)器端發(fā)出連接請(qǐng)求,服務(wù)器端則不停地監(jiān)聽(tīng)客戶端的請(qǐng)求,當(dāng)兩者的協(xié)議溝通時(shí),客戶端和服務(wù)器端之間就建立了連接,這時(shí)客戶端和服務(wù)器端就可以實(shí)現(xiàn)雙向數(shù)據(jù)傳輸。實(shí)際編程中,必須分別建立一個(gè)服務(wù)器端應(yīng)用程序和一個(gè)客戶端應(yīng)用程序,兩個(gè)應(yīng)用程序中分別有自己的Winsock控件。首先設(shè)置Winsock控件使用的協(xié)議,這里我們使用TCP協(xié)議,F(xiàn)在,讓我們開(kāi)始用VB建立兩個(gè)程序,一個(gè)是客戶端程序myclient,另一個(gè)是服務(wù)器端程序myserver。

  二、編寫(xiě)客戶端程序

  首先來(lái)建客戶端程序myclient。在myclient程序中建立一個(gè)窗體,加載Winsock控件,稱為tcpclient,表示使用的是TCP協(xié)議,再加入兩個(gè)文本框(text1和text2),用來(lái)輸入服務(wù)器的IP地址和端口號(hào),然后建立一個(gè)按鈕(cd1),用來(lái)建立連接,按下之后就可以對(duì)連接進(jìn)行初始化了,代碼如下:

  private sub cd1_click()

  tcpclient.romotehost=text1.text

  tcpclient.romoteport=val(text2.text)'端口號(hào),缺省為1001

  tcpclient.connect '調(diào)用connect方法,與指定IP地址的計(jì)算機(jī)進(jìn)行連接

  cd1.enabled=false

  end sub

  連接之后就是如何處理所收到的數(shù)據(jù)的問(wèn)題了?蛻舳撕头⻊(wù)器端建立連接后,如果有任何一端接收到新的數(shù)據(jù),就會(huì)觸發(fā)該端winsock控件的dataarrival事件,在響應(yīng)這個(gè)事件時(shí),可以使用getdata方法獲得發(fā)送來(lái)的數(shù)據(jù)。比如可以在tcpclient的dataarrival事件中編寫(xiě)代碼如下:

  private sub tcpclient_dataarrival(byval bytestotal as long)

  dim x as string

  tcpclient.getdata x '使用getdata獲得發(fā)送來(lái)的數(shù)據(jù)

  .......

  End sub

  后面的省略部分表示對(duì)接收到的數(shù)據(jù)進(jìn)行的具體處理,讀者可以根據(jù)實(shí)際情況編寫(xiě)。



  三、編寫(xiě)服務(wù)器端程序

  先建立一個(gè)窗體,加載Winsock控件,名稱為tcpserver。另外在窗體上加入一個(gè)文本框text1用來(lái)顯示客戶機(jī)的IP地址和客戶機(jī)發(fā)送過(guò)來(lái)的數(shù)據(jù)信息。

  當(dāng)客戶端程序運(yùn)行時(shí),在客戶端程序按下連接按鈕后,客戶端向服務(wù)器端程序請(qǐng)求連接,這時(shí)服務(wù)器端的connectionrequest事件被觸發(fā),所以服務(wù)器端程序要解決連接問(wèn)題,可以使用connectionrequest事件完成此功能。代碼如下:

  '在窗體的load事件中對(duì)tcpserver控件進(jìn)行初始化

  private sub form_load()

  tcpserver.localport=1001

  tcpserver.listen '把服務(wù)器置于監(jiān)聽(tīng)檢測(cè)狀態(tài)

  end sub

  '服務(wù)器端接收到客戶端的連接請(qǐng)求,首先檢查當(dāng)前狀態(tài)是否處于連接關(guān)閉狀態(tài)

  Private sub tcpclient_connectionrequest(Byval requestID as long)

  If tcpserver.state<>sckclosed then '檢查控件的state屬性是否為關(guān)閉

  Tcpserver.close '

  Tcpserver.accept requestID '

  End if

  End sub

  現(xiàn)在我們?cè)诜⻊?wù)器端程序tcpserver的dataarrival事件中添加以下代碼,以便讓服務(wù)器端程序可以接收客戶機(jī)端的指令,并運(yùn)行相應(yīng)的程序。

  四、測(cè)試遠(yuǎn)程控制程序

  現(xiàn)在,你就可以將這兩個(gè)程序分別運(yùn)行于兩臺(tái)使用TCP/IP協(xié)議聯(lián)網(wǎng)的機(jī)器了。在客戶機(jī)端你按下連接按鈕,再輸入“c:mmand.com”,可以看到在服務(wù)器端立刻打開(kāi)一個(gè)DOS窗口,設(shè)想一下,如果它運(yùn)行一些破壞性的命令會(huì)發(fā)生什么事情?這就是一個(gè)最基本的遠(yuǎn)程控制程序。當(dāng)然,真正的黑客程序要復(fù)雜得多,但基本原理是相同的,F(xiàn)在你該恍然大悟了吧?
關(guān)鍵字:通訊
About Us - 關(guān)于我們 - 服務(wù)列表 - 付費(fèi)指導(dǎo) - 媒體合作 - 廣告服務(wù) - 版權(quán)聲明 - 聯(lián)系我們 - 網(wǎng)站地圖 - 常見(jiàn)問(wèn)題 - 友情鏈接
Copyright©2014安裝信息網(wǎng) www.78375555.com. All rights reserved.
服務(wù)熱線:4000-293-296 聯(lián)系電話:0371-61311617 傳真:0371-55611201 QQ: 郵箱:zgazxxw@126.com 豫ICP備18030500號(hào)-4
未經(jīng)過(guò)本站允許,請(qǐng)勿將本站內(nèi)容傳播或復(fù)制
安全聯(lián)盟認(rèn)證