端口掃描程序設(shè)計(jì)匯總_第1頁(yè)
端口掃描程序設(shè)計(jì)匯總_第2頁(yè)
端口掃描程序設(shè)計(jì)匯總_第3頁(yè)
端口掃描程序設(shè)計(jì)匯總_第4頁(yè)
端口掃描程序設(shè)計(jì)匯總_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、網(wǎng)絡(luò)安全程序設(shè)計(jì)結(jié)課論文端口掃描程序設(shè)計(jì)目錄第一章 序言 3.第二章 系統(tǒng)設(shè)計(jì) 5.2.1 運(yùn)行環(huán)境及語(yǔ)言 5.2.2 系統(tǒng)功能 6.2.3 程序運(yùn)行流程圖 6.2.4 程序設(shè)計(jì)過(guò)程 6.2.41 創(chuàng)建工程 6.2.42 主機(jī)端口掃描程序設(shè)計(jì)流程 8.2.43 主要代碼 9.2.5 運(yùn)行結(jié)果測(cè)試 1.4.第三章 總結(jié)及心得 1.5.3.1 總結(jié) 1.5.3.2 心得體會(huì) 1.5.第四章 參考文獻(xiàn) 1.5.第一章 序言1.1 背景Internet 快速的發(fā)展,為我們帶來(lái)了方便同時(shí)也帶給了我們信 息安全擔(dān)憂。在計(jì)算機(jī)信息安全管理中可以通過(guò)端口掃描收集系統(tǒng) 的信息來(lái)自動(dòng)監(jiān)測(cè)遠(yuǎn)程或本地主機(jī)安全性弱點(diǎn)的

2、程序,可以發(fā)現(xiàn)遠(yuǎn) 程服務(wù)器的各種 tcp 端口的分配及提供的服務(wù)與他們的軟件版本。 從而讓管理員間接的或直觀的了解到遠(yuǎn)程主機(jī)所存在的安全問(wèn)題。 從而端口掃描技術(shù)得到人們的重視。1.2 目的 該文章對(duì)端口掃描技術(shù)的原理和應(yīng)用進(jìn)行了闡述,并設(shè)計(jì)了一 個(gè)簡(jiǎn)單的基于 windows 平臺(tái)上的端口掃描系統(tǒng)。 此程序主要完成了 TCP connect()掃描和 UDP掃描功能。TCP掃描支持多線程, 能對(duì)單 個(gè)指定的主機(jī)進(jìn)行掃描或?qū)χ付ňW(wǎng)段內(nèi)的主機(jī)進(jìn)行逐個(gè)掃描。能掃 描特定的部分端口號(hào)或?qū)χ付ǖ亩丝诙蝺?nèi)的端口進(jìn)行逐個(gè)掃描。此 端口掃描程序能快速地進(jìn)行 TCP 掃描,準(zhǔn)確地檢測(cè)出對(duì) TCP 協(xié)議 開(kāi)放的端口

3、。而對(duì)于 UDP 掃描只支持單線程,速度較慢。掃描結(jié) 果以列表的形式直觀地展現(xiàn)出來(lái)。1.3 端口掃描概述 網(wǎng)絡(luò)安全探測(cè)在網(wǎng)絡(luò)安全中起著主動(dòng)防御的作用,占有非常重要的地位。網(wǎng)絡(luò)安全探測(cè)的所有功能都是建立在端口掃描的基礎(chǔ) 上,所以對(duì)端口掃描技術(shù)的研究有著非常重要的現(xiàn)實(shí)意義。每一個(gè)網(wǎng)絡(luò)主機(jī)都相當(dāng)于一個(gè)“房間” ,黑客能否進(jìn)入“房間” , 取決于是否發(fā)現(xiàn)了打開(kāi)的“門窗” 。也就是說(shuō),能否入侵網(wǎng)絡(luò)主機(jī), 或者網(wǎng)絡(luò)主機(jī)是否安全,關(guān)鍵在于能否查出網(wǎng)絡(luò)主機(jī)的系統(tǒng)信息。 而端口是主機(jī)與外界通訊交流的數(shù)據(jù)出入口,即是“門窗” 。端口 分為硬件端口和軟件端口,所謂硬件端口又稱為接口,包括: USB 端口、串行端口、

