工控網首頁
>

應用設計

>

網絡處理器(Network Processor)建置新一代網絡安全應用

網絡處理器(Network Processor)建置新一代網絡安全應用

網絡安全的需求 據統計,2000年企業及政府部門遭受駭客(Hacker)攻擊的概率高達85%,而網絡安全的漏洞不是防堵駭客入侵就解決了,其它像遭窺探者竊取機密性數據,或是心懷不滿的員工蓄意破壞系統內重要檔案,警覺性不足的員工外泄重要密碼、不小心由Email引入計算機病毒等,都是威脅網絡安全的幾個危險因子。  為了讓區域內網絡維持安全運作,建立一套安全防護網才是根本解決之道,較完整的防衛機制大概分為三大類: (一)Network Security (網絡安全) (Firewalls, Intrusion detection system, Intrusion prevention System, Wireless security, Mail security, E-commerce security, Load balancer /High Availability) (二)Content Filtering (內容過濾) (Antivirus, Internet /Web / URL filters, Spam filtering, Content security) (三)Encryption (加密) (Virtual Private Network, Public Key Infrastructure Certification Architecture, 三種市場應用各有不同的系統規格需求,VPN 的系統需將訊息全數打亂再丟到網絡上,透過加密機制在公開的網絡里建立起加密通道(Encrypted Tunnel),接收端再解密取得真實訊息,在浩瀚的因特網內建立起安全私密的虛擬局域網絡;Firewall則像大樓管理員,檢查來訪封包的通行許可證,包含檢查封包的來源、目的地、連接埠等字段,但是防火墻并沒有辦法擋掉所有的入侵者,此時就須要另一道防線IDS;IDS 就像網絡上的監控攝影機,可以分析流經的封包數據,偵測未經授權的行為,IDS大致區分為「網絡系統」跟「主機系統」兩類?;旧螴DS需求的系統處理能力可以涵蓋VPN及Firewall的需求. 入侵偵測系統的應用 防火墻與IDP的差異在于, 防火墻僅能就網絡封包做到2到4層的檢測,就來源地址/端口號以及目的地址/服務進行控管;而IDP可以做到4到7層(也就是應用層)的檢測,因此IDP可以發覺包藏在應用層里的惡意攻擊碼(譬如蠕蟲攻擊、緩沖溢位攻擊便藏匿于此),并予以狙擊。IDP內建龐大的攻擊特征數據庫,可以有效阻絕已知的攻擊;IDP也透過「異常協議偵測」的方式,實時檢查并將不符合RFC規范的網絡封包丟棄。所以在「攻擊防御」方面,IDP遠勝于防火墻之上。 由于IDP一般僅能就IP以及IP群組決定封包放行權限,所以在「資源存取權限管理」方面,防火墻較優于IDP。然而,防火墻并無法有效管控企業內部使用者使用P2P、實時通訊(Instant Messenger、Yahoo Messenger)等軟件、也無法杜絕利用Web-Mail或者Web-Post等方式將機密外泄,這些問題需要能監控4到7層的IDP設備才能控管。目前已經有少部分的IDP產品采用IXP2xxx芯片利用其「深層檢測」的優勢,有效地解決上述問題。 IDP可以防止蠕蟲由外入侵至企業網絡內部,而如果防火墻要防止蠕蟲攻擊,僅能消極地關閉某些Port。但一般的檔案型病毒,則不在IDP及防火墻的防護范圍內。因此資安的最后一層防護網便是在使用者端安裝防毒軟件。 各項資安產品皆有其擅長與不足之處,因此建議企業資安負責人員深入了解以及比較這些資安產品的差異,并依據企業的實際需要充分搭配使用,加強資安防護網的縱深,以確保企業的網絡安全。 后面我們就以較復雜的IDS為例做IXP-2400的應用說明。 網絡處理器的時代已經來臨,它可有效解決網絡交通擁塞的問題,也可處理復雜的封包運算。不論如何,Inetel IXA架構已經正確的跨出第一步,接下來就須要更多的平臺設計者投入開發工作,以及更多的應用開發者投入資源,發展軟件程序,逐步建立完整的可攜式Microblocks。網絡興起、頻寬加速拓展,使整個網絡通訊的市場板塊不斷的在調整、挪動,凌華科技與Intel合作,共同推廣IXP-2XXX網絡處理器的應用,針對網絡安全其中封包處理過程以下進一步來討論。 何謂封包與功能: 在網絡安全論述中,所有傳輸動作是經由封包完成的, 封包就很像我們在郵寄信件的時候那個郵件的模樣了!信紙內容總是得放入信封吧?而信封上面會寫上發信人住址,受收信人住址與姓名. 所以,一封郵件主要會有兩個部分,分別是:『信封表面的信息部分、與信封內部的信件內容!』。同樣的,網絡的信息封包主要也是分為兩個部分,一個是表頭 ( Header ) 的部分,另一個則是內容 ( messages ) 的部分!而一個封包要傳送到哪里去,都是通過 Header 的訊息部分進行分析而傳送的!那么 Header 有哪些重要的信息呢?主要就如同上面提到的,至少會有來源與目標 IP 、來源與目標 Port等等!封包是怎么在兩部主機之間進行傳送的呢?事實上,封包的傳送是相當復雜的,而且封包的狀態不同 (TCP/UDP) 也會有不一樣的傳送機制。這里舉一個『相對比較可靠的封包傳送方式』來介紹。如下圖所示:                    

較可靠的封包傳送狀態 較可靠的封包傳送狀態

當發送封包者發送出一個封包給接受者后,接受者在『正確的接到』這個封包之后,會回復一個響應封包 ( Acknowledgment ) 給發送者,告訴他接受者已經收到了!當發送端收到這個響應封包后,才會繼續發送下一個封包出去,否則就會將剛剛的封包重新發送一次!這種封包的傳遞方式因為考慮到對方接到的封包的狀態,所以算是比較可靠的一種方式。目前因特網上面常見的封包是 TCP 與 UDP ,其中 TCP 的聯機方式中,會考慮到較多的參數,他是一種聯機模式(Connection Oriented)的可靠傳輸,至于 UDP 則省略了響應封包的步驟,所以是一種非聯機導向的非可靠傳輸。在一個 TCP 封包的傳送過程中,因為至少需要傳送與響應等封包來確定傳送出去的數據沒有問題,所以他是相當可靠的一種傳輸方式,不過就是傳輸與響應之間的時間可能會拖比較久一點。至于 UDP 封包就因為少了那個確認的動作,所以雖然他是較不可靠一點,但是速度上就比 TCP 封包要來的快!底下我們將繼續介紹 TCP, UDP 以及 ICMP 等封包信息的內容. TCP 與 UDP 封包的建立是有差異存在的!針對TCP封包Header的內容作個簡單的介紹! TCP 封包的 Header 內容主要如下:                    

TCP TCP 封包的 Header 信息

Source Port & Destination Port ( 來源端口口 & 目標端口口 ):來源與目標的端口,這個容易了解吧!上面剛剛提過那個埠口的觀念。再次的強調一下,小于 1024 以下的 Port 只有 root 身份才能啟用,至于一般 Client 發起的聯機,通常是使用大于 1024 以上的埠口! Sequence Number ( 封包序號 ):在OSI 七層協定里面提到過,由于種種的限制,所以一次傳送的封包大小大約僅有數千 bytes ,但是我們的資料可能大于這個封包所允許的最大容量,所以就得將我們的數據拆成數個封包來進行傳送到目的地主機的動作。那么對方主機怎么知道這些封包是有關連性的呢?就得通過這個 Sequence Number 來輔助了。當發送端要發送封包時,會為這個封包設定一個序號,然后再依據要傳送的數據長度,依序的增加序號。也就是說,我們可以使用遞增的值來替下一個封包作為它序號的設定! Acknowledgment Number ( 回應序號 ) :封包傳輸過程中,我們知道在接受端接收了封包之后,會響應發送端一個響應封包,那個響應的信息就是在這里。當接收端收到 TCP 封包并且通過檢驗確認接收該封包后,就會依照原 TCP 封包的發送序號再加上數據長度以產生一個響應的序號,而附在回應給發送端的響應封包上面,這樣發送端就可以知道接收端已經正確的接收成功該 TCP 封包了!所以說, Sequence 與 Acknowledgment number 是 TCP 封包之所以可靠的保證!因為他可以用來檢測封包是否正確的被接受者所接收!   Data Offset (資料補償):這是用來記錄表頭長度用的一個字段。   Reserved (保留):未使用的保留字段。   Control Flag (控制標志碼):控制標志碼在 TCP 封包的聯機過程當中,是相當重要的一個標志,先來說一說這六個句柄,然后再來討論吧: Urgent data :如果 URG 為 1 時,表示這是一個緊急的封包數據,接收端應該優先處理; Acknowledge field significant :當 ACK 這個 Flag 為 1 時,表示這個封包的 Acknowledge Number 是有效的,也就是我們上面提到的那個回應封包。 Push function :如果 PSH 為 1 的時候,該封包連同傳送緩沖區的其它封包應立即進行傳送,而無需等待緩沖區滿了才送。接收端必須盡快將此數據交給程序處理。 Reset :如果 RST 為 1 的時候,表示聯機會被馬上結束,而無需等待終止確認手續。 Synchronize sequence number :這就是 SYN 標志啦!當 SYN 為 1 時,那就表示發送端要求雙方進行同步處理,也就是要求建立聯機的意思,這個 SYN 是相當重要的一個 Flag 喔! No more data fro sender (Finish) :如果封包的 FIN 為 1 的時候,就表示傳送結束,然后雙方發出結束響應,進而正式進入 TCP 傳送的終止流程。   Window (滑動窗口):與接收者的緩沖區大小有關的一個參數。 Checksum(確認):當數據要由發送端送出前,會進行一個檢驗的動作,并將該動作的檢驗值標注在這個字段上;而接收者收到這個封包之后,會再次的對封包進行驗證,并且比對原發送的 Checksum 值是否相符,如果相符就接受,若不符就會假設該封包已經損毀,進而要求對方重新發送此封包! Urgent Pointer:指示緊急數據所在位置的字段。 Option:當需要 client 與 Server 同步動作的程序,例如 Telnet ,那么要處理好兩端的交互模式,就會用到這個字段來指定數據封包的大小,不過,這個字段還是比較少用的! 為什么需要用到 Intel IXP-2XXX 網絡處理器 因特網、企業網絡等

投訴建議

提交

查看更多評論
其他資訊

查看更多

凌華科技推出AES-100系列AI邊緣服務器

凌華科技推出邊緣視覺分析軟件開發套件EVA SDK加速邊緣AI視覺

人工智能正在改變物流自動化的方式,將為勞動密集型產業帶來革新

凌華科技加入開放式無線接入網O-RAN聯盟 加速網絡互通性 助力企業邁向5G

凌華科技推出首款搭載NVIDIA Quadro P1000圖形處理功能的PC/104模塊