nghiên cứu về các phương pháp lập trình vượt FIREWALL
Trang 1TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN MẠNG MÁY TÍNH & VIỄN THÔNG
PHAN TRUNG HIẾU - TRẦN LÊ QUÂN
CÁC PHƯƠNG PHÁP LẬP TRÌNH VƯỢT
FIREWALL
KHÓA LUẬN CỬ NHÂN TIN HỌC
NIÊN KHÓA 2001 - 2005
Trang 2Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN MẠNG MÁY TÍNH & VIỄN THÔNG
PHAN TRUNG HIẾU 0112463 TRẦN LÊ QUÂN 0112319
CÁC PHƯƠNG PHÁP LẬP TRÌNH VƯỢT
FIREWALL
KHÓA LUẬN CỬ NHÂN TIN HỌC
GIÁO VIÊN HƯỚNG DẪN Th.S ĐỖ HOÀNG CƯỜNG
NIÊN KHÓA 2001 – 2005
Trang 3Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
LỜI NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 4Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
LỜI NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 5Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Trước hết, chúng con xin cảm ơn những bậc làm cha, làm mẹ đã luôn ủng hộ, chăm sóc chúng con và tạo mọi điều kiện tốt nhất để chúng con có thể hoàn thành nhiệm vụ của mình
Chúng em xin cảm ơn nhà trường nói chung và Khoa CNTT nói riêng đã đem lại cho chúng em nguồn kiến thức vô cùng quý giá để chúng em có đủ kiến thức hoàn thành luận văn cũng như làm hành trang bước vào đời
Em xin cảm ơn các thầy cô thuộc bộ môn MMT, đặc biệt là thầy Đỗ Hoàng Cường – giáo viên hướng dẫn của chúng em đã tận tình hướng dẫn và giúp đỡ chúng
em mỗi khi chúng em có khó khăn trong quá trình học tập cũng như trong quá trình làm luận văn tốt nghiệp
Xin cảm ơn tất cả các bạn bè thân yêu đã động viên, giúp đỡ chúng em trong suốt quá trình học tập cũng như làm đề tài
Một lần nữa, xin cảm ơn tất cả mọi người…
TPHCM 7/2005 Nhóm sinh viên thực hiện
Trang 6Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
LỜI NÓI ĐẦU
Nội dung luận văn được trình bày trong 8 chương thuộc về 5 phần khác nhau :
Phần thứ nhất: CƠ SỞ LÝ THUYẾT
• Chương 1: Giới thiệu về firewall
• Chương 2: Khái niệm proxy
• Chương 3: Các phương pháp lập trình vượt firewall
Phần thứ hai: CÁC PHƯƠNG PHÁP LẬP TRÌNH VƯỢT FIREWALL
• Chương 4: Vượt firewall bằng HTTP proxy Servers
• Chương 5: Vượt firewall bằng Web-based proxy
Phần thứ ba: MODULE CHỐNG VƯỢT FIREWALL
• Chương 6: Plug-in chống vượt firewall cho trình duyêt Internet Explorer
• Chương 7: Service chống vượt Firewall
Phần thứ tư: TỔNG KẾT
• Chương 8: Kết luận
Phân thứ năm: PHỤ LỤC
Trang 7Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
MỤC LỤC
Chương 1: GIỚI THIỆU VỀ FIREWALL 11
1.1 Đặt vấn đề: 11
1.2 Nhu cầu bảo vệ thông tin: 11
1.2.1 Nguyên nhân: 11
1.2.2 Bảo vệ dữ liệu: 13
1.2.3 Bảo vệ các tài nguyên sử dụng trên mạng: 13
1.2.4 Bảo vệ danh tiếng cơ quan: 13
1.3 Các kiểu tấn công: 14
1.3.1 Tấn công trực tiếp: 14
1.3.2 Nghe trộm: 15
1.3.3 Giả mạo địa chỉ: 15
1.3.4 Vô hiệu các chức năng của hệ thống (DoS, DDoS): 15
1.3.5 Lỗi của người quản trị hệ thống: 16
1.3.6 Tấn công vào yếu tố con người: 17
1.4 Firewall là gì ? 17
1.5 Các chức năng chính: 19
1.5.1 Chức năng: 19
1.5.2 Thành phần: 20
1.6 Nguyên lý: 21
1.7 Các dạng firewall: 23
1.8 Các ý niệm chung về Firewall: 25
1.8.1 Firewall dựa trên Application gateway: 25
1.8.2 Cổng vòng(Circuit level gateway): 27
1.8.3 Hạn chế của Firewall: 28
1.8.4 Firewall có dễ phá hay không: 28
1.9 Một số mô hình Firewall: 30
1.9.1 Packet-Filtering Router: 30
1.9.2 Mô hình Single-Homed Bastion Host: 32
1.9.3 Mô hình Dual-Homed Bastion Host: 34
1.9.4 Proxy server: 36
1.9.5 Phần mềm Firewall – Proxy server: 37
1.10 Lời kết: 46
Chương 2: KHÁI NIỆM PROXY 47
2.1 Proxy là gì: 47
2.2 Tại sao proxy lại ra đời: 48
2.3 Tổng kết chung về proxy: 48
Chương 3: CÁC PHƯƠNG PHÁP LẬP TRÌNH VƯỢT FIREWALL 50
3.1 Vượt firewall là gì: 50
3.2 Phương pháp thứ nhất: HTTP Proxy 50
Trang 8Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
3.3 Phương pháp thứ hai: Web-Based Proxy 51
3.4 Phương pháp thứ ba: Http Tunneling 51
Chương 4: VƯỢT FIREWALL BẰNG HTTP PROXY 53
4.1 Khi các HTTP Proxy Server trở nên hữu ích: 53
4.2 Chức năng chính: 56
4.2.1 Truy cập Internet: 56
4.2.2 Caching documents: 57
4.2.3 Điều khiển truy cập Internet một cách có chọn lọc: 59
4.2.4 Cung cấp dịch vụ Internet cho các cơ quan sử dụng IP ảo: 60
4.3 Một phiên giao dịch (transaction) thông qua proxy : 60
4.4 Kết nối thông qua proxy server: 61
4.5 HTTP proxy: 61
4.6 FTP proxy: 62
4.7 Tiện lợi và bất tiện khi cache các trang Web: 63
4.8 Những bất cập do proxy: 63
4.9 Kĩ thuật lập trình một HTTP Proxy cơ bản: 64
Chương 5: Vượt firewall bằng Web-Based Proxy 65
5.1 Thế nào là 1 web-based anonymous proxy ? 65
5.2 Cách thức hoạt động của 1 WBP : 66
5.3 Giới thiệu về trang Web Based Proxy: 67
5.3.1 Giao diện: 67
5.3.2 Chức năng: 67
5.3.3 Thuật toán: 69
Chương 6: Plug-in chống vượt firewall cho trình duyệt Internet Explorer 73
6.1 Giới thiệu sơ lược : 73
6.2 Các tính năng chính: 74
6.2.1 Lọc các trang web dựa trên việc duyệt danh sách các trang web có sẵn trong cơ sở dữ liệu: 74
6.2.2 Lọc các trang web dựa trên cơ chế kiểm tra địa chỉ (URL): 74
6.2.3 Lọc dựa trên nội dung của các Input Form trong trang web: 75
6.2.4 Cập nhật các trang web based proxy: 76
6.2.5 Vô hiệu hóa/kích hoạt plugin: 76
6.3 Một số vấn đề cần lưu ý khi viết plugin cho trình duyệt IE : 76
6.3.1 Khái niệm Browser Helper Objects (BHO): 76
6.3.2 Một số hàm xử lí quan trọng: 78
6.4 Chi tiết lưu trữ dữ liệu : 79
6.4.1 Bảng Forbidden 79
6.4.2 Bảng Trusted 79
6.5 Thuật toán chính của ứng dụng : 79
6.5.1 Mô hình hoạt động của Plugin : 79
6.5.2 Diễn giải mô hình : 81
Trang 9Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
6.6 Những ưu điểm và hạn chế: 82
Chương 7: SERVICE CHỐNG VƯỢT FIREWALL 83
7.1 Giới thiệu sơ lược : 83
7.2 Các tính năng chính của module: 83
7.3 Module bắt gói tin : 84
7.3.1 Đặc điểm của gói tin HTTP request đến HTTP Proxy Server: 84
7.3.2 Tóm tắt các bước cần lưu ý khi xây dựng module; 84
7.3.3 Chi tiết các đối tượng, hàm xử lí chính của module : 85
7.4 Module chặn địa chỉ IP: 85
7.4.1 Giới thiệu về Filter-Hook Driver : 85
7.4.2 Tóm tắt các bước xây dựng Filter-Hook Driver để bắt gói tin: 86
7.5 Chi tiết lưu trữ dữ liệu : 86
7.5.1 Bảng ForbiddenProxy 86
7.5.2 Bảng TrustedProxy: 86
7.6 Sơ đồ hoạt động của Module chặn địa chỉ IP : 87
7.7 Diễn giải mô hình : 87
7.8 Nhận xét – đánh giá : 88
7.8.1 Ưu điểm: 88
7.8.2 Khuyết điểm: 89
Chương 8: KẾT LUẬN 90
8.1 Những kết quả đạt được: 90
8.2 Hướng phát triển : 91
DANH SÁCH HÌNH Hình 1 Mô hình tấn công DDoS 16
Hình 2 Mô hình firewall 18
Hình 3 Lọc gói tin tại firewall 18
Hình 4 Một số chức năng của Firewall 20
Hình 5 Lọc gói tin 21
Hình 6 Firewall được cấu hình tại router 23
Hình 7 Firewall mềm 26
Hình 8 Tấn công hệ thống từ bên ngoài 29
Hình 9 Packet filtering 31
Hình 10 Mô hình single-Homed Bastion Host 33
Hình 11 Mô hình Dual-Homed Bastion Host 35
Hình 12 Mô hình 1 Proxy đơn giản 37
Hình 13 Một số protocol sau proxy 39
Hình 14 Mô hình proxy 48
Hình 15 Mô hình hoạt động chung của các proxy 55
Trang 10Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Hình 16 Một số protocol được hỗ trợ 56
Hình 17 Caching 58
Hình 18 Caching bị lỗi (failure) 59
Hình 19 Một transaction qua proxy 60
Hình 20 Truy xuất thông tin thông qua HTTP proxy 62
Hình 21 Truy xuất thông tin thông qua FTP proxy 62
Hình 22 Giao diện chính của Web Base Proxy 67
Hình 23 Mini form trên mỗi đầu trang 68
Hình 24 Sơ đồ hoạt động của 1 trang Web-Based Proxy 69
Hình 25 Giao diện chính của plug-in 73
Hình 26 Trang thông báo mỗi khi người dùng duyệt những trang web vi phạm 74
Hình 27 Cách trình bày thông thường của một trang web base proxy 75
Hình 28 Quá trình trình duyệt khởi động và nạp các BHO 77
Hình 29 Mô hình hoạt động của Plugin 80
Hình 30 Định dạng của gói tin gửi đến proxy server 84
Hình 31 Sơ đồ hoạt động của module chặn địa chỉ IP 87
DANH SÁCH BẢNG
Trang 11Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
• An toàn cho sự hoạt động của toàn bộ hệ thống mạng
• Bảo mật cao trên nhiều phương diện
• Khả năng kiểm soát cao
Trang 12Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Cùng với sự phát triển không ngừng của Internet và các dịch vụ trên Internet, số lượng các vụ tấn công trên Internet cũng tăng theo cấp số nhân Trong khi các phương tiện thông tin đại chúng ngày càng nhắc nhiều đến Internet với những khả năng truy nhập thông tin dường như đến vô tận của nó, thì các tài liệu chuyên môn bắt đầu đề cập nhiều đến vấn đề bảo đảm và an toàn dữ liệu cho các máy tính được kết nối vào mạng Internet
Theo số liệu của CERT (Computer Emegency Response Team), số lượng các vụ tấn công trên Internet được thông báo cho tổ chức này là ít hơn 200 vào năm
1989, khoảng 400 vào năm 1991, 1400 vào năm 1993, và 2241 vào năm 1994 Những vụ tấn công này nhằm vào tất cả các máy tính có mặt trên Internet, các máy tính của tất cả các công ty lớn như AT&T, IBM, các trường đại học, các cơ quan nhà nước, các tổ chức quân sự, nhà băng Một số vụ tấn công có quy mô khổng lồ (có tới 100.000 máy tính bị tấn công) Hơn nữa, những con số này chỉ là phần nổi của tảng băng Một phần rất lớn các vụ tấn công không được thông báo, vì nhiều lý
do, trong đó có thể kể đến nỗi lo bị mất uy tín, hoặc đơn giản những người quản trị
hệ thống không hề hay biết những cuộc tấn công nhằm vào hệ thống của họ
Không chỉ số lượng các cuộc tấn công tăng lên nhanh chóng, mà các phương pháp tấn công cũng liên tục được hoàn thiện Điều đó một phần do các nhân viên quản trị hệ thống được kết nối với Internet ngày càng đề cao cảnh giác Cũng theo CERT, những cuộc tấn công thời kỳ 1988-1989 chủ yếu đoán tên người sử dụng-mật khẩu (UserID-password) hoặc sử dụng một số lỗi của các chương trình và hệ điều hành (security hole) làm vô hiệu hệ thống bảo vệ, tuy nhiên các cuộc tấn công vào thời gian gần đây bao gồm cả các thao tác như giả mạo địa chỉ IP, theo dõi thông tin truyền qua mạng, chiếm các phiên làm việc từ xa (telnet hoặc rlogin)
Nhu cầu bảo vệ thông tin trên Internet có thể chia thành ba loại gồm: Bảo vệ
dữ liệu; Bảo vệ các tài nguyên sử dụng trên mạng và Bảo vệ danh tiếng của cơ quan
Trang 13Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
• Trong các yêu cầu này, thông thường yêu cầu về bảo mật được coi là yêu cầu số 1 đối với thông tin lưu trữ trên mạng Tuy nhiên, ngay cả khi những thông tin này không được giữ bí mật, thì những yêu cầu về tính toàn vẹn cũng rất quan trọng Không một cá nhân, một tổ chức nào lãng phí tài nguyên vật chất và thời gian để lưu trữ những thông tin mà không biết về tính đúng đắn của những thông tin
đó
1.2.3 Bảo vệ các tài nguyên sử dụng trên mạng:
Trên thực tế, trong các cuộc tấn công trên Internet, kẻ tấn công, sau khi đã làm chủ được hệ thống bên trong, có thể sử dụng các máy này để phục vụ cho mục đích của mình nhằm chạy các chương trình dò mật khẩu người sử dụng, sử dụng các liên kết mạng sẵn có để tiếp tục tấn công các hệ thống khác vv
1.2.4 Bảo vệ danh tiếng cơ quan:
Một phần lớn các cuộc tấn công không được thông báo rộng rãi, và một trong những nguyên nhân là nỗi lo bị mất uy tín của cơ quan, đặc biệt là các công ty lớn và các cơ quan quan trọng trong bộ máy nhà nước Trong trường hợp người quản trị hệ thống chỉ được biết đến sau khi chính hệ thống của mình được dùng làm bàn đạp để tấn công các hệ thống khác, thì tổn thất về uy tín là rất lớn và có thể để lại hậu quả lâu dài
Trang 14Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
1.3 Các kiểu tấn công:
1.3.1 Tấn công trực tiếp:
Những cuộc tấn công trực tiếp thông thường được sử dụng trong giai đoạn đầu để chiếm được quyền truy nhập bên trong Một phương pháp tấn công cổ điển
là dò tìm tên ngời sử dụng và mật khẩu Đây là phương pháp đơn giản, dễ thực hiện
và không đòi hỏi một điều kiện đặc biệt nào để bắt đầu
Kẻ tấn công có thể sử dụng những thông tin như tên người dùng, ngày sinh, địa chỉ, số nhà vv để đoán mật khẩu Trong trường hợp có được danh sách người
sử dụng và những thông tin về môi trường làm việc, có một trương trình tự động hoá về việc dò tìm mật khẩu này
Một chương trình có thể dễ dàng lấy được từ Internet để giải các mật khẩu
đã mã hoá của các hệ thống unix có tên là crack, có khả năng thử các tổ hợp các từ trong một từ điển lớn, theo những quy tắc do người dùng tự định nghĩa Trong một
số trường hợp, khả năng thành công của phương pháp này có thể lên tới 30%
Phương pháp sử dụng các lỗi của chương trình ứng dụng và bản thân hệ điều hành đã được sử dụng từ những vụ tấn công đầu tiên và vẫn được tiếp tục để chiếm quyền truy nhập Trong một số trường hợp phương pháp này cho phép kẻ tấn công
có được quyền của người quản trị hệ thống (root hay administrator)
Hai ví dụ thường xuyên được đưa ra để minh hoạ cho phương pháp này là ví
dụ với chương trình sendmail và chương trình rlogin của hệ điều hành UNIX
Sendmail là một chương trình phức tạp, với mã nguồn bao gồm hàng ngàn
dòng lệnh của ngôn ngữ C Sendmail được chạy với quyền ưu tiên của người quản trị hệ thống, do chương trình phải có quyền ghi vào hộp thư của những người sử dụng máy Và Sendmail trực tiếp nhận các yêu cầu về thư tín trên mạng bên ngoài Đây chính là những yếu tố làm cho sendmail trở thành một nguồn
cung cấp những lỗ hổng về bảo mật để truy nhập hệ thống
Trang 15Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Rlogin cho phép người sử dụng từ một máy trên mạng truy nhập từ xa vào
một máy khác sử dụng tài nguyên của máy này Trong quá trình nhận tên và mật khẩu của người sử dụng, rlogin không kiểm tra độ dài của dòng nhập, do đó kẻ
tấn công có thể đưa vào một xâu đã được tính toán trước để ghi đè lên mã chương trình của rlogin, qua đó chiếm được quyền truy nhập
1.3.2 Nghe trộm:
Việc nghe trộm thông tin trên mạng có thể đưa lại những thông tin có ích
như tên, mật khẩu của người sử dụng, các thông tin mật chuyển qua mạng Việc nghe trộm thường được tiến hành ngay sau khi kẻ tấn công đã chiếm được quyền truy nhập hệ thống, thông qua các chương trình cho phép bắt các gói tin vào chế độ nhận toàn bộ các thông tin lưu truyền trên mạng Những thông tin
này cũng có thể dễ dàng lấy được trên Internet
1.3.3 Giả mạo địa chỉ:
Việc giả mạo địa chỉ IP có thể được thực hiện thông qua việc sử dụng khả năng dẫn đường trực tiếp (source-routing) Với cách tấn công này, kẻ tấn công gửi các gói tin IP tới mạng bên trong với một địa chỉ IP giả mạo (thông thường là địa chỉ của một mạng hoặc một máy được coi là an toàn đối với mạng bên trong), đồng thời chỉ rõ đường dẫn mà các gói tin IP phải gửi đi
1.3.4 Vô hiệu các chức năng của hệ thống (DoS, DDoS):
Đây là kểu tấn công nhằm tê liệt hệ thống, không cho nó thực hiện chức
năng mà nó thiết kế Kiểu tấn công này không thể ngăn chặn được, do những
phương tiện đợc tổ chức tấn công cũng chính là các phương tiện để làm việc và truy nhập thông tin trên mạng Ví dụ sử dụng lệnh ping với tốc độ cao nhất có thể, buộc một hệ thống tiêu hao toàn bộ tốc độ tính toán và khả năng của mạng để trả lời các lệnh này, không còn các tài nguyên để thực hiện những công việc có ích khác
Trang 16Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Hình 1 Mô hình tấn công DDoS
Client là một attacker sắp xếp một cuộc tấn công
• Handler là một host đã được thỏa hiệp để chạy những chương trình đặc biệt dùng đê tấn công
•
Mỗi handler có khả năng điều khiển nhiều agent
• Mỗi agent có trách nhiệm gửi stream data tới victim
•
1.3.5 Lỗi của người quản trị hệ thống:
Đây không phải là một kiểu tấn công của những kẻ đột nhập, tuy nhiên lỗi của người quản trị hệ thống thờng tạo ra những lỗ hổng cho phép kẻ tấn công sử dụng để truy nhập vào mạng nội bộ
Trang 17Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
1.3.6 Tấn công vào yếu tố con người:
Kẻ tấn công có thể liên lạc với một ngời quản trị hệ thống, giả làm một người sử dụng để yêu cầu thay đổi mật khẩu, thay đổi quyền truy nhập của mình đối với hệ thống, hoặc thậm chí thay đổi một số cấu hình của hệ thống để thực hiện các phương pháp tấn công khác Với kiểu tấn công này không một thiết bị nào có thể ngăn chặn một cách hữu hiệu, và chỉ có một cách giáo dục người sử dụng mạng nội bộ về những yêu cầu bảo mật để đề cao cảnh giác với những hiện tượng đáng nghi Nói chung yếu tố con ngời là một điểm yếu trong bất kỳ một hệ thống bảo vệ nào, và chỉ có sự giáo dục cộng với tinh thần hợp tác từ phía người sử dụng có thể
nâng cao được độ an toàn của hệ thống bảo vệ
1.4 Firewall là gì ?
Thuật ngữ Firewall có nguồn gốc từ một kỹ thuật thiết kế trong xây dựng để ngăn chặn, hạn chế hoả hoạn Trong công nghệ mạng thông tin, Firewall là một kỹ thuật được tích hợp vào hệ thống mạng để chống sự truy cập trái phép, nhằm bảo vệ các nguồn thông tin nội bộ và hạn chế sự xâm nhập không mong muốn vào hệ thống Cũng
có thể hiểu Firewall là một cơ chế (mechanism) để bảo vệ mạng tin tưởng (Trusted network) khỏi các mạng không tin tưởng (Untrusted network)
Thông thường Firewall được đặt giữa mạng bên trong (Intranet) của một công ty,
tổ chức, ngành hay một quốc gia, và Internet Vai trò chính là bảo mật thông tin, ngăn chặn sự truy nhập không mong muốn từ bên ngoài (Internet) và cấm truy nhập từ bên trong (Intranet) tới một số địa chỉ nhất định trên Internet
Trang 18Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Hình 2 Mô hình firewall
Một cách vắn tắt, firewall là hệ thống ngăn chặn việc truy nhập trái phép từ bên ngoài vào mạng cũng như những kết nối không hợp lệ từ bên trong ra Firewall thực hiện việc lọc bỏ những địa chỉ không hợp lệ dựa theo các quy tắc hay chỉ tiêu định trước
Lọc gói tin tại firewall Hình 3
Firewall có thể là hệ thống phần cứng, phần mềm hoặc kết hợp cả hai Nếu là phần cứng, nó có thể chỉ bao gồm duy nhất bộ lọc gói tin hoặc là thiết bị định tuyến (router được tích hợp sẵn chức năng lọc gói tin) Bộ định tuyến có các tính năng bảo mật cao cấp, trong đó có khả năng kiểm soát địa chỉ IP Quy trình kiểm soát cho phép bạn định ra những địa chỉ IP có thể kết nối với mạng của bạn và ngược lại Tính chất
Trang 19Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
chung của các Firewall là phân biệt địa chỉ IP dựa trên các gói tin hay từ chối việc truy nhập bất hợp pháp căn cứ trên địa chỉ nguồn
1.5 Các chức năng chính:
1.5.1 Chức năng:
Chức năng chính của Firewall là kiểm soát luồng thông tin từ giữa Intranet
và Internet Thiết lập cơ chế điều khiển dòng thông tin giữa mạng bên trong (Intranet) và mạng Internet Cụ thể là:
• Cho phép hoặc cấm những dịch vụ truy nhập ra ngoài (từ Intranet ra Internet)
• Cho phép hoặc cấm những dịch vụ phép truy nhập vào trong (từ Internet vào Intranet)
• Theo dõi luồng dữ liệu mạng giữa Internet và Intranet
• Kiểm soát địa chỉ truy nhập, cấm địa chỉ truy nhập
• Kiểm soát người sử dụng và việc truy nhập của người sử dụng Kiểm soát nội dung thông tin lưu chuyển trên mạng
Trang 20Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
ột số chức năng của Firewall.
Hình 4 M
1.5.2 Thành phần:
Firewall chuẩn bao gồm một hay nhiều các thành phần sau đây:
• Bộ lọc packet (packet-filtering router)
• Cổng ứng dụng (application-level gateway hay proxy server)
• Cổng mạch (circuite level gateway)
• Bộ lọc paket (Paket filtering router)
Trang 21Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
1.6 Nguyên lý:
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
Hình 5 Lọc gói tin
Bộ lọc packet 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 packet hay không Các luật lệ lọc packet 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à:
Trang 22Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Đị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 packet đượ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ộ
Ưu điểm:
Đa số các hệ thống Firewall đều sử dụng bộ lọc packet Một trong những
ưu điểm của phương pháp dùng bộ lọc packet là chi phí thấp vì cơ chế lọc packet đã được bao gồm trong mỗi phần mềm router
•
Ngoài ra, bộ lọc packet 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ế:
Việc định nghĩa các chế độ lọc package là một việc khá phức tạp; đò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ể có thể nhận trên mỗi trường Khi
•
Trang 23Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Do làm việc dựa trên header của các packet, rõ ràng là bộ lọc packet 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
Firewall được cấu hình tại router Hình 6
Trang 24Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Khi hoạt động, Firewall sẽ dựa trên bộ định tuyến mà kiểm tra địa chỉ nguồn (source address) hay địa chỉ xuất phát của gói tin Sau khi nhận diện xong, mỗi địa chỉ nguồn IP sẽ được kiểm tra theo các quy tắc do người quản trị mạng định trước
Firewall dựa trên bộ định tuyến làm việc rất nhanh do nó chỉ kiểm tra lướt trên các địa chỉ nguồn mà không hề có yêu cầu thực sự nào đối với bộ định tuyến, không tốn thời gian xử lý những địa chỉ sai hay không hợp lệ Tuy nhiên, bạn phải trả giá: ngoại trừ những điều khiển chống truy nhập, các gói tin mang địa chỉ giả mạo vẫn có thể thâm nhập ở một mức nào đó trên máy chủ của bạn
Một số kỹ thuật lọc gói tin có thể được sử dụng kết hợp với Firewall để khắc phục nhược điểm nói trên Địa chỉ IP không phải là thành phần duy nhất của gói tin có thể mắc bẫy bộ định tuyến Người quản trị nên áp dụng đồng thời các quy tắc, sử dụng thông tin định danh kèm theo gói tin như thời gian, giao thức, cổng để tăng cường điều kiện lọc Tuy nhiên, sự yếu kém trong kỹ thuật lọc gói tin của Firewall dựa trên bộ định tuyến không chỉ có vậy
Một số dịch vụ gọi thủ tục từ xa (Remote Procedure Call - RPC) rất khó lọc một cách hiệu quả do các server liên kết phụ thuộc vào các cổng được gán ngẫu nhiên khi khởi động hệ thống Dịch vụ gọi là ánh xạ cổng (portmapper) sẽ ánh xạ các lời gọi tới dịch vụ RPC thành số dịch vụ gán sẵn, tuy nhiên, do không có sự tương ứng giữa số dịch vụ với bộ định tuyến lọc gói tin, nên bộ định tuyến không nhận biết được dịch vụ nào dùng cổng nào, vì thế nó không thể ngăn chặn hoàn toàn các dịch vụ này, trừ khi
bộ định tuyến ngăn toàn bộ các gói tin UDP (các dịch vụ RPC chủ yếu sử dụng giao thức UDP hay User Datagram Protocol) Việc ngăn chặn tất cả các gói tin UDP cũng sẽ ngăn luôn cả các dịch vụ cần thiết, ví dụ như DNS (Domain Name Service ố dịch vụ đặt tên vùng) Vì thế, dẫn đến tình trạng tiến thoái lưỡng nan
Trang 25Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
1.8 Các ý niệm chung về Firewall:
Một trong những ý tưởng chính của Firewall là che chắn cho mạng của bạn khỏi tầm nhìn của những người dùng bên ngoài không được phép kết nối, hay chí ít cũng không cho phép họ rớ tới mạng Quá trình này thực thi các chỉ tiêu lọc bỏ do người quản trị ấn định
Trên lý thuyết, Firewall là phương pháp bảo mật an toàn nhất khi mạng của bạn
có kết nối Internet Tuy nhiên, vẫn tồn tại các vấn đề xung quanh môi trường bảo mật này Nếu Firewall được cấu hình quá chặt chẽ, tiến trình làm việc của mạng sẽ bị ảnh hưởng, đặc biệt trong môi trường người dùng phụ thuộc hoàn toàn vào ứng dụng phân tán Do Firewall thực thi từng chính sách bảo mật chặt chẽ nên nó có thể bị sa lầy Tóm lại, cơ chế bảo mật càng chặt chẽ bao nhiêu, thì tính năng càng bị hạn chế bấy nhiêu Một vấn đề khác của Firewall tương tự như việc xếp trứng vào rổ Do là rào chắn chống kết nối bất hợp pháp nên một khe hở cũng có thể dễ dàng phá huỷ mạng của bạn Firewall duy trì môi trường bảo mật, trong đó nó đóng vai trò điều khiển truy nhập
và thực thi sơ đồ bảo mật Firewall thường được mô tả như cửa ngõ của mạng, nơi xác nhận quyền truy nhập Tuy nhiên điều gì sẽ xảy ra khi nó bị vô hiệu hoá? Nếu một kỹ thuật phá Firewall được phát hiện, cũng có nghĩa người vệ sĩ bị tiêu diệt và cơ hội sống sót của mạng là rất mỏng manh Vì vậy trước khi xây dựng Firewall, bạn nên xem xét
kỹ và tất nhiên phải hiểu tường tận về mạng của mình
Một điều nữa, Firewall cũng có khả năng cấm các kết nối không được cho phép từ bên trong ra Điều này, nếu suy nghĩ đơn giản thì chúng ta thấy rất có lợi, tuy nhiên trong một vài trường hợp thì nó vẫn có mặt hạn chế của nó
1.8.1 Firewall dựa trên Application gateway:
Một dạng phổ biến là Firewall dựa trên ứng dụng application-proxy Loại này hoạt động hơi khác với Firewall dựa trên bộ định tuyến lọc gói tin Application gateway dựa trên cơ sở phần mềm Khi một người dùng không xác định kết nối từ
Trang 26Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
xa vào mạng chạy application gateway, gateway sẽ ngăn chặn kết nối từ xa này Thay vì nối thông, gateway sẽ kiểm tra các thành phần của kết nối theo những quy tắc định trước Nếu thoả mãn các quy tắc, gateway sẽ tạo cầu nối (bridge) giữa trạm nguồn và trạm đích
Hình 7 Firewall mềm
Cầu nối đóng vai trò trung gian giữa hai giao thức Ví dụ, trong một mô hình gateway đặc trưng, gói tin theo giao thức IP không được chuyển tiếp tới mạng cục
bộ, lúc đó sẽ hình thành quá trình dịch mà gateway đóng vai trò bộ phiên dịch
Ưu điểm của Firewall application gateway là không phải chuyển tiếp IP Quan trọng hơn, các điều khiển thực hiện ngay trên kết nối Sau cùng, mỗi công cụ đều cung cấp những tính năng thuận tiện cho việc truy nhập mạng Do sự lưu chuyển của các gói tin đều được chấp nhận, xem xét, dịch và chuyển lại nên
Trang 27Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Firewall loại này bị hạn chế về tốc độ Quá trình chuyển tiếp IP diễn ra khi một server nhận được tín hiệu từ bên ngoài yêu cầu chuyển tiếp thông tin theo định dạng
IP vào mạng nội bộ Việc cho phép chuyển tiếp IP là lỗi không tránh khỏi, khi đó, hacker có thể thâm nhập vào trạm làm việc trên mạng của bạn
Hạn chế khác của mô hình Firewall này là mỗi ứng dụng bảo mật (proxy application) phải được tạo ra cho từng dịch vụ mạng Như vậy một ứng dụng dùng cho Telnet, ứng dụng khác dùng cho HTTP, v.v
Do không thông qua quá trình chuyển dịch IP nên gói tin IP từ địa chỉ không xác định sẽ không thể tới máy tính trong mạng của bạn, do đó hệ thống application gateway có độ bảo mật cao hơn
1.8.2 Cổng vòng(Circuit level gateway):
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(application gateway) 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 packet nào
VD: 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ên 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 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 Firewall 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 Firewall để bảo vệ mạng nội bộ từ những sự tấn công bên ngoài
Trang 28Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
1.8.3 Hạn chế của Firewall:
• Firewall không đủ thông minh như con ngời để có thể đọc hiểu từng loại thông tin và phân tích nội dung tốt hay xấu của nó Firewall chỉ có thể ngăn chặn sự xâm nhập của những nguồn thông tin không mong muốn nhưng phải xác định rõ các thông số địa chỉ
• Firewall không thể ngăn chặn một cuộc tấn công nếu cuộc tấn công này không "đi qua" nó Một cách cụ thể, firewall không thể chống lại một cuộc tấn công từ một đường dial-up, hoặc sự dò rỉ thông tin do dữ liệu bị sao chép bất hợp pháp lên đĩa mềm
• Firewall cũng không thể chống lại các cuộc tấn công bằng dữ liệu driven attack) Khi có một số chương trình được chuyển theo thư điện tử, vượt qua firewall vào trong mạng được bảo vệ và bắt đầu hoạt động ở đây
(data-• Một ví dụ là các virus máy tính Firewall không thể làm nhiệm vụ rà quét virus trên các dữ liệu được chuyển qua nó, do tốc độ làm việc, sự xuất hiện liên tục của các virus mới và do có rất nhiều cách để mã hóa dữ liệu, thoát khỏi khả năng kiểm soát của firewall
Tuy nhiên, Firewall vẫn là giải pháp hữu hiệu được áp dụng rộng rãi
1.8.4 Firewall có dễ phá hay không:
Câu trả lời là không Lý thuyết không chứng minh được có khe hở trên Firewall, tuy nhiên thực tiễn thì lại có Các hacker đã nghiên cứu nhiều cách phá Firewall Quá trình phá Firewall gồm hai giai đoạn: đầu tiên phải tìm ra dạng Firewall mà mạng sử dụng cùng các loại dịch vụ hoạt động phía sau nó; tiếp theo là phát hiện khe hở trên Firewall đó, giai đoạn này thường khó khăn hơn Theo nghiên cứu của các hacker, khe hở trên Firewall tồn tại là do lỗi định cấu hình của người quản trị hệ thống, sai sót này cũng không hiếm khi xảy ra Người quản trị phải chắc
Trang 29Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
chắn sẽ không có bất trắc cho dù sử dụng hệ điều hành (HĐH) mạng nào, đây là cả một vấn đề nan giải Trong các mạng UNIX, điều này một phần là do HĐH UNIX quá phức tạp, có tới hàng trăm ứng dụng, giao thức và lệnh riêng Sai sót trong xây dựng Firewall có thể do người quản trị mạng không nắm vững về TCP/IP
Một trong những việc phải làm của các hacker là tách các thành phần thực ra khỏi các thành phần giả mạo Nhiều Firewall sử dụng trạm hy sinh (sacrificial hosts) - là hệ thống được thiết kế như các server Web (có thể sẵn sàng bỏ đi) hay bẫy (decoys), dùng để bắt các hành vi thâm nhập của hacker Bẫy có thể cần dùng tới những thiết bị ngụy trang phức tạp nhằm che dấu tính chất thật của nó, ví dụ: đưa ra câu trả lời tương tự hệ thống tập tin hay các ứng dụng thực Vì vậy, công việc đầu tiên của hacker là phải xác định đây là các đối tượng tồn tại thật
Tấn công hệ thống từ bên ngoài Hình 8
Trang 30Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Để có được thông tin về hệ thống, hacker cần dùng tới thiết bị có khả năng phục vụ mail và các dịch vụ khác Hacker sẽ tìm cách để nhận được một thông điệp đến từ bên trong hệ thống, khi đó, đường đi được kiểm tra và có thể tìm ra những manh mối về cấu trúc hệ thống
Ngoài ra, không Firewall nào có thể ngăn cản việc phá hoại từ bên trong Nếu hacker tồn tại ngay trong nội bộ tổ chức, chẳng bao lâu mạng của bạn sẽ bị hack Thực tế đã xảy ra với một công ty dầu lửa lớn: một tay hacker trà trộn vào đội ngũ nhân viên và thu thập những thông tin quan trọng không chỉ về mạng mà còn
Trang 31Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Hình 9 Packet filtering
Trang 32Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Căn bản, các quy luật lọc đựơc định nghĩa sao cho các host trên mạng nội bộ được quyền truy nhập trực tiếp tới Internet, trong khi các host trên Internet chỉ có một số giới hạn các truy nhập vào các máy tính trên mạng nội bộ Tư tưởng của mô cấu trúc firewall này là tất cả những gì không được chỉ ra rõ ràng là cho phép thì có nghĩa là bị từ chối
Ưu điểm:
Giá thành thấp, cấu hình đơn giản
• Trong suốt(transparent) đối với user
•
Hạn chế:
Có rất nhiều hạn chế đối với một packet-filtering router, như là dễ bị tấn công vào các bộ lọc mà cấu hình được đặt không hoàn hảo, hoặc là bị tấn công ngầm dưới những dịch vụ đã được phép
•
Bởi vì các packet được trao đổi trực tiếp giữa hai mạng thông qua router, nguy cơ bị tấn công quyết định bởi số lợng các host và dịch vụ được phép Điều đó dẫn đến mỗi một host được phép truy nhập trực tiếp vào Internet cần phải được cung cấp một hệ thống xác thực phức tạp, và thường xuyên kiểm tra bởi người quản trị mạng xem có dấu hiệu của sự tấn công nào không
•
Nếu một packet-filtering router do một sự cố nào đó ngừng hoạt động, tất
cả hệ thống trên mạng nội bộ có thể bị tấn công
•
1.9.2 Mô hình Single-Homed Bastion Host:
Hệ thống này bao gồm một packet-filtering router và một bastion host Hệ thống này cung cấp độ bảo mật cao hơn hệ thống trên, vì nó thực hiện cả bảo mật ở tầng network (packet-filtering) và ở tầng ứng dụng (application level) Đồng thời, kẻ tấn công phải phá vỡ cả hai tầng bảo mật để tấn công vào mạng nội bộ
Trang 33Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Hình 10 Mô hình single-Homed Bastion Host
Trong hệ thống này, bastion host được cấu hình ở trong mạng nội bộ Qui luật filtering trên packet-filtering router được định nghĩa sao cho tất cả các
hệ thống ở bên ngoài chỉ có thể truy nhập bastion host; Việc truyền thông tới tất cả các hệ thống bên trong đều bị khoá Bởi vì các hệ thống nội bộ và bastion host ở trên cùng một mạng, chính sách bảo mật của một tổ chức sẽ quyết định xem các hệ thống nội bộ được phép truy nhập trực tiếp vào bastion Internet hay là chúng phải sử dụng dịch vụ proxy trên bastion host Việc bắt buộc những user nội bộ được thực hiện bằng cách đặt cấu hình bộ lọc của router sao cho chỉ chấp nhận những truyền thông nội bộ xuất phát từ bastion host
Ưu điểm:
Máy chủ cung cấp các thông tin công cộng qua dịch vụ Web và FTP có thể đặt trên packet-filtering router và bastion Trong trường hợp yêu cầu độ an toàn cao nhất, bastion host có thể chạy các dịch vụ proxy yêu cầu tất cả các
Trang 34Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Bởi vì bastion host là hệ thống bên trong duy nhất có thể truy nhập được từ Internet, sự tấn công cũng chỉ giới hạn đến bastion host mà thôi Tuy nhiên, nếu như user log on được vào bastion host thì họ có thể dễ dàng truy nhập toàn bộ mạng nội bộ Vì vậy cần phải cấm không cho user logon vào bastion host
1.9.3 Mô hình Dual-Homed Bastion Host:
Demilitarized Zone (DMZ) hay Screened-subnet Firewall
Hệ thống bao gồm hai packet-filtering router và một bastion host Hệ có độ
an toàn cao nhất vì nó cung cấp cả mức bảo mật network và application, trong khi định nghĩa một mạng "phi quân sự" Mạng DMZ đóng vai trò như một mạng nhỏ, cô lập đặt giữa Internet và mạng nội bộ Cơ bản, một DMZ được cấu hình sao cho các hệ thống trên Internet và mạng nội bộ chỉ có thể truy nhập được một số giới hạn các hệ thống trên mạng DMZ, và sự truyền trực tiếp qua mạng DMZ là không thể được
Trang 35Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Hình 11 Mô hình Dual-Homed Bastion Host
Với những thông tin đến, router ngoài chống lại những sự tấn công chuẩn (như giả mạo địa chỉ IP), và điều khiển truy nhập tới DMZ Hệ thống chỉ cho phép bên ngoài truy nhập vào bastion host Router trong cung cấp sự bảo vệ thứ hai bằng cách điều khiển DMZ truy nhập mạng nội bộ chỉ với những truyền thông bắt đầu từ bastion host
Với những thông tin đi, router trong điều khiển mạng nội bộ truy nhập tới DMZ Nó chỉ cho phép các hệ thống bên trong truy nhập bastion host và có thể cả information server Quy luật filtering trên router ngoài yêu cầu sử dung dich vụ proxy bằng cách chỉ cho phép thông tin ra bắt nguồn từ bastion host
Ưu điểm:
Kẻ tấn công cần phá vỡ ba tầng bảo vệ: router ngoài, bastion host và router
Trang 36Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Chỉ có một số hệ thống đã được chọn ra trên DMZ là được biết đến bởi Internet qua routing table và DNS information exchange ( Domain Name Server )
Bởi vì router trong chỉ quảng cáo DMZ network tới mạng nội bộ, các hệ thống trong mạng nội bộ không thể truy nhập trực tiếp vào Internet Điều nay đảm bảo rằng những user bên trong bắt buộc phải truy nhập Internet qua dịch vụ proxy
1.9.4 Proxy server:
Chúng ta sẽ xây dựng Firewall theo kiến trúc application-level gateway, theo
đó một bộ chương trình proxy được đặt ở gateway ngăn cách một mạng bên trong (Intranet) với Internet
Bộ chương trình proxy được phát triển dựa trên bộ công cụ xây dựng Internet Firewall TIS (Trusted Information System), bao gồm một bộ các chương trình và sự đặt lại cấu hình hệ thống để nhằm mục đích xây dựng một Firewall Bộ chương trình được thiết kế để chạy trên hệ UNIX sử dụng TCP/IP với giao diện socket Berkeley
Trang 37Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Hình 12 Mô hình 1 Proxy đơn giản
Bộ chương trình proxy được thiết kế cho một số cấu hình firewall, theo các dạng cơ bản: dual-home gateway, screened host gateway, và screened subnet gateway
Thành phần Bastion host trong Firewall, đóng vai trò như một người chuyển tiếp thông tin, ghi nhật ký truyền thông, và cung cấp các dịch vụ, đòi hỏi độ
an toàn cao
Proxy server chúng ta sẽ tìm hiểu kĩ hơn ở phần sau
1.9.5 Phần mềm Firewall – Proxy server:
Bộ chương trình proxy gồm những chương trình mức ứng dụng level programs), dùng để thay thế hoặc là thêm vào phần mềm hệ thống Đối với mỗi dịch vụ, cần có một phần mềm tương ứng làm nhiệm vụ lọc các bản tin Trên
Trang 38(application-Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
SMTP Gateway - Proxy server cho dịch vụ SMTP (Simple Mail Tranfer Protocol)
•
FTP Gateway - Proxy server cho dịch vụ Ftp
• Telnet Gateway - Proxy server cho dịch vụ Telnet
• HTTP Gateway - Proxy server cho dịch vụ HTTP (World Wide Web)
• Rlogin Gateway - Proxy server cho dịch vu rlogin
• Plug Gateway - Proxy server cho dịch vụ kết nối server tức thời dùng giao thức TCP (TCP Plug-Board Connection server)
•
SOCKS - Proxy server cho các dịch vụ theo chuẩn SOCKS
• NETACL - Điều khiển truy nhập mạng dùng cho các dịch vụ khác
•
IP filter – Proxy điều khiển mức IP
• SMTP Gateway - Proxy server cho cổng SMTP
•
Trang 39Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
SMTP Gateway - Proxy server cho dịch vụ SMTP (Simple Mail Tranfer Protocol)
1.9.5.1
Hình 13 Một số protocol sau proxy
Chương trình SMTP Gateway được xây dựng trên cơ sở sử dụng hai phần mềm smap và smapd, dùng để chống lại sự truy nhập thông qua giao thức SMTP Nguyên lý thực hiện là chặn trước chương trình mail server nguyên thuỷ của hệ thống, không cho phép các hệ thống bên ngoài kết nối trực tiếp với mail server Vì ở trong mạng tin cậy mail server thường có một số quyền
Trang 40Luận văn tốt nghiệp Mạng máy tính GVHD: ThS Đỗ Hoàng Cường
Khi một hệ thống ở xa nối tới cổng SMTP Chương trình smap sẽ dành quyền phục vụ và chuyển tới thư mục dành riêng và đặt user-id ở mức bình thường (không có quyền ưu tiên) Mục đích duy nhất của smap là đối thoại SMTP với các hệ thống khác, thu lượm mail, ghi vào đĩa, ghi nhật ký, và kết thúc Smapd thường xuyên quét thư mục này, khi phát hiện có thư sẽ chuyển
dữ liệu cho sendmail để phân phát vào các hòm thư cá nhân hoặc chuyển tiếp tới các mail server khác
Như vậy, một user lạ trên mạng không thể kết nối trực tiếp với Mail Server Tất cả các thông tin đi theo đường này hoàn toàn có thể kiểm soát được Tuy nhiên, chương trình cũng không thể giải quyết vấn đề giả mạo thư hoặc các loại tấn công bằng đường khác
FTP Gateway Proxy Server cho dịch vụ FTP:
1.9.5.2
Proxy server cho dịch vụ FTP cung cấp khả năng kiểm soát truy nhập dịch
vụ FTP dựa trên địa chỉ IP và hostname, và cung cấp điều khiển truy nhập thứ cấp cho phép tuỳ chọn khoá hoặc ghi nhật ký bất kỳ lệnh FTP nào Các địa chỉ đích của dịch vụ này cũng có thể tuỳ chọn được phép hay bị cấm Tất
cả các sự kết nối và dung lượng dữ liệu chuyển qua đều bị ghi nhật kí lại FTP Gateway tự bản thân nó không đe dọa an toàn của hệ thống Firewall, bởi vì nó chạy tới một thư mục rỗng và không thực hiện một thủ tục vào ra file nào cả ngoài việc đọc file cấu hình của nó
FTP Server chỉ cung cấp dịch vụ FTP, mà không quan tâm đến ai có quyền hay không có quyền kết xuất (download) file Do vậy, việc xác định quyền phải được thiết lập trên FTP Gateway và phải thực hiện trước khi thực hiện việc kết xuất (download) hay nhập (upload) file Ftp Gateway nên được cấu