4、并行端口等。軟件端口一般指網(wǎng)絡(luò)中面向連接服 務(wù) (TCP)和無(wú)連接服務(wù) (UDP)的通訊協(xié)議的端口。 一個(gè)端口就是一個(gè) 潛在的通信通道,也就是一個(gè)入侵通道。對(duì)目標(biāo)計(jì)算機(jī)進(jìn)行端口掃 描,能得到許多有用的信息。 通過(guò)端口掃描, 發(fā)現(xiàn)系統(tǒng)的安全漏洞。 它使系統(tǒng)用戶了解系統(tǒng)目前向外界提供了哪些服務(wù),從而為系統(tǒng)用 戶管理網(wǎng)絡(luò)提供了一種手段1.4 端口掃描的原理端口有兩種, UDP端口和 TCP端口。由于 UDP 端口是面向無(wú) 連接的,從原理的角度來(lái)看,沒(méi)有被掃描的可能,或者說(shuō)不存在一 種 迅 速 而 又 通 用 的 掃 描 算 法 ; 而 TCP 端 口 具 有 連 接 定 向 ( Connection

5、 Oriented)的特性(即是有面向連接的協(xié)議) ,為端口 的掃描提供了基礎(chǔ)。TCP 建立連接時(shí)有三次握手:首先, Client 端往 Server 某一端 口發(fā)送請(qǐng)求連接的 SYN 包,如果 Server 的這一端口允許連接,就 會(huì)給 Client 端發(fā)一個(gè) ACK 回包, Client 端收到 Server的 ACK 包后 再給 Server端發(fā)一個(gè) ACK 包, TCP 連接正式建立,這就是連接成 功的過(guò)程。 當(dāng) Client 端往 Server 某一端口發(fā)送請(qǐng)求連接的 SYN 包, 此時(shí)若 Server 的這一端口不允許連接, 就會(huì)給 Client 端發(fā)一個(gè) RST 回包, Clie

6、nt 端收到 Server 的 RST 包后再給 Server 端發(fā)一個(gè) RST 包,這就是連接失敗的過(guò)程?;谶B接的建立過(guò)程,可以想到,假 如要掃描某一個(gè) TCP端口,可以往該端口發(fā)一個(gè) SYN 包,如果該 端口處于打開(kāi)狀態(tài), 我們就可以收到一個(gè) ACK ,也就是說(shuō), 如果收 到 ACK ,就可以判斷目標(biāo)端口處于打開(kāi)狀態(tài), 否則,目標(biāo)端口處于 關(guān)閉狀態(tài)。這就是 TCP 端口掃描的基本原理第二章 系統(tǒng)設(shè)計(jì)2.1 運(yùn)行環(huán)境及語(yǔ)言運(yùn)行環(huán)境: Visual C+ 6.0語(yǔ)言: c+2.2 系統(tǒng)功能簡(jiǎn)易的 TCP connect()掃描,支持多線程; UDP 掃描功能;能對(duì)單個(gè)指定的主機(jī)進(jìn)行掃描或掃描

7、指定網(wǎng)段內(nèi)的主機(jī);能掃描特定的部分端口號(hào)或?qū)χ付ǖ亩丝诙蝺?nèi)的端口進(jìn)行逐個(gè)掃2.3 程序運(yùn)行流程圖否2.4 程序設(shè)計(jì)過(guò)程2.41 創(chuàng)建工程使用 VC+的應(yīng)用程序生成向?qū)?(MFC AppWizardexe) 創(chuàng)建一個(gè) 基于對(duì)話框的工程, 該工程的名稱 201200824420fandi,如圖 所示:?jiǎn)螕舸_定, 然后選擇基本對(duì)話框,如圖所示點(diǎn)擊下一步,再在 Windows SocketsW前打上勾,支持 Winsock 編程,如圖7接下來(lái)一直選擇默認(rèn)直到完成。2.42 主機(jī)端口掃描程序設(shè)計(jì)流程1. 設(shè)計(jì)對(duì)話框82按Ctrl+W 打開(kāi)類向?qū)?,添加變量如圖2.43 主要代碼1.在頭文件 findpor

