《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 網絡端口掃描及對策研究

網絡端口掃描及對策研究

2008-09-19
作者:武 裝

??? 摘? 要: 分析了端口掃描的原理和常用方法,并提出相應檢測、處理方法。?

????關鍵詞: 安全防護? 端口? 端口掃描

?

??? 隨著網絡在學校教學、科研、管理各個方面的應用,網絡用戶資源的安全防護要求日益迫切。網絡上充斥著各種各樣的良性、惡性信息,其中端口掃描信息最應引起網絡管理人員和用戶的警覺和注意,因為一個端口就是一個潛在的通信通道,也就是一個入侵通道。對目標計算機進行端口掃描,能得到許多有用的信息,同時也往往是一次入侵的前奏。最近流行的“沖擊波”病毒就是通過對主機135、4444端口掃描,利用RPC服務的漏洞進一步對主機進行攻擊。?

1 掃描器的基本工作原理?

??? 進行掃描的方法很多,可以手工進行掃描,但主要是使用端口掃描軟件(掃描器)進行。掃描器是一種自動檢測遠程或本地主機安全性弱點的程序,通過使用掃描器可以不留痕跡的發現遠程服務器的各種TCP端口的分配及提供的服務和它們的軟件版本。這就能間接的或直觀的了解到遠程主機所存在的安全問題。 ?

??? 掃描器通過選用遠程TCP/IP不同的端口的服務,并記錄目標給予的回答,通過這種方法,可以搜集到很多關于目標主機的各種有用的信息(比如:是否能用匿名登陸,是否有可寫的FTP目錄,是否能用TELNET,HTTPD是否用ROOT在運行。) ?

??? 掃描器并不是一個直接的攻擊網絡漏洞的程序,它僅僅能幫助我們發現目標機的某些內在的弱點。一個好的掃描器能對它得到的數據進行分析,幫助查找目標主機的漏洞。但它不會提供進入一個系統的詳細步驟。 ?

??? 掃描器應該有三項功能:(1)發現一個主機或網絡;(2)一旦發現一臺主機,能發現正運行的這臺主機在進行何種服務;(3)通過測試這些服務,發現漏洞。?

2 常見的掃描技術?

??? 常見的掃描方法有以下幾種;?

??? (1)TCP connect() 掃描 ?

??? 這是最基本的TCP掃描。操作系統提供的connect()系統調用,用來與每一個感興趣的目標計算機的端口進行連接。如果端口處于偵聽狀態,則connect()就能成功。否則,這個端口是不能用的,即沒有提供服務。這個技術的最大的優點是,用戶不需要任何權限。系統中的任何用戶都有權利使用這個調用。另一個好處就是速度快。如果對每個目標端口以線性的方式,使用單獨的connect()調用,將會花費相當長的時間,用戶可以通過同時打開多個套接字" title="套接字">套接字,從而加速掃描。使用非阻塞I/O" title="I/O">I/O允許設置一個低的時間用盡周期,同時觀察多個套接字。但這種方法的缺點是很容易被發覺,并且被過濾掉。目標計算機的logs文件會顯示一連串的連接和連接出錯的服務消息,并且能很快地使它關閉。 ?

??? (2)TCP SYN掃描 ?

??? 這種技術通常認為是半開放掃描,這是因為掃描程序不必要打開一個完全的TCP連接。掃描程序發送的是一個SYN數據包,好象準備打開一個實際的連接并等待反應一樣(參考TCP的三次握手建立一個TCP連接的過程)。一個SYN|ACK的返回信息表示端口處于偵聽狀態。一個RST返回,表示端口沒有處于偵聽態。如果收到一個SYN|ACK,則掃描程序必須再發送一個RST信號,來關閉這個連接過程。這種掃描技術的優點在于一般不會在目標計算機上" title="機上">機上留下記錄。但這種方法的缺點是,必須要有root權限才能建立自己的SYN數據包。 ?

??? (3)TCP FIN 掃描?

??? 有的時候有可能SYN掃描都不夠秘密。一些防火墻和包過濾器會對一些指定的端口進行監視,有的程序能檢測到這些掃描。相反,FIN數據包可能會順利通過。這種掃描方法的思想是關閉的端口會用適當的RST來回復FIN數據包。另一方面,打開的端口會忽略對FIN數據包的回復。這種方法和系統的實現有一定的關系。如果有的系統不管端口是否打開,都回復RST,那么這種掃描方法就不適用了。但這種方法在區分Unix和NT時是十分有用的。 ?

