Cổng vũng là một chức năng đặc biệt cú thể thực hiện đươc bởi một cổng ứng dụng. Cổng vũng đơn giản chỉ chuyển tiếp (relay) cỏc kết nối TCP mà khụng thực hiện bất kỳ một hành động xử lý hay lọc gúi nào.
Hỡnh 42 minh hoạ một hành động sử dụng nối Telnet qua cổng vũng. Cổng vũng đơn giản chuyển tiếp kết nối Telnet qua Firewall mà khụng thực hiện một sự kiểm tra, lọc hay điều khiển cỏc thủ tục Telnet nào. Cổng vũng làm việc như một sợi dõy, sao chộp cỏc byte giữa kết nối bờn trong (inside connection) và cỏc kết nối bờn ngoài (outside connection). Tuy nhiờn, vỡ sự kết nối này xuất hiện từ hệ thống Firewall, nú che dấu thụng tin về mạng nội bộ.
Cổng vũng thường được sử dụng cho những kết nối ra ngoài, nơi mà cỏc nhà quản trị mạng thật sự tin tưởng những người dựng bờn trong. Ưu điểm lớn nhất là một Bastion Host cú thể được cấu hỡnh như là một hỗn hợp cung cấp cổng ứng dụng cho những kết nối đến, và cổng vũng cho cỏc kết nối đi. Điều này làm cho hệ thống bức tường lửa dễ dàng sử dụng cho những người trong mạng nội bộ muốn trực tiếp truy nhập tới cỏc dịch vụ Internet, trong khi vẫn cung cấp chức năng bức tường lửa để bảo vệ mạng nội bộ từ những sự tấn cụng bờn ngoài.
Chương 4: Hệ thống Packet Filtering 4.1. Giới thiệu về Packet Filtering
Firewall cú thể được hiện thực ở những lớp khỏc nhau của Protocol stack. Hai dạng thụng dụng được hiện thực là ở lớp ứng dụng bởi “Forwarding application Firewall” và ở lớp mạng bởi “Filtering Router”. Một cỏch tổng quỏt là Firewall cú thể hiện thực ở bất kỳ lớp nào của Protocol stack cũng như bất kỳ bộ Protocol nào. Nhưng do Firewall thường được dựng để bảo vệ hệ thống mạng mỏy tớnh được nối vào Internet, mà nghi thức giao tiếp trờn Internet là TCP/IP nờn trong phần này sẽ trỡnh bày dạng Firewall ở lớp IP.
Hỡnh 43: Sơ đồ làm việc của Packet Filtering
Hệ thống Packet Filtering (Packet Filtering System) là một hệ thống sử dụng cỏch lọc (filter) cỏc Packet vào/ra khỏi mạng để bảo vệ hệ thống mạng.
Để truyền thụng tin từ mạng này sang mạng khỏc, thụng tin cần truyền đi phải được chia nhỏ thành những gúi, và những gúi này được gửi đi riờng biệt. Bằng việc chia nhỏ thụng tin thành từng gúi mà nhiều mỏy cú thể dựng chung một kờnh truyền thụng. Trong hệ thống mạng IP, những gúi thụng tin này được gọi là Packet. Tất cả dữ liệu truyền trờn mạng IP đều ở dạng Packet.
Trong việc kết nối nhiều mạng mỏy tớnh lại với nhau, thiết bị cơ bản được dựng là Router. Router cú thể là phần cứng đặc biệt chuyờn biệt làm Router hoặc nú cú thể là một phần mềm chạy trờn những mỏy UNIX hoặc PC (MS–DOS, Windows, … ). Những Packet đi qua một liờn mạng (mạng của nhiều mạng), thường xuất phỏt từ mỏy gửi đến Router này, Router này sẽ gửi Packet đến Router khỏc đến khi nào Packet đến mỏy đớch cuối cựng.
Chức năng cơ bản của Router là nhận và gửi mỗi Packet nú nhận được. Nú phải quyết định làm thế nào để gửi Packet hướng đến mỏy đớch cuối cựng của nú. Thụng thường thỡ mỗi Packet khụng mang những thụng tin giỳp Router trong việc tỡm đuờng, ngoại trừ địa chỉ IP của mỏy mà Packet sẽ đến. Thụng tin trong Packet chỉ ra cho Router biết nơi nào nú sẽ đến, mà khụng cung cấp cho Router biết làm thế nào để đến đớch. Router trao đổi thụng
tin với mỗi Router khỏc dựng giao thức định tuyến (Routing Protocol) như “Routing Information Protocol (RIP) và Open Shortest Path First (OSPF) để xõy dựng bảng routing (routing table) trong bộ nhớ để tỡm đường gửi Packet hướng đến nơi đến của nú. Để gửi một Packet đi, Router so sỏnh địa chỉ đến của Packet với những điểm vào trong routing table để xỏc định đường đi đến đớch cho Packet. Thụng thường nếu khụng cú đường đi đến một nơi nào đú, Router sẽ dựng một con đường mặc định, thường là gửi Packet đến Router thụng minh hơn hoặc gửi Packet ra Internet.
Để xỏc định làm thế nào để gửi Packet đến nơi đến cuối của nú, một Router thụng thường chỉ dựa vào địa chỉ mỏy đến để gửi Packet đi. Một Packet Filtering Router cũn phải thực hiện thờm một việc khỏc là liệu Packet này cú được cho phộp để gửi đi hay khụng? Để biết được liệu Router cú thể được gửi Packet đi hay khụng, thường thỡ nú dựa vào chớnh sỏch bảo vệ đó được cấu hỡnh trước, và thường chớnh sỏch bảo vệ này là một tập hợp cỏc qui tắc gọi là “Filtering rules”.
4.2. Những chức năng của một Packet Filtering Router
Packet Filtering (hay việc lọc và giỏm sỏt cỏc Packet vào và ra khỏi mạng) cho phộp (hoặc khụng cho phộp) chỳng ta điều khiển trao đổi dữ liệu giữa một mạng cần được bảo vệ với Internet chủ yếu dựa trờn cỏc thụng tin sau:
Địa chỉ nơi xuất phỏt của dữ liệu Địa chỉ nơi dữ liệu sẽ đến
Nghi thức ở cấp ứng dụng được sử dụng để truyền dữ liệu
Hầu hết cỏc Packet filtering Router thực hiện việc lọc cỏc Packet khụng dựa trờn nội dung của dữ liệu. Packet Filtering Router thường sẽ cú những khả năng cú dạng như sau:
Khụng cho phộp bất cứ người nào dựng Telnet (một nghi thức cấp ứng dụng application Protocol) để login từ bờn ngoài vào hệ thống mạng cần bảo vệ.
Cho phộp bất cứ ai cú thể gửi e–mail dựng SMTP (một nghi thức ở cấp ứng dụng) cho cỏc user trong mạng cần bảo vệ hoặc ngược lại.
Mỏy cú địa chỉ X cú thể gửi tin tức cho chỳng ta dựng một nghi thức nào đú, nhưng những mỏy khỏc khụng cú được đặc quyền này.
Do Packet filter lọc cỏc gúi IP chủ yếu là dựa vào địa chỉ mỏy gửi và mỏy nhận cho nờn nú khụng thể cho phộp một user A nào đú được dựng dịch vụ Telnet mà user khỏc thỡ khụng. Packet filter cũng khụng cú khả năng cấm việc truyền file này mà khụng cho phộp việc truyền cỏc file khỏc.
Ưu điểm chớnh của Packet Filtering là khả năng tỏc dụng toàn cục của nú. Nú cung cấp khả năng bảo vệ tương đối cho toàn mạng mà chỉ đặt ở một nơi. Một vớ dụ cho thấy điều đú là việc cấm dịch vụ Telnet. Nếu chỳng ta cấm dịch vụ Telnet vào bằng cỏch tắt tất cả cỏc Telnet Server của chỳng ta cũng chưa hẳn là chỳng ta đó cấm hoàn toàn được dịch vụ Telnet từ bờn ngoài vỡ rằng cú thể cú một người nào đú trong cơ quan cài đặt một mỏy mới (hoặc cài đặt lại mỏy cũ) cú Telnet Server đang chạy. Nhưng mà nếu Telnet bị cấm bởi Packet Filtering Router thỡ mỏy mới được cài đặt này cũng được bảo vệ mặc dự Telnet
Server ở mỏy đú cú bật lờn hay khụng. Núi túm lại Packet Filtering Router cú thể bảo vệ toàn mạng ở một mức nào đú một cỏch triệt để.
Khả năng bảo vệ mạng ở một mức độ nào đú cú thể chỉ cần cung cấp bởi những Filtering Router. Nhờ Packet Filtering Router chỳng ta cú thể bảo vệ được việc tấn cụng hệ thống mạng ở dạng đỏnh lừa địa chỉ (address – spoofing attacks). Với dạng tấn cụng này, người tấn cụng vào hệ thống thường lấy địa chỉ mỏy cục bộ mà họ muốn tấn cụng làm địa chỉ nguồn của dữ liệu mà họ gửi đi. Chỉ cú Router mới biết được những Packet loại này đến từ mạng bờn ngoài (Internet) mà cú địa chỉ nguồn giống những địa trong mạng mà nú bảo vệ, nờn nú cú thể phỏt hiện ra kiểu đỏnh lừa địa chỉ này.
4.3. Ưu, nhượcđiểm của hệ thống Packet Filtering
Hệ thống sử dụng Packet Filtering Router cú những ưu điểm sau:
Một Filtering Router cú thể bảo vệ toàn cả mạng: Một ưu điểm quan trọng nhất của Packet Filtering đú là chỉ cần ở một vị trớ chiến lược mà Packet Filtering Router cú thể bảo vệ toàn bộ mạng. Nếu chỉ cú một Router nối mạng cần bảo vệ với Internet, thỡ chỉ cần một Filtering Router là cú thể bảo vệ toàn bộ mạng mà khụng phụ thuộc vào mức độ lớn nhỏ của mạng cần bảo vệ, mặc dự khả năng bảo vệ chỉ ở một mức nào đú mà thụi (việc bảo vệ mang tớnh toàn cục – global)
Packet Filtering System cú thể cấm hoặc cho phộp một số loại dịch vụ, hay một số địa chỉ IP của một số hệ thống nào đú.
Packet Filtering cú thể khụng ảnh hưởng đến user : Packet Filtering khụng cần thay đổi phần mềm Client hoặc thay đổi cấu hỡnh mỏy của Client, user cũng khụng cần phải huấn luyện để sử dụng hệ thống Packet filering mặc dự cú sự cộng tỏc của user thỡ vẫn tốt hơn, đõy là tớnh trong suốt (tranparency) đối với user. Khi Filtering Router nhận được một Packet, xem xột và thấy nú thỏa món qui tắc bảo vệ, lỳc đú Router sẽ forward Packet đi như những Router thụng thường làm cho nờn khụng thấy rừ sự khỏc biệt giữa Filtering Router và Router thụng thường.
Khả năng lọc chỉ dựa trờn địa chỉ IP và số port mà khụng dựa trờn user/ application mặc dự cú một số Packet Filtering system cho phộp lọc dựa trờn hostname nhưng khụng nờn đặc tả cỏc qui tắc để lọc dựa trờn hostname vỡ như vậy hệ thống sẽ bị tấn cụng bằng cỏch khỏc – Vớ Dụ làm tờ liệt DNS Server hoặt giả DNS Server để trả lời query tờn mỏy thành địa chỉ IP.
Hiện nay cú nhiều Router cung cấp khả năng Packet Filtering: khả năng lọc gúi được nhiều nhà sản xuất phần cứng cũng như phần mềm hỗ trợ trong sản phẩm của họ, những sản phẩn thương mại cũng như miễn phớ trờn Internet.
Mặc dự Packet Filtering cú nhiều ưu điểm như ở trờn nhưng nú cũng cú một số nhượcđiểm sau:
Đối với Packet Filtering System cú thể bị tấn cụng theo loại network denial of service attacks. Khi người tấn cụng biết hệ thống cú Packet filter, họ sẽ cố gắng làm tờ liệt hoạt động hệ thống nhờ cỏc kỹ thuật “message flooding”, “service overloading”. Message
flooding là một dạng tấn cụng vào hệ thống làm tờ liệt hoạt động của hệ thống bằng cỏch gõy lũ dữ liệu hệ thống bị tấn cụng. Người tấn cụng thường gửi hàng loạt cỏc message vào hệ thống mà họ tấn cụng. Kết quả là hệ thống bị tấn cụng khụng cũn thời gian để xử lý những yờu cầu khỏc, đụi lỳc nú cú thể làm treo hệ thống bị tấn cụng. Dạng tấn cụng điển hỡnh của kiểu này là người tấn cụng cho thực hiện việc gửi hành loạt cỏc mail–message vào hệ thống mà họ tấn cụng dẫn đến kết quả là mail–Server khụng cũn vựng nhớ để lưu những mail hay thụng tin khỏc, đõy là tỡnh trạng đĩa đầy.
Những cụng cụ Packet Filtering hiện hành là khụng hoàn thiện: Mặc dự khả năng Packet Filtering được cung cấp bởi nhiều nhà cung cấp phần cứng cũng như phần mềm nhưng những sản phẩm này vẫn chưa được hoàn thiện. Những Packet Filtering thường cú một số hạn chế sau:
Việc xỏc định qui tắc để lọc cỏc Packet thường khú thực hiện và cũng khú cấu hỡnh. Vỡ phải thực hiện việc chuyển chớnh sỏch bảo vệ thành một tập cỏc qui tắc lọc thường rất khú.
Khi đó được cấu hỡnh thỡ việc kiểm tra cỏc luật lệ (rules) cũng khú khăn.
Khả năng của nhiều sản phẩm Packet Filtering thường khụng hoàn thiện, cũng như khả năng trợ giỳp cho việc hiện thực một số dạng lọc gúi ở mức cao thường khú thực hiện, nhiều lỳc là khụng thể thực hiện được.
Giống như bất kỳ những sản phẩm khỏc, những Packet Filtering cũng cú thể cú một số lỗi mà những lỗi này cú thể gõy ra một số kết quả khụng mong muốn. Những lỗi này cú thể gõy ra cho nú hoạt động sai, đú là nú cú thể cho phộp một số Packet nào đú đi qua thay vỡ cấm.
Một số giao thức (Protocol) khụng thớch hợp với Packet Filtering, thậm chớ đối với những sản phẩm Packet Filtering hoàn hảo, chỳng ta cũng sẽ thấy rằng cú một số nghi thức mà những khả năng bảo vệ của Packet Filtering khụng thể bảo vệ mạng được hoặc là những dịch vụ sử dụng những Protocol loại này phải bị cấm. Những Protocol điển hỡnh cho dạng đú là cỏc Berkley “r” command (rcp, rlogin, rdist, rsh, .. .) và những RPC–based Protocol như NFS, NIS/YP.
Một số chớnh sỏch bảo vệ khụng thể thực hiện được nhờ vào Packet Filtering: Qui tắc mà một Packet Filtering cho chỳng ta đặc tả cú thể khụng phự hợp với yờu cầu thực sự của chỳng ta. Khụng cú khả năng bảo vệ ở cấp application, khụng thể thay đổi hoạt động của một dịch vụ, khụng giỏm sỏt được từng chức năng trờn một dịch vụ cụ thể để cú thể cấm hoặc cho phộp một chức năng nào đú trờn dịch vụ nào đú (núi như vậy là tựy thuộc vào hiện thực của Packet Filtering System nhưng mà hầu hết cỏc khả năng cú thể làm được là như trờn) Packet Filtering cũng khụng cho phộp chỳng ta cấm hoặc cho phộp user này cú thể được sử dụng một dịch vụ nào đú nhưng mà user khỏc thỡ khụng được phộp.
Như đó được giới thiệu ở phần trờn, Packet filter là một bộ lọc gúi, cung cấp khả năng lọc cỏc IP Packet ở mức gửi Packet (Packet routing level) với kết quả là quyết định là cho qua (pass) hay từ chối (drop) đối với mỗi Packet. Kết quả của việc xử lý ở mức thấp này là tốc độ xử lý cao nhưng ớt an toàn hơn application–level gateway.
Filtering Router giữ chức năng của một Router và thờm chức năng filter. Nhiệm vụ của Packet Filtering Router sẽ gửi (route) và nhận cho vào (receive) cỏc Packet cú chọn lựa giữa internal host và external host. Packet Filtering cú thể thực hiện ở nhiều cấp hoặc kết hợp giữa cỏc cấp này. Dưới đõy là sơ một sơ đồ luõn chuyển dữ liệu điển hỡnh (hỡnh 44)
Hỡnh 44: Sơ đồ luõn chuyển dữ liệu điển hỡnh của hệ thống Packet Filtering
Cỏc sản phẩm Packet Filtering hiện nay chỉ cú thể lọc cỏc Packet dựa trờn header của Packet và thụng tin Packet từ interface card nào (mỗi Packet gồm 2 phần: header và data). Túm lại việc lọc chỉ dựa trờn thụng tin điều khiển. Với cụng nghệ hiện nay, Packet filter chưa cú khả năng lọc cỏc Packet dựa vào nội dung (not make content–based decisions).
Do Packet filter lọc cỏc Packet dựa trờn cỏc thụng tin điều khiển ở cỏc header ở mỗi Protocol stack, nờn đối với cỏc IP Packet filter thỡ thụng tin header được sử dụng là thụng tin ở IP header và TCP header
Dạng đơn giản nhất mà một Filtering Router cú thể thực hiện là việc lọc cỏc Packet dựa tờn địa chỉ. Lọc cỏc Packet theo dạng này cho phộp chỳng ta điều khiển dữ liệu dựa trờn địa chỉ mỏy gửi và địa chỉ mỏy nhận Packet mà khụng quan tõm đến nghi thức nào đang được sử dụng. Khả năng lọc gúi theo dạng này cú thể được dựng để cho phộp một số mỏy nào đú ở bờn ngoài cú thể trao đổi dữ liệu với một số mỏy nào đú ở trong mạng cần bảo vệ, hoặc cũng cú thể bảo vệ được những dạng đỏnh lừa thụng tin trong Packet (những Packet xuất phỏt từ Internet (bờn ngoài) mà cú địa chỉ mỏy gửi lại là địa chỉ mỏy ở trong mạng mạng bảo vệ.
Những rủi ro của việc lọc dựa trờn địa chỉ mỏy gửi:
Thụng tin ở mỗi Packet header cú chứa địa chỉ nguồn của mỏy gửi Packet (khụng nờn tin tưởng hoàn toàn vào thụng tin này do việc địa chỉ mỏy gửi cú thể bị giả mạo). Trừ khi chỳng ta sử dụng những kỹ thuật chứng thực như (cryptographic authentication) giữa hai mỏy trao đổi dữ liệu cho nhau, chỳng ta thực sự khụng thể biết chắc chắn rằng mỏy mà chỳng ta đang trao đổi dữ liệu với nú thực sự chớnh nú hay một mỏy khỏc giả danh mỏy này (giống như lấy địa chỉ của một người khỏc để gửi thư đi). Qui tắc lọc ở trờn chỉ loại trừ khả năng một mỏy bờn ngoài giả mạo thành một mỏy bờn trong, nú khụng phỏt hiện được việc một mỏy bờn ngoài giả mạo địa chỉ của một mỏy bờn ngoài khỏc.
Do đú, người tấn cụng cú thể cú hai dạng tấn cụng dựa trờn việc giả mạo địa chỉ là : giả mạo địa chỉ mỏy gửi “source address” và “man in the middle”.
Dạng tấn cụng giả danh cơ bản nhất là sự giả mạo địa chỉ mỏy gửi (source address), người tấn cụng sẽ gửi dữ liệu cho chỳng ta mà sử dụng địa chỉ mỏy gửi khụng phải là địa