Tìm hiểu các cơ chế để bảo mật hệ thống thương mại điện tử - Web security

MỤC LỤC TỔ CHỨC LUẬN VĂN . 8 CHƯƠNG 1: TÌM HIỂU ỨNG DỤNG WEB 9 1.1. Kiến trúc cơ bản của ứng dụng web 9 1.2. Hoạt động của ứng dụng web . 10 1.3. Kết nối với các cơ sở dữ liệu 12 CHƯƠNG 2 : TÌM HIỂU QUÁ TRÌNH TẤN CÔNG CỦA HACKER 14 2.1. Các quy trình : 14 2.2. Kết luận . 19 CHƯƠNG 3 : TÌM HIỂU TẤN CÔNG CHÈN THAM SỐ . 20 3.1. HTML Form Field Manipulation – thao tác trên biến ẩn form . 21 3.1.1 Khái niệm 21 3.1.2. Kĩ thuật phòng chống . 22 3.2. URL Manipulation – thao tác trên URL : . 23 3.2.1 Khái niệm 23 3.2.2. Kĩ thuật phòng chống . 24 3.3. HTTP Header Manipulation – thao tác trên HTTP header: 25 3.3.1 Khái niệm : 25 3.3.2. Kĩ thuật phòng chống . 29 3.4. Hidden Manipulation - Thao tác vùng ẩn 29 3.4.1. Khái niệm . 29 3.4.2. Cách phòng chống 29 CHƯƠNG 4 : TẤN CÔNG TRÀN BỘ ĐỆM BUFFER OVERFLOW ATTACKS 31 4.1. Buffer Overflow Attacks 31 4.2. Cách phòng chống . 32 CHƯƠNG 5 : CHÈN MÃ THỰC THI TRÊN TRÌNH DUYỆT CROSS SITE SCRIPTING 33 5.1. Khái niệm XSS 33 5.2. Phương thức hoạt động XSS 33 5.3. Truy tìm lổ hổng XSS của ứng dụng web . 36 5.4. Các bước thực hiện tấn công XSS : . 37 5.5. Cách phòng chống 38 CHƯƠNG 6 : TẤN CÔNG PHIÊN LÀM VIÊC . 40 6.1. Sự ra đời và khái niệm 40 6.1.1. Sự ra đời của session 40 6.1.2. Khái niệm : . 40 6.2. Cơ chế tấn công phiên làm việc . 41 6.2.1. Ấn định phiên làm việc( session fixation) . 41 6.2.2. Đánh cắp phiên làm việc( session hijacking) 43 6.3. Cách phòng chống : 46 CHƯƠNG 7: CHÈN CÂU TRUY VẤN - SQL INJECTION . 48 7.1. Khái niệm SQL injection . 48 7.2 Các cách tấn công . 48 7.2.1. Dạng tấn công vượt qua kiểm tra đăng nhập 48 7.2.2. Tấn công dưa vào câu lệnh SELECT . 52 7.2.3. Tấn công dựa vào câu lệnh kết hợp UNION 53 7.2.4. Dạng tấn công sử dụng câu lệnh INSERT . 54 7.2.5. Dạng tấn công sử dụng stored-procedures . 55 7.3. Cách phòng tránh . 56 7.3.1. Kiểm soát chặt chẽ dữ liệu nhập vào 56 7.3.2. Thiết lập cấu hình an toàn cho hệ quản trị cơ sở dữ liệu . 58 CHƯƠNG 8 : TẤN CÔNG TỪ CHỐI DỊCH VỤ - DENY of SERVICES 59 8.1. Khái niệm về Tcp bắt tay ba chiều: 59 8.2. Tấn công kiểu SYN flood 60 8.3. Kiểu tấn công Land Attack 62 8.4. Kiểu tấn công UDP flood 62 8.5. Flood Attack 62 8.6. Tấn công kiểu DDoS (Distributed Denial of Service) 63 8.7. Tấn công DRDoS (Distributed Reflection Denial of Service) – Tấn công từ chối dịch vụ phản xạ nhiều vùng. 65 8.8. Tấn công các nguồn tài nguyên khác . 67 8.9. Các cách phòng chống . 68 CHƯƠNG 9 : NHỮNG KẾT LUẬN TRONG QUÁ TRÌNH PHÒNG CHỐNG 70 9.1. Nhiệm vụ nhà quản trị mạng . 70 9.2 .Nhiệm vụ người thiết kế ứng dụng web 71 9.3. Nhiệm vụ người sử dụng ứng dụng web . 72 CHƯƠNG 10: GIỚI THIỆU CÁC GIẢI PHÁP BẢO MẬT HỆ THỐNG MẠNG . 73 10.1. Firewall (Bức tường lửa) . 73 10.1.1. Giới thiệu về firewall . 73 10.1.2. Phân loại Firewall . 73 10.1.3. Sản phầm của Firewall 74 10.1.4. Chức năng chính của Firewall . 76 10.1.5 Các kỹ thuật dùng trong Firewall 77 10.2 Intrusion detection system (Hệ thống phát hiện xâm nhập) 83 10.2.1 Khái niệm: . 83 10.2.2. Mô hình hoạt động. 84 10.2.2.1 Chi tiết về IDS 85 10.2.2.2 Đánh giá về mức độ an toàn của hệ thống: . 86 10.2.2.3 Khả năng phát triển trong tương lai: . 86 10.3. Intrusion Prevension System ( Hệ thống ngăn chặn xâm nhập) . 87 10.3.1 Khái niệm: . 87 10.3.1.1 Chức năng: 87 10.3.1.2. Mô hình lý luận: 88 10.3.2 Mô hình hoạt động: . 88 10.3.3. Các thành phần của IPS: . 89 10.3.3.1. Phân tích sự hoạt động liên thành phần: 89 10.3.3.2. Đánh giá về mức độ an toàn của hệ thống: 90 10.3.3.3 Khả năng phát triển trong tương lai: . 90 CHƯƠNG 11: DEMO THỰC TẾ CÀI ĐẶT VÀ CẤU HÌNH TƯỜNG LỬA “IPCOP” . 91 11.1. Giới thiệu 91 11.2.Triển khai IPCOP firewall/ IDS . 94 11.3. Quản trị IPCOP firewall/IDS 103 KẾT LUẬN . 113 TÀI LIỆU THAM KHẢO 114