??? (4)IP段掃描 ?

??? 并不是直接發送TCP探測數據包,是將數據包分成二個較小的IP段。這樣就將一個TCP頭分成好幾個數據包,從而過濾器就很難探測到。但一些程序在處理這些小數據包時會有些問題。 ?

??? (5)TCP 反向 ident掃描 ?

??? ident 協議允許(rfc1413-Request For Comments1413)看到通過TCP連接的任何進程的擁有者的用戶名,即使這個連接不是由這個進程開始的。例如用戶連接到http端口,然后用identd來發現服務器是否正在以root權限運行。這種方法只能在和目標端口建立了一個完整的TCP連接后才能看到。 ?

??? (6)FTP 返回攻擊 ?

??? FTP協議的一個的特點是它支持代理(proxy)FTP連接。即入侵者可以從自己的計算機1.com和目標主機2.com的FTP server-PI(協議解釋器)連接,建立一個控制通信連接。然后,請求這個server-PI激活一個有效的server-DTP(數據傳輸進程)來給Internet上任何地方發送文件。這個協議的缺點是能用來發送不能跟蹤的郵件和新聞,給許多服務器造成打擊,用盡磁盤。 ?

??? 利用這個特點的目的是從一個代理的FTP服務器來掃描TCP端口。這樣,用戶能在一個防火墻后面連接到一個FTP服務器,然后掃描端口(這些原來有可能被阻塞)。如果FTP服務器允許從一個目錄讀寫數據,用戶就能發送任意的數據到發現的打開的端口。 ?

??? 對于端口掃描,這個技術是使用PORT命令來表示被動的User DTP正在目標計算機上的某個端口偵聽。然后入侵者試圖用LIST命令列出當前目錄,結果通過Server-DTP發送出去。如果目標主機正在某個端口偵聽,傳輸就會成功(產生一個150或226的回應)。否則,會出現″425 Can't build data connection: Connection refused.″。然后,使用另一個PORT命令,嘗試目標計算機上的下一個端口。這種方法的優點很明顯,難以跟蹤,能穿過防火墻。主要缺點是速度很慢,有的FTP服務器最終能得到一些線索,關閉代理功能。 ?

??? 這種方法成功的系統顯示狀態: ?

??? 220 xxxxxxx.com FTP server (Version wu-2.4(3) Wed Dec 14 ...) ready. ?

??? 220 xxx.xxx.xxx.net FTP server ready. ?

??? 220 xx.Telcom.xxxx.edu FTP server (Version wu-2.4(3) Tue Jun 11 ...) ready. ?

??? 220 lem FTP server (SunOS 4.1) ready. ?

??? 220 xxx.xxx.es FTP server (Version wu-2.4(11) Sat Apr 27 ...) ready. ?

??? 220 elios FTP server (SunOS 4.1) ready ?

??? 這種方法不成功的系統顯示狀態: ?

??? 220 wcarchive.cdrom.com FTP server (Version DG-2.0.39 Sun May 4 ...) ready. ?

??? 220 xxx.xx.xxxxx.EDU Version wu-2.4.2-academ[BETA-12](1) Fri Feb 7 ?

??? 220 ftp Microsoft FTP Service (Version 3.0). ?

??? 220 xxx FTP server (Version wu-2.4.2-academ[BETA-11](1) Tue Sep 3 ...) ready. ?

??? 220 xxx.unc.edu FTP server (Version wu-2.4.2-academ[BETA-13](6) ...) ready. ?

?

?

??? (7)UDP ICMP端口不能到達掃描 ?

??? 這種方法與上面幾種方法的不同之處在于使用的是UDP協議。由于這個協議很簡單,所以掃描變得相對比較困難。這是由于打開的端口對掃描探測并不發送一個確認,關閉的端口也并不需要發送一個錯誤數據包。但許多主機在向一個未打開的UDP端口發送一個數據包時,會返回一個ICMP_PORT_UNREACH錯誤。這樣軟件就能發現哪個端口是關閉的。UDP和ICMP錯誤都不保證能到達,因此這種掃描器必須還實現在一個包看上去是丟失的時候能重新傳輸。這種掃描方法是很慢的,因為RFC對ICMP錯誤消息的產生速率做了規定。同樣,這種掃描方法需要具有root權限。 ?

