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.
96 trang |
Chia sẻ: lylyngoc | Lượt xem: 2369 | Lượt tải: 0
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:
- doan_4202.pdf