專利名稱:用于檢測具有偽造源地址的端口掃描的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及數(shù)據(jù)處理系統(tǒng),并且具體地涉及用于數(shù)據(jù)處 理系統(tǒng)安全性的方法和裝置。更具體地,本發(fā)明涉及用于阻止使用 偽造源互聯(lián)網(wǎng)協(xié)議地址的端口掃描器的計算機實現(xiàn)方法、裝置以及 計算機可用程序代碼。
背景技術(shù):
連接到網(wǎng)絡(luò)的計算機設(shè)備(諸如客戶端)上的用戶,可以執(zhí)行 在不同的計算設(shè)備(諸如服務(wù)器)上可用的應(yīng)用或其他服務(wù),其通 過連接到與應(yīng)用或服務(wù)相關(guān)聯(lián)的服務(wù)器上的端口來實現(xiàn)。端口是通 往網(wǎng)絡(luò)中客戶端和服務(wù)器之間的邏輯連接的端點。端口通常由端口 號來標識。服務(wù)器上的每個可用應(yīng)用與不同的端口號相關(guān)聯(lián)。
換言之,端口類似于去往計算機上的特定應(yīng)用的入口或門口 。 類似于入口,端口可以是開放的或關(guān)閉的。服務(wù)器上的開放端口是 與當前在服務(wù)器上可用的應(yīng)用相關(guān)聯(lián)的端口 ,以便由一個或多個客 戶端計算機使用。關(guān)閉的端口是沒有與服務(wù)器上可用的應(yīng)用或服務(wù) 相關(guān)聯(lián)的端口 。黑客通常不能通過關(guān)閉的端口來訪問計算機。
計算設(shè)備可以通過指定與服務(wù)器上的特定應(yīng)用相關(guān)聯(lián)的端口 號,來訪問此特定應(yīng)用。然而,有時候未授權(quán)的或惡意的用戶可能 想訪問服務(wù)器上的應(yīng)用或服務(wù),目的在于對服務(wù)器發(fā)起攻擊。這些 用戶通常稱為黑客或計算機竊賊。被黑客攻擊的服務(wù)器可以稱為預 期受害者。
黑客通常不知道預期受害者上有什么可用的應(yīng)用或服務(wù)。因此, 黑客可能執(zhí)行端口掃描。端口掃描是一種系統(tǒng)地掃描計算機的端口 的方法,以便確定哪些端口是與可用的應(yīng)用或服務(wù)相關(guān)聯(lián)的開放端口,而哪些端口是關(guān)閉的端口。在端口掃描中,發(fā)送請求與每個公 知端口的連接的 一 系列消息。從預期受害者接收到的響應(yīng)指示公知 端口是開放端口還是關(guān)閉的端口 。黑客使用端口掃描來定位去往計 算機的、易受攻擊的開放訪問點。
一旦定位了易受攻擊的開放端口 ,黑客可以發(fā)起攻擊,其可能 導致與受攻擊的開放端口相關(guān)聯(lián)的應(yīng)用的資源對于該應(yīng)用的預定用
戶不可用。這種攻擊類型有時稱為拒絕服務(wù)(DOS)攻擊。
此問題的一種解決方案由端口掃描保護軟件提供。目前的端口 掃描保護軟件識別連接請求中的源互聯(lián)網(wǎng)協(xié)議(IP)地址,此連接 請求可以是端口掃描的一部分。端口掃描保護軟件繼而阻止此源IP 地址。換言之,端口掃描軟件不允許從該源IP地址接收任何額外的 消息。這可以防止黑客使用同一源IP地址的后續(xù)攻擊。
然而,黑客通過在定位開放端口的端口掃描期間使用偽造源IP 地址,避開了目前的端口掃描防護軟件。當端口掃描軟件意識到可 能正在進行端口掃描時,端口掃描防護軟件阻止在端口掃描消息中 標識的偽造IP地址。然而,目前的端口掃描防護軟件不能阻止黑客 的實際IP地址。因此,黑客仍然可以使用未被端口掃描保護軟件阻 止的黑客的實際IP地址隨意地對任何開放端口發(fā)起攻擊。這些攻擊 可能導致拒絕服務(wù)(DOS),影響嘗試獲得對預期受害者提供的應(yīng) 用和/或服務(wù)的合法訪問的用戶。此外,這些攻擊可能導致時間、數(shù) 據(jù)和利潤的損失,同時使得應(yīng)用和/或服務(wù)不可用。
發(fā)明內(nèi)容
示意性的實施方式提供了用于端口掃描保護的計算機實現(xiàn)方 法、裝置和計算機可用程序代碼。在一個實施方式中,響應(yīng)于檢測
改報頭的應(yīng)答數(shù)據(jù)分組,以形成已修改的應(yīng)答數(shù)據(jù)分組。在一個實 施方式中,針對用于傳輸數(shù)據(jù)分組的協(xié)議而修改的報頭是已修改的 傳輸控制協(xié)議報頭。已修改的應(yīng)答數(shù)據(jù)分組將引發(fā)來自所述已修改的數(shù)據(jù)分組的接 收方的響應(yīng)。該過程將應(yīng)答數(shù)據(jù)分組發(fā)送到與端口掃描相關(guān)聯(lián)的第一if各由;t也址。響應(yīng)于接收對所述已修改的應(yīng)答數(shù)據(jù)分組的響應(yīng),該過程識別 響應(yīng)數(shù)據(jù)分組的報頭中的第二路由地址。第二路由地址是端口掃描 的源的實際路由地址。繼而可以阻止來自第二路由地址的所有網(wǎng)絡(luò) 業(yè)務(wù),以防止對任何開放端口的攻擊。在一個實施方式中,第一路 由地址是第 一互聯(lián)網(wǎng)協(xié)議地址,第二路由地址是第二互聯(lián)網(wǎng)協(xié)議地 址。針對用于傳輸數(shù)據(jù)分組的協(xié)議而修改的報頭可以包括錯誤的序 列號。錯誤的序列號是落在序列號的可接受范圍之外的序列號,或 者是從應(yīng)答數(shù)據(jù)分組的接收方引誘出響應(yīng)的協(xié)議。在另 一 實施方式 中,已修改的報頭可以包括重置標志或者結(jié)束標志。在另一實施方 式中,已修改的報頭通過改變用于生成已修改的應(yīng)答數(shù)據(jù)分組的校 驗和來生成。從第一方面看,本發(fā)明提供了一種用于端口掃描保護的方法, 所述方法包括步驟響應(yīng)于檢測到端口掃描,生成具有針對用于傳 輸數(shù)據(jù)分組的協(xié)議而修改的報頭的應(yīng)答數(shù)據(jù)分組,以形成已修改的 應(yīng)答數(shù)據(jù)分組,其中所述已修改的應(yīng)答數(shù)據(jù)分組從所述已修改的應(yīng) 答數(shù)據(jù)分組的接收方獲得響應(yīng);將所述已修改的應(yīng)答數(shù)據(jù)分組發(fā)送 到與所述端口掃描相關(guān)聯(lián)的第 一路由地址;以及響應(yīng)于接收到對所 述已修改的應(yīng)答數(shù)據(jù)分組的所述響應(yīng),識別所述響應(yīng)的報頭中的第 二路由地址,其中所述第二路由地址是所述端口掃描的源的實際路 由地址。優(yōu)選地,本發(fā)明提供了一種方法,其中針對協(xié)議而修改的報頭 包括落在序列號的可接受范圍之外的序列號。優(yōu)選地,本發(fā)明提供了一種方法,其中所述序列號是將獲得來 自所述4妾收方的響應(yīng)的協(xié)i義違例。優(yōu)選地,本發(fā)明提供了一種方法,其中針對協(xié)議而修改的報頭8包括重置標志。優(yōu)選地,本發(fā)明提供了一種方法,其中針對協(xié)議而修改的報頭 包括結(jié)束標志。優(yōu)選地,本發(fā)明提供了一種方法,其中修改所述報頭還包括 改變用于生成所述已修改的應(yīng)答數(shù)據(jù)分組的校驗和。優(yōu)選地,本發(fā)明提供了一種方法,進一步包括步驟阻止起源 自第二路由地址的網(wǎng)絡(luò)業(yè)務(wù),以防止對任何開放端口的攻擊。優(yōu)選地,本發(fā)明提供了一種方法,其中第一路由地址不是計算 設(shè)備的正確; 各由地址。優(yōu)選地,本發(fā)明提供了一種方法,進一步包括步驟響應(yīng)于接 收到端口掃描數(shù)據(jù)分組,識別所述端口掃描數(shù)據(jù)分組的報頭中的源 路由地址作為所述第 一路由地址。優(yōu)選地,本發(fā)明提供了一種方法,其中針對協(xié)議而修改的報頭 是已修改的傳輸控制協(xié)議報頭。優(yōu)選地,本發(fā)明提供了一種方法,其中針對協(xié)議而修改的報頭 是已修改的用戶數(shù)據(jù)報協(xié)議報頭。優(yōu)選地,本發(fā)明提供了一種方法,其中第一路由地址是第一互 聯(lián)網(wǎng)協(xié)議地址,而其中第二路由地址是第二互聯(lián)網(wǎng)協(xié)議地址。從第二方面看,本發(fā)明提供了一種裝置,包括總線系統(tǒng);連接到總線系統(tǒng)的通信系統(tǒng);連接到總線系統(tǒng)的存儲器,其中存儲器 包括計算機可用程序代碼;以及連接到總線系統(tǒng)的處理單元,其中處理單元執(zhí)行所述計算機可用程序代碼以響應(yīng)于檢測到端口掃描, 生成具有針對用于傳輸數(shù)據(jù)分組的協(xié)議而修改的報頭的應(yīng)答數(shù)據(jù)分 組,以形成已修改的應(yīng)答數(shù)據(jù)分組,其中所述已修改的應(yīng)答數(shù)據(jù)分 組從所述已修改的應(yīng)答數(shù)據(jù)分組的接收方獲得響應(yīng)數(shù)據(jù)分組;將所 述已修改的應(yīng)答數(shù)據(jù)分組發(fā)送到與所述端口掃描相關(guān)聯(lián)的第 一路由 地址;以及響應(yīng)于4妄收到響應(yīng)l史據(jù)分組,識別所述響應(yīng)lt據(jù)分組的 報頭中的第二路由地址,其中所述第二路由地址是所述端口掃描的 源的實際路由地址。9優(yōu)選地,本發(fā)明提供了一種裝置,其中針對協(xié)議而修改的報頭 包括序列號,所述序列號是落在序列號的可接受范圍之外的序列號。優(yōu)選地,本發(fā)明提供了一種裝置,其中針對協(xié)議而修改的報頭 包括重置標志。優(yōu)選地,本發(fā)明提供了一種裝置,其中針對協(xié)議而修改的報頭 包括結(jié)束標志。優(yōu)選地,本發(fā)明提供了一種裝置,其中處理器單元進一步執(zhí)行 所述計算機可用程序代碼以阻止起源自第二路由地址的網(wǎng)絡(luò)業(yè)務(wù), 從而防止對任何開》文端口的攻擊。優(yōu)選地,本發(fā)明提供了一種裝置,其中所述序列號是從所述應(yīng) 答數(shù)據(jù)分組的接收方獲得響應(yīng)的協(xié)議違例。優(yōu)選地,本發(fā)明提供了一種裝置,其中針對協(xié)議而修改的報頭 是已修改的傳輸控制協(xié)議報頭。優(yōu)選地,本發(fā)明提供了一種裝置,其中第一路由地址是第一互 聯(lián)網(wǎng)協(xié)議地址,而其中第二路由地址是第二互聯(lián)網(wǎng)協(xié)議地址。從第三方面看,本發(fā)明提供了 一種用于防止遭受端口掃描的系統(tǒng),該系統(tǒng)包括主機計算機,其中所述主機計算機包括增強型 端口掃描保護軟件,用于檢測端口掃描數(shù)據(jù)分組,以及響應(yīng)于檢測 到端口掃描,生成具有針對用于傳輸數(shù)據(jù)分組的協(xié)議而修改的報頭 的應(yīng)答數(shù)據(jù)分組,以形成已修改的應(yīng)答數(shù)據(jù)分組;以及源互聯(lián)網(wǎng)協(xié) 議地址檢測器,其中所述互聯(lián)網(wǎng)協(xié)議地址檢測器識別對所述已修改 的應(yīng)答數(shù)據(jù)分組的響應(yīng)的報頭中的源路由地址,其中所述源路由地 址是所述端口掃描的源的實際路由地址。優(yōu)選地,本發(fā)明提供了一種系統(tǒng),其中針對協(xié)議而修改的報頭 包括用于觸發(fā)來自所述應(yīng)答數(shù)據(jù)分組的接收方的響應(yīng)的協(xié)議違例。優(yōu)選地,本發(fā)明提供了一種系統(tǒng),其中針對協(xié)議而修改的報頭 包括重置標志或結(jié)束標志。優(yōu)選地,本發(fā)明提供了一種系統(tǒng),其中所述主機計算機是第一 計算機,并且進一步包括第二計算機,其中所述第二計算機包括10端口掃描器,其中所述端口掃描器通過向第一計算機發(fā)送具有偽造 源路由地址的端口掃描數(shù)據(jù)分組,從而對所述第 一 計算機執(zhí)行端口 掃描,其中所述偽造源路由地址不是所述第二計算機的正確路由地
址;以及傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議層,其中所述傳輸控制協(xié)議Z互聯(lián)
從第四方面看,本發(fā)明提供了 一種可加載到數(shù)字計算機的內(nèi)部 存儲器中的計算機程序產(chǎn)品,其包括軟件代碼部分,當所述產(chǎn)品在 計算機上運行時,所述軟件代碼部分用于執(zhí)行上述方法的所有步驟。
從第五方面看,計算機程序產(chǎn)品包括包括用于端口掃描保護 的計算機可用程序代碼的計算機可用介質(zhì),所述計算機程序產(chǎn)品包 括計算機可用程序代碼,用于響應(yīng)于檢測到端口掃描,生成具有 針對用于傳輸數(shù)據(jù)分組的協(xié)議而修改的報頭的應(yīng)答數(shù)據(jù)分組,以形 成已修改的應(yīng)答數(shù)據(jù)分組,其中所述已修改的應(yīng)答數(shù)據(jù)分組將引發(fā) 來自所述已修改的應(yīng)答數(shù)據(jù)分組的接收方的響應(yīng);計算機可用程序 代碼,用于將所述已修改的應(yīng)答數(shù)據(jù)分組發(fā)送到與所述端口掃描相 關(guān)聯(lián)的第一路由地址;以及計算機程序代碼,用于響應(yīng)于接收到所 述響應(yīng)數(shù)據(jù)分組,識別所述響應(yīng)數(shù)據(jù)分組的報頭中的第二路由地址, 其中所述第二路由地址是所述端口掃描的源的實際路由地址。
優(yōu)選地,本發(fā)明提供了一種計算機程序產(chǎn)品,其中針對協(xié)議而 修改的報頭包括序列號。
優(yōu)選地,本發(fā)明提供了一種計算機程序,其中所述序列號是落 在序列號的可接受范圍之外的序列號。
優(yōu)選地,本發(fā)明提供了一種計算機實現(xiàn)方法,其中所述序列號 是將從所述應(yīng)答數(shù)據(jù)分組的接收方獲得響應(yīng)的協(xié)議違例。
優(yōu)選地,本發(fā)明提供了一種計算機程序產(chǎn)品,其中針對協(xié)議而 修改的報頭包括重置標志。
優(yōu)選地,本發(fā)明提供了一種計算機程序產(chǎn)品,其中針對協(xié)議而 修改的報頭包括結(jié)束標志。
僅作為示例,下文參考附圖詳細描述本發(fā)明的實施方式,其中
圖1是可以實現(xiàn)本發(fā)明優(yōu)選實施方式的數(shù)據(jù)處理系統(tǒng)的網(wǎng)絡(luò)的
閱w志;.
W今、'J、
圖2是可以實現(xiàn)本發(fā)明優(yōu)選實施方式的數(shù)據(jù)處理系統(tǒng)的框圖; 圖3是根據(jù)本發(fā)明優(yōu)選實施方式的開放系統(tǒng)互連(OSI)基本參
考模型的框圖4是示出了當前使用的端口掃描保護機制的框圖5是示出了根據(jù)本發(fā)明優(yōu)選實施方式通過端口掃描保護系統(tǒng)、
用于檢測具有偽造源IP地址的端口掃描的流程的框圖6是示出了根據(jù)本發(fā)明優(yōu)選實施方式的端口掃描保護機制的
框圖7是根據(jù)本發(fā)明優(yōu)選實施方式、在端口掃描期間傳輸?shù)亩丝?掃描分組的示例性示意圖8是示出了根據(jù)本發(fā)明優(yōu)選實施方式、用于檢測具有偽造源 IP地址的端口掃描的過程的流程圖;以及
圖9是示出了根據(jù)本發(fā)明優(yōu)選實施方式、用于修改應(yīng)答數(shù)據(jù)分 組的過程的流程圖。
具體實施例方式
現(xiàn)在參考附圖,尤其參考圖1-圖2,其提供了可以實現(xiàn)示意性實 施方式的數(shù)據(jù)處理環(huán)境的示例圖。應(yīng)當理解,圖l-圖2僅僅是示例 性的,其意圖不在于聲稱或暗示有關(guān)可以實現(xiàn)不同實施方式的環(huán)境 的任何限制??梢詫λ经h(huán)境作出多種修改。
現(xiàn)在參考附圖,圖1示出了可以實現(xiàn)示意性實施方式的數(shù)據(jù)處 理系統(tǒng)的網(wǎng)絡(luò)的圖形表示。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100是可以實現(xiàn)實施 方式的計算機的網(wǎng)絡(luò)。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100包含網(wǎng)絡(luò)102,該網(wǎng)絡(luò) 是用于在網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100內(nèi)連接在一起的各種設(shè)備和計算機 之間提供通信鏈路的媒介。網(wǎng)絡(luò)102可以包括連接,諸如有線、無線通信鏈路或光纖線纜。
在所示示例中,服務(wù)器104和服務(wù)器106連接到網(wǎng)絡(luò)102以及 存儲單元108。此外,客戶端IIO、 112和114連接到網(wǎng)絡(luò)102。這 些客戶端110、 112和114例如可以是個人計算機或網(wǎng)絡(luò)計算機。
在所示示例中,服務(wù)器104為客戶端110、 112和114提供數(shù)據(jù), 諸如引導文件、操作系統(tǒng)鏡像以及應(yīng)用。在此示例中,客戶端IIO、 112和114是服務(wù)器104的客戶端。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)IOO可以包括 額外的服務(wù)器、客戶端以及其他未示出的設(shè)備。
諸如客戶端lio的計算設(shè)備可以執(zhí)行在網(wǎng)絡(luò)102上可用的不同 計算設(shè)備(諸如服務(wù)器106)上可用的應(yīng)用或其他服務(wù),其通過連接 到與所期望的應(yīng)用或服務(wù)相關(guān)聯(lián)的服務(wù)器106上的端口來實現(xiàn)。應(yīng) 用是計算機軟件,其使用計算設(shè)備的資源以便為用戶執(zhí)行任務(wù)或服 務(wù)。
端口是通往網(wǎng)絡(luò)102中客戶端IIO與服務(wù)器106之間的邏輯連 接的端點。端口通常由端口號來標識。端口號的范圍從O到65,536。 端口號由互聯(lián)網(wǎng)號碼分配才幾構(gòu)(IANA)來分配。互聯(lián)網(wǎng)號碼分配枳^ 構(gòu)由互聯(lián)網(wǎng)名稱和號碼分配機構(gòu)(ICANN)管理。
服務(wù)器104或106上的每個可用的應(yīng)用與不同的端口號相關(guān)聯(lián)。 有些端口號是基于與給定端口相關(guān)聯(lián)的應(yīng)用或服務(wù)的類型而預先分 配的。這些預先分配的或標準的端口號成為^ ^知端口 。大約有1,024 個為特定力良務(wù)或應(yīng)用預留或預先分配的^^知端口 。例如,7>知端口 號包括但不限于,用于超文本傳輸協(xié)議(HTTP)業(yè)務(wù)的端口 80,用 于Telnet的端口 23,用于簡單郵件傳輸協(xié)議(SMTP)的端口 25, 用于域名服務(wù)器(DNS)的端口 53,以及用于互聯(lián)網(wǎng)中繼聊天(IRC) 端口 194。因此,任何服務(wù)器上指定用于超文本傳輸協(xié)議業(yè)務(wù)的任何 端口通常會具有分配的端口號80。
客戶端110可以通過發(fā)送指定了與特定應(yīng)用相關(guān)聯(lián)的端口號的 連接請求,來訪問服務(wù)器104或106上的特定應(yīng)用。
在所示示例中,網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)IOO是互聯(lián)網(wǎng),網(wǎng)絡(luò)102表示使用傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)協(xié)議簇進行相互通信的 世界范圍的網(wǎng)絡(luò)集合?;ヂ?lián)網(wǎng)的中心是主節(jié)點或主機計算機之間的 高速數(shù)據(jù)通信線路的骨干,其包括路由數(shù)據(jù)和消息的成千上萬的商
業(yè)、政府、教育以及其他計算機系統(tǒng)。當然,網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)IOO 還可以實現(xiàn)為多個不同類型的網(wǎng)絡(luò),諸如內(nèi)聯(lián)網(wǎng)、局域網(wǎng)(LAN) 或廣域網(wǎng)(WAN)。圖1旨在于作為示例,而不是用作對不同實施 方式的架構(gòu)性限制。
現(xiàn)在參考圖2,其示出了可以實現(xiàn)示意性實施方式的數(shù)據(jù)處理系 統(tǒng)的框圖。數(shù)據(jù)處理系統(tǒng)200是諸如圖1中的服務(wù)器106或客戶端 110的計算機的示例,其中可以具有用于實現(xiàn)示意性實施方式的過程 的計算機可用代碼或指令。
在所示示例中,數(shù)據(jù)處理系統(tǒng)200采用集線器(hub)架構(gòu),其 包括北橋和存儲器控制器hub(MCH )202以及南橋和輸入/輸出(I/O ) 控制器hub (ICH) 204。處理單元206、主存儲器208以及圖形處理 器耦合到北橋和存儲器控制器hub 202。處理單元206可以包含一個 或多個處理器,其甚至可以使用一個或多個異構(gòu)處理器系統(tǒng)來實現(xiàn)。 圖形處理器210可以通過例如加速圖形端口 (AGP)耦合到MCH。
在所示示例中,局域網(wǎng)(LAN)適配器212耦合到南橋和I/0控 制器hub 204,并且音頻適配器216、鍵盤和鼠標適配器220、調(diào)制 解調(diào)器222、只讀存儲器(ROM) 224、通用串行總線(USB)端口 和其他通信端口 232、以及PCI/PCIe設(shè)備234通過總線238耦合到 南橋和I/O控制器hub 204,并且硬盤驅(qū)動(HDD ) 226和CD-ROM 驅(qū)動230通過總線240耦合到南橋和I/O控制器hub 204。 PCI/PCIe 設(shè)備例如可以包括用于筆記本計算機的以太網(wǎng)適配器、外接卡以及 PC卡。PCI使用卡總線控制器,而PCIe不使用。ROM224例如可 以是快閃二進制輸入/輸出系統(tǒng)(BIOS )。硬盤驅(qū)動226和CD-ROM 驅(qū)動230例如可以使用電子集成驅(qū)動器(IDE)或串行高級技術(shù)附件 (SATA )接口 。超級I/O ( SIO )設(shè)備236可以耦合到南橋和I/O控 制器hub 204。操作系統(tǒng)在處理單元206上運行,其協(xié)調(diào)和提供對圖2的數(shù)據(jù) 處理系統(tǒng)200內(nèi)的各種組件的控制。操作系統(tǒng)可以是商業(yè)上可用的 操作系統(tǒng),諸如Microsoft Windows XP ( Microsoft和Windows是 微軟公司在美國、其他國家或世界范圍的商標)。面向?qū)ο蟮木幊?系統(tǒng),諸如JavaTM編程系統(tǒng),可以與操作系統(tǒng)一起運行,其根據(jù)在 數(shù)據(jù)處理系統(tǒng)200上執(zhí)行的Java程序或應(yīng)用而提供對操作系統(tǒng)的調(diào) 用。Java和所有基于Java的商標是Sun微系統(tǒng)公司在美國、其他國 家或世界范圍的商標。
用于操作系統(tǒng)、面向?qū)ο蟮木幊滔到y(tǒng)以及應(yīng)用或程序的指令位 于諸如硬盤驅(qū)動226的存儲設(shè)備中,并且其可以加載到主存儲器208 中以由處理單元206執(zhí)行。示意性實施方式的過程可以由處理單元 206使用計算機實現(xiàn)的指令來執(zhí)行,這些指令可以位于存儲器中,諸 如主存儲器208、只讀存儲器224或一個或多個外設(shè)中。
圖1-圖2中的硬件可以根據(jù)實現(xiàn)而變化。其他內(nèi)部硬件或外設(shè), 諸如閃存、等效的非易失性存儲器或光盤驅(qū)動等等,可以附加于或 替換圖1-圖2中示出的硬件而使用。同樣,示意性實施方式的過程 可以應(yīng)用于多處理器數(shù)據(jù)處理系統(tǒng)。
在有些示意性示例中,數(shù)據(jù)處理系統(tǒng)200可以是個人數(shù)字助理 (PDA),其通常配置有閃存以提供非易失性存儲器,用于存儲操 作系統(tǒng)文件和/或用戶生成的數(shù)據(jù)??偩€系統(tǒng)可以包括一條或多條總 線,諸如系統(tǒng)總線、1/0總線和PCI總線。當然,總線系統(tǒng)可以使用 任何類型的通信結(jié)構(gòu)或架構(gòu)來實現(xiàn),其提供附接至此結(jié)構(gòu)或架構(gòu)上 的不同組件或設(shè)備之間的數(shù)據(jù)傳送。通信單元可以包括用于發(fā)射和 接收數(shù)據(jù)的一個或多個設(shè)備,諸如調(diào)制解調(diào)器或網(wǎng)絡(luò)適配器。存儲 器例如可以是主存儲器208或諸如北橋和存儲器控制器hub 202中的 高速緩存。處理單元可以包括一個或多個處理器或CPU。圖1-圖2 中所示示例以及上述示例的意圖并不在于暗示架構(gòu)的限制。例如, 數(shù)據(jù)處理系統(tǒng)200也可以是平板型計算機、膝上型計算機、或采用 PDA形式之外的電話設(shè)備。
15傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)是用于通過網(wǎng)絡(luò)(諸如圖
1的網(wǎng)絡(luò)102)連接計算設(shè)備的通信協(xié)議簇。傳輸控制協(xié)議和互聯(lián)網(wǎng)
協(xié)議是用于通過網(wǎng)絡(luò)(諸如互聯(lián)網(wǎng))傳輸數(shù)據(jù)的標準協(xié)議。
現(xiàn)在轉(zhuǎn)到圖3,其示出了根據(jù)示意性實施方式的開放系統(tǒng)互連 (OSI)基本參考模型的框圖。開放系統(tǒng)互連參考模型300是用于定 義網(wǎng)絡(luò)設(shè)備之間的互操作性和通信的標準協(xié)議層的通用模型。在此 示例中,開放系統(tǒng)互連參考模型300包括傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議 (TCP/IP)簇。
開^:系統(tǒng)互連通信架構(gòu)利用TCP/IP以及類似的協(xié)議。在此示例
中,架構(gòu)包括應(yīng)用層302、呈現(xiàn)層304、會話層306、傳輸層308、 網(wǎng)絡(luò)層310、數(shù)據(jù)鏈路層312以及物理層314。每層負責處理各種功 能和/或通信任務(wù)。
應(yīng)用層302處理訪問和/或執(zhí)行的特定應(yīng)用的細節(jié)。幾乎每種實 現(xiàn)都存在大部分的通用TCP/IP應(yīng)用,包括用于遠程登錄的Telnet; 文件傳輸協(xié)議(FTP );用于電子郵件的簡單郵件傳送協(xié)議(SMTP ); 以及簡單網(wǎng)絡(luò)管理協(xié)議(SNMP)。
應(yīng)用層302所處理的應(yīng)用軟件可以包括任意數(shù)目的軟件應(yīng)用, 其被設(shè)計用于對通過通信端口的數(shù)據(jù)作出反應(yīng),以提供用戶請求的 期望功能。在該層的應(yīng)用可以包括處理互聯(lián)網(wǎng)的用戶可以訪問的數(shù) 據(jù)、視頻、圖形、照片和/或文本所需的應(yīng)用。
呈現(xiàn)層304包括呈現(xiàn)協(xié)議和呈現(xiàn)服務(wù)。呈現(xiàn)服務(wù)用于識別將使 用的約定的傳送語法。呈現(xiàn)協(xié)議支持用戶與呈現(xiàn)服務(wù)通信。
會話層306包括會話協(xié)議和會話服務(wù)。會話服務(wù)為用戶提供服 務(wù),包括但不限于,建立會話服務(wù)用戶之間的連接、終止用戶之間 的連接、執(zhí)行有關(guān)會話層令牌使用的協(xié)商、以及同步所傳輸數(shù)據(jù)中 的點以允許在發(fā)生錯誤或中斷時恢復會話。會話協(xié)議允許用戶與會 話服務(wù)通信。
接下來,傳輸層308提供網(wǎng)絡(luò)層310和應(yīng)用層302之間的接口 , 其協(xié)助兩個主機計算機之間的數(shù)據(jù)傳送。傳輸層308涉及如下事務(wù),
16例如但不限于,將從應(yīng)用層遞送給它的數(shù)據(jù)劃分為用于下面的網(wǎng)絡(luò) 層的適當大小的塊、確認接收到的分組、以及設(shè)置超時以確保另一
端確認所發(fā)送的分組。在TCP/IP協(xié)議簇中,存在兩個明顯不同的傳 輸協(xié)議,即傳輸控制協(xié)議(TCP)和用戶數(shù)據(jù)報協(xié)議(UDP)。
傳輸控制協(xié)議提供可靠性服務(wù),以確保數(shù)據(jù)在兩個主機之間正 確地傳輸,其包括遺失檢測和重傳服務(wù)。與之相反,用戶數(shù)據(jù)報協(xié) 議向應(yīng)用層302提供簡單得多的服務(wù),其僅僅從一個主機向另一主 機發(fā)送相對簡單的數(shù)據(jù)分組調(diào)用數(shù)據(jù)報。數(shù)據(jù)報是在不提供任何保 證數(shù)據(jù)報中的數(shù)據(jù)被正確傳送的機制的情況下傳輸?shù)?。當使用用?數(shù)據(jù)報協(xié)議時,應(yīng)用層302必須執(zhí)行可靠性功能。傳輸層數(shù)據(jù)分組 信息的示例包括但不限于,源主機的端口號和/或目的地主機的端口 號。
網(wǎng)絡(luò)層310 (也可以稱為互聯(lián)網(wǎng)層)處理數(shù)據(jù)分組在網(wǎng)絡(luò)間的移 動。例如,網(wǎng)絡(luò)層310處理通過網(wǎng)絡(luò)傳送的各種數(shù)據(jù)分組的路由。 TCP/IP簇中的網(wǎng)絡(luò)層310包括若干協(xié)議,包括互聯(lián)網(wǎng)協(xié)議(IP)、 互聯(lián)網(wǎng)控制消息協(xié)議(ICMP)以及互聯(lián)網(wǎng)組管理協(xié)議(IGMP)。 互聯(lián)網(wǎng)協(xié)議(IP)可以包括但不限于,互聯(lián)網(wǎng)協(xié)議版本4 (IPv4)、 互聯(lián)網(wǎng)協(xié)議版本6 (IPv6)、或任何其他已知或可用版本的互聯(lián)網(wǎng)協(xié) 議。網(wǎng)絡(luò)層數(shù)據(jù)分組信息的示例可以包括但不限于,標識源主機IP 地址和/或目的地主機IP地址的互聯(lián)網(wǎng)協(xié)議(IP)地址。
數(shù)據(jù)鏈路層312也可以稱為鏈路層或網(wǎng)絡(luò)接口層,其通常包括 操作系統(tǒng)中的設(shè)備驅(qū)動以及計算機中對應(yīng)的網(wǎng)絡(luò)接口卡。數(shù)據(jù)鏈路 層312通常處理與物理層314物理對接的所有硬件細節(jié),例如但不 限于,以太網(wǎng)接口卡和/或無線互聯(lián)網(wǎng)適配器。數(shù)據(jù)鏈路層數(shù)據(jù)分組 信息的示例可以包括但不限于媒體接入控制(MAC)地址。
物理層314表示所使用的網(wǎng)絡(luò)媒質(zhì),諸如光纖線纜或以太網(wǎng)線 纜。換言之,物理層314是將計算設(shè)備(諸如圖1的客戶端110)連 接到網(wǎng)絡(luò)(諸如圖1的網(wǎng)絡(luò)102)的物理網(wǎng)絡(luò)線纜。
示意性實施方式的機制可以更具體地實現(xiàn)在諸如傳輸層308和/
17或網(wǎng)絡(luò)層310之類的層中。
圖4是示出了當前使用的端口掃描保護機制的框圖。網(wǎng)絡(luò)數(shù)據(jù) 處理系統(tǒng)400是包括連接到網(wǎng)絡(luò)的兩個或更多計算設(shè)備的數(shù)據(jù)處理 系統(tǒng),諸如圖1中的網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100。在此示例中,網(wǎng)絡(luò)是互 聯(lián)網(wǎng)。然而,網(wǎng)絡(luò)也可以包括局域網(wǎng)、廣域網(wǎng)、以太網(wǎng)或4壬何其他 類型的網(wǎng)絡(luò)。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)400包括惡意主機402和受害者404 。
惡意主機402是計算設(shè)備(諸如圖1的客戶端110)上的黑客或 其他未授權(quán)用戶,其對受害者404執(zhí)行端口掃描。換言之,惡意主 機402試圖定位受害者404中的易受攻擊的開放訪問點,從而惡意 主機402可以通過此開放端口獲得對受害者404的未授權(quán)訪問和/或 發(fā)起對受害者404的攻擊。惡意主機402正在執(zhí)行對受害者404的 端口掃描,以定位易受攻擊的開放訪問點,從而在發(fā)起對受害者404 的攻擊時使用。
受害者404是主控一個或多個應(yīng)用和/或服務(wù)的計算設(shè)備。惡意 主機402連接到諸如圖1中的網(wǎng)絡(luò)102的網(wǎng)絡(luò)??蛻舳擞嬎阍O(shè)備通 過網(wǎng)絡(luò)連接來請求連接到與給定應(yīng)用或服務(wù)相關(guān)聯(lián)的端口 ,從而可 以訪問受害者404上可用的應(yīng)用和/或服務(wù)。
受害者404包括端口掃描保護405。端口掃描保護405是任何當 前可用的端口掃描保護軟件,用于檢測端口掃描以及阻止惡意主機 402的源IP地址。端口掃描保護405的一般工作方法是監(jiān)視受害者 404未使用的關(guān)閉端口集合,但是由于與這些端口相關(guān)聯(lián)的應(yīng)用的脆 弱性,其有可能被黑客用來進行非法利用。端口掃描保護405假設(shè), 合法用戶不會嘗試訪問關(guān)閉端口集合中的端口 ,因為合法用戶知道 受害者404不提供與此關(guān)閉端口集合相關(guān)聯(lián)的應(yīng)用或服務(wù)。只有惡 意主機,諸如惡意主機402才會嘗試連接到關(guān)閉端口集合中的端口 , 因為它們探聽在這些端口上監(jiān)聽的易受攻擊的服務(wù)。
如果端口掃描保護405檢測到請求連接至關(guān)閉端口集合中的端 口的數(shù)據(jù)分組,諸如來自特定遠程主機的同步(SYN)數(shù)據(jù)分組或 這些數(shù)據(jù)分組的模式,則端口掃描保護405將避開或阻止來自此特定遠程主才幾的所有業(yè)務(wù)。通過這種方式,即4吏遠程主積4全測到易受 攻擊的開》文端口,遠程主才幾也不能發(fā)起攻擊,因為來自該遠程主枳J 的所有將來的網(wǎng)絡(luò)業(yè)務(wù)都被阻止了 。
在此示例中,惡意主機402通過向受害者404發(fā)送一系列請求 連接至受害者404上的 一個或多個公知端口的數(shù)據(jù)分組,來執(zhí)行端 口掃描。數(shù)據(jù)分組406是惡意主機402發(fā)送的一系列數(shù)據(jù)分組之一。
數(shù)據(jù)分組406是傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP )數(shù)據(jù)分組, 其包含連接到在受害者404上標識為"n"的端口的請求。在此示例中, 數(shù)據(jù)分組406是請求連接到端口 "n"的傳輸控制協(xié)議同步(TCP SYN ) 消息。端口"n"可以是任何端口號,諸如與超文本傳輸協(xié)議業(yè)務(wù)相關(guān) 聯(lián)的端口 80。
在此示例中,數(shù)據(jù)分組406包括偽造的或虛作i的源IP地址。源 IP地址是標識數(shù)據(jù)分組的發(fā)送者的IP地址。偽造源IP地址是標識 附帶(incidental)受害者408而不是數(shù)據(jù)分組406的實際發(fā)送者的 IP地址。附帶受害者408可以是實際的計算設(shè)備,或者附帶受害者 408可能實際上并不存在。換言之,惡意主機402所使用的偽造IP 地址不必標識實際的計算設(shè)備。在此示例中,數(shù)據(jù)分組406包括與 附帶受害者408相關(guān)聯(lián)的源IP地址"A",而不是作為惡意主機402 的實際IP地址的IP i也址"B"。
響應(yīng)于接收到數(shù)據(jù)分組406,受害者404發(fā)送數(shù)據(jù)分組410至附 帶受害者408。數(shù)據(jù)分組410是指示端口"x"是開放端口還是關(guān)閉端 口的傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議數(shù)據(jù)分組。在此示例中,數(shù)據(jù)分組410 是同步確認(SYN/ACK)消息。數(shù)據(jù)分組410被發(fā)送到與附帶受害 者408相關(guān)聯(lián)的目的地IP地址"A"。因此,惡意主機402不會在從 受害者404到附帶受害者408的常規(guī)消息傳輸過程中接收到數(shù)據(jù)分 組410。
由于惡意主機402不是數(shù)據(jù)分組410的預定接收方,所以惡意 主機402從網(wǎng)絡(luò)探聽412數(shù)據(jù)分組410。探聽表示捕獲或查看預期發(fā) 送給不同目的地計算設(shè)備的數(shù)據(jù)分組。在此示例中,惡意主機402
19使用分組嗅探器(sniffer)來探聽預期由附帶受害者408接收的數(shù)據(jù) 分組410。分組嗅探器是一種捕獲通過網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)分組的應(yīng)用, 盡管事實上惡意主機不是此數(shù)據(jù)分組的預期接收方。
因此,惡意主機402獲悉端口 "x"是否是可能易受攻擊的開放端 口。如果端口"x"是開放端口 ,那么惡意主機402發(fā)起對受害者404 的攻擊414。
受害者404具有目前的端口掃描保護軟件。目前的端口掃描保 護允許受害者404將數(shù)據(jù)分組406視為可能來自黑客(諸如惡意主 機402)的端口掃描。目前的端口掃描保護軟件支持受害者404能夠 阻止來自在所懷疑的端口掃描(諸如數(shù)據(jù)分組406)中標識的源IP 地址的后續(xù)消息。然而,由于數(shù)據(jù)分組406中的源IP地址是偽造IP 地址,因此受害者404不會阻止來自惡意主機402的消息,例如來 自與攻擊414相關(guān)聯(lián)的惡意主機402的消息。按照這種方式,惡意 主機402就可以繞過目前的端口掃描保護軟件,來攻擊受害者404 并且可能損害或危害受害者404。
因此,在此示例中,惡意主機402是通過向受害者404上的給 定端口發(fā)送TCPSYN分組(諸如數(shù)據(jù)分組406),以試圖連接到易 受攻擊端口的端口掃描器。惡意主機402所生成的數(shù)據(jù)分組406包 括附帶受害者的偽造源IP地址,該附帶受害者可能存在也可能不存 在。如果有程序或應(yīng)用正在此給定端口上監(jiān)聽,那么受害者404通 過向附帶受害者發(fā)送TCP SYN/ACK分組(諸如數(shù)據(jù)分組410)來進 行響應(yīng)。
惡意主機402監(jiān)視網(wǎng)絡(luò)并且查看通過的數(shù)據(jù)分組410。惡意主機 402確定給定端口可能連接上的開放端口 ,以便利用與該給定端口相 關(guān)聯(lián)的應(yīng)用中的任何已有弱點。惡意主機402可以基于分配給每個 端口的^^知端口號來確定哪個應(yīng)用與此給定端口相關(guān)聯(lián)。
受害者404上的端口掃描保護405通過阻止附帶受害者408的 偽造源IP地址"A",來對偽造分組進行響應(yīng)。惡意主機402使用適 當?shù)暮诳凸ぞ?、針對此特定端口以及與此特定端口相關(guān)聯(lián)的易受攻
20擊的應(yīng)用程序,隨意地向受害者404上的給定端口發(fā)起攻擊414。
示意性實施方式認識到,當目前的端口掃描保護軟件使用在端 口掃描期間從黑客接收的偽造源IP地址來對偽造數(shù)據(jù)分組進行響應(yīng) 時,端口掃描保護軟件通過阻止附帶受害者的偽造源IP地址來進行 響應(yīng),而不是阻止真正惡意主才幾的實際IP地址。目前的端口掃描4呆 護軟件不能在惡意主機提供偽造源IP地址時,識別和阻止真正的源 IP地址。因此,示意性實施方式認識到需要增強端口掃描保護軟件, 其將在檢測到端口掃描之后盡可能快地避開實際發(fā)起攻擊的主機IP 地址。
因此,示意性實施方式提供了 一種用于端口掃描保護的計算機 實現(xiàn)方法、裝置和計算機可用程序代碼。在一個實施方式中,響應(yīng) 于檢測到端口掃描,該過程生成具有針對用于傳輸數(shù)據(jù)分組的協(xié)議 而修改的報頭的應(yīng)答數(shù)據(jù)分組,以形成已修改的應(yīng)答數(shù)據(jù)分組。
在下文所描述的示意性實施方式中,針對用于傳輸數(shù)據(jù)分組的 協(xié)議而修改的報頭是已修改的傳輸控制協(xié)議報頭。然而,示意性實 施方式不限于修改傳輸控制協(xié)議中的報頭。示意性實施方式可以修 改用于通過網(wǎng)絡(luò)連接來傳輸數(shù)據(jù)分組的任何已知或可用的協(xié)議類型 中的報頭,以形成已修改的應(yīng)答數(shù)據(jù)分組,這些協(xié)議包括但不限于 傳輸控制協(xié)議或用戶數(shù)據(jù)報協(xié)議(UDP)。
已修改的應(yīng)答數(shù)據(jù)分組將引發(fā)來自已修改的數(shù)據(jù)分組的接收方 的響應(yīng)。該過程將此應(yīng)答數(shù)據(jù)分組發(fā)送到與端口掃描相關(guān)聯(lián)的第一 ^各由地址。響應(yīng)于接收到對此已修改的應(yīng)答數(shù)據(jù)分組的響應(yīng),該過 程識別該響應(yīng)數(shù)據(jù)分組的報頭中的第二路由地址。在下文所描述的 示例中,第一S各由地址是第一互聯(lián)網(wǎng)協(xié)議地址,并且第二路由地址 是第二互聯(lián)網(wǎng)協(xié)議地址?;ヂ?lián)網(wǎng)協(xié)議可以是任何版本的互聯(lián)網(wǎng)協(xié)議, 包括但不限于互聯(lián)網(wǎng)協(xié)議版本4 (IPv4)、互聯(lián)網(wǎng)協(xié)議版本6 (IPv6) 或任何其他互聯(lián)網(wǎng)協(xié)議版本。此外,示意性實施方式不限于互聯(lián)網(wǎng) 協(xié)議。根據(jù)示意性實施方式,可以使用任何類型的已知或可用協(xié)議 以用于為一個或多個端口提供路由地址。第二路由地址是端口掃描的源的實際路由地址。繼而可以阻止 來自第二-各由地址的所有網(wǎng)絡(luò)業(yè)務(wù),以防止對任何開》文端口的攻擊。
現(xiàn)在轉(zhuǎn)到圖5,其示出了根據(jù)示意性實施方式通過端口掃描保護
系統(tǒng)、用于檢測具有偽造源IP地址的端口掃描的流程的框圖。計算
機500可以使用任何類型的計算設(shè)備來實現(xiàn),包括但不限于圖1中 的服務(wù)器106或客戶端110。
計算機500包括應(yīng)用集合502。應(yīng)用集合502是計算機500上可 用的一個或多個應(yīng)用和/或服務(wù)的集合。應(yīng)用是使用計算設(shè)備的資源 以便為用戶執(zhí)行任務(wù)或服務(wù)的計算機軟件。
應(yīng)用集合502可以存儲在數(shù)據(jù)存儲設(shè)備上,諸如數(shù)據(jù)存儲設(shè)備 504。數(shù)據(jù)存儲設(shè)備504是用于存儲數(shù)據(jù)的任何類型的已知或可用設(shè) 備,包括但不限于,主存儲器、數(shù)據(jù)庫、只讀存儲器(ROM)、隨 機訪問存儲器(RAM)、非易失性隨機訪問存儲器(NV-RAM)、 硬盤、閃存、軟盤、可重寫壓縮盤(CD-RW)、或任何其他類型的 數(shù)據(jù)存儲設(shè)備。在此示例中,數(shù)據(jù)存儲設(shè)備504位于計算機500上 或位于計算才幾500的本地。然而,lt據(jù)存儲i殳備504也可以位于計 算機500的遠程。
計算機500使用傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP) 506來從 連接到網(wǎng)絡(luò)(諸如圖1的網(wǎng)絡(luò)102)的其他計算設(shè)備發(fā)射和接收消息。 TCP/IP 506是用于在發(fā)送方和接收方之間提供連接的標準協(xié)議簇。 TCP/IP可以提供有保證的遞送,并且確保按正確的順序接收分組。 換言之,當從另一計算設(shè)備向計算機500發(fā)送消息時,這些消息可 能不是按順序接收的。因此,TCP/IP 506使用傳輸控制協(xié)議(TCP) 序列號,來確保這些消息按正確順序遞送到應(yīng)用層。
TCP/IP 506為TCP/IP 506所發(fā)送的每個消息給予序列號,從而 消息的接收方可以確定消息的正確順序。當建立了計算機500與第 二計算設(shè)備之間的連接時,在計算機500與第二計算設(shè)備之間交換 初始序列號(ISN )。如果序列外的號在特定范圍或限制內(nèi),則TCP/IP 506允許接收具有所述序列外的序列號的消息。然而,如果序列號超出期望的序列號范圍太遠,則將忽略該消息或?qū)⑵錁俗R為錯誤消息。 在這種情況下,計算機500可以請求第二計算機對具有錯誤序列號 的消息進行重新發(fā)送。
TCP/IP 506包括端口 508和端口 510。在此示例中,計算機500 示出為具有兩個端口。然而,計算機500可以具有任意數(shù)目的端口 。
端口 508具有分配的端口號,其與應(yīng)用集合502中的應(yīng)用相關(guān) 聯(lián)。例如,如果端口 508與用于處理超文本傳輸協(xié)議業(yè)務(wù)的應(yīng)用相 關(guān)聯(lián),那么端口 508將凈皮分配端口號80。在此示例中,端口 508是 開放端口 。
端口 510也分配了端口號。在此示例中,端口510分配了用于 文件傳輸協(xié)議(FTP)的端口號20。然而,在此示例中,文件傳輸 協(xié)議在計算機500上不可用。因此,端口510是關(guān)閉端口。
計算機500還包括增強型端口掃描保護512。增強型端口掃描保 護512是端口掃描保護軟件,用于檢測端口掃描以及阻止與執(zhí)行端 口掃描的惡意主機或其他計算設(shè)備(諸如惡意主機516 )相關(guān)聯(lián)的IP 地址。
惡意主機516是對計算機500相關(guān)聯(lián)的一個或多個端口 (諸如 端口 508和510)執(zhí)行端口掃描的黑客、計算機竊賊、未授權(quán)用戶或 非法用戶。惡意主機516包括用于通過網(wǎng)絡(luò)發(fā)送和接收數(shù)據(jù)分組的 TCP/IP協(xié)議蔟518。惡意主機516通過此網(wǎng)絡(luò)連接而連接到計算機 500。
惡意主機516包括端口掃描器520。端口掃描器520可以是用于 對計算機500上的一個或多個端口的集合執(zhí)行端口掃描的任何類型 的已知或可用設(shè)備。端口掃描器520可以完全實現(xiàn)為軟件,或者實 現(xiàn)為軟件和硬件的組合。在此示例中,端口掃描器520生成端口掃 描數(shù)據(jù)分組522。端口掃描數(shù)據(jù)分組522包括偽造源IP地址524。 偽造源IP地址524不是與惡意主機516相關(guān)聯(lián)的IP地址。偽造源 IP地址524可以是惡意主機516之外的實際計算設(shè)備的IP地址,或 者偽造源IP地址524可以是實際不存在的計算設(shè)備的IP地址。增強型端口掃描保護512包括源IP地址檢測514。源IP地址檢 測514是用于生成應(yīng)答數(shù)據(jù)分組526的軟件組件。應(yīng)答數(shù)據(jù)分組526 是被修改以迫使惡意主機516上的TCP/IP 518生成響應(yīng)528的數(shù)據(jù) 分組。換言之,如果增強型端口掃描保護512檢測到端口掃描,則 增強型端口掃描保護512通過向惡意主機516發(fā)送應(yīng)答數(shù)據(jù)分組526 來進行響應(yīng),該應(yīng)答數(shù)據(jù)分組將促使惡意主纟幾516發(fā)送響應(yīng)528。響 應(yīng)528可以在響應(yīng)528的傳輸控制協(xié)議報頭中包括重置(RST)標志 或結(jié)束確認(FIN/ACK)標志。在此示例中,響應(yīng)528還包括在響 應(yīng)528的傳輸控制協(xié)議報頭的網(wǎng)絡(luò)層中的惡意主機的真實IP地址 530。
計算機500可以從響應(yīng)528中識別惡意主機的真實IP地址530。 增強型端口掃描保護512繼而避開或阻止惡意主機516的真實IP地 址530,以防止來自惡意主機516的任何將來的攻擊。
接著,圖6是示出了根據(jù)示意性實施方式的端口掃描保護機制 的框圖。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)600是包括多個通過網(wǎng)絡(luò)連接的計算設(shè) 備的數(shù)據(jù)處理系統(tǒng),諸如圖1中的網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100。在此示例 中,網(wǎng)絡(luò)是互聯(lián)網(wǎng)。然而,網(wǎng)絡(luò)也可以是局域網(wǎng)、廣域網(wǎng)、以太網(wǎng) 或任何其他類型的網(wǎng)絡(luò)。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)600包括惡意主機602 和受害者604。
惡意主機602是計算設(shè)備(諸如圖1中的客戶端110,或圖5中 的惡意主機516)上的黑客或其他未授權(quán)用戶。惡意主機602正在對 受害者604執(zhí)行未授權(quán)的端口掃描以試圖定位易受攻擊的開放訪問 點,從而惡意主機602可以通過此開放端口獲得對受害者604的未 授權(quán)訪問和/或發(fā)起對受害者604的攻擊。
受害者604是主控一個或多個應(yīng)用和/或服務(wù)的計算設(shè)備,諸如 圖1的服務(wù)器106或圖5的計算機500。客戶端計算設(shè)備可以通過網(wǎng) 絡(luò)連接請求連接至與給定應(yīng)用或服務(wù)相關(guān)聯(lián)的端口 ,來訪問受害者 604上可用的應(yīng)用和/或服務(wù)。
受害者604具有包括源IP地址檢測軟件的增強型端口掃描保護
24605,諸如圖5的增強型端口掃描保護512。增強型端口掃描保護605 是這樣的軟件,當惡意主機602通過使用偽造源IP地址發(fā)送數(shù)據(jù)分 組606以發(fā)起端口掃描時,該軟件用于識別惡意主機602的IP地址, 并且阻止惡意主機602的IP地址而不是阻止惡意主機602所使用的 偽造源IP地址。
惡意主機602通過向受害者604發(fā)送一 系列請求連接至受害者 604上的一個或多個公知端口的數(shù)據(jù)分組,來執(zhí)行端口掃描。數(shù)據(jù)分 組606是惡意主機602發(fā)送給受害者604上的端口的 一 系列數(shù)據(jù)分 組之一,諸如圖5的端口掃描數(shù)據(jù)分組522。
數(shù)據(jù)分組606是請求連接至受害者604上標識為端口 "n"的端口 的傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議數(shù)據(jù)分組。在此示例中,數(shù)據(jù)分組606 是傳輸控制協(xié)議同步(TCPSYN)數(shù)據(jù)分組。端口"n"可以是任何端 口號,諸如與超文本傳輸協(xié)議業(yè)務(wù)相關(guān)聯(lián)的端口 80。
數(shù)據(jù)分組606包括附帶受害者的偽造或虛假源IP地址。附帶受 害者可以實際存在或?qū)嶋H不存在。在此示例中,數(shù)據(jù)分組606包括 與附帶受害者相關(guān)聯(lián)的源IP地址"A",而不是作為惡意主機602的 實際IP i也址的IP i也址"B"。
響應(yīng)于接收到數(shù)據(jù)分組606,增強型端口掃描保護605生成數(shù)據(jù) 分組608。數(shù)據(jù)分組608是應(yīng)答數(shù)據(jù)分組,諸如圖5中的應(yīng)答數(shù)據(jù)分 組526。數(shù)據(jù)分組608被制造以使得當惡意主機602從網(wǎng)絡(luò)探聽數(shù)據(jù) 分組608時,此數(shù)據(jù)分組將引發(fā)來自惡意主機602的響應(yīng)。按如下 方式改變數(shù)據(jù)分組608的傳輸控制協(xié)議(TCP)報頭的報頭,即如果 惡意主機602從網(wǎng)絡(luò)探聽數(shù)據(jù)分組608,則其將引誘惡意主機的 TCP/IP層對數(shù)據(jù)分組608進行響應(yīng)。
例如,如果增強型端口掃描保護605將錯誤序列號給予數(shù)據(jù)分 組608,則惡意主機602的TCP/IP層將通過發(fā)送同步(SYN )標志 以嘗試重新連接到受害者604,來進行響應(yīng)。錯誤序列號是在可能的 序列號的預期或可接受范圍之外的序列號。
結(jié)束(FIN)標志指示會話的結(jié)束。當接收到包括結(jié)束標志的數(shù)據(jù)分組時,TCP/IP在響應(yīng)中自動發(fā)送結(jié)束確認。因此,如果端口掃 描保護605給予數(shù)據(jù)分組608結(jié)束標志,則惡意主機602的TCP/IP 層在響應(yīng)消息中將結(jié)束確認(FIN/ACK)自動發(fā)送給受害者604。
因此,在此示例中,增強型端口掃描保護605將數(shù)據(jù)分組608 發(fā)送給與偽造源IP地址相關(guān)聯(lián)的附帶受害者。數(shù)據(jù)分組608是指示 端口 "n"是開放端口還是關(guān)閉端口的傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議數(shù)據(jù) 分組。在此示例中,數(shù)據(jù)分組608包含同步確認(SYN/ACK)標志 以及錯誤序列號。受害者604將數(shù)據(jù)分組608發(fā)送給與附帶受害者 相關(guān)聯(lián)的偽造IP地址"A"。
數(shù)據(jù)分組608的報頭中的數(shù)據(jù)鏈路層指示數(shù)據(jù)分組608的目的 地的媒體接入控制(MAC)地址。媒體接入控制地址指明目的地計 算設(shè)備的特定網(wǎng)絡(luò)適配器。在此情況下,媒體接入控制地址指明附 帶受害者的網(wǎng)絡(luò)適配器。
通常,如果惡意主機602沒有運行在探聽模式中,則惡意主機 602不會接收到數(shù)據(jù)分組608,因為數(shù)據(jù)鏈路層媒體接入控制地址與 惡意主機602關(guān)聯(lián)的網(wǎng)絡(luò)適配器不匹配。然而,在此示例中,惡意 主機602處于探聽模式。因此,與惡意主機602關(guān)聯(lián)的以太網(wǎng)驅(qū)動 將忽略數(shù)據(jù)分組608的報頭中的媒體接入控制地址,并且將數(shù)據(jù)分 組608向上遞送到惡意主機602關(guān)聯(lián)的TCP/IP層。
惡意主機602從網(wǎng)絡(luò)探聽數(shù)據(jù)分組608。在此示例中,惡意主機 602使用分組嗅探器來從網(wǎng)絡(luò)探聽數(shù)據(jù)分組608。響應(yīng)于檢測到數(shù)據(jù) 分組608中的錯誤序列號,惡意主機602的TCP/IP層自動地生產(chǎn)對 數(shù)據(jù)分組的響應(yīng)610,并將其傳輸給受害者604以試圖重新連接到受 害者604。數(shù)據(jù)分組610是響應(yīng)數(shù)據(jù)分組,諸如圖5中的響應(yīng)528。
數(shù)據(jù)分組610包含惡意主4幾602的實際源IP地址"B",而不是偽 造IP地址"A"。增強型端口掃描保護605阻止此實際源IP地址"B", 以防止通過網(wǎng)絡(luò)向受害者604發(fā)送進一步的消息。按此方式,阻止 了惡意主機602對受害者604上的任何易受攻擊端口發(fā)起任何攻擊。
圖7是根據(jù)示意性實施方式、在端口掃描期間傳輸?shù)亩丝趻呙?br>
26分組的示例性示意圖。端口掃描數(shù)據(jù)分組702是具有由惡意主機生 成的虛假源IP地址的數(shù)據(jù)分組,諸如圖5中的端口掃描數(shù)據(jù)分組522 和/或圖6中的數(shù)據(jù)分組606。在此示例中,端口掃描數(shù)據(jù)分組是同 步(SYN)數(shù)據(jù)分組。
應(yīng)答數(shù)據(jù)分組703是端口掃描數(shù)據(jù)分組702的接收方生成的數(shù) 據(jù)分組,諸如圖5中的應(yīng)答數(shù)據(jù)分組526和/或圖6中的數(shù)據(jù)分組608。 接收方是惡意主機的預期受害者。應(yīng)答數(shù)據(jù)分組703由受害者生成 并發(fā)送給虛假的IP地址。在此示例中,應(yīng)答數(shù)據(jù)分組是由惡意主機 的預期受害者(諸如圖6中的受害者604)生成的同步確認 (SYN/ACK)數(shù)據(jù)分組。
端口掃描數(shù)據(jù)分組702在片段704中包括用于數(shù)據(jù)鏈路層的信 息。從惡意主機到預期受害者的端口掃描數(shù)據(jù)分組的傳輸路由將基 于路由表來分配以太網(wǎng)(ETH)媒體接入控制(MAC)地址。
端口掃描數(shù)據(jù)分組702還包括網(wǎng)絡(luò)層中信息。網(wǎng)絡(luò)層信息包括 行705中的偽造源IP地址"A"。偽造源IP地址"A,,是存在或不存在 的附帶受害者的IP地址,而不是生成端口掃描數(shù)據(jù)分組702的惡意 主機的實際IP地址。數(shù)據(jù)分組中的網(wǎng)絡(luò)層信息還包括標識受害者計 算設(shè)備的目的地IP地址706。
端口掃描數(shù)據(jù)分組702中的傳輸層信息標識惡意黑客的源端口 號以及受害主機計算設(shè)備的目的地端口號,如行708所示。行710 是用于端口掃描分組的序列號。行712標識此數(shù)據(jù)分組為請求與受 害者計算設(shè)備的連接的同步(SYN)數(shù)據(jù)分組。
應(yīng)答數(shù)據(jù)分組703包括受害者的源IP地址714以及目的地IP地 址716。目的地IP地址716是惡意黑客所使用的偽造IP地址。
如行714所示,傳輸層信息包括生成應(yīng)答數(shù)據(jù)分組的受害者計 算設(shè)備的源端口號。行716包括目的地IP地址。在此示例中的目的 地IP地址是附帶受害者的偽造IP地址。附帶受害者實際上可以存在 或?qū)嶋H上不存在。
行722可以提供錯誤序列號。錯誤序列號是在可能的序列號的預期或可接受范圍之外的序列號。
行722指示應(yīng)答數(shù)據(jù)分組703是同步/確認(SYN/ACK)數(shù)據(jù)分 組。在另一示例中,行722可以指示應(yīng)答數(shù)據(jù)分組703是重置(RST) 或結(jié)束(FIN)數(shù)據(jù)分組。
換言之,使用當前可用的端口掃描保護軟件,如果受害者在端 口23上具有活躍服務(wù),其可以在行708標識,則受害者將通過生成 SYN/ACK應(yīng)答數(shù)據(jù)分組來作出響應(yīng)。這將是受害者上的端口 23與 惡意主機上的端口 1494之間的會話的結(jié)束。那么惡意主機就會知道 受害者在端口 23上運行telnet服務(wù)。惡意主機繼而可以對端口 23 發(fā)起telnet攻擊。目前的端口掃描保護軟件將會阻止在端口掃描分組 的705行中標識的偽造IP地址,而不能阻止惡意主機的實際IP地址。 因此,惡意主才幾可以隨意攻擊端口 23。
根據(jù)示意性實施方式,當受害者接收到端口掃描數(shù)據(jù)分組702 時,受害者上的增強型端口掃描保護軟件按照迫使實際的惡意主機 進行響應(yīng)的方式來作出響應(yīng)。例如,增強型端口掃描保護軟件生成 包括錯誤序列號、重置(RST)消息或結(jié)束(FIN)消息的應(yīng)答數(shù)據(jù) 分組703。由于附帶主機從來沒有發(fā)送端口掃描數(shù)據(jù)分組702,因此 附帶主機不會對應(yīng)答數(shù)據(jù)分組703作出響應(yīng)。反而,如果實際上存 在附帶主機,則附帶主機將僅僅是忽略應(yīng)答數(shù)據(jù)分組703。如果附帶 主機不存在,那么附帶主機不可能對應(yīng)答數(shù)據(jù)分組703作出響應(yīng)。 因此,預期只有惡意主機對應(yīng)答數(shù)據(jù)分組703進行響應(yīng)。按此方式, 受害者可以識別和阻止惡意主機的實際IP地址,這些惡意主機使用 端口掃描來識別易受惡意主機的攻擊的開放端口 。
現(xiàn)在參考圖8,其示出了根據(jù)示意性實施方式、用于檢測具有偽 造源IP地址的端口掃描的過程的流程圖。在圖8所示的示意性示例 中,過程由用于端口掃描保護的軟件組件來執(zhí)行,諸如圖5中的增 強型端口掃描保護512。
通過確定是否檢測到端口掃描(步驟802 )來開始此過程。如果 未^r測到端口掃描,則過程返回步驟802,直到^f全測到端口掃描。當
28從惡意主機接收到端口掃描數(shù)據(jù)分組或一系列數(shù)據(jù)分組時,可以檢 測到端口掃描。
如果在步驟802中檢測到端口掃描,則該過程生成已修改的應(yīng) 答數(shù)據(jù)分組(步驟804 )。該過程將已修改的應(yīng)答數(shù)據(jù)分組發(fā)送到在 端口掃描數(shù)據(jù)分組中標識的源IP地址(步驟806)。在此示例中, 源IP地址是偽造源IP地址,其不是執(zhí)行端口掃描的主機的正確IP 地址。
該過程繼而確定是否接收到對此應(yīng)答的響應(yīng)(步驟808 )。如果 未接收到響應(yīng),則該過程返回步驟808,直到接收到響應(yīng)。當在步驟 808中4妄收到響應(yīng)時,該過程阻止來自在響應(yīng)的傳輸控制協(xié)議報頭中 標識的第二IP地址的所有網(wǎng)絡(luò)業(yè)務(wù)(步驟810),以防止從端口掃 描的源可能發(fā)起的任何攻擊,之后該過程終止。
圖9是示出了根據(jù)示意性實施方式、用于修改應(yīng)答數(shù)據(jù)分組的 過程的流程圖。在圖9的示例中,該過程可以由用于端口掃描保護 的軟件組件來實現(xiàn),諸如圖5中的增強型端口掃描保護512。
通過生成應(yīng)答數(shù)據(jù)分組(步驟902)來開始此過程。此過程確定 是否通過向應(yīng)答數(shù)據(jù)分組的傳輸控制協(xié)議報頭添加錯誤序列號,來 修改應(yīng)答數(shù)據(jù)分組(步驟卯4)。如果確定通過添加錯誤序列號來修 改應(yīng)答數(shù)據(jù)分組,則該過程將錯誤序列號添加到應(yīng)答數(shù)據(jù)分組的報 頭中(步驟906),并且將此已修改的應(yīng)答數(shù)據(jù)分組傳輸給附帶受害 者(步驟908 ),之后該過程終止。
返回步驟卯4,如果確定不添加錯誤序列號,則該過程確定是否 將重置標志或結(jié)束標志添加到應(yīng)答數(shù)據(jù)分組上(步驟910)。如果該 過禾呈確定不添加標志,則此后該過,呈纟冬止。
返回步驟910,如果該過程確定通過添加重置標志或結(jié)束標志來 修改應(yīng)答數(shù)據(jù)分組,則該過程將重置標志或結(jié)束標志添加到應(yīng)答數(shù) 據(jù)分組上(步驟912)。繼而該過程將已修改的應(yīng)答數(shù)據(jù)分組發(fā)送給 附帶受害者(步驟908 ),之后該過程終止。
因此,示意性實施方式提供了用于端口掃描保護的計算機實現(xiàn),響應(yīng)于檢測到 端口掃描,該過程生成具有已修改的傳輸控制協(xié)議報頭的應(yīng)答數(shù)據(jù) 分組,以形成已修改的應(yīng)答數(shù)據(jù)分組。已修改的應(yīng)答數(shù)據(jù)分組將引 發(fā)來自此已修改的數(shù)據(jù)分組的接收方的響應(yīng)。該過程將應(yīng)答數(shù)據(jù)分 組發(fā)送到與端口掃描相關(guān)聯(lián)的第 一 互聯(lián)網(wǎng)協(xié)議地址。
響應(yīng)于41:收對已^f奮改的應(yīng)答lt據(jù)分組的響應(yīng),該過程識別響應(yīng) 數(shù)據(jù)分組的報頭中的第二互聯(lián)網(wǎng)協(xié)議地址。第二互聯(lián)網(wǎng)協(xié)議地址是 端口掃描的源的實際互聯(lián)網(wǎng)協(xié)議地址。繼而可以阻止來自第二互聯(lián) 網(wǎng)協(xié)議地址的所有網(wǎng)絡(luò)業(yè)務(wù),以防止對任何開放端口的攻擊。
已修改的傳輸控制協(xié)議報頭可以包括錯誤的序列號。錯誤的序 列號是落在序列號的可接受范圍之外的序列號。在另一實施方式中, 已修改的傳輸控制協(xié)議可以包括重置標志或結(jié)束標志。在另一實施 方式中,已修改的傳輸控制協(xié)議報頭通過改變用于生成已修改的應(yīng) 答數(shù)據(jù)分組的校驗和來生成。
按此方式,可以防止使用偽造IP地址的黑客對開放的潛在易受 攻擊的端口的攻擊。
附圖中的流程圖和框圖示出了根據(jù)各種實施方式的系統(tǒng)、方法 和計算機程序產(chǎn)品的可能實現(xiàn)的架構(gòu)、功能和操作。在這點上,流 程圖或框圖中的每個步驟可以代表模塊、程序段、或代碼的一部分, 所述模塊、程序段、或代碼的一部分包括一個或多個用于實現(xiàn)指定 的邏輯功能的可執(zhí)行指令。還應(yīng)當注意,在有些備選實現(xiàn)中,步驟 中標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,連 續(xù)示出的兩個步驟實際上可以基本并行地執(zhí)行,或者這些步驟有時 也可以按相反的順序執(zhí)行,這依所涉及的功能而定。
本發(fā)明可以采取完全硬件實施方式、完全軟件實施方式或既包 含硬件組件又包含軟件組件的實施方式的形式。在優(yōu)選實施方式中, 本發(fā)明實現(xiàn)為軟件,其包括但不限于固件、駐留軟件、微代碼等。
而且,本發(fā)明還可以采取可從計算機可用或計算機可讀介質(zhì)訪問的 計算機程序產(chǎn)品的形式,這些介質(zhì)提供程序代碼以供計算機或任何指令執(zhí)行系統(tǒng)使用或與其結(jié)合使用。出于描述目的,計算機可用或計算機可讀機制可以是任何有形的裝置,其可以包含、存儲、通信、傳播或傳輸程序以由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與其結(jié)合使用。
介質(zhì)可以是電的、磁的、光的、電磁的、紅外線的、或半導體的系統(tǒng)(或裝置或器件)或傳播介質(zhì)。計算機可讀介質(zhì)的例子包括半導體或
固態(tài)存儲器、磁帶、可移動計算機磁盤、隨機訪問存儲器(RAM)、只讀存儲器(ROM)、硬磁盤和光盤。目前光盤的例子包括緊湊盤-只讀存儲器(CD-ROM)、壓縮盤-讀/寫(CD-R/W)和DVD。
適合與存儲/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)將包括至少 一個處理器,其直接地或通過系統(tǒng)總線間接地耦合到存儲器元件。存儲器
容量存儲器、以及提供至少一部分程序代碼的臨時存儲以便減少執(zhí)行期間從大容量存儲器必須取回代碼的次數(shù)的高速緩沖存儲器。
輸入/輸出或1/0設(shè)備(包括但不限于鍵盤、顯示器、指點設(shè)備等等)可以直接地或通過中間1/0控制器耦合到系統(tǒng)。
網(wǎng)絡(luò)適配器也可以耦合到系統(tǒng),以使得數(shù)據(jù)處理系統(tǒng)能夠通過中間的私有或公共網(wǎng)絡(luò)而耦合到其他數(shù)據(jù)處理系統(tǒng)或遠程打印機或存儲設(shè)備。調(diào)制解調(diào)器、線纜調(diào)制解調(diào)器以及以太網(wǎng)卡僅僅是當前可用的網(wǎng)絡(luò)適配器類型的幾個例子。
出于示意性和描述的目的已經(jīng)提供了本發(fā)明的描述,但其意圖
形對于本領(lǐng)域普通技術(shù)人員將是很明顯的。實施方式是這樣選擇和描述的,以便最好地解釋本發(fā)明的原理、實際應(yīng)用,并且使得本領(lǐng)域其他普通技術(shù)人員能夠理解具有各種修改的本發(fā)明的各種實施方式同樣適合于所構(gòu)想的特定使用。
權(quán)利要求
1.一種用于端口掃描保護的方法,所述方法包括步驟響應(yīng)于檢測到端口掃描,生成具有針對用于傳輸數(shù)據(jù)分組的協(xié)議而修改的報頭的應(yīng)答數(shù)據(jù)分組,以形成已修改的應(yīng)答數(shù)據(jù)分組,其中所述已修改的應(yīng)答數(shù)據(jù)分組從所述已修改的應(yīng)答數(shù)據(jù)分組的接收方獲得響應(yīng);將所述已修改的應(yīng)答數(shù)據(jù)分組發(fā)送到與所述端口掃描相關(guān)聯(lián)的第一路由地址;以及響應(yīng)于接收到對所述已修改的應(yīng)答數(shù)據(jù)分組的所述響應(yīng),識別所述響應(yīng)的報頭中的第二路由地址,其中所述第二路由地址是所述端口掃描的源的實際路由地址。
2. 如權(quán)利要求1的方法,其中針對所述協(xié)議而修改的報頭包括 落在序列號的可接受范圍之外的序列號。
3. 如權(quán)利要求2的方法,其中所述序列號是將獲得來自所述接 收方的響應(yīng)的協(xié)i義違例。
4. 如權(quán)利要求1的方法,其中針對所述協(xié)議而修改的報頭包括 重置標志。
5. 如權(quán)利要求1的方法,其中針對所述協(xié)議而修改的報頭包括 結(jié)束標志。
6. 如權(quán)利要求l的方法,其中修改所述報頭還包括改變用于 生成所述已修改的應(yīng)答數(shù)據(jù)分組的校驗和。
7. 如權(quán)利要求l的方法,進一步包括步驟阻止起源自所述第二路由地址的網(wǎng)絡(luò)業(yè)務(wù),以防止對任何開》文端口的攻擊。
8. 如權(quán)利要求l的方法,其中所述第一路由地址不是計算設(shè)備 的正確^各由;也址。
9. 如權(quán)利要求l的方法,進一步包括步驟響應(yīng)于接收到端口掃描數(shù)據(jù)分組,識別所述端口掃描數(shù)據(jù)分組的報頭中的源路由地址以作為所述第 一路由地址。
10. 如權(quán)利要求1的方法,其中針對所述協(xié)議而修改的報頭是已修改的傳輸控制協(xié)議報頭。
11. 如權(quán)利要求1的方法,其中針對所述協(xié)議而修改的報頭是已 修改的用戶數(shù)據(jù)報協(xié)議報頭。
12,如權(quán)利要求1的方法,其中所述第一路由地址是第一互聯(lián)網(wǎng) 協(xié)議地址,而所述第二路由地址是第二互聯(lián)網(wǎng)協(xié)議地址。
13. —種裝置,包括 總線系統(tǒng);連接到所述總線系統(tǒng)的通信系統(tǒng);連接到所述總線系統(tǒng)的存儲器,其中所述存儲器包括計算機可用 程序代碼;以及連接到所述總線系統(tǒng)的處理單元,其中所述處理單元執(zhí)行所述計 算機可用程序代碼以響應(yīng)于檢測到端口掃描,生成具有針對用于 傳輸數(shù)據(jù)分組的協(xié)議而修改的報頭的應(yīng)答數(shù)據(jù)分組,以形成已修改 的應(yīng)答數(shù)據(jù)分組,其中所述已修改的應(yīng)答數(shù)據(jù)分組從所述已修改的 應(yīng)答數(shù)據(jù)分組的接收方獲得響應(yīng)數(shù)據(jù)分組;將所述已修改的應(yīng)答數(shù) 據(jù)分組發(fā)送到與所述端口掃描相關(guān)聯(lián)的第 一路由地址;以及響應(yīng)于 接收到響應(yīng)數(shù)據(jù)分組,識別所述響應(yīng)數(shù)據(jù)分組的報頭中的第二路由 地址,其中所述第二 由地址是所述端口掃描的源的實際;洛由地址。
14. 如權(quán)利要求13的裝置,其中針對所述協(xié)議而修改的報頭包 括序列號,其中所述序列號是落在可接受序列號范圍之外的序列號。
15. 如權(quán)利要求13的裝置,其中針對所述協(xié)議而修改的報頭包 括重置標志。
16. 如權(quán)利要求13的裝置,其中針對所述協(xié)議而修改的報頭包 4舌結(jié)束才示志。
17. 如權(quán)利要求13的裝置,其中所述處理器單元進一步執(zhí)行所 述計算機可用程序代碼,以阻止起源自所述第二路由地址的網(wǎng)絡(luò)業(yè) 務(wù)以防止對任何開放端口的攻擊。
18. 如權(quán)利要求14的裝置,其中所述序列號是從所述應(yīng)答數(shù)據(jù) 分組的接收方獲得響應(yīng)的協(xié)議違例。
19. 如權(quán)利要求13的裝置,其中針對所述協(xié)議而修改的報頭是 已修改的傳輸控制協(xié)議報頭。
20. 如權(quán)利要求13的裝置,其中所述第一路由地址是第一互聯(lián) 網(wǎng)協(xié)議地址,而所述第二路由地址是第二互聯(lián)網(wǎng)協(xié)議地址。
21. —種用于防止遭受端口掃描的系統(tǒng),所述系統(tǒng)包括 主機計算機,其中所述主機計算機包括增強型端口掃描保護軟件,用于檢測端口掃描數(shù)據(jù)分組,以 及響應(yīng)于檢測到端口掃描,生成具有針對用于傳輸數(shù)據(jù)分組的協(xié) 議而修改的報頭的應(yīng)答數(shù)據(jù)分組,以形成已修改的應(yīng)答數(shù)據(jù)分 組;以及源互聯(lián)網(wǎng)協(xié)議地址檢測器,其中所述源互聯(lián)網(wǎng)協(xié)議地址4企測由地址,其中所述源路由地址是所述端口掃描的源的實際路由地 址。
22. 如權(quán)利要求21的系統(tǒng),其中針對所述協(xié)議而修改的報頭包 用于觸發(fā)來自所述應(yīng)答數(shù)據(jù)分組的接收方的響應(yīng)的協(xié)議違例。
23. 如權(quán)利要求21的系統(tǒng),其中針對所述協(xié)議而修改的報頭包 重置標志或結(jié)束標志。
24. 如權(quán)利要求21的系統(tǒng),其中所述主機計算機是第一計算機, 并且進一步包括第二計算機,其中所述第二計算機包括端口掃描器,其中所述端口掃描器通過向所述第一計算機發(fā) 送具有偽造源路由地址的所述端口掃描數(shù)據(jù)分組,從而對所述第 一計算機執(zhí)行所述端口掃描,其中所述偽造源路由地址不是所述 第二計算機的正確路由地址;以及傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議層,其中所述傳輸控制協(xié)議/互聯(lián) 網(wǎng)協(xié)ii括括
25. —種可加載到數(shù)字計算機的內(nèi)部存儲器中的計算機程序產(chǎn) 品,其包括軟件代碼部分,當所述產(chǎn)品在計算機上運行時,所述軟 件代碼部分用于執(zhí)行權(quán)利要求1到12中的方法的所有步驟。
全文摘要
用于端口掃描保護的計算機實現(xiàn)方法、裝置和計算機程序產(chǎn)品。響應(yīng)于檢測到端口掃描,生成具有已修改的傳輸控制協(xié)議報頭的應(yīng)答數(shù)據(jù)分組,以形成已修改的應(yīng)答數(shù)據(jù)分組。已修改的應(yīng)答數(shù)據(jù)分組將引發(fā)來自已修改的應(yīng)答數(shù)據(jù)分組的接收方的響應(yīng)。將應(yīng)答數(shù)據(jù)分組發(fā)送到與端口掃描相關(guān)聯(lián)的第一互聯(lián)網(wǎng)協(xié)議地址。從對已修改的應(yīng)答數(shù)據(jù)分組的響應(yīng)的報頭中識別第二互聯(lián)網(wǎng)協(xié)議地址。該第二互聯(lián)網(wǎng)協(xié)議地址是端口掃描的源的實際路由地址。可以阻止來自該第二互聯(lián)網(wǎng)協(xié)議地址的所有網(wǎng)絡(luò)業(yè)務(wù),以防止來自端口掃描的源的、對任何開放端口的攻擊。
文檔編號H04L29/06GK101669347SQ200880013534
公開日2010年3月10日 申請日期2008年4月16日 優(yōu)先權(quán)日2007年4月23日
發(fā)明者G·F·麥克布里爾蒂, J·C·繆里羅, J·M-H·希荷, S·M·基奧恩, S·P·瑪倫 申請人:國際商業(yè)機器公司