Luận văn An toàn trong mạng máy tính và về bức tường lửa

Protocol sercurity: một vài dịch vụ để thực hiện Proxy cho nú cú thể khỏ đơn giản, nhưng loại trừ vấn đề về security. Nếu một nghi thức vốn khụng an toàn, Proxy khụng thể làm điều gỡ khỏc để tăng độ an toàn cho nú. Thường nếu khú phõn biệt giữa những tỏc vụ an toàn và khụng an toàn thỡ nờn đặt dịch vụ đó trờn Victim host. User specified data: vài dịch vụ, đặc biệt “store and forward”như smtp, nntp, .thường chớnh nú đó tự hổ trợ tớnh Proxying.

pdf96 trang | Chia sẻ: lylyngoc | Lượt xem: 2369 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Luận văn An toàn trong mạng máy tính và về bức tường lửa, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
SNMP Server, Proxy Servers … Sử dụng 1 Bastion Host khỏc cung cấp dịch vụ cho Internet hoặc những người sử dụng bờn ngoài (external user) sẽ sử dụng. Như là Anonymous FTP Server mà Server này những người sử dụng bờn trong (local users) khụng truy xuất đến. Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 75 Hỡnh 39: Sơ đồ kiến trúc sử dụng 2 Bastion Host Với cỏch này thỡ tốc độ đáp ứng cho những người sử dụng bờn trong (local user) một phần nào đó khụng bị ảnh hưởng (bị làm chậm đi) bởi hoạt động của những người sử dụng bờn ngoài (external users). Cũng cú thể sử dụng nhiều Bastion Host mà cung cấp cho 1 dịch vụ nào đó để tăng tốc độ đáp ứng (performance), nhưng việc này cũng khú cõn bằng tải giữa cỏc Server trừ khi đoỏn trước được mức độ sử dụng. Việc sử dụng kỹ thuật dư thừa để đảm bảo tớnh sẵn sàng cao của hệ thống, để khi mà một Bastion Host hỏng thỡ cú cỏi khỏc thay thế. Nhưng chỉ cú một số loại dịch vụ trợ giỳp dạng này: DNS Server, SMTP Server, ... cú thể dựng nhiều Bastion Host làm DNS Server , SMTP Server. Khi một Bastion Host hỏng hoặc quỏ tải, những yờu cầu về DNS Server và SNMP sẽ được dựng qua Bastion Host khỏc như là một fallback system. Sử dụng nhiều Bastion Host trong trường hợp muốn cung cấp dịch vụ cho nhiều mạng khỏc nhau, và loại dữ liệu cung cấp cho mỗi mạng cũng khỏc nhau. Sử dụng nhiều Bastion Host cho cỏc Server khỏc nhau để khi mà một Server nào đó bị đột nhập vào hay bị hỏng thỡ Server khỏc vẫn hoạt động tốt. Vớ Dụ : Tỏch HTTP Server và FTP Server trờn 2 mỏy riờng biệt. 2.5. Kiến trỳc ghộp chung Router trong (Interior Router) và Router ngoài (Exterior Router) Sử dụng kiến trỳc này thỡ cần tăng tốc độ của mỏy làm Router. Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 76 Hỡnh 40: Sơ đồ kiến trúc ghép chung Router trong và Router ngoài Kiến trỳc này gần giống với Screened Host trong trường hợp khi mà exterior/interior Router bị đột nhập vào thỡ lưu thụng trong mạng bờn trong sẽ bị lộ ra bờn ngoài nhưng tốt hơn Screened Host đó là nú cũng sử dụng thờm một mạng bờn ngoài. Mạng bờn ngoài sẽ chứa cỏc Server cú thể nối ra Internet mà nếu cỏc Server này bị đột nhập thỡ lưu thụng của mạng bờn trong cũng khụng bị lộ ra bờn ngoài. Kiến trỳc này cũng gần giống với Screened Subnet nhưng mà exterior Router và interior Router được ghộp chung nờn nú giảm đi số lớp bảo vệ. Núi chung, kiến trỳc ghộp chung interior Router và exterior Router ở trung gian giữa hai kiến trỳc này. 2.6. Kiến trỳc ghộp chung Bastion Host và Router ngoài (Exterior Router) Kiến trỳc này sử dụng cho mạng chỉ cú một đường nối dựng nghi thức SLIP hoặc PPP ra Internet. Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 77 Hỡnh 41: Sơ đồ kiến trúc ghép chung Bastion Host và Router ngoài Kiến ghộp chung Bastion Host và Router ngoài (Exterior Router) này gần giống với Screened Subnet. Nú cho tốc độ đáp ứng thường thấp nhưng mà vẫn cú thể chấp nhận được do tốc độ đường truyền thấp, chức năng lọc của Router ngoài ớt, chức năng lọc gúi chủ yếu là Router trong. CHƯƠNG 3: CÁC THÀNH PHẦN CỦA FIREWALL VÀ CƠ CHẾ HOẠT ĐỘNG Một Firewall chuẩn bao gồm một hay nhiều cỏc thành phần sau đây: • Bộ lọc gúi (Packet–Filter) • Cổng ứng dụng (Application–level Gateway hay Proxy Server) • Cổng mạch (Circuite level Gateway) Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 78 3.1. Bộ lọc gúi (Packet Filter) 3.1.1. Nguyờn lý hoạt động Khi núi đến việc lưu thụng dữ liệu giữa cỏc mạng với nhau thụng qua Firewall thỡ điều đó cú nghĩa rằng Firewall hoạt động chặt chẽ với giao thức TCI/IP. Vỡ giao thức này làm việc theo thuật toỏn chia nhỏ cỏc dữ liệu nhận được từ cỏc ứng dụng trờn mạng, hay núi chớnh xỏc hơn là cỏc dịch vụ chạy trờn cỏc giao thức (Telnet, SMTP, DNS, SMNP, NFS ...) thành cỏc gúi dữ liệu (data pakets) rồi gỏn cho cỏc paket này những địa chỉ để cú thể nhận dạng, tỏi lập lại ở đích cần gửi đến, do đó cỏc loại Firewall cũng liờn quan rất nhiều đến cỏc Packet và những con số địa chỉ của chỳng. Bộ lọc gúi cho phộp hay từ chối mỗi Packet mà nú nhận được. Nú kiểm tra toàn bộ đoạn dữ liệu để quyết định xem đoạn dữ liệu đó cú thoả món một trong số cỏc luật lệ của lọc gúi hay khụng. Cỏc luật lệ lọc gúi này là dựa trờn cỏc thụng tin ở đầu mỗi Packet (Packet Header ), dựng để cho phộp truyền cỏc Packet đó ở trờn mạng. Đó là: • Địa chỉ IP nơi xuất phỏt ( IP Source address) • Địa chỉ IP nơi nhận (IP Destination address) • Những thủ tục truyền tin (TCP, UDP, ICMP, IP tunnel) • Cổng TCP/UDP nơi xuất phỏt (TCP/UDP source port) • Cổng TCP/UDP nơi nhận (TCP/UDP destination port) • Dạng thụng bỏo ICMP (ICMP message type) • Giao diện Packet đến (Incomming interface of Packet) • Giao diện Packet đi (Outcomming interface of Packet) Nếu luật lệ lọc gúi được thoả món thỡ Packet được chuyển qua Firewall. Nếu khụng Packet sẽ bị bỏ đi. Nhờ vậy mà Firewall cú thể ngăn cản được cỏc kết nối vào cỏc mỏy chủ hoặc mạng nào đó được xỏc định, hoặc khoỏ việc truy cập vào hệ thống mạng nội bộ từ những địa chỉ khụng cho phộp. Hơn nữa, việc kiểm soỏt cỏc cổng làm cho Firewall cú khả năng chỉ cho phộp một số loại kết nối nhất định vào cỏc loại mỏy chủ nào đó, hoặc chỉ cú những dịch vụ nào đó (Telnet, SMTP, FTP...) được phộp mới chạy được trờn hệ thống mạng cục bộ. 3.1.2. Ưu điểm và hạn chế của hệ thống Firewall sử dụng bộ lọc gúi Ưu điểm: • Đa số cỏc hệ thống Firewall đều sử dụng bộ lọc gúi. Một trong những ưu điểm của phương phỏp dựng bộ lọc gúi là chi phớ thấp vỡ cơ chế lọc gúi đó được bao gồm trong mỗi phần mềm Router. • Ngoài ra, bộ lọc gúi là trong suốt đối với người sử dụng và cỏc ứng dụng, vỡ vậy nú khụng yờu cầu sự huấn luyện đặc biệt nào cả. Hạn chế: Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 79 • Việc định nghĩa cỏc chế độ lọc gúi là một việc khỏ phức tạp; nú đũi hỏi người quản trị mạng cần cú hiểu biết chi tiết về cỏc dịch vụ Internet, cỏc dạng Packet Header, và cỏc giỏ trị cụ thể mà họ cú thể nhận trờn mỗi trường. Khi đũi hỏi vể sự lọc càng lớn, cỏc luật lệ về lọc càng trở nờn dài và phức tạp, rất khú để quản lý và điều khiển. • Do làm việc dựa trờn Header của cỏc Packet, rừ ràng là bộ lọc gúi khụng kiểm soỏt được nội dung thụng tin của Packet. Cỏc Packet chuyển qua vẫn cú thể mang theo những hành động với ý đồ ăn cắp thụng tin hay phỏ hoại của kẻ xấu. 3.2. Cổng ứng dụng (Application–Level Gateway) 3.2.1. Nguyờn lý hoạt động Đây là một loại Firewall được thiết kế để tăng cường chức năng kiểm soỏt cỏc loại dịch vụ, giao thức được cho phộp truy cập vào hệ thống mạng. Cơ chế hoạt động của nú dựa trờn cỏch thức gọi là Proxy Service (dịch vụ đại diện). Proxy Service là cỏc bộ code đặc biệt cài đặt trờn cổng ra (gateway) cho từng ứng dụng. Nếu người quản trị mạng khụng cài đặt Proxy code cho một ứng dụng nào đó, dịch vụ tương ứng sẽ khụng được cung cấp và do đó khụng thể chuyển thụng tin qua Firewall. Ngoài ra, Proxy code cú thể được định cấu hỡnh để hỗ trợ chỉ một số đặc điểm trong ứng dụng mà ngưũi quản trị mạng cho là chấp nhận được trong khi từ chối những đặc điểm khỏc. Một cổng ứng dụng thường được coi như là một phỏo đài (Bastion Host), bởi vỡ nú được thiết kế đặt biệt để chống lại sự tấn cụng từ bờn ngoài. Những biện phỏp đảm bảo an ninh của một Bastion Host là:  Bastion Host luụn chạy cỏc version an toàn (secure version) của cỏc phần mềm hệ thống (Operating system). Cỏc version an toàn này được thiết kế chuyờn cho mục đích chống lại sự tấn công vào hệ điều hành (Operating System), cũng như là đảm bảo sự tớch hợp Firewall.  Chỉ những dịch vụ mà người quản trị mạng cho là cần thiết mới được cài đặt trờn Bastion Host, đơn giản chỉ vỡ nếu một dịch vụ khụng được cài đặt, nú khụng thể bị tấn cụng. Thụng thường, chỉ một số giới hạn cỏc ứng dụng cho cỏc dịch vụ Telnet, DNS, FTP, SMTP và xỏc thực user là được cài đặt trờn Bastion Host.  Bastion Host cú thể yờu cầu nhiều mức độ xỏc thực khỏc nhau, Vớ Dụ như user password hay smart card. • Mỗi Proxy được đặt cấu hỡnh để cho phộp truy nhập chỉ một sồ cỏc mỏy chủ nhất định. Điều này cú nghĩa rằng bộ lệnh và đặc điểm thiết lập cho mỗi Proxy chỉ đúng với một số mỏy chủ trờn toàn hệ thống. • Mỗi Proxy duy trỡ một quyển nhật ký ghi chộp lại toàn bộ chi tiết của giao thụng qua nú, mỗi sự kết nối, khoảng thời gian kết nối. Nhật ký này rất cú ớch trong việc tỡm theo dấu vết hay ngăn chặn kẻ phỏ hoại. • Mỗi Proxy đều độc lập với cỏc proxies khỏc trờn Bastion Host. Điều này cho phộp dễ dàng quỏ trỡnh cài đặt một Proxy mới, hay thỏo gỡ mụt Proxy đang cú vấn để. Vớ Dụ: Telnet Proxy Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 80 Vớ Dụ một người dựng bờn ngoài (gọi là Outside Client) muốn sử dụng dịch vụ Telnet để kết nối vào hệ thống mạng qua mụt Bastion Host cú Telnet Proxy. Quỏ trỡnh xảy ra như sau: 1. Outside Client Telnets đến Bastion Host. Bastion Host kiểm tra password, nếu hợp lệ thỡ outside Client được phộp vào giao diện của Telnet Proxy. Telnet Proxy cho phộp một tập nhỏ những lệnh của Telnet, và quyết định những mỏy chủ nội bộ nào outside Client được phộp truy nhập. 2. Outside Client chỉ ra mỏy chủ đích và Telnet Proxy tạo một kết nối của riờng nú tới mỏy chủ bờn trong, và chuyển cỏc lệnh tới mỏy chủ dưới sự uỷ quyền của outside Client. Outside Client thỡ tin rằng Telnet Proxy là mỏy chủ thật ở bờn trong, trong khi mỏy chủ ở bờn trong thỡ tin rằng Telnet Proxy là Client thật. 3.2.2. Ưu điểm và hạn chế Ưu điểm: • Cho phộp người quản trị mạng hoàn toàn điều khiển được từng dịch vụ trờn mạng, bởi vỡ ứng dụng Proxy hạn chế bộ lệnh và quyết định những mỏy chủ nào cú thể truy nhập được bởi cỏc dịch vụ. • Cho phộp người quản trị mạng hoàn toàn điều khiển được những dịch vụ nào cho phộp, bởi vỡ sự vắng mặt của cỏc Proxy cho cỏc dịch vụ tương ứng cú nghĩa là cỏc dịch vụ ấy bị khoỏ. • Cổng ứng dụng cho phộp kiểm tra độ xỏc thực rất tốt, và nú cú nhật ký ghi chộp lại thụng tin về truy nhập hệ thống. • Luật lệ filltering (lọc) cho cổng ứng dụng là dễ dàng cấu hỡnh và kiểm tra hơn so với bộ lọc gúi. Hạn chế: • Yờu cầu cỏc users biến đổi (modify) thao tỏc, hoặc modify phần mềm đó cài đặt trờn mỏy Client cho truy nhập vào cỏc dịch vụ Proxy. Vớ Dụ, Telnet truy nhập qua cổng ứng dụng đũi hỏi hai bước để nối với mỏy chủ chứ khụng phải là một bước thụi. Tuy nhiờn, cũng đó cú một số phần mềm Client cho phộp ứng dụng trờn cổng ứng dụng là trong suốt, bằng cỏch cho phộp user chỉ ra mỏy đích chứ khụng phải cổng ứng dụng trờn lệnh Telnet. 3.3. Cổng vũng (Circuit–Level Gateway) Hỡnh 42: Kết nối qua cổng vũng(Circuit–Level Gateway) Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 81 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. Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 82 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ú Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 83 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 Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 84 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 Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 85 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. 4.4. Nguyờn tắc hoạt động của hệ thống Packet Filtering Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 86 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 4.4.1. Lọc cỏc Packet dựa trờn địa chỉ (address) Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 87 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 chỉ mỏy của họ, thường họ sẽ đoỏn một số địa chỉ mà hệ thống của chỳng ta tin tưởng, sau đó họ sẽ sử dụng địa chỉ này như là địa chỉ mỏy gửi với hy vọng rằng chỳng ta sẽ cho những Packet họ đó gửi đi vào mạng của chỳng ta, và cũng khụng mong chờ những Packet kết quả trả lời từ những mỏy trong hệ thống mạng của chỳng ta. Nếu người tấn cụng khụng quan tõm đến việc nhận những Packet trả về từ hệ thống của chỳng ta, thỡ khụng cần thiết họ phải ở trong lộ trỡnh giữa chỳng ta và hệ thống bị họ giả danh, họ cú thể ở bất cứ nơi đâu. Trong thực tế, những Packet trả lời từ hệ thống của chỳng ta sẽ gửi đến những mỏy (những mỏy này người tấn cụng vào hệ thống của chỳng ta đó sử dụng địa chỉ của họ), mà những Packet sẽ khụng gửi đến mỏy của người tấn cụng. Tuy nhiờn, nếu người tấn cụng cú thể đoỏn được những đáp ứng từ hệ thống của chỳng ta thỡ họ khụng cần phải nhận được những Packet này. Cú khỏ nhiều nghi thức (Protocol) mà đối với những người tấn cụng hiểu biết sõu thỡ việc đoỏn những đáp ứng từ hệ thống của chỳng ta khụng mấy khú khăn. Cú nhiều dạng tấn cụng kiểu này cú thể được thực hiện mà người tấn cụng khụng cần nhận được những Packet trả lời trực tiếp từ hệ thống của chỳng ta. Một Vớ Dụ cho thấy điều này là người tấn cụng cú thể gửi cho hệ thụng của chỳng ta một lệnh nào đó, mà kết quả là hệ thống của chỳng ta gửi cho người tấn cụng password file của hệ thống chỳng ta. Bằng cỏch này thỡ người tấn cụng khụng cần nhận được trực tiếp những Packet trả lời từ hệ thống chỳng ta. Trong một số trường hợp, đối với nghi thức cú kết nối như TCP, mỏy nguồn thực sự (mỏy mà người tấn cụng lấy địa chỉ để giả danh) sẽ phản hồi lại những Packet mà hệ thống của chỳng ta gửi cho họ (những Packet mà hệ thống chỳng ta trả lời cho những Packet của người tấn cụng) dẫn đến kết quả là những kết nối hiện hành giữ mỏy của chỳng ta với mỏy Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 88 người tấn cụng cú thể bị reset. Dĩ nhiờn là người tấn cụng khụng muốn điều này xảy ra. Người tấn cụng muốn thực hiện việc tấn cụng hoàn thành trước khi mỏy bị giả danh nhận được Packet mà chỳng ta gửi trước khi chỳng ta nhận reset Packet từ mỏy bị giả danh này. Người tấn cụng cú thể cú nhiều cỏch để thực hiện được điều này: + Thực hiện việc tấn cụng trong khi mỏy bị giả danh đó tắt. + Làm cho mỏy bị giả danh treo khi thực hiện tấn cụng. + Gõy lũ (flooding) dữ liệu ở mỏy giả danh khi thực hiện tấn cụng. + Làm sai lệch thụng tin về đường đi (routing) giữa mỏy gửi và mỏy nhận thực sự. + Tấn cụng vào những dịch vụ chỉ cần gửi một Packet là cú thể gõy tỏc động mà vấn đề reset khụng bị ảnh hưởng.  Dạng tấn cụng thứ hai là “man in the middle” kiểu tấn cụng này người tấn cụng cần cú khả năng thực hiện đầy đủ một quỏ trỡnh trao đổi dữ liệu trong khi anh ta giả danh địa chỉ của mỏy khỏc. Để thực hiện được điều này người tấn cụng, mỏy mà người tấn cụng sử dụng khụng những gửi những Packet cho hệ thống của chỳng ta mà cũn mong muốn nhận được những Packet trả lời từ hệ thống cuả chỳng ta. Để thực hiện được điều này người tấn cụng phải thực hiện một trong hai việc sau: + Mỏy người tấn cụng ở trờn đường đi giữa hệ thống chỳng ta và hệ thống bị giả danh. Trường hợp dễ thực hiện nhất là ở gần mỏy của hệ thống chỳng ta hoặc ở gần mỏy bị giả danh, và trường hợp gần như khú nhất là ở giữa trong lộ trỡnh đường đi bởi vỡ trong mạng IP lộ trỡnh đường đi của Packet cú thể thay đổi đặc biệt là cỏc mỏy ở giữa lộ trỡnh cú thể cú lỳc đi qua cú thể khụng. + Thay đổi đường đi giữa mỏy gửi và mỏy nhận thực sự để nú đi qua mỏy của người tấn cụng. Điều này cú thể thực hiện được dễ dàng hoặc khú khăn tựy theo topology của mạng và hệ thống routing của cỏc mạng liờn quan. 4.4.2. Lọc cỏc Packet dựa trờn số cổng (port) Nguyên tắc này cũng giống như lọc gúi dựa trên địa chỉ máy gửi, chỉ khác là Packet filter sẽ lọc số cổng mỏy gửi (port nguồn) thay vỡ địa chỉ của nó. Những rủi ro của việc lọc dựa trờn số port của mỏy gửi: Cũng giống như trường hợp lọc theo địa chỉ nguồn (source address), việc lọc cỏc Packet dựa theo thụng tin số port nguồn (source port) cũng cú những rủi ro tương tự. Đối với cỏc dịch vụ cú cầu nối (connection – oriented) như TCP, trước khi hai network application trao đổi dữ liệu với nhau chỳng phải thiết lập kết nối (connection), khi chỳng đó trao đổi dữ liệu xong chỳng sẽ đóng kết nối. Quỏ trỡnh từ lỳc thiết lập kết nối cho đến khi đóng kết nối gọi là một session, đối với những dịch vụ dạng này việc lọc cỏc Packet cú thể sử dụng thụng tin thiết lập kết nối ở trong TCP flags field. Nhưng đối với những dịch vụ khụng cú kết nối (connectionless) như UDP thỡ việc lọc cỏc Packet theo dạng này cú thể thực hiện được như sau:  Session filter: là trường hợp đặt biệt của Packet filters nhưng nú cũn giữ thờm những thụng tin trờn tất cả cỏc active session đi qua Firewall. Bộ lọc (filter) Packet sẽ dựng Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 89 thụng tin này để xỏc định Packet di chuyển theo hướng ngược lại thuộc vào connection được chấp nhận hay khụng. Đồng thời cú thể dựng thụng tin về session này để thực hiện việc theo dừi ở mức session (session –level auditing).  Dynamic Packet Filtering : Theo dừi cỏc outgoing UDP Packet đó đi vào/ra Chỉ cho phộp cỏc incoming UDP Packet tương ứng với cỏc outgoing UDP Packet dựa vào thụng tin host và port, chỉ cho vào những UDP cú cựng host và cựng port với cỏc outgoing UDP Packet. Nhưng chỉ cho phộp khoảng cỏch giữa outgoing UDP Packet và incoming UDP Packet ở giới hạn nào đó (tựy chọn sao cho thớch hợp) (time – limited). Mặc dự dựng phương phỏp trờn cú thể lọc được internal host hay external host ai là người đưa ra yờu cầu (request) và ai là trả lời (reply) nhưng nú vẫn để lộ một số lỗ hở dẫn đến người tấn cụng (attacker) lợi dụng việc cho vào reply tương ứng để gửi vào request in tương ứng với host/port trờn và nếu may mắn, anh ta cú thể thành cụng. Những thụng tin dựng cho việc đặc tả cỏc rule trong Packet filter là: IP source/destination address : địa chỉ IP của mỏy gửi và nhận Packet. Protocol (TCP | UDP | ICMP ): nghi thức ở trờn lớp IP được sử dụng. TCP or UDP source/destination port : dịch vụ ở cấp ứng dụng. ICMP message type: loại ICMP message . IP options. Start –of– connection (ACK bit) information cho TCP packages. Tất cả cỏc thụng tin trờn là ở trong IP header và TCP| UDP header. Và thờm một thụng tin quan trọng đó là Packet từ interface nào (từ Internet hay từ internal network). Một số thụng tin phụ khỏc như thời gian truy nhập, lượng Packet trờn một dịch vụ, thời điểm truy cập. Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 90 CHƯƠNG 5: HỆ THỐNG PROXY Proxy cung cấp cho người sử dụng truy xuất Internet với những host đơn. Những Proxy Server phục vụ những nghi thức đặc biệt hoặc một tập những nghi thức thực thi trờn dual– homed host hoặc Bastion Host. Những chương trỡnh Client của người sử dụng sẽ qua trung gian Proxy Server thay thế Server thật sự mà người sử dụng cần giao tiếp. Proxy Server xỏc định những yờu cầu từ Client và quyết định đáp ứng hay khụng đáp ứng, nếu yờu cầu được đáp ứng, Proxy Server sẽ kết nối đến Server thật thay cho Client và tiếp tục chuyển tiếp những yờu cầu từ Client đến Server, cũng như chuyển tiếp những đáp ứng của Server trở lại Client. Vỡ vậy Proxy Server giống như cầu nối trung gian giữa Server thật và Client. 5.1. Tác dụng và chức năng của Proxy Để đáp ứng được những nhu cầu của người sử dụng khi cần truy xuất đến những ứng dụng được cung cấp bởi Internet nhưng vẫn đảm bảo được an toàn cho hệ thống cục bộ, trong hầu hết những phương phỏp được đưa ra để giải quyết điều này là cung cấp một host đơn truy xuất đến Internet cho tất cả người sử dụng. Tuy nhiờn, phương phỏp này khụng phải là phương phỏp giải quyết thỏa món nhất bởi vỡ như vậy nú sẽ tạo cho người sử dụng cảm thấy khụng thoải mỏi. Khi truy xuất đến Internet thỡ họ khụng thể thực hiện những cụng việc đó một cỏch trực tiếp, phải log in vào dual–homed host, thực hiện tất cả những cụng việc ở đây, và sau đó bằng phương phỏp nào đó chuyển đổi những kết quả đạt được của cụng việc trở lại workstation sở hữu. Điều này trở nờn rất tồi tệ ở những hệ thống với nhiều hệ điều hành khỏc nhau (Vớ dụ trong trường hợp nếu hệ thống là Macintosh nhưng riờng dual–homed host là hệ thống Unix). Khi dual homed host được thiết kế trờn mụ hỡnh khụng cú Proxy, điều đó sẽ khiến cho người sử dụng thờm bực bội và đáng chỳ ý hơn là làm giảm đi những tiện ớch mà Internet cung cấp, tồi tệ hơn là chỳng thường khụng cung cấp an toàn một cỏch đầy đủ, khi một mỏy gồm nhiều người sử dụng tất nhiờn độ an toàn của nú sẽ giảm, đặc biệt khi họ cố gắng nắm bắt với vạn vật bờn ngoài. Proxy System giỳp người sử dụng thoải mỏi hơn và an toàn cho dual–homed host, thay thế những yờu cầu của người sử dụng bằng cỏch giỏn tiếp thụng qua dual–homed host. Hệ thống Proxy cho phộp tất cả những tương tỏc nằm dưới một hỡnh thức nào đó. Người sử dụng cú cảm giỏc trực tiếp làm việc với Server trờn Internet mà họ thật sự muốn truy xuất. Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 91 Hỡnh 45 : Kết nối sử dụng Application–Level Gateway Proxy Application chớnh là chương trỡnh trờn application–level gateway Firewall hành động trờn hỡnh thức chuyển đổi những yờu cầu người sử dụng thụng qua Firewall, tiến trỡnh này được thực hiện trỡnh tự như sau:  Thành lập một kết nối đến Proxy application trờn Firewall.  Proxy Application thu nhập thụng tin về việc kết nối và yờu cầu của người sử dụng.  Sử dụng thụng tin để xỏc định yờu cầu cú được chấp nhận khụng, nếu chấp nhận, Proxy sẽ tạo sự kết nối khỏc từ Firewall đến mỏy đích.  Sau đó thực hiện sự giao tiếp trung gian, truyền dữ liệu qua lại giữa Client và Server. Proxy System giải quyết được rủi ro trờn hệ thống bởi trỏnh người sử dụng log in vào hệ thống và ộp buộc thụng qua phần mềm điều khiển. 5.1.1. Sự cần thiết của Proxy Proxy cho phộp người sử dụng truy xuất những dịch vụ trờn Internet theo nghĩa trực tiếp. Với dual–homed host thỡ cần phải login vào host trước khi sử dụng bất kỳ dịch vụ nào trờn Internet. Điều này thường khụng tiện lợi, và một số người trở nờn thất vọng khi họ cú cảm giỏc phải thụng qua Firewall, với Proxy, nú giải quyết được vấn đề này. Tất nhiờn nú cũn cú những giao thức dưới nhưng núi chung nú cũng khỏ tiện lợi với người sử dụng. Bởi vỡ Proxy cho phộp người sử dụng truy xuất những dịch vụ Internet từ hệ thống cỏ nhõn của họ, vỡ vậy nú khụng cho phộp những Packet đi trực tiếp giữa hệ thống người sử dụng và Internet. Đường đi là giỏn tiếp thụng qua dual–homed host hoặc thụng qua sự kết hợp giữa Bastion Host và screening Router. Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 92 Thực tế Proxy hiểu được những nghi thức dưới, nờn quỏ trỡnh truy cập (logging) được thực hiện theo hướng hiệu quả đặc biệt. Vớ Dụ: thay vỡ logging tất cả những thụng tin ngang qua đường truyền, một Proxy FTP Server chỉ log những lệnh phỏt ra và Server đáp ứng mà nhận được. Kết quả này đơn giản và hữu dụng hơn rất nhiều. 5.1.2. Những nhược điểm của Proxy  Mặc dự những phần mềm Proxy cú hiệu quả rộng rói cho những dịch vụ lõu đời và đơn giản như FTP và Telnet, nhưng những phần mềm mới và ít được sử dụng rộng rói thỡ hiếm khi tỡm thấy. Thường thỡ đó chớnh là sự chậm trễ giữa thời gian xuất hiện một dịch vụ mới và Proxy cho dịch vụ đó, khoảng thời gian cơ bản phụ thuộc vào phương phỏp nào để thiết kế Proxy cho dịch vụ đó, điều này cho thấy khỏ khú khăn khi đưa dịch vụ mới vào hệ thống. Thường để đưa dịch vụ mới vào hệ thống khi chưa cú Proxy cho nú thỡ nờn đặt bờn ngoài Firewall, bởi vỡ nếu đặt bờn trong hệ thống thỡ đó chớnh là yếu điểm.  Đôi khi cần mỗi Proxy Server khỏc nhau cho mỗi nghi thức, bởi vỡ Proxy Server phải hiểu nghi thức đó để xỏc định những gỡ được phộp và khụng được phộp. Để thực hiện nhiệm vụ như là Client đến Server thật và Server thật đến Proxy Client, sự kết hợp, cài đặt (install) và cấu hỡnh (config) tất cả những Server khỏc nhau đó cú thể rất khú khăn.  Những dịch vụ Proxy thường sửa đổi chương trỡnh Client, procedure hoặc cả hai. Loại trừ một vài dịch vụ được thiết kế cho Proxying, Proxy Server yờu cầu sửa đổi với Client hoặc procedure, mỗi sự sửa đổi cú những bất tiện riờng của nú, khụng thể luụn luụn sử dụng cụng cụ cú sẵn với những cấu trỳc hiện tại của nú.  Proxying dựa vào khả năng chốn vào Proxy Server giữa Client và Server thật mà yờu cầu những tỏc động tương đối thẳn thắn đối với cả hai.  Những dịch vụ Proxy khụng bảo vệ cho hệ thống ứng với những nghi thức kộm chất lượng. Như một giải phỏp an toàn, Proxying dựa vào những khả năng xỏc định những tỏc vụ ở trong nghi thức an toàn. khụng phải tất cả cỏc dịch vụ đều cựng cấp theo khuynh hướng an toàn này, như nghi thức Xwindows cung cấp khỏ nhiều tỏc vụ khụng an toàn. 5.2. Sự kết nối thụng qua Proxy (Proxying) Những chi tiết trong việc Proxying thực hiện như thế nào khỏc nhau từ dịch vụ này đến dịch vụ khỏc, khi cài đặt (set up) Proxying, cú một vài dịch vụ được thực hiện dễ dàng hoặc tự động, nhưng vài dịch vụ cú sự chuyển đổi rất khú khăn. Tuy nhiờn, trong hầu hết những dịch vụ, ngoài yờu cầu những phần mềm Proxy Server tương ứng, trờn Client cũng phải cần những yờu cầu như sau: Custom Client software: phần mềm loại này phải biết như thế nào để liờn kết với Proxy Server thay Server thật khi người sử dụng yờu cầu và yờu cầu Proxy Server những gỡ Server thật kết nối đến. Nhưng phần mềm custom Client thường cú hiệu quả chỉ một vài platform. Vớ Dụ: Package igateway từ Sun là một Proxy package cho FTP và Telnet, nhưng nú chỉ được sử dụng trờn hệ thống Sun bởi vỡ nú cung cấp recompiled Sun binaries. Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 93 Hỡnh 46: Kết nối giữa người dùng (Client) với Server qua Proxy Mặc dự nếu phần mềm cú hiệu quả cho platform tương ứng, nú cũng cú thể khụng phải điều mà người sử dụng mong muốn, Vớ Dụ: trờn Macintosh cú hàng chục chương trỡnh FTP Client, một trong vài số đó thật sự cú những giao diện khỏ ấn tượng với người sử dụng, những phần khỏc cú những đặc điểm hữu dụng khỏc. Anarchie là chương trỡnh mà nú kết hợp một archie Client và FTP Client bờn trong chương trỡnh đơn, vỡ vậy người sử dụng cú thể tỡm file với archie và dựng FTP để lấy nú, tất cả với giao diện người sử dụng thớch hợp, điều này sẽ khụng may mắn cho chỳng ta nếu muốn hỗ trợ Proxy Server. Sử dụng những chuyển đổi Client cho Proxying khụng dễ dàng thuyết phục được người sử dụng. Trong hầu hết những hệ thống sử dụng Client khụng chuyển đổi những kết nối bờn trong và một số chuyển đổi chỉ với những kết nối bờn ngoài, lỳc này người sử dụng chỉ cần phải sử dụng thờm những chương trỡnh thờm vào để tạo được sự kết nối bờn ngoài. Custom user procedure: người sử dụng dựng phần mềm Client chuẩn để giao tiếp với Proxy Server và nú kết nối đến Server thật, thay thế trực tiếp Server thật. Proxy Server được thiết kế thực thi với phần mềm Client chuẩn. Tuy nhiờn, chỳng yờu cầu những người sử dụng theo những custom procedure. Người sử dụng trước tiờn kết nối đến Proxy Server và sau đó cung cấp cho Proxy Server tờn host mà họ muốn kết nối đến. Bởi vỡ một vài nghi thức được thiết kế để truyền những thụng tin này, người sử dụng khụng những phải nhớ tờn của Proxy Server nhưng cũng phải nhớ những host khỏc mà họ muốn giao tiếp. Như thế nào để thực hiện những cụng việc này, cần phải nắm được những thủ tục đặc trưng theo sau mỗi nghi thức. 5.3. Cỏc dạng Proxy Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 94 5.3.1. Dạng kết nối trực tiếp Phương phỏp đầu tiờn được sử dụng trong kỹ thuật Proxy là cho người sử dụng kết nối trực tiếp đến Firewall Proxy, sử dụng địa chỉ của Firewall và số cổng của Proxy, sau đó Proxy hỏi người sử dụng cho địa chỉ của host hướng đến, đó là một phương phỏp brute force sử dụng bởi Firewall một cỏch dễ dàng, và đó cũng là một vài nguyờn nhõn tại sao nú là phương phỏp ớt thớch hợp. Trước tiờn, yờu cầu người sử dụng biết địa chỉ của Firewall, kế tiếp nú yờu cầu người sử dụng nhập vào hai địa chỉ cho mỗi sự kết nối: Địa chỉ của Firewall và địa chỉ của đích hướng đến. Cuối cựng nú ngăn cản những ứng dụng hoặc những nguyờn bản trờn mỏy tớnh của người sử dụng điều đó tạo ra sự kết nối cho người sử dụng, bởi vỡ chỳng sẽ khụng biết như thế nào điều khiển những yờu cầu đặc biệt cho sự truyền thụng với Proxy. 5.3.2. Dạng thay đổi Client Phương phỏp kế tiếp sử dụng Proxy setup phải thờm vào những ứng dụng tại mỏy tớnh của người sử dụng. Người sử dụng thực thi những ứng dụng đặc biệt đó với việc tạo ra sự kết nối thụng qua Firewall. Người sử dụng với ứng dụng đó hành động chỉ như những ứng dụng khụng sửa đổi. Người sử dụng cho địa chỉ của host đích hướng tới. Những ứng dụng thờm vào biết được địa chỉ Firewall từ file config cục bộ, set up sự kết nối đến ứng dụng Proxy trờn Firewall, và truyền cho nú địa chỉ cung cấp bởi người sử dụng. Phương phỏp này rất cú hiệu quả và cú khả năng che dấu người sử dụng, tuy nhiờn, cần cú một ứng dụng Client thờm vào cho mỗi dịch vụ mạng là một đặc tớnh trở ngại. 5.4.3. Proxy vụ hỡnh Một số phương phỏp phỏt triển gần đây cho phộp truy xuất đến Proxy, trong vài hệ thống Firewall được biết như Proxy vụ hỡnh. trong mụ hỡnh này, khụng cần phải cú những ứng dụng thờm vào với người sử dụng và khụng phải kết nối trực tiếp đến Firewall hoặc biết rằng Firewall cú tồn tại. Sử dụng sự điều khiển đường đi cơ bản, tất cả sự kết nối đến mạng bờn ngoài được chỉ đường thụng qua Firewall. Như những Packet nhập vào Firewall, tự động chỳng được đổi hướng đến ứng dụng Proxy đang chờ. Theo hướng này, Firewall thực hiện rất tốt trong việc giả như host đích. khi kết nối được tạo ra Firewall Proxy, Client application nghĩ rằng nú được kết nối với Server thật, nếu được phộp, Proxy application sau đó thực hiện hàm Proxy chuẩn trong việc tạo kết nối thứ hai đến Server thật. Proxy lớp ứng dụng thỡ đối nghịch với Proxy lớp circuit: application–level Proxy được thực thi ở lớp ứng dụng. Nú cung cấp cho từng dịch vụ riờng và interpret những dũng lệnh trong những nghi thức đó. Một circuit–level Proxy tạo nờn một circuit giữa Client và Server khụng cần phải interpret những nghi thức này. Núi chung, application–level Proxy sử dụng modified procedure và circuit–level Proxy sử dụng modified Client. Để tạo ra kết nối Proxy, phải biết vị trớ nào muốn kết nối đến. Một hybrid gateway đơn giản cú thể chặn đứng kết nối, nhưng một Proxy host chỉ cú thể nhận kết nối mà đề nghị với nú, và phải chỉ ra vị trớ muốn kết nối. Một application–level Proxy cú thể thể nhận thụng tin trong từng nghi thức riờng. Một circuit–level Proxy khụng thể interpret theo từng nghi thức và cần phải cú thụng tin hồ trợ cho nú thụng qua một cỏch nào khỏc. Ưu điểm của circuit–level Proxy là ở đó nú cung cấp cho hầu hết những nghi thức khỏc nhau, hầu như circuit–level Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 95 Proxy Server cũng là những Proxy Server chung cho tất cả cỏc dạng nghi thức, tuy nhiờn khụng phải mọi nghi thức đều dễ dàng được điều khiển bởi circuit–level Proxy, khuyết điểm của circuit–level Proxy Server là nú điều khiển dựa vào những gỡ xảy ra thụng qua Proxy này như là Packet filter, nú điều khiển những kết nối cơ bản dựa vào địa chỉ nguồn và địa chỉ địa chỉ đíchvà khụng cú thể xỏc định những lệnh đi qua nú là an toàn hoặc những sự kiện mà nghi thức đó mong muốn, circuit–level Proxy dể dàng bị đánh lừa bởi những Server setup lại những cổng gỏn đến những Server khỏc. Proxy chung thỡ đối nghịch với những Proxy chuyờn biệt: mặc dự “application–level” và “circuit–level” thường được dựng, nhưng đôi khi cũng phõn biệt giữa “dedicated” và “generic” Proxy Server. Một dedicated Proxy Server là Server chỉ phục vụ một nghi thức đơn, generic Proxy Server là Server phục vụ cho nhiều nghi thức. Thật ra, dedicated Proxy Server là application–level, và generic Proxy Server là circuit–level. Intelligent Proxy Server: một Proxy Server cú thể làm nhiều điều chứ khụng phải chỉ là sự chuyễn tiếp những yờu cầu, đó chớnh là một intelligent Proxy Server, Vớ Dụ: cern http Proxy Server caches data, vỡ vậy nhiều yờu cầu data khụng đi ra khỏi hệ thống khi chưa cú sự xử lý của Proxy Server. Proxy Server (đặc biệt là application–level Server ) cú thể cung cấp logging dễ dàng và điều khiển truy xuất tốt hơn, cũn circuit–level Proxy thường bị giới hạn bởi những khả năng này. Using Proxying với những dịch vụ Internet: vỡ Proxy chốn vào giữa sự kết nối Client và Server, nú phải được thớch ứng với từng dịch vụ riờng, đôi khi một số dịch vụ rất dễ với cỏch thực hiện bỡnh thường nhưng lại rất khú khi thờm vào Proxy. TCP cũng đối nghịch với những nghi thức khỏc: TCP là nghi thức connection_oriented, nờn nú chỉ khú khăn trong khoảng thời gian ban đầu để tạo cầu nối sau đó nú tiếp tục sử dụng cầu nối đó để truyền thụng, cũn UDP thỡ ngược lại nờn khú hơn, ICMP là low Protocol nờn cú thể dựng Proxy. Unidirectional versus multidirectional connection: nú dễ dàng cho một Proxy Server chặn đứng những kết nối khởi đầu từ một Client đến Server, nhưng nú rất khú cho việc ngăn chặn kết nối ngược lại, Server cú thể phải interpret hoặc sửa đổi thờm vào Protocol để tạo ra kết nối chớnh xỏc. Vớ Dụ: Normal mode FTP yờu cầu Proxy Server chặn port Client gửi đến Server, mở một kết nối từ Proxy đến Client với cổng đó và gửi một cổng khỏc đến Server thật. Nú khụng cung cấp cho Proxy Server đơn giản chỉ đọc port trờn hướng đó, bởi vỡ cú thể cổng đó đó được sử dụng, sự kiện này luụn luụn nảy sinh đối với nghi thức yờu cầu kết nối ngược lại. Protocol sercurity: một vài dịch vụ để thực hiện Proxy cho nú cú thể khỏ đơn giản, nhưng loại trừ vấn đề về security. Nếu một nghi thức vốn khụng an toàn, Proxy khụng thể làm điều gỡ khỏc để tăng độ an toàn cho nú. Thường nếu khú phõn biệt giữa những tỏc vụ an toàn và khụng an toàn thỡ nờn đặt dịch vụ đó trờn Victim host. User specified data: vài dịch vụ, đặc biệt “store and forward” như smtp, nntp, ..thường chớnh nú đó tự hổ trợ tớnh Proxying. Những dịch vụ này được thiết kế truyền nhận những message bởi Server và stored đến khi chỳng cú thể gửi được cỏc Server tương ứng, nếu xem những header nhận của incoming Internet e_mail, những message đi từ người gửi đến Trường Đại học Bách Khoa Hà Nội Đồ án tốt nghiệp Nguyễn Mạnh Chiến – ĐT2, CĐ1A – K45 Trang 96 người nhận thụng qua cỏc bước : Mỏy gửi – Outgoing mail gateway tại vị trớ người gửi – Incoming mail gateway tại vị trớ người nhận – Cuối cựng đến được mỏy nhận.

Các file đính kèm theo tài liệu này:

  • pdfdoan_4202.pdf