??? (8)UDP recvfrom()和write()掃描 ?

??? 當非root用戶不能直接讀到端口不能到達錯誤時,Linux能間接地在它們到達時通知用戶。例如,對一個關閉的端口的第二個write()調用將失敗。在非阻塞的UDP套接字上調用recvfrom()時,如果ICMP出錯還沒有到達時回返回EAGAIN-重試。如果ICMP到達時,返回ECONNREFUSED-連接被拒絕。這就是用來查看端口是否打開的技術。 ?

??? (9)ICMP echo掃描 ?

??? 這并不是真正意義上的掃描。但有時通過ping,在判斷在一個網絡上主機是否開機或網絡設備是否在線正常工作時非常有用。?

3 網絡掃描" title="網絡掃描">網絡掃描的監測與處理?

??? 網絡掃描監測系統從邏輯上可以分為三個部分:即抓包模塊,判定模塊,以及處理模塊" title="處理模塊">處理模塊。同時還應該保留對處理模塊的接口。?

??? (1)抓包模塊,這一模塊一般只需要調用標準的網絡接口。目前一般的開發工具都提供相應的Winsock API()。?

??? (2)判定模塊,其流程圖如下;本模塊是處理由抓包模塊提交的數據報文,根據預定義的過濾規則進行第一次匹配,選出非正常報文,提交給上層應用,對于選定的非正常報文,由于存在多種可能,如:TCP SYN、TCP FIN等,則需要進行由用戶定制的二次匹配,其中的特征值由用戶根據相應的掃描特點定義。那些仍然沒有確定的報文,往往帶有二義性,這就需要借助歷史記錄的數據庫,或者報文(如ICMP報文)長度的閥值來加以判斷。?

??? (3)處理模塊,這一模塊是按照需要設置的各種實現方式和采取相對策略,并且要將相應記錄存入日志。需要注意的是對一般的掃描要設置有效的閥值,僅僅一次、二次的掃描不應該被視為網絡掃描。?

??? 端口掃描雖然可以分為秘密掃描、間接掃描、認證掃描、代理掃描、PING掃描和安全掃描等等,其應用的領域也十分廣泛,但作為網絡的用戶對發生在自己身上的被掃描和請求連接應引起足夠的重視,尤其是常用的低端口掃描和聯結請求,如23、69、135、139、445等。做到心中有數,安全防范,預防攻擊。?

參考文獻?

1 Tcp/Ip Illustrated Volume 1The Protocols.U.S. W. Richard?Stevens 2000.4?

2 Tcp/Ip Illustrated Volume 2 The Implementation.U.S. Gary?R. Wright 2000.4?

3 NETWORK MANAGEMENT-Principles and Practice.Mani??Subramanian 2003?

4 張 琳等. 網絡管理與應用. 北京:人民郵電出版社, 2000.5?

5 譚思亮. 監聽與隱藏-網絡偵聽揭密與數據保護技術.?北京:機械工業出版社,2002.8?

6 網絡安全技術與應用. 北京:公安大學出版社,總第32期,?2003.12

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 国产男女爱视频在线观看 | 免费毛片网站在线观看 | 九九视频在线观看视频 | 久久国产毛片 | 天堂的男人 | 免费播放aa在线视频成人 | 成人在线精品视频 | 九九九精品视频免费 | 99精品高清不卡在线观看 | 爸爸再爱我一次韩剧 | 国内第一永久免费福利视频 | 日韩欧美在线视频 | 国产精品毛片大码女人 | 一级毛片免费视频网站 | 欧美黄色小视频 | 男人的天堂色 | 欧美二区视频 | 久草综合在线观看 | 久久精品视频免费观看 | 久久精品中文 | 国产精品久久久久久久9999 | 美女久久久久久 | 快色app| 王朝的女人在线观看免费完整 | 视频免费播放 | 99视频网| 激情综合五月网 | www.草草影院| 久久国产精品一区免费下载 | 五月婷婷激情 | av在线亚洲男人的天堂 | 国产操操 | 久久久国产99久久国产久 | 国产精品porn | 四虎影片国产精品8848 | 久久精品国产精品亚洲 | 狠狠骑| 国产精品久久久久久久久久直 | 欧美黄色性生活视频 | 国产精品天堂avav在线 | 色网站欧美 |