pdf114 trang | Chia sẻ: lvcdongnoi | Lượt xem: 3092 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Tìm hiểu các cơ chế để bảo mật hệ thống thương mại điện tử - Web security, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
er gửi gói tin UDP echo với địa chỉ IP nguồn là cổng loopback của chính mục tiêu cần tấn công hoặc của một máy tính trong cùng mạng. Với mục tiêu sử dụng cổng UDP echo (port 7) để thiết lập việc gửi và nhận các gói tin echo trên 2 máy tính (hoặc giữa mục tiêu với chính nó nếu mục tiêu có cấu hình cổng loopback), khiến cho 2 máy tính này dần dần sử dụng hết băng thông của chúng, và cản trở hoạt động chia sẻ tài nguyên mạng của các máy tính khác trong mạng. 8.5. Flood Attack Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 63  Một kiểu tấn công DoS nữa cũng rất hay được dùng vì tính đơn giản của nó và vì có rất nhiều công cụ sẵn có hỗ trợ đắc lực cho kẻ tấn công là Flood Attack, chủ yếu thông qua các website. Về nguyên tắc, các website đặt trên máy chủ khi chạy sẽ tiêu lượng tài nguyên máy chủ nhất định, nhất là lượng bộ nhớ (RAM) và bộ vi xử lý (CPU). Dựa vào việc tiêu hao đó, những kẻ tấn công đơn giản là dùng các phần mềm như smurf chẳng hạn để liên tục yêu cầu máy chủ phục vụ trang web đó để chiếm dụng tài nguyên. Cách tấn công này tuy không làm máy chủ ngừng cung cấp dịch vụ hoàn toàn nhưng sẽ làm cho tốc độ phục vụ của toàn bộ hệ thống giảm mạnh, người dùng sẽ cảm nhận rõ ràng việc phải chờ lâu hơn để trang web hiện ra trên màn hình. Nếu thực hiện tấn công ồ ạt và có sự phối hợp nhịp nhàng, phương thức tấn công này hoàn toàn có thể làm tê liệt máy chủ trong một thời gian dài. 8.6. Tấn công kiểu DDoS (Distributed Denial of Service) Đây là cách thức tấn công rất nguy hiểm. Hacker xâm nhập vào các hệ thống máy tính, cài đặt các chương trình điều khiển từ xa, và sẽ kích hoạt đồng thời các chương trình này vào cùng một thời điểm để đồng loạt tấn công vào một mục tiêu. Với DDoS, các hacker có thể huy động tới hàng trăm thậm chí hàng ngàn máy tính cùng tham gia tấn công cùng một thời điểm làm băng thông của mục tiêu bị tắc nghẽn không thể sử dụng được nữa Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Hình 9-3 : tấn công DDoS Xuất hiện vào năm 1999, so với tấn công DoS cổ điển, sức mạnh của DDoS cao hơn Trang 64  gấp nhiều lần. Hầu hết các cuộc tấn công DDoS nhằm vào việc chiếm dụng băng thông (bandwidth) gây nghẽn mạch hệ thống dẫn đến hệ thống ngưng hoạt động. Để thực hiện thì kẻ tấn công tìm cách chiếm dụng và điều khiển nhiều máy tính/mạng máy tính trung gian (đóng vai trò zombie) từ nhiều nơi để đồng loạt gửi ào ạt các gói tin (packet) với số lượng rất lớn nhằm chiếm dụng tài nguyên và làm tràn ngập đường truyền của một mục tiêu xác định nào đó. Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 65  Hiện nay, đa xuất hiện dạng virus/worm có khả năng thực hiện các cuộc tấn công DDoS. Khi bị lây nhiễm vào các máy khác, chúng sẽ tự động gửi các yêu cầu phục vụ đến một mục tiêu xác định nào đó vào thời điểm xác định để chiếm dụng băng thông hoặc tài nguyên hệ thống máy chủ. Theo cách này thì dù băng thông có bao nhiêu đi chăng nữa thì cũng không thể chịu đựng được số lượng hàng triệu các gói tin đó nên hệ thống không thể hoạt động được nữa và như thế dẫn đến việc các yêu cầu hợp lệ khác không thể nào được đáp ứng, server sẽ bị “loại bỏ” khỏi internet. 8.7. Tấn công DRDoS (Distributed Reflection Denial of Service) – Tấn công từ chối dịch vụ phản xạ nhiều vùng. Xuất hiện vào đầu năm 2002, là kiểu tấn công mới nhất, mạnh nhất trong họ DoS Mục tiêu chính của DDDoS là chiếm đoạt toàn bộ băng thông của máy chủ, tức là làm tắc nghẽn hoàn toàn đường kết nối từ máy chủ vào xương sống của Internet và tiêu hao tài nguyên máy chủ. Trong suốt quá trình máy chủ bị tấn công bằng DrDoS, không một máy khách nào có thể kết nối được vào máy chủ đó. Tất cả các dịch vụ chạy trên nền TCP/IP như DNS, HTTP, FTP, POP3, ... đều bị vô hiệu hóa Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Hình 8-4 : Tấn công RDDos Bằng cách giả địa chỉ IP của máy đích, hacker sẽ cùng lúc gửi nhiều gói tin đến các hệ thống máy mạnh trên mạng, các hệ thống này khi nhận gói tin SYN giả này, chấp nhận kết nối và gửi trả một gói tin SYN/ACK để thông báo. Vì địa chỉ IP của gói tin SYN bị hacker sửa đổi thành địa chỉ IP máy đích nên những gói tin SYN/ACK sẽ được gửi về cho máy đích. Cùng một lúc nhận được nhiều gói tin, đường truyền của máy đích Trang 66  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 67  Quá trình gửi cứ lặp lại liên tục với nhiều địa chỉ IP giả từ kẻ tấn công, với nhiều server lớn tham gia nên server mục tiêu nhanh chóng bị quá tải, bandwidth bị chiếm dụng bởi server lớn. Tính “nghệ thuật” là ở chỗ chỉ cần với một máy tính với modem 56kbps, một hacker lành nghề có thể đánh bại bất cứ máy chủ nào trong giây lát mà không cần chiếm đoạt bất cứ máy nào để làm phương tiện thực hiện tấn công 8.8. Tấn công các nguồn tài nguyên khác Kẻ tấn công lợi dụng các nguồn tài nguyên mà nạn nhân cần sử dụng để tấn công. Những kẻ tấn công có thể thay đổi dữ liệu và tự sao chép dữ liệu mà nạn nhân cần lên nhiều lần, làm CPU bị quá tải và các quá trình xử lý dữ liệu bị đình trệ. Tấn công kiểu Smurf Attack Kiểu tấn công này cần một hệ thống rất quan trọng, đó là mạng khuyếch đại. Hacker dùng địa chỉ của máy tính cần tấn công bằng cách gửi gói tin ICMP echo cho toàn bộ mạng (broadcast). Các máy tính trong mạng sẽ đồng loạt gửi gói tin ICMP reply cho máy tính mà hacker muốn tấn công. Kết quả là máy tính này sẽ không thể xử lý kịp thời một lượng lớn thông tin và dẫn tới bị treo máy. Tấn công kiểu Tear Drop Trong mạng chuyển mạch gói, dữ liệu được chia thành nhiều gói tin nhỏ, mỗi gói tin có một giá trị offset riêng và có thể truyền đi theo nhiều con đường khác nhau để tới đích. Tại đích, nhờ vào giá trị offset của từng gói tin mà dữ liệu lại được kết hợp Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 68  8.9. Các cách phòng chống Nhìn chung, tấn công từ chối dịch vụ không quá khó thực hiện, nhưng rất khó phòng chống do tính bất ngờ và thường là phòng chống trong thế bị động khi sự việc đa rồi. Hậu quả mà DoS gây ra không chỉ tiêu tốn nhiều tiền bạc, và công sức mà còn mất rất nhiều thời gian để khắc phục.Nó gây nhiều khó khăn trong vấn đề bảo vệ cũng như điều tra tìm ra thủ phạm nhất, bởi vì hầu hết hacker đă thay đổi địa chỉ IP của máy mình nên rất khó xác định ai là thủ phạm. Việc đối phó bằng cách tăng cường “phần cứng” cũng là giải pháp tốt, nhưng thường xuyên theo dõi để phát hiện và ngăn chặn kịp thời cái gói tin IP từ các nguồn không tin cậy là hữu hiệu nhất. Sau đây là một số phương pháp để giảm thiểu khả năng bị tấn công DoS, ta cần phải : ¾ Khi phát hiện máy chủ mình bị tấn công hãy nhanh chóng truy tìm địa chỉ IP đó và cấm không cho gửi dữ liệu đến máy chủ.Hoặc tạm thời chuyển máy chủ sang một địa chỉ khác ¾ Dùng tính năng lọc dữ liệu của router/firewall để loại bỏ các packet không mong muốn, giảm lượng lưu thông trên mạng và tải của máy chủ Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 69  ¾ Huỷ khả năng broadcast tại router biên ¾ Tăng kích thước hàng đợi kết nối ¾ Giảm thời gian thiết lập kết nối ¾ Dùng những phần mềm phát hiện và phá hủy kiểu tấn công DoS: ¾ Liên tục cập nhật, nghiên cứu, kiểm tra để phát hiện các lỗ hổng bảo mật và có biện pháp khắc phục kịp thời. ¾ Sử dụng các biện pháp kiểm tra hoạt động của hệ thống một cách liên tục để phát hiện ngay những hành động bất bình thường. ¾ Nên xây dựng và triển khai hệ thống dự phòng. Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 70  CHƯƠNG 9 : NHỮNG KẾT LUẬN TRONG QUÁ TRÌNH PHÒNG CHỐNG Phòng chống hacker không phải là nhiệm vụ của riêng những người lập trình Web hay người quản trị mạng mà cần có sự kết hợp, hỗ trợ của người quản trị , người lập trình và chính bản thân người dùng. Thiếu sót một trong những yếu tố này đều có thể dẫn đến thông tin bị đánh cắp và thậm chí hacker có thể điều khiển được cả hệ thống mạng. Theo các tài liệu nghiên cứu được thì nhiệm vụ của mổi đối tượng như sau : 9.1. Nhiệm vụ nhà quản trị mạng • Người quản trị hệ thống cần xác định rõ: những đối tượng nào là quan trọng nhất trong hệ thống cần bảo vệ; xác định rõ mức độ ưu tiên đối với những đối tượng đó. • Cấu hình cho những ứng dụng: thận trọng trong việc cấu hình trình chủ và một số ứng dụng. Ngoài ra phải thiết lập quyền cho ứng dụng chỉ chạy dưới một số quyền hạn nhất định như trong quản trị cơ sở dữ liệu tránh trường hợp hacker có thể lợi dụng chạy những câu lệnh điều khiển hệ thống. • Xác định nguy cơ đối với hệ thống chính là xác định các lỗ hổng bảo mật của các dịch vụ, ứng dụng trên hệ thống đó. Khi phát hiện lỗi cần cập nhập những phần mềm mới nhất để tránh trường hợp hacker lợi dụng những lỗ hổng có trong những ứng dụng chưa được sửa chữa trong phiên bản cũ. • Nắm được hoạt động của các phần mềm sử dụng, ý nghĩa của các file cấu hình quan trọng (như etc/password), áp dụng các biện pháp bảo vệ cấu hình như sử dụng phương thức mă hóa hashing code (MD5). Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 71  • Sử dụng một vài công cụ có thể phát hiện ra các hoạt động truy nhập không hợp lệ vào một hệ thống như logfile. • Kiểm soát chặt chẽ các quyền của các tài khoản trên hệ thống; không sử dụng quyền root trong các trường hợp không cần thiết. Đối với các tài khoản không sử dụng trên hệ thống cần đổi mật khẩu hoặc hủy bỏ. • Quản lý mật khẩu một cách chặt chẽ 9.2 .Nhiệm vụ người thiết kế ứng dụng web Đảm bảo dữ liệu được cung cấp từ người dùng là hợp lệ: Tất cả những dữ liệu được đưa vào ứng dụng phải đảm bảo được kiểm tra kỹ, loại bỏ hoặc từ chối những kí tự đặc biệt như ‘ /… Nếu không thể từ chối cũng như lọai bỏ những kí tự, ứng dụng cần kiểm tra dữ liệu xuất để đảm bảo rằng dữ liệu xuất đến trình duyệt là an toàn. Chứng thực người dùng: Nhiều ứng dụng hiện nay quản lí một phiên làm việc của người dùng bằng sessionID nhưng sự yếu kém trong cách quản lí một phiên làm việc khiến cho hacker có thể dễ dàng kiểm soát được một phiên làm việc của người dùng như trong kỹ thuật “quản lí phiên làm việc”. Vì thế, đối với một phiên làm việc, ứng dụng cần hủy ngay sau khi trình duyệt đóng kết nối. Mă hóa dữ liệu quan trọng: Những thông tin quan trong như tên/mật khẩu, credit card,… cần được mă hóa để tránh hacker có thể lấy được nội dung và sử dụng chúng như trong kỹ thuật XSS, SQL Injection...Ngoài ra, trong quá trình truyền, kết hợp phương pháp SSL để tránh trường hợp mất mát thông tin trên đường truyền. Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 72  9.3. Nhiệm vụ người sử dụng ứng dụng web Đưa ra những lời cảnh báo cho người sử dụng Web rủi ro có thể xảy ra, đặc biệt nên chú ý khi cho phép trình duyệt thực thi ngôn ngữ trình khách trên máy của mình, Vì khả năng lợi dụng ngôn ngữ này là rất lớn như trong kỹ thuật XSS, sessionID. Sau khi sử dụng xong ứng dụng cần thoát ra khỏi hệ thống theo qui định để những nội dung quan trọng lưu trữ trong cookie bị hủy bỏ, tránh khả năng hacker vẫn tiếp tục dùng session ID tồn tại đó để đăng nhập vào hệ thống hợp lệ. Quản lý tài khoản chặt chẽ, người sử dụng cần nhận thức được vai trò quan trọng trong việc bảo vệ tài khoản của mình. Phát hiện tài khoản sử dụng trái phép: Người dùng cần được huấn luyện về các cách phát hiện tài khoản của mình sử dụng trái phép như thế nào. Người sử dụng cần thường xuyên kiểm tra các hoạt động của mình để đảm bảo không có người khác lợi dụng tài khoản thực hiện những hành động khác. Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 73  CHƯƠNG 10: GIỚI THIỆU CÁC GIẢI PHÁP BẢO MẬT HỆ THỐNG MẠNG 10.1. Firewall (Bức tường lửa) 10.1.1. Giới thiệu về firewall 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ỏa 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ệ nguồn thông tin nội bộ và hạn chế sự truy nhập không mong muốn vào hệ thống. 10.1.2. Phân loại Firewall Firewall có thể phân làm hai loại sau: Desktop or Personal Firewall: được thiết kế để bảo vệ các máy riêng lẻ khỏi sự truy nhập trái phép từ bên ngoài. Ngày nay Personal Firewall được tích hợp thêm nhiều tính năng bảo mật khác như phần mềm diệt virut, phần mềm giám sát truy nhập, phần mềm phân tích hệ thống …Một số phần mềm firewall thương mại như BlackICE,Cisco Security Agent, ZoneAlarm, McAfee,Symantec, Firewall in Windows XP with Service Pack 2… Network Firewall: được thiết kế để bảo vệ toàn bộ hệ thống mạng khỏi sự truy nhập trái phép từ bên ngoài. Network Firewall có hai loại chính : thiết bị Firewall chuyên biệt (Ví dụ: Cisco PIX, Cisco ASA, Juniper's NetScreen firewalls, Nokia firewalls, Symantec's Enterprise Firewall ) hoặc phần mềm Firewall tích hợp (Ví dụ: Check Point's Firewall-1 NG, NGX Firewalls, Microsoft ISA Server, Linux-based IPTables, ) Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Hình 11-1: Mô hình phân loại firewall 3. Sản phầm của Firewall 10.1. Ngày nay trên thị trường có rất nhiều sản phẩm Firewall. Nhưng chúng ta có thể phân Firewall có thể chia thành 3 sản phẩm chính như sau: Solftware Firewall: đây là loại Firewall thiết kế dạng chương trình ứng dụng, được bán kèm theo các hệ điều hành để bảo vệ và làm cho hệ thống thêm an toàn. (ví dụ: Sun SunScreen firewall, IPF, the Microsoft ISA Server, Check Point NG, Gauntlet, Linux's IPTables and FreeBSD, and OpenBSD's pf packet filter) Ưu điểm: - Có thể yêu cầu Firewall thực hiên nhiều tác vụ khác.(Ví dụ Làm Domain Name System (DNS) Server hoăc lọc Spam Mail.) - Có thể dùng các loại tường lửa khác để backup khi có sự cố. Hạn chế: Trang 74  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 75  - Phần mềm tường lửa thường không update kịp các bản vá lỗi của nhà sản xuất. - Có sự trùng lắp hoặc bỏ sót trong vấn đề bảo vệ của tường lửa trong môi trường mạng lớn. - Phần mềm tường lửa không tương thích với hệ điều hành. - Do được cài đặt trên hệ điều hành nên sẽ ảnh hưởng tới memory của hệ thống. Appliance Firewall: Còn gọi là loại Firewall thiết kế chuyên biệt bằng phần cứng, là những Firwall mà có mối quan hệ chặt chẽ với nhà sản xuất phần cứng và các nhà cung cấp dịch vụ Firewall cho mạng. Các Applicance Firwall bao gồm Cisco PIX, NetScreen firewalls, SonicWall appliances, WatchGuard Fireboxes, Nokia firewalls, ngoài ra còn có Linksys, D-Link, và NETGEAR là sản phẩm dành cho người dùng cá nhân. Ưu điểm: - Không bị xung đột với hệ điều hành - Không chiếm memory của hệ thống. Hạn chế: - Phức tạp trong việc cài đặt và triển khai Chi phí đầu tư cao. Khó cập nhật những tính năng mới vì còn phải liên quan đến việc nâng cấp của phần cứng. Integrated Firewalls: Là một thiết bị đa dụng, kết hợp nhiều tính năng của Firewall truyền thống với một số tính năng khác như remote-access VPN, LAN-to-LAN VPN, phòng chống tấn công, lọc mail, lọc virut. Có thể coi là kiểu Firewall cứng (Appliance Firewalls) vì có thể nó là bo mạch phần cứng gắn thêm vào thiết bị vốn có như Router hay Switch, nó Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 76  Ưu điểm: - Giá cả thấp hơn so với Appliance Firewall - Tích hợp nhiều tính năng hỗ trợ Hạn chế: - Tích hợp nhiều tính năng nên nhiều khi phức tạp, rắc rối. - Khó khăn trong việc lựa chọn Firewall phù hợp với hệ thống. 10.1.4. Chức năng chính của Firewall - Quản lý và kiểm soát lưu lượng mạng: (Cho phép truy cập vào mạng hoặc máy chủ đã được bảo vệ bằng cách lọc các gói tin và các kết nối dựa vào ip nguồn, ip đích, port nguồn, port đích, giao thức ip, thông tin nhãn mác gắn vào gói tin). - Chứng thực truy cập: (Bằng cách thực hiện đầy đủ các chứng thực (ví dụ: source IP address and port ,certificate and public keys, pre-shared keys (PSKs)),. Nếu mà gói tin không được chứng thực bởi firewall thì gói tin đó sẽ bị hủy bỏ). - Bảo vệ nguồn tài nguyên: (Firewall bảo vệ nguồn tài nguyên bằng cách dùng các luật điều khiển truy nhập, trạng thái giám sát gói tin, ứng dụng proxy hoặc kết hợp tất cả các cách trên để ngăn chặn các máy chủ được bảo vệ khỏi các truy nhập trái phép). - Thu thập và báo cáo các sự kiện: (Firewall thu thập những truy nhập cố ý của người dùng hoăc từ các phần mềm có hại như Trojan hoăc Virus.Với phương pháp thu Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 77  - Đóng vai trò trung gian: (Firewall phân chia mạng máy tính thành hai vùng riêng biệt, mộ vùng tin cậy (còn được gọi là vùng được bảo vệ) và vùng kia là không tin cậy. Firewall nhằm ngăn cản mọi truy nhập trái phép từ vùng không tin cậy vào vùng tin cậy và ngược lại. 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, lọc tất cả giao dịch bằng cách định nghĩa các dịch vụ và các truy nhập được phép hoặc bị ngăn cản. Chính sách an toàn mạng máy tính bắt buộc tất cả các truy nhập đều phải thông qua firewall để cho phép kiểm soát và điều chỉnh khi cần). 10.1.5 Các kỹ thuật dùng trong Firewall Ngày nay Firewall được xây dựng dựa trên cơ sở bộ lọc gói (packet filter), NAT, Circuit-Level, Proxy và một số kỹ thuật khác: Packet filtering firewall : Loại Firewall này thực hiện việc kiểm tra số nhận dạng địa chỉ của các packet để cho phép chúng có thể lưu thông qua lại hay không. Các thông số có thể lọc được của một packet như sau: Địa chỉ IP nơi xuất phát (source IP address). Địa chỉ IP nơi nhận (destination IP address). Cổng TCP nơi xuất phát (TCP source port). Cổng TCP nơi nhận (TCP destination port). Nhờ vậy mà firewall có thể ngăn cản được các kết nối vào những máy chủ hoặc mạng nào đó được xác định, hoặc khóa việc truy cập vào hệ thống nội bộ từ những địa chỉ không cho phép. Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 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 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 nội bộ. Hình 11-2: Mô hình tường lửa lọc gói. NAT Firewalls: là một loại tường lửa đã tồn tại trước đây. Ngày nay nó được tích hợp vào hầu hết các sản phẩm tường lửa. NAT ngày nay trở thành một chức năng của tường lửa. NAT firewalls tự đông bảo vệ hệ thống đằng sau tường lửa bởi vì nó chỉ cho phép kết nối xuất phát từ bên trong của tường lửa. Mục đích cơ bản của NAT là chuyển đổi dãy địa chỉ bên trong thành địa chỉ bên ngoài (có ý nghĩa trên Internet ). NAT Trang 78  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Firewalls tự thành lập một bản đồ trong bô nhớ chứa tất cả thông tin về các kết nối mà Firewall biết. Bản đồ này lưu trữ các địa chỉ bên trong và bên ngoài. Nó có khả năng thay thế toàn bộ địa chỉ mạng bên trong bằng cách dựa vào bản đồ các port của NAT Firewall. Ví dụ: Hai máy bên trong của NAT Firewall (192.168.1.1 and 192.168.1.2 ) muốn truy nhập web server 10.100.100.44. Host 192.168.1.1 mở TCP cổng 3844 và kết nối tới web server 10.100.100.44 tại TCP cổng 80. Host 192.168.1.2 mở TCP cổng 4687 và kết nối tới web server 10.100.100.44 tại TCP cổng 80.. The NAT firewall được cấu hình chuyển toàn bộ địa chỉ mạng 192.168.1.0/24 thành địa chỉ 72.28.230.55 khi các máy thuộc dãy địa chỉ trên muốn giao tiếp với mạng bên ngoài. Ngược lại, khi các kết nối bên ngoài muốn giao tiếp với dãy địa chỉ bên trong NAT Firewalls lại chuyển địa chỉ 72.28.230.55 thành các địa chỉ bên trong theo các port mà NAT Firewalls đã lưu trong bộ nhớ từ trước. Hình 11- 3: NAT Firewalls Circuit-Level Firewalls: làm việc ở lớp Session của mô hình OSI, giám sát các bước bắt tay để xem xét traffic nào hợp lệ. Nó đóng vai trò trung gian nhưng nó chỉ đơn giản chuyển tiếp kết nối đó cho máy chủ thật. Do vậy cổng mức mạch không kiểm soát Trang 79  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Hình 11-4 Tường lửa mạch vòng Proxy Firwall: đóng vai trò là trung gian giữa hai hệ thống, tương tự như Circuit- Level Firewalls nhưng Proxy Firewall điều khiển các kết nối tại lớp Application của mô hình OSI. Proxy Firewall điều khiển các kết nối thông qua proxy. Proxy Firewall dùng các giao thức riêng biệt để quản lý các dịch vụ. có thể cung cấp các dịch vụ ủy quyền cho các ứng dụng và giao thức như Telnet, FTP ( File Transfer Protool), HTTP ( Hypertext Transfer Protocol), và SMTP ( Simple Mail Transfer Protocol). Proxy Firewalls không cho phép bất kỳ một gói tin nào đi thẳng trực tiếp giữa hai mạng, mà được thiết kế để tăng cường khả năng kiểm soát thông qua dịch vụ người đại diện (Proxy Service). Khi một trạm bên ngoài muốn kết nối với các trạm bên trong tường lửa thông qua một dịch vụ nào đó thì trạm bên ngoài phải thông qua Proxy Service. Nếu dịch vụ và địa chỉ trạm bên ngoài không thuộc diện cấm thông qua đối với Proxy thì Proxy Service sẽ đi tìm địa chỉ trạm đích bên trong tường lửa để tạo kết nối với trạm Trang 80  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Tuy nhiên cũng có một số hạn chế đối với dạng tường lửa loại này là: Đây là loại tường lửa được cài đặt cho từng loại dịch vụ riêng rẽ trên mạng ví dụ như Telnet, Mail, FPT…. Nếu chúng ta muốn hỗ trợ một dịch vụ nào đó cho mạng của mình thông qua tường lửa thì chúng ta nhất thiết phải thêm vào proxy cho loại dịch vụ đó. Vì vậy nếu trên mạng bên ngoài có thêm một dich vụ mới nào đó thì người quản tri tường lửa phải xây dựng chính sách đại diện thích hơp với dịch vụ đó. Có hai nguyên tắc để tạo ra chính sách đại diện mặc định ở đây đó là hoăc từ chối tất cả những thứ không được đại diện, hoặc là chấp nhận tất cả những dịch vụ không có dịch vụ đại diện trên tường lửa. Nhưng cả hai cách này dều gây ra những nguy cơ an ninh và bất tiện mới cho hệ thông mạng bên trong tường lửa. Trang 81  Hình 11-5 Tường lửa Proxy Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Statefull Firewalls: là Firewall kết hợp bề ngoài, năng lực của tất cả NAT firewalls, Circuit-level firewalls, và Proxy firewalls vào một hệ thống. Là Firewall lọc traffic dựa vào đặc điểm của các gói tin giống như Packet-filtering firewalls nhưng nó cũng bao gồm kiểm tra phiên để chắc chắn rằng các phiên được cho phép. Không giống như Circuit-level firewalls, Statefull Firewall được thiết kế đặc biệt trong suốt hơn với hệ thống. Statefull Firewall phức tạp hơn so với các firewall khác nhưng ngày nay hầu như các ứng dụng dành cho bảo mật mạng đều dùng kỹ thuật firewall này. Hình 11-6 : Tường lửa Statefull Transparent Firewalls: có thể gọi là Bridge Firewall, nó không hoàn là một firewall mới nhưng có thể xem như là một loại của Statefull Firewall. Không giống như các firewall khác hoạt động ở lớp 3 trở lên, Transparent Firewall hoạt động ở lớp 2 (data link) và giám sát traffic lớp 3. Thêm vào đó, Transparent Firewall có thể áp dụng các quy tắc lọc gói giống bất kỳ các loại Statefull Firewall nào mà vẫn trong suốt với người dùng. Về bản chất Transparent Firewall như một cầu lọc giữa hai đoạn mạng. Đây là Trang 82  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 83  10.2 Intrusion detection system (Hệ thống phát hiện xâm nhập) 10.2.1 Khái niệm: Intrusion Detection System=IDS (hệ thống phát hiện xâm nhập) - Mục tiêu của việc “phát hiện” xâm nhập là xác định các hoạt động trái phép, dùng sai, lạm dụng đối với hệ thống máy tính gây ra bởi cả người dùng trong hệ thống lẫn người xâm nhập ngoài hệ thống. - Phát hiện xâm nhập trái phép là một công việc đầy khó khăn do ảnh hưởng của sự tăng trưởng nhanh chóng các kết nối mạng, môi trường máy tính không đồng nhất (hệ điều hành hỗn hợp), nhiều giao thức truyền thông và sự phân loại đáng kể của các ứng dụng thông dụng và độc quyền. Hầu hết các kỹ thuật IDS được xây dựng dựa trên sự khác biệt ứng xử của kẻ xâm nhập so với người dùng hợp lệ. Chức năng: Đầu tiên IDS được nhìn nhận là một cái chuông báo trộm mà có thể thông báo cho ta biết khi nào thì ta bị tấn công. Tuy nhiên những hệ thống IDS hiện đại thì phức tạp hơn nhiều – nó giống như một chiếc camera chống trộm hơn là một cái chuông, những người có trách nhiệm có thể quan sát và đáp trả cho những hành động đe dọa xâm nhập – xác định, đánh giá, báo cáo. Mô hình lý luận: Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 84  - Nó được xác định là hoạt động tại lớp mạng của mô hình OSI và một bộ cảm biến thụ động được đạt ngay những chốt giao thông trên mạng. - Những gói tin khi bị bắt sẽ được phân tích, so sánh trong cơ sở dữ liệu để nhận diện những giao thông nào là khác so với cơ sở dữ liệu Æđó là dấu hiệu bất thường có thể dẫn tới sự xâm nhập. - Gửi những thông tin cảnh báo cho người quản lýÆxử lý Phân loại: có 3 loại Ædựa trên dữ liệu mà nó tìm kiếm - NIDS (network IDS): nhìn vào các chuyển dịch trên mạng. Nó phát hiện ra những cuộc tấn công “tiềm năng” - HIDS(Host IDS): quan sát các host, hệ điều hành và ứng dụng. Nó phát hiện ra những cuộc tấn công đã thành công. - Hybrid: kết hợp cả NIDS và HIDS. 10.2.2. Mô hình hoạt động. Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Hình 11-7: Chuẩn của một hệ thống IDS 10.2.2.1 Chi tiết về IDS - Các thành phần của IDS: gồm Host system hoặc Network sniffer (tùy theo HIDS hay NIDS), Pre-processer (tiền xử lý), Analysis(phân tích gói), response (đáp ứng), refinement (cải tiến). - Phân tích sự hoạt động liên thành phần: - Pre-processer: tập hợp dữ liệu về những xâm nhập, những tính dễ bị tổn thương, những sự tấn công và xếp hạng cho chúng một khi dữ liệu đã được tập hợp từ bộ cảm biến của IDS. Từ sơ đồ xếp hạng, một mô hình hành vi được xây dựng. - Analysis: dữ liệu sự kiện được chuẩn hóa và so sánh với cơ sở tri thức để nhận diện sự tấn công hay những hoạt động khác thường. Trang 85  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 86  - Response: nếu sự so sánh dẫn đến phát hiện có dấu hiệu của sự tấn công nó sẽ cảnh báo. Tuy nhiên nếu chỉ mới nhận thấy một phần nhỏ dấu hiệu thì sẽ phân tích gói tin tiếp theo để xác định rõ hơn (quá trình dịch ngược Æ phụ thuộc vào khả năng của hệ thống IDS). - Refinement: cập nhật lại cơ sở tri thức về các cuộc tấn công để sử dụng cho việc phát hiện sau này. 10.2.2.2 Đánh giá về mức độ an toàn của hệ thống: Muốn hiểu được độ an toàn của hệ thống ta nên xem xét những cách khai thác lỗi trong IDS của hacker như thế nào. - Phân đoạn nhỏ gói tin làm tiêu tốn tài nguyên và khả năng xử lý của hệ thống IDS trong việc ghép các gói tin. - Giả mạo: TCP sequence number mà IDS mong đợi trong quá trình đồng bộ dữ liệu. - Thay đổi giao thức: giả tạo một giao thức chuẩn được cho phép bởi IDS để vượt mặt IDS. - Tấn công vào thiết bị kiểm tra tính toàn vẹn của hệ thống. - Tốc độ tấn công nhanh làm cho người quản trị hệ thống không kịp thời ngăn chặn. - Khả năng tấn công đa dạng của Hacker làm cho tập luật của bộ phát hiện trở nên lỗi thời Æ yêu cầu phải cập nhật và phát triển thường xuyên hệ thống. 10.2.2.3 Khả năng phát triển trong tương lai: Việc IDS có nhiều lỗ hổng là một thách thức rất lớn cho người quản trị và người phát triển hệ thống. Có 2 con đường được lựa chọn để đối phó với tình trạng này: Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 87  - Cải tiến khả năng dịch ngược của IDS trong việc phát hiện xâm nhập, cập nhật luật cho IDS…. Tất cả các cải tiến đó sẽ dẫn đến những IDS cao cấp hơn, những phiên bản mới sẽ ra đời. - Song song với việc cải tiến IDS thì có một sự thay đổi làm chuyển biến hẳn IDS. Đó là sự chuyển biến từ IDS sang IPS, mà tôi sẽ trình bày trong phần sau của bài viết. 10.3. Intrusion Prevension System ( Hệ thống ngăn chặn xâm nhập) 10.3.1 Khái niệm: Intrusion Prevention System=IPS - Như ta đã biết IDS có khả năng bắt và đọc gói tin, phân tích gói tin để phát hiện ra các nguy cơ tấn công tiềm ẩn trong nội dung của gói tin. Tuy nhiên IDS lại chỉ sinh ra các cảnh báo cho hệ thống hoặc cho người quản trị mạng, có nghĩa rằng hoạt động IDS chỉ mang tính chất cảnh báo và trợ giúp thông tin cho người quản trị mạng, căn cứ trên các thông tin cảnh báo về bảo mật, người quản trị mạng phải tiến hành ra lệnh cho Firewall ngăn chặn cuộc tấn công. Như thế bản thân hệ thống IDS vẫn là một hệ thống thụ động. - Do đó người ta phải kết hợp hoạt động của IDS với hệ thống Firewall để tạo ra một hệ thống an ninh có khả năng phát hiện các dấu hiệu tấn công và chủ động ngăn chặn cuộc tấn công. Đó chính là hệ thống ngăn ngừa xâm nhập IPS. Có thể nói nó là sự phát triển thêm của hệ thống IDS. 10.3.1.1 Chức năng: Nó hoạt động như là một IDS (phát hiện các cuộc xâm nhập bất hợp pháp) và thay đổi trong bước xử lý tiếp theo sau khi phân tích sự cố: song song với việc báo cáo Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 88  10.3.1.2. Mô hình lý luận: Vì là sự kết hợp của IDS và Firewall nên nó sẽ phải hoạt động ở lớp mạng và lớp ứng dụng của OSI. Nó sẽ đặt một bộ cảm biến ngay trong mạng và hoạt động ở cả phần điều khiển tác vụ ngay sau khi phân tích sự cố. - Những gói tin khi bị bắt sẽ được phân tích, so sánh trong cơ sở dữ liệu để nhận diện những giao thông nào là khác so với cơ sở dữ liệu Æđó là dấu hiệu bất thường có thể dẫn tới sự xâm nhập. - Dựa trên tập luật đã được thiết lập, hệ thống sẽ thực hiện việc ngăn chặn nếu cần thiết. Song song với đó, hệ thống sẽ gửi thông tin lên người quản trị(xem xét, xử lý, thay đổi tập luật….). Phân loại: IPS chia làm 3 loại giống IDS là: HIPS(host IPS), NIPS(Network IPS) và Hybrid. 10.3.2 Mô hình hoạt động: Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Hình 11-8: Chuẩn của một hệ thống IPS 10.3.3. Các thành phần của IPS: Traffic normalizer(chuẩn giao thông), System scanner(quét dịch vụ / hệ thống), Detection engine(Phân tích), Traffic shaper (định hình giao thông). 10.3.3.1. Phân tích sự hoạt động liên thành phần: - IDS: làm nhiệm vụ rà quét tất cả các gói tin trước khi hoặc sau khi đi vào mạng, đọc nội dung gói tin, phát hiện ra các dấu hiệu tấn công chứa đựng trong gói tin, nếu phát hiện có dấu hiệu tấn công, nó sinh ra cảnh báo cho hệ thống. Trang 89  - Firewall: là thành phần bảo vệ hệ thống mạng ở vùng biên, Firewall căn cứ trên tập luật mà nó được thiết lập từ trước để xác định cho phép hay không cho phép các gói tin được hay không được phép đi qua nó. Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 90  - Thành phần trung gian kết nối: Thành phần trung gian kết nối nhận các cảnh báo và thông tin đưa ra từ hệ thống IDS, phân tích mức độ cảnh báo, tiến hành tác động lên hệ thống Firewall để cấu hình lại tập luật trên đó nhằm ngăn chặn các cuộc tấn công. 10.3.3.2. Đánh giá về mức độ an toàn của hệ thống: IPS chính là sự tự động IDS, và Vì thế những điểm yếu của IDS chỉ được khắc phục một phần trong IPS, đó là sự thay thế cho người quản trị trong phần lớn thời gian. Tuy nhiên, những điểm yếu khác của IDS vẫn còn là yếu huyệt của IPS. Vì thế có thể nói IPS phát triển vẫn sẽ song song với sự phát triển của IDS. 10.3.3.3 Khả năng phát triển trong tương lai: IPS khác IDS ở sự tự động đáp trả và nếu có phát triển thì chính là sự cải tiến ở phần này. Xây dựng một IPS có khả năng đáp trả các cuộc tấn công một cách hiệu quả nhất là mong muốn của những người quản trị hệ thống. Tuy nhiên có một điều quan trọng là song song với sự phát triển của hệ thống bảo vệ thì Hacker cũng luôn phát triển. Và từ những điểm yếu có thể khai thác mà chúng ta phát hiện được, việc chống trả lại Hacker là lâu dài và tốn kém nếu ta không có sự thay đổi ngay tại nền móng của hệ thống mạng: mô hình OSI, TCP/IP, giao thức… Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 91  CHƯƠNG 11: DEMO THỰC TẾ CÀI ĐẶT VÀ CẤU HÌNH TƯỜNG LỬA “IPCOP” 11.1. Giới thiệu IPCOP là một bản phân phối Linux thuần túy dùng làm Proxy Server có chức năng "tường lửa" (firewall) chuyên nghiệp bảo vệ hệ thống mạng trước các nguy cơ như virus và xâm nhập bất hợp pháp. IPCOP Firewall không đòi hỏi cấu hình phần cứng cao nên cho phép tận dụng máy tính cũ. Trước khi cài đặt và triển khai IPCOP, nên tham khảo danh sách các phần cứng tương thích với IPCOP tại trang web: IPCOP Firewall/Router có nhiều tính năng mạnh mà ngay cả những sản phẩm tường lửa thương mại hàng đầu cũng không có được. Để tăng cường bảo mật cho các ứng dụng và tối ưu hóa băng thông, IPCOP đã tích hợp những chương trình bảo mật hàng đầu với những tính năng hữu ích như: 1. Linux Netfilter - Stateful Packet Inspection: một ứng dụng firewall nổi tiếng và mạnh. 2. Snort -Network IDS: hệ thống dò tìm và phát hiện sự xâm nhập trái phép. 3. Squid – Web Proxy: chương trình kiểm soát và tăng tốc truy cập Internet. 4. Hỗ trợ FreeS/WAN IPSec cho phép xây dựng máy chủ VPN cung cấp truy cập tài nguyên nội bộ cho người dùng từ xa thông qua các phiên truyền được mã hóa và chứng thực chặt chẽ. 5. Ngoài ra còn có các dịch vụ mạng phổ biến và quan trọng như DHCP server cấp địa chỉ IP động, hỗ trợ chức năng đăng kí tên miền động thông qua cơ chế Dynamic DNS... 6. Giao diện quản lý, cấu hình thân thiện và dễ sử dụng thông qua môi trường Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 92  web. 7. Cơ chế tự vá lỗi và cập nhật các chính sách bảo mật tự động. 8. Cho phép sao lưu và khôi phục nhanh chóng các thông tin cấu hình của IPCOP khi có sự cố xảy ra. Yêu cầu tối thiểu : • PC 386 với 16MB RAM (nên có nhiều hơn nếu sử dụng chức năng IDS của Snort và tăng tốc độ truy cập Internet của Squid) • Đĩa cứng ATA dung lượng tối thiểu 125MB + 2x (dung lượng bộ nhớ RAM) • Ngoài ra, IPCOP là một hệ thống firewall cho nên cần có ít nhất hai card mạng (NIC): một cho môi trường bên ngoài (Internet) và một cho hệ thống nội bộ (LAN). Các kiểu vùng mạng: • RED: lớp mạng giao tiếp với hệ thống bên ngoài như Internet. • GREEN: hệ thống mạng nội bộ của công ty, gồm máy tính của các nhân viên, phòng ban... • ORANGE: đây là vùng DMZ dành cho các web server, mail server… Client từ Internet có thể kết nối đến vùng này mà không ảnh hưởng đến vùng Green. • BLUE: đây là vùng dành riêng cho các thiết bị không dây nhằm tăng cường tính bảo mật cho các máy tính và dữ liệu được truyền trong môi trường này. Hình mô phỏng : Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 93  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 11.2.Triển khai IPCOP firewall/ IDS Chúng ta dùng mô hình mạng có 1 đường truyền ADSL với địa chỉ modem ADSL (IP: 192.168.1.254) để minh họa. Lúc này trên máy tính cài IPCOP cần 3 card mạng: có IP 192.168. có IP 192.168.Red 1.1 và Green 111.1. và Orange 192.168.11.1 Tải về tập tin ảnh đĩa (iso) cài đặt IPCOP từ website Error! Hyperlink reference not valid. sau đó dùng chương trình ghi đĩa như Nero Burn ghi file ảnh lên đĩa CD. Khởi động máy tính với CD này, màn hình chào hiển thị như bên dưới. Nhấn Enter để bắt đầu và chờ tiến trình khởi động hoàn tất. Trang 94  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Tiếp theo xác định ngôn ngữ hiển thị cho IPCOP, version 1.4.10 đã hỗ trợ tiếng Việt từ giao diện cài đặt đến giao diện quản trị. Ở đây chúng ta chọn English Trang 95  Sau đó chọn cài đặt từ CD ROM trên khung Select installation media. Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 IPCOP nhắc lại rằng đĩa cứng sẽ được phân vùng lại, mọi dữ liệu đang có trên đó sẽ bị xoá sạch. Bấm OK để đồng ý và tiếp tục hoặc CANCEL để huỷ bỏ và khởi động lại máy tính. Trang 96  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Sau khi hệ thống tập tin được khởi tạo, một màn hình nhắc nhở có cần phục hồi IPCOP Firewall từ đĩa mềm lưu giữ thông tin cấu hình hay không, chọn Skip để bỏ qua bước này Tiếp theo chúng ta cần xác định các trình điều khiển (driver) và tham số cho các card mạng, chọn Probe để hệ thống tự động dò tìm hoặc chọn Select nếu như muốn tự mình xác định. Bước này ta chỉ cài đặt card mạng cho vùng GREEN mà thôi, card mạng vùng RED sẽ được cài đặt ở bước sau , ORANGE Trang 97  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Sau khi trình điều khiển cho GREEN interface được nạp, chúng ta sẽ cấu hình các tham số TCP/IP cho card mạng này, theo mô hình ở trên chúng ta sẽ nhập vào: IP address: 192.168.1.1 Network mask: 255.255.255.0 Lúc này tất cả các thành phần cần thiết của IPCOP đã được cài đặt, hệ thống sẽ yêu cầu ta lấy đĩa CD cài đặt ra khổi ổ CD-ROM, bấm OK để bắt đầu khởi tạo các thông tin cấu hình cơ bản. Trang 98  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 C họn kiểu bàn phím (keyboard) là US và chọn Time zone phù hợp với múi giờ tại địa phương. Đặt tên và domain cho IPCOP Firewall, ví dụ IPCOP và localdomain rồi chọn OK, chúng ta có thể thay đổi các thông tin này trong phần quản trị IPCOP. Trang 99  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Bước tiếp theo là cấu hình thông số cho mạng ISDN. Do sử dụng ADSL nên ta chọn Disable ISDN Sau đó chúng ta xác định thêm về các thông tin như TCP/IP của RED interface, dãy địa chỉ động cấp cho các client, địa chỉ DNS, gateway, mật mã đăng nhập hệ thống và website quản trị và khởi động lại hệ thống. • Vào mục Network Configuration type. Chọn kiểu cấu hình mạng là GREEN + ORANGE + RED. • Chọn Drivers and card assignments để vào chức năng dò tìm card mạng. Lúc này chúng ta cài đặt card mạng cho vùng ORANGE, RED cách làm giống như đối với vùng GREEN. Trang 100  • Vào mục Address settings, chọn RED để đặt IP cho card mạng vùng Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 RED, tương tự với ORANGE • Vào mục DNS and Gateway settings để cấu hình Default Gateway và DNS Server dùng để kết nối ra Internet. Cấu hình Default Gateway là IP của Router ADSL (192.168.1.254 ), địa chỉ DNS tuỳ theo ISP (ví dụ: FPT là 210.245.31.10 và 210.245.31.130 – VDC là 203.162.4.190 và 203.162.4.191) Trang 101  Cầu hình DHCP, nếu mạng dùng IP tĩnh thì để trống mục Enable rồi bấm OK. Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Tiếp theo là đặt mật khẩu cho tài khoản root. Mật khẩu quản trị, ta sẽ được hỏi mật khẩu này khi truy cập vào trang web quản trị của IPCOP. Trang 102  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Đến đây là quá trình cài đặt đã hoàn tất. Bấm OK để khởi động lại máy tính. 11.3. Quản trị IPCOP firewall/IDS Chúng ta có thể quản trị IPCOP bằng giao diện web từ bất cứ máy tính nào trong hệ thống của mình, ngoại trừ chính nó. Vì là một firewall nên ta có thể tháo bỏ các thiết bị ngoại vi như chuột, bàn phím và cả màn hình khỏi IPCOP Firewall để tiết kiệm chi phí và nâng cao tính bảo mật. Từ máy tính dùng để quản trị, hãy nhập vào địa chỉ sau hoặc tùy theo địa chỉ mạng trong của firewall để đăng nhập vào màn hình quản trị. Trong giao diện web quản trị hệ thống IPCOP Firewall, trên thanh công cụ có các menu điều khiển như: System, Status, Network, Services, Firewall... Trước khi có thể truy cập các chức năng điều khiển của IPCOP, ta cần đăng nhập với tài khoản admin. Trang 103  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 1. SYSTEM Trong trình đơn này có các công cụ: • Home: quay về trang quản trị chính. • Updates: cập nhật những bản vá mới cho firewall. • Password để thay đổi thông tin tài khoản quản trị. • SSH Access để bật/tắt SecureShell để có thể kết nối đến IPCOP bằng các tiện ích SSH Client như Putty và tiến hành các thay đổi trực tiếp trên những tập tin cấu hình của firewall. • Shutdown: cho phép shutdown hoặc reboot hệ thống. Ngoài ra có thể lập lịch shutdown/reboot định kỳ. • Backup để sao lưu toàn bộ thông tin cấu hình IPCOP phòng khi có sự cố xảy ra. Và ta có thể chọn GUI Settings để thay đổi giao diện trang web quản trị của IPCOP thành tiếng Việt. Updates Ở phần Available Updates chúng ta thấy có những bản cập nhật mới, hãy truy cập vào website www.IPCOP.org và tải về tập tin cập nhật này và lưu chúng trên máy dùng để quản trị. Sau đó chọn nút Browse trong phần Install new update để chọn tập tin này và Upload chúng lên firewall, tiến trình cài đặt sẽ tự động thực thi. Tùy theo bản cập nhật mà chúng ta có cần reboot hệ thống firewall hay không. SSH Access Trang 104  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Để cho phép quản trị IPCOP firewall/router ở mức sâu, cần phải thiết lập SSH Server thông qua menu SSH Access và chọn enable (mặc định disable). SSH server trên IPCOP sử dụng port 222 cho nên chúng ta cần phải kết nối SSH Client đến port 222 thay vì port 22 như thông thường, ví dụ: $ ssh –p 222 root@192.168.1.192 với 192.168.1.192 là địa chỉ mạng trong của firewall. GUI Settings Để chuyển sang giao diện tiếng Việt, chọn GUI Settings và chọn Vietnamese trong phần Select the language you wish IPCOP to display in và chọn Save. Trang 105  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Backup Bấm nút Create và chọn Backup to floppy rồi đưa đĩa mềm đã được định dạng bằng Linux vào. Dòng lệnh định dạng đĩa mềm trên hệ thống Linux: #fdfomat /dev/fd0 (có thể chạy thông qua SSH Client). Nếu không có ổ đĩa mềm thì có thể chọn bấm Export để tạo tập tin backup và lưu vào 1 thư mục trên máy tính. Nên chọn Encrypted để có thể nạp lại file backup bằng cách bấm Browse, chọn tập tin backup rồi bấm Import .dat để khôi phục cấu hình. Shutdown Bấm Reboot để khởi động lại hoặc Shutdown để tắtmáy tính chạy IPCOP. Ngoài ra có thể lập lịch để IPCOP tự Reboot hay Shutdown ở mục Shedule IPCOP reboots. 2. STATUS Khi hệ thống đã hoạt động, chúng ta cần xem xét trạng thái hiện tại của firewall, những dịch vụ nào đang chạy, quá trình sử dụng bộ nhớ, đĩa... 2.1. Giám sát các dịch vụ Trang 106  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Cần đảm bảo tất cả các dịch vụ đều ở trạng thái Running, ngoại trừ dịch vụ NTP Server và VPN, riêng dịch vụ DHCP thì tuỳ theo cấu hình có kích hoạt chức năng DHCP Server hay không. 2.2. Giám sát bộ nhớ, đĩa cứng 2.3. Giám sát các kết nối Trang 107  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 3. FIREWALL 3.1 Port Forwarding Là nơi chỉ định cho IPCOP dẩn gói tin có port xác định đến một host cung cấp dịch vụ trên port đó. Ví dụ : Web server có địa chỉ 192.168.11.2 cung cấp dịch vụ HTTP cổng 80. Khi cấu hình port forwarding , gói tin nào port 80 đến firewall sẽ được firewall dẩn đến địa chỉ 192.168.11.2 Trang 108  3.2 External Access Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Chỉ định một host hay một networks nào được phép truy cập đến firewall theo số port đã định trước. Ví dụ dưới đây, dòng thứ 2 cho phép tất cả các host địa chỉ bất kỳ truy cập đến firewall bằng cổng 445 ( giao thức SSL) 4. SERVICES Đây là menu dùng để quản lý các dịch vụ như Web Proxy, Instruction Detect, DHCP... 4.1. Proxy • Enable on Green: kích hoạt chức năng proxy trên mạng Green. Bắt buộc phải chọn mục này. Trang 109  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 • Transparent on Green: kích hoạt thuộc tính trong suốt của Proxy. Nếu bật chức năng này thì client không cần đặt thống số Proxy trong trình duyệt mà chỉ cần đặt Gefault Gateway và DNS Server là địa chỉ IP của máy tính IPCOP là có thể kết nối Internet. Proxy Port: đặt tuỳ ý (nên đặt là 800). • • Log Enable: kích hoạt chức năng ghi log (nên bật). • Cache size: đặt khoảng 50 – 100 MB (tuỳ dung lượng đĩa cứng). • URL filter: kích hoạt chức năng lọc URL (cần phải cài đặt plugin URL Filter). • Upstream proxy: nếu proxy này được nối với một proxy cấp cao hơn thì nhập các thông số của proxy cấp trên vào đây. 4.2. Instrution Detection Dịch vụ Network Instruction Detect System dựa trên Snort để phòng ngừa và phát hiện các trường hợp tấn công. Mặc định hệ thống IDS chỉ hoạt động trên Interface, nên kích hoạt cho cả và RED GREEN ORANGE interface vì theo thống kê có đến 80% các trường hợp tấn công và đặc biệt là nghe lén với những phần mềm như dsniff có nguồn gốc từ nội bộ. Trang 110  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Có thể đăng ký 1 tài khoản miễn phí tại website để tạo Oink Code Để update rule database cho Snort, chọn Sourcefire VRT rules for registered users, sau đó nhập chuỗi “ f6cd266df2e5310d76a922ad5365e0175aa56fd0 ” lấy được vào ô Oink Code rồi bấm nút Save để lưu lại. Sau đó bấm Download new ruleset để update cho Snort. 4.3 IDS Log : Nơi báo cáo những phát hiện các gói tin bắt được phù hợp nội dung các rules cài sẵn nhằm cảnh báo cho người quản trị những xâm nhập hay các dấu hiệu bắt đầu của sự xâm nhập. Ví dụ khi ta khai báo 1 rules như sau : alert icmp any any -> 192.168.1.1 any (dsize: >6500;msg: "ping of dead";sid:5000;) Nghĩa là khi gói tin giao thức ICMP xuất phát từ một địa chỉ bất kì port bất kì, đến địa chỉ 192.168.1.1 port bất ki. Nếu gói tin đó có kích thước lớn hơn 6500, hệ thống sẽ thông báo với Admin thông điệp “ping of dead” IDS cảnh báo : Trang 111  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Tương tự với rules : alert tcp any any -> 192.168.1.1 80 (Content: "|25 32 37|"; msg: "phat hien dau nhay don tren URL, can than loi SQL injection ";sid:1234560;depth:1024;) Khi một HTTP request nào đến webserver. Trong gói tin có chứa |25 32 37| IDS sẽ nhận ra ngay có một user dùng kí tự ‘ để khai thác lổi SQL injection. Trang 112  Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 113  KẾT LUẬN I. NHỮNG VẤN ĐỀ ĐẠT ĐƯỢC Theo yêu cầu đặt ra ban đầu là “Tìm hiểu cơ chế để bảo mật hệ thống thương mại điện tử - WEB SECURITY”, cho đến thời điểm hiện tại, luận văn đã đạt được các nội dung sau: • Tìm hiểu các kỹ thuật tấn công ứng dụng Web bao gồm các kỹ thuật - Thao tác trên tham số truyền như URL, biến ẩn form, cookie, HTTP header. - Chèn mã lệnh thực thi trên trình khách Cross-site Scripting. - Chèn câu truy vấn SQL - Đánh chiếm phiên làm việc của người dùng - Từ chối dịch vụ DoS • Bên cạnh đó đã trình bày được các biện pháp khắc phục tương ứng • Tìm hiểu các hệ thống bảo mật firewall, IDS, IPS. Bên cạnh đó triển khai demo hệ thống tường lửa IPCOP sử dụng SNORT để phát hiện và ngăn chặn các cuộc tấn công. II. HƯỚNG PHÁT TRIỂN ĐỀ TÀI Trong phạm vi một luận văn đại học, luận văn cơ bản đã đạt được các yêu cầu đặt ra. Tuy nhiên, các kết quả còn khá khiêm tốn do hạn chế về thời gian và khả năng hạn chế của 01 thành viên. Trong thời gian tới, nếu có điều kiện, luận văn sẽ cố gắng phát triển thêm những nội dung sau: - Tìm hiểu thêm về các kỹ thuật tấn công để đưa ra phương pháp bảo mật ứng dụng Web ở mức độ sâu hơn. - Các rules IDS của luận văn chỉ mới viết được theo mức độ đơn giản chưa thể áp dụng vào thực tế được. Cần phải viết thật cụ thể ở mức phân tích chi tiết gói tin Đề tài: “Web-security” GVHD: ThS. Huỳnh Quốc Bảo SVTH: Lê Bá Quý – MSSV: 02DHCT078 Trang 114  tấn công và nghiên cứu thêm công nghệ mới của IPS - Cần phải nghiên cứu thêm các phương pháp và thuật toán mã hóa và giải mã vì đây là phương pháp phổ biến và tương đối an toàn hiện nay. TÀI LIỆU THAM KHẢO • Hacking Exposed, Network Security Secrets & Solutions Stuart McClure, Joel Scambray, George Kurtz ,McGraw-Hill Professional 2005 • Web Application Vulnerabilities Detect, Exploit, Prevent PUBLISHED BYSyngress Publishing, Inc.Elsevier, Inc. Burlington, MA 01803 • Thăng, N.D & Thu, N.M (2003).Vấn đề bảo mật ứng dụng web trên internet. Luận văn đại học. Đại học Khoa Học Tự Nhiên TPHCM • Duy L.D. SQL injection – tác hại và phòng tránh • • • • • • • • • • Và một số tài liệu khác …

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

  • pdfTìm hiểu các cơ chế để bảo mật hệ thống thương mại điện tử - web security.pdf