8、t100114019Dlg.h里添加 private:SOCKET Socket;2. findport100114019Dlg.cpp文件中添加如下文件包含信息:#pragma comment (lib,ws2_32.lib) / 靜態(tài)鏈接庫(kù)#include 3.編寫 Tcpscan按鈕下的代碼 如下:UpdateData(true); /MFC 窗口函數(shù),用來(lái)刷新 數(shù)據(jù)WSADATA WSAData;CString str; if(WSAStartup(MAKEWORD(2,2),&WSAData)!=0) MessageBox(初始化 Winsock失敗 !);return;Socket

9、=socket(AF_INET,SOCK_STREAM,0);/創(chuàng)建連接套接字if(Socket=INVALID_SOCKET)MessageBox(創(chuàng)建 Socket失敗 !);WSACleanup();return;int IpAddress; /判斷域名或 IP 地址int i=0;CString r;m_ip.GetWindowText(r);IpAddress=inet_addr(r);if(IpAddress=INADDR_NONE)hostent* pHostent=gethostbyname(str);if(pHostent)IpAddress=(*(in_addr*)pHos

10、tent-h_addr).s_addr;if (m_port1m_port2)MessageBox(請(qǐng)確保起始 Port 不大于終止 port);WSACleanup();return;struct sockaddr_in desthost;/ 定義套接字地址memset(& desthost,0,sizeof(desthost);desthost.sin_family=AF_INET;/desthost.sin_port=htons(atoi(m_Port);desthost.sin_addr.s_addr=IpAddress; for(unsigned int a =m_port1;ah_

11、addr).s_addr;/*if (m_port1m_port2)MessageBox(請(qǐng)確保起始 Port 不大于終止 port);WSACleanup();return;*/struct sockaddr_in desthost;/ 定義套接字地址memset(&desthost,0,sizeof(desthost);desthost.sin_family=AF_INET; /desthost.sin_port=htons(atoi(m_Port); desthost.sin_addr.s_addr=IpAddress;for(unsigned int a =m_port1;a=m_po

12、rt2;a+) desthost.sin_port=htons(a); char *SendBuf;SendBuf=new char2; memset(SendBuf,0,2);int nSend=sendto(Socket,SendBuf,1,0,( struct sockaddr*)&desthost,sizeof(desthost);if(nSend=SOCKET_ERROR)MessageBox(UDP 包發(fā)送失??! ); closesocket(Socket);WSACleanup();return;Sleep(500);sockaddr_in SourceHost;int Sour

13、ceSize;SourceSize=sizeof(SourceHost); memset(&SourceHost,0,SourceSize);char *RecvBuf;RecvBuf=new char2; memset(RecvBuf,0,2);int nRecv; nRecv=recvfrom(Socket,RecvBuf,1,0,(struct sockaddr*)&SourceHost,&SourceSize);12if(nRecv=SOCKET_ERROR)int ErrorCode=GetLastError();if(ErrorCode=10054)str.Format(%d,a)

14、; m_status+=UDP Port; m_status+=str; m_status+=: Closern; if(ErrorCode=10035)str.Format(%d,a); m_status+=UDP Port; m_status+=str; m_status+=: openrn;elsem_status+=UDP Port; m_status+=a;m_status+=: openrn;/釋放套接字綁定UpdateData(false); closesocket(Socket); WSACleanup();132.5 運(yùn)行結(jié)果測(cè)試如圖:14第三章 總結(jié)及心得3.1 總結(jié)端口掃描是綜合掃描器最基礎(chǔ)的功能,也是黑客攻擊的基本步 驟,因此,掌握端口掃描的常用技術(shù)和防范措施對(duì)維護(hù)系統(tǒng)安全有 重要作用。 端口掃描不僅可以得知系統(tǒng)哪些端口開(kāi) 放,還可以根據(jù) 系統(tǒng)的響應(yīng)信息得知目標(biāo)系統(tǒng)的相關(guān)信息。由于不同系統(tǒng)網(wǎng)絡(luò)協(xié)議 棧的實(shí)現(xiàn) 細(xì)節(jié)有差別, 對(duì)不同的系統(tǒng)得到的掃描結(jié)果可能不同, 這 在秘密掃描

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論