Luận văn Nghiên cứu giải pháp lọc nội dung internet tại máy tính cá nhân và xây dựng phần mềm

Tài liệu Luận văn Nghiên cứu giải pháp lọc nội dung internet tại máy tính cá nhân và xây dựng phần mềm: ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Phạm Tiến Dũng NGHIÊN CỨU GIẢI PHÁP LỌC NỘI DUNG INTERNET TẠI MÁY TÍNH CÁ NHÂN VÀ XÂY DỰNG PHẦN MỀM LUẬN VĂN THẠC SĨ Hà Nội – 2009 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Phạm Tiến Dũng NGHIÊN CỨU GIẢI PHÁP LỌC NỘI DUNG INTERNET TẠI MÁY TÍNH CÁ NHÂN VÀ XÂY DỰNG PHẦN MỀM Ngành : Công nghệ Thông tin Chuyên ngành : Hệ thống Thông tin Mã số : 60 48 05 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS. TS. HÀ QUANG THỤY Hà Nội - 2009 LỜI CAM ĐOAN Tôi xin cam đoan nội dung bản luận văn chưa từng được công bố hay xuất bản dưới bất kỳ hình thức nào và cũng không được sao chép từ bất kỳ một công trình nghiên cứu nào. Toàn bộ ứng dụng thử nghiệm đều do tôi tự thiết kế và xây dựng. Nếu sai tôi xin hoàn toàn chịu trách nhiệm. Hà Nội, tháng 08 năm 2009 Người cam đoan Phạm Tiến Dũng LỜI CẢM ƠN Em xin chân thành cảm ơn các Thầy giáo, Cô giáo trong khoa Công nghệ thông tin và các cán ...

pdf71 trang | Chia sẻ: haohao | Lượt xem: 1263 | Lượt tải: 1download
Bạn đang xem trước 20 trang mẫu tài liệu Luận văn Nghiên cứu giải pháp lọc nội dung internet tại máy tính cá nhân và xây dựng phần mềm, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Phạm Tiến Dũng NGHIÊN CỨU GIẢI PHÁP LỌC NỘI DUNG INTERNET TẠI MÁY TÍNH CÁ NHÂN VÀ XÂY DỰNG PHẦN MỀM LUẬN VĂN THẠC SĨ Hà Nội – 2009 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Phạm Tiến Dũng NGHIÊN CỨU GIẢI PHÁP LỌC NỘI DUNG INTERNET TẠI MÁY TÍNH CÁ NHÂN VÀ XÂY DỰNG PHẦN MỀM Ngành : Công nghệ Thông tin Chuyên ngành : Hệ thống Thông tin Mã số : 60 48 05 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS. TS. HÀ QUANG THỤY Hà Nội - 2009 LỜI CAM ĐOAN Tôi xin cam đoan nội dung bản luận văn chưa từng được công bố hay xuất bản dưới bất kỳ hình thức nào và cũng không được sao chép từ bất kỳ một công trình nghiên cứu nào. Toàn bộ ứng dụng thử nghiệm đều do tôi tự thiết kế và xây dựng. Nếu sai tôi xin hoàn toàn chịu trách nhiệm. Hà Nội, tháng 08 năm 2009 Người cam đoan Phạm Tiến Dũng LỜI CẢM ƠN Em xin chân thành cảm ơn các Thầy giáo, Cô giáo trong khoa Công nghệ thông tin và các cán bộ, nhân viên phòng Đào tạo Sau đại học, trường Đại học Công nghệ, Đại học Quốc gia Hà Nội đã luôn nhiệt tình giúp đỡ và tạo điều kiện tốt nhất cho em trong quá trình học tập tại trường. Xin chân thành cảm ơn các anh, chị và các bạn học viên lớp Cao học K12T3 - trường Đại học Công nghệ - Đại học Quốc gia Hà Nội đã luôn động viên, giúp đỡ và nhiệt tình chia sẻ với em những kinh nghiệm học tập, công tác trong suốt khoá học. Đặc biệt em xin bày tỏ lòng biết ơn sâu sắc đến thầy giáo PGS.TS. Hà Quang Thụy đã tận tình giúp đỡ em định hướng xây dựng, nghiên cứu phát triển và hoàn chỉnh luận văn. Mặc dù đã có nhiều cố gắng, song bài luận văn không tránh khỏi những khiếm khuyết do sự hạn hẹp về thời gian và điều kiện nghiên cứu. Em chân thành mong nhận được những ý kiến đóng góp quý báu của các thầy cô giáo nhằm giúp đề tài của luận văn ngày một hoàn thiện và có tính phổ dụng trong tương lai. MỤC LỤC MỤC LỤC.........................................................................................................................i DANH SÁCH HÌNH VẼ ................................................................................................. ii MỞ ĐẦU........................................................................................................................ iii Chương 1 - TỔNG QUAN LỌC NỘI DUNG INTERNET ...............................................1 1.1. Đánh giá tình hình nghiên cứu thuộc lĩnh vực đề tài ...............................................1 1.1.1. Thế giới ...........................................................................................................1 1.1.2. Tại Việt Nam ...................................................................................................3 1.2. Thực trạng lọc nội dung truy cập hiện nay..............................................................4 Chương 2 - MỘT SỐ NỘI DUNG CƠ BẢN VỀ PHƯƠNG PHÁP LỌC INTERNET......7 2.1. Biện pháp lọc .........................................................................................................7 2.2. Phương pháp lọc.....................................................................................................8 2.2.1. Lọc địa chỉ IP...................................................................................................8 2.2.2. Lọc địa chỉ URL ..............................................................................................9 2.2.3. Lọc từ khóa......................................................................................................9 2.2.4. Lọc cụm từ.....................................................................................................10 2.2.5. Lọc ảnh..........................................................................................................10 2.3. Vị trí thực hiện lọc................................................................................................11 2.3.1. Lọc tại cổng Internet quốc gia ........................................................................11 2.3.2. Lọc tại cổng Internet mạng LAN....................................................................11 2.3.3. Lọc thông qua bên thứ ba...............................................................................12 2.3.4. Lọc tại máy tính cá nhân ................................................................................12 Chương 3 - GIẢI PHÁP LỌC NỘI DUNG INTERNET .................................................13 3.1. Giải pháp tại cổng Internet quốc gia .....................................................................13 3.1.1. Kiến trúc hệ thống..........................................................................................13 3.1.2. Hoạt động ......................................................................................................15 3.1.3. Phân tích các thành phần................................................................................16 3.2. Giải pháp tại cổng Internet của mạng LAN...........................................................19 3.2.1. Kiến trúc tổng quan........................................................................................19 3.2.2. Giải thuật và cơ chế hoạt động .......................................................................19 3.3. Giải pháp trực tiếp trên máy tính cá nhân .............................................................24 3.3.1. User mode: lấy nội dung từ lớp ứng dụng (Application).................................25 3.3.2. User Mode: lấy nội dung từ lớp phiên (Session).............................................29 3.3.3. Kernel mode: lấy nội dung từ lớp mạng (IP) ..................................................32 3.3.4. Kernel mode: cơ chế nghe lén (sniffer) ..........................................................35 3.4. Đề xuất giải pháp..................................................................................................36 3.4.1. Đánh giá giải pháp trực tiếp ...........................................................................36 3.4.2. Đề xuất ..........................................................................................................37 Chương 4 - GIẢI PHÁP LỌC NỘI DUNG VÀ XÂY DỰNG PHẦN MỀM TẠI MÁY TÍNH CÁ NHÂN............................................................................................................39 4.1. Giải thuật..............................................................................................................39 4.2. Hoạt động.............................................................................................................40 4.3. Phân tích các thành phần ......................................................................................41 4.3.1. Thành phần lấy dữ liệu...................................................................................41 4.3.2. Thành phần phân tích nội dung gói tin ...........................................................45 4.3.3. Thành phần tách, tổng hợp gói tin thành phiên giao dịch................................48 4.3.4. Thành phần lọc cụ thể, lọc loại trừ .................................................................51 4.3.5. Thành phần lọc nội dung................................................................................52 4.3.6. Thành phần quản lý ứng dụng ........................................................................54 4.3.7. Thành phần ghi log truy cập...........................................................................56 4.3.8. Thành phần quản lý luật truy cập ...................................................................56 4.4. Chương trình thử nghiệm .....................................................................................57 4.4.1. Kết quả chương trình thử nghiệm...................................................................57 4.4.2. So sánh với chương trình cùng loại ................................................................58 KẾT LUẬN ....................................................................................................................60 TÀI LIỆU THAM KHẢO...............................................................................................61 DANH SÁCH HÌNH VẼ Hình 2.1. Lọc tại cổng Internet quốc gia .........................................................................11 Hình 2.2. Lọc thông qua bên thứ ba ................................................................................12 Hình 2.3. Lọc tại máy tính cá nhân .................................................................................12 Hình 3.1. Hệ thống tưởng lửa hiện tại của các ISP ..........................................................14 Hình 3.2. Kiến trúc hệ thống lọc nội dung Internet tại ISP ..............................................15 Hình 3.3. Gateway Filter lọc cho một mạng LAN ...........................................................19 Hình 3.4. Sơ đồ giải thuật lọc cho mạng LAN 1..............................................................20 Hình 3.5. Sơ đồ giải thuật lọc cho mạng LAN 2..............................................................22 Hình 3.6. Sơ đồ giải thuật lọc cho mạng LAN 3..............................................................23 Hình 3.7. Sơ đồ giải thuật lọc cho mạng LAN 4..............................................................24 Hình 3.8. Nội dung kiểm soát lấy từ cửa sổ trình duyệt...................................................26 Hình 3.9. Sơ đồ giải thuật User mode (lấy nội dung lớp ứng dụng) .................................27 Hình 3.10. Hook Firewall ở User Mode ..........................................................................30 Hình 3.11. Sơ đồ giải thuật User mode (lấy nội dung lớp phiên) .....................................31 Hình 3.12. Các chế độ Hook Firewall trên Windows ......................................................33 Hình 3.13. Sơ đồ giải thuật Kernel mode (lấy nội dung lớp IP) .......................................34 Hình 4.1. Sơ đồ giải thuật lọc nội dung trực tiếp trên máy tính cá nhân...........................39 Hình 4.2. Phân lớp xử lý gói tin ......................................................................................41 Hình 4.3. Sơ đồ xử lý tổng quát giải pháp lọc nội dung...................................................42 Hình 4.4. Quy trình ghi log truy cập ...............................................................................42 Hình 4.5. Cấu trúc dữ liệu tầng Transport .......................................................................43 Hình 4.6. Cấu trúc dữ liệu tầng Network.........................................................................44 Hình 4.7. Cấu trúc dữ liệu tầng DataLink........................................................................44 Hình 4.8. Cấu trúc gói tin lấy dữ liệu ..............................................................................45 Hình 4.9. Các gói tin dạng thô và được phân tích theo từng lớp mạng.............................47 Hình 4.10. Dữ liệu tầng TCP/IP của một gói tin..............................................................48 Hình 4.11. Header file ảnh ..............................................................................................48 Hình 4.12. Header file text/html......................................................................................49 Hình 4.13. Gói tin đầu tiên của một phiên giao dịch........................................................49 Hình 4.14. Tham số Seq và Ack......................................................................................49 Hình 4.15. Tham số Seq và Ack gói tin kế tiếp ...............................................................50 Hình 4.16. Tổng hợp các gói tin đơn lẻ thành phiên giao dịch.........................................50 Hình 4.17. Trích đoạn danh sách lọc đang được áp dụng cho mạng VNN.......................51 Hình 4.18. Gói tin request(Get).......................................................................................52 Hình 4.19. Ánh xạ tên tiến trình và cổng tương ứng........................................................55 Hình 4.20. Ánh xạ chi tiết PID (Process number) và số cổng ..........................................55 Hình 4.21. Tổng hợp ghi log ...........................................................................................56 Hình 4.22. Cập nhật luật truy cập từ server .....................................................................57 MỞ ĐẦU Mạng Internet ra đời và phát triển thành một kho dữ liệu khổng lồ, bao gồm đầy đủ các khía cạnh về văn hoá, chính trị, khoa học - kỹ thuật,... Với sự đa sắc màu văn hoá trên thế giới, đa tín ngưỡng, đa lối sống, đa tư duy,… đã làm cho thông tin trên Internet luôn song hành tính tích cực và tiêu cực trong nội tại. Ưu thế từ công nghệ Internet làm cho sức thâm nhập của kênh thông tin quan trọng này đối với người sử dụng rất rộng lớn và nhanh chóng. Các khía cạnh xấu - độc hại trong xã hội cũng theo đường Internet để thâm nhập vào mỗi gia đình, mỗi con người. Chính vì lý do đó, công việc hỗ trợ quản lý và đảm bảo an toàn – an ninh thông tin trên mạng Internet đã trở thành mối quan tâm của mỗi gia đình, mỗi tổ chức, mỗi quốc gia. Về phương diện gia đình, mối quan tâm của các bậc phụ huynh là ngăn ngừa việc thâm nhập các trang Web độc hại đối với con em mình. Về phía cá nhân người sử dụng, khai thác được những thông tin tích cực và ngăn ngừa tiếp xúc web độc hại do vô tình hay cố ý. Trong những năm gần đây, lĩnh vực nghiên cứu phát triển hệ thống lọc nội dung hỗ trợ quản lý và đảm bảo an toàn – an ninh thông tin trên mạng Internet nhận được sự quan tâm đặc biệt ở hầu hết các quốc gia trên thế giới. Tại Việt Nam, giải pháp cấp quốc gia đã được Nhà nước chỉ đạo các ban ngành liên quan nghiên cứu và đề xuất. Tuy nhiên trước thực tế nhu cầu cần giải pháp lọc nội dung truy cập của người sử dụng Internet, tìm hiểu và xây dựng giải pháp lọc nội dung truy cập trực tiếp trên máy tính cá nhân hiện đang là mục tiêu nghiên cứu của nhiều cá nhân, tập thể và đây chính là mục tiêu của luận văn này. Chương thứ nhất của luận văn trình bày tổng quan về lọc nội dung Internet trên thế giới và tại Việt Nam, phân tích thực trạng về lọc nội dung truy cập hiện nay trên phương diện về chính sách quy định của Nhà nước cũng như yêu cầu đặt ra đối với các công cụ phần mềm. Chương thứ hai của luận văn trình bày các nội dung cơ bản liên quan đến vấn đề lọc nội dung truy cập Internet, bao gồm: biện pháp lọc, phương pháp lọc và vị trí thực hiện lọc. Dựa trên việc phân tích về vị trí thực hiện lọc nội dung đã trình bày trong chương hai, chương thứ ba trình bày về các giải pháp lọc nội dung truy cập tại cổng Internet Quốc gia, tại cổng Internet của mạng LAN và giải pháp trực tiếp trên máy tính cá nhân. Cuối cùng, chương thứ tư trình bày về giải pháp và xây dựng chương trình lọc nội dung truy cập Internet tại máy tính cá nhân. Trong các trường hợp thử nghiệm, chương trình đã hoạt động đúng chức năng đặt ra. 1 Chương 1 - TỔNG QUAN LỌC NỘI DUNG INTERNET 1.1. Đánh giá tình hình nghiên cứu thuộc lĩnh vực đề tài 1.1.1. Thế giới Hầu hết các nước trên thế giới đều xây dựng và thực hiện các chính sách quốc gia về an toàn – an ninh Internet, trong đó đặc biệt chú ý tới vấn đề lọc nội dung trên Internet. Ngoài một số công bố về vấn đề lọc nội dung đối với nước Mỹ [ 1 ], một số công trình nghiên cứu về lọc nội dung trên Internet điển hình đối với một số nước khác đã được tổ chức The OpenNet Initiative - ONI (Tổ chức cộng tác, phối hợp nghiên cứu của the Citizen Lab thuộc Munk Centre for International Studies tại University of Toronto) tổng hợp và công bố tại trang Web với địa chỉ Đây là một tổ chức có nhiệm vụ điều tra nghiên cứu về tình trạng giám sát và lọc thông tin trên thực tế tại các quốc gia, để từ đó tìm ra những ảnh hưởng đến chủ quyền đất nước, các tác động đến người sử dụng,... Để đạt được mục đích đó, ONI sử dụng một cách tiếp cận kết hợp các phương tiện kỹ thuật tiên tiến (các công cụ giám sát mạng tinh vi, các kỹ thuật đánh giá phù hợp với từng hoàn cảnh cụ thể,…) và năng lực về tri thức địa phương dựa trên quan hệ hợp tác giữa các nhà nghiên cứu và chuyên gia trên toàn thế giới. Một điều đặc biệt đáng chú ý, do tầm quan trọng của việc bảo đảm an toàn-an ninh thông tin trên mạng diện rộng nói chung và mạng Internet nói riêng, hầu hết chính phủ các nước đều thành lập các cơ quan cấp nhà nước tiến hành các hoạt động nghiên cứu và triển khai đối với công tác đảm bảo an toàn an ninh Internet, trong đó có vấn đề lọc nội dung trên Internet. Mỹ được coi là quốc gia xuất phát của công nghệ Internet, vấn đề bảo đảm an toàn an ninh trên mạng Internet của nước Mỹ đã được đề cập đến ngay từ những ngày đầu xuất hiện Internet. Đồng thời với các đạo luật an ninh mạng trong các giao dịch điện tử, vấn đề lọc nội dung Internet, đặc biệt đối với việc truy nhập Internet của trẻ em, được quan tâm rất sớm. Trong báo cáo được công bố vào tháng 12/2005, Marcia S. Smith [ 1 ] đã tổng hợp và phân tích các văn bản pháp lý điển hình của nước Mỹ về vấn đề lọc Internet 2 đối với trẻ em bao gồm các văn bản the 1996 Communications Decency Act (CDA), the 1998 Child Online Protection Act (COPA), the 2000 Children’s Internet Protection Act (CIPA - the 2002 “Dot Kids” Act (P.L. 107-317) và the 2003 “Amber Alert” Act (P.L. 108-21). Thêm nữa, có tới 21 bang của nước Mỹ bổ sung các luật lọc Internet áp dụng cho các trường phổ thông và thư viện công cộng, bao gồm cả đòi hỏi bắt buộc phải sử dụng các bộ lọc Internet. Hai bang Texas và Utah còn có các đạo luật riêng đối với nhà cung cấp dịch vụ Internet hoặc nhà cung cấp máy tính về các điều khoản đảm bảo cơ chế lọc Internet. Việc sử dụng Internet của trẻ em đã đặt ra cho các bậc phụ huynh thêm nhiều mối quan tâm, lo lắng về các hiểm họa mới, trong đó có hiện tượng trẻ em sử dụng “blog” để đưa nhật ký cá nhân trên mạng. Vì vậy, các gia đình Mỹ đã sử dụng các phương tiện kỹ thuật để đảm bảo an toàn truy nhập Internet cho con em mình. Theo kết quả nghiên cứu của Amanda Lenhart, số lượng gia đình có trẻ vị thành niên kết nối Internet trực tuyến đã sử dụng bộ lọc Internet ngày càng tăng và đạt tới 54% vào tháng 3-2005. Hiện nay, hầu hết các trường học và thư viện trên khắp nước Mỹ đều sử dụng những hệ thống lọc Internet có quy luật lọc ràng buộc trong luật lọc (National Conference of State Legislatures). Nhiều sản phẩm phần mềm lọc nội dung đã được công bố và được sử dụng từ rất sớm. Dự án The InFoPeople Project kết thúc vào năm 2001 [ 1 ], cung cấp một cái nhìn tổng quát về hoạt động lọc nội dung trên Internet tại nước Mỹ, đặc biệt đã cung cấp các đánh giá xác đáng về các sản phẩm phần mềm lọc nội dung điển hình như CyberPatrol, i-Gear, i-Prism, N2H2, S4F, SmartFilter, Web Inspector, WebSense, X-Stop. Tuy là nước có hệ thống phương tiện hiện đại trong việc đảm bảo an ninh quốc gia, nhưng trong không ít tình huống, chính quyền Mỹ đã phải sử dụng nhiều giải pháp đa dạng, trong đó có các giải pháp về pháp lý, để tiến hành công việc lọc nội dung thông tin trên các đường truyền thông tin công cộng. Tóm lại, trên cả phương diện an ninh quốc gia cũng như phương diện an toàn truy nhập Inernet của công dân (đặc biệt đối với trẻ em), nước Mỹ đã triển khai nhiều giải pháp về pháp lý, về khoa học và công nghệ trong việc mở rộng các hình thức lọc Internet. Theo đó, nhiều dự án đã được triển khai và nhiều phần mềm đã được phát triển. 3 1.1.2. Tại Việt Nam Sau khi Nghị định 55/2001/NĐ-CP ra đời Internet ở Việt Nam phát triển mạnh đã khẳng định lộ trình phổ cập và xã hội hoá Internet của nhà nước đã đi đúng hướng. Nhờ những chính sách quản lý hợp lý và phù hợp với xu thế phát triển cũng như với quan điểm rất mới “quản lý phải theo kịp yêu cầu của sự phát triển”, Internet Việt Nam đã phát triển với tốc độ chóng mặt, giá cước Internet liên tục được giảm xuống, số lượng người sử dụng Internet gia tăng ngày càng nhanh đặc biệt là khách hàng thuộc nhóm thuê bao cá nhân hộ gia đình. Theo số liệu thống kê của Trung tâm Thông tin mạng Internet Việt Nam (VNNIC) [ 18 ], tính đến hết tháng 04/2008, số lượng thuê bao Internet Việt Nam đã đạt con số 5,6 triệu thuê bao, khoảng 19,5 triệu người sử dụng Internet, đạt mật độ 23,12%. Trong đó các điểm truy cập Internet công cộng đã phát triển nhanh chóng, tính riêng ISP VDC đã có tới hơn 20.000 điểm truy cập là đại lý chính thức, chưa tính đến các điểm truy cập không phải là đại lý. Tình hình truy cập tại đây rất tự do, không được quản lý chặt chẽ, các đại lý cũng không thể theo dõi quản lý nội dung truy cập của khách hàng, không tổ chức nào đứng ra đảm bảo về nội dung truy cập ở đây là lành mạnh. Tình trạng truy cập tự do như hiện nay ảnh hưởng rất lớn tới tình hình an ninh xã hội. Song hành với sự phát triển của Internet là những vấn đề tiêu cực: các hoạt động phạm pháp trên Internet có ảnh hưởng xấu đến an ninh trật tự, an ninh quốc gia, vi phạm luật pháp và văn hóa Việt nam ngày càng gia tăng. Mặt trái của việc phát triển phổ cập thông tin tại những điểm truy cập công cộng thể hiện ra và đã được xã hội quan tâm, tuy nhiên một mảng khác của Internet cũng đang ảnh hưởng rất lớn tới xã hội đó là các thuê bao cá nhân hộ gia đình. Vấn đề có thể xảy ra đối với người sử dụng cá nhân khi truy cập vào Internet: o Vô tình tiếp xúc với thông tin độc hại: vào nhầm địa chỉ, virus, spyware,… o Hạn chế tiếp xúc của con em trong nhà đối với thông tin Internet. o Nhu cầu quản lý sự truy cập thông tin tại các phòng máy: trường học, điểm cung cấp dịch vụ Internet công cộng, cơ quan tổ chức,… Đa phần người dùng Internet cá nhân tại Việt Nam hiện nay đều không được bảo vệ đúng mức trước các thông tin độc hại khi tiếp xúc với môi trường Internet. Đứng trước sự phát triển như vũ bão của Internet như hiện nay, việc quản lý 4 nội dung truy cập là một vấn đề cấp bách cần được quan tâm xử lý kịp thời. Những trang web được coi là trái với luật pháp Việt Nam trên Internet là rất lớn (web “đen”), đặc biệt là chúng luôn phát triển, thay hình đổi dạng, khiến cho việc đưa ra một chuẩn thế nào là một trang web đen rất khó khăn. Việc truy cập web đen, thông tin độc hại, phát tán virus... hiện đang không được kiểm soát tại các điểm truy cập internet công cộng, cá nhân hộ gia đình. Chỉ với một vài từ khóa qua các công cụ tìm kiếm, hàng nghìn trang web với nội dung trái với pháp luật Việt Nam đã hiển thị ra. Số lượng các web đen bằng tiếng Việt thời gian gần đây xuất hiện ngày càng nhiều. Các giải pháp kỹ thuật kết hợp với kiểm tra hành chính đã được tiến hành nhưng hiệu quả công việc hiện tại không đạt được như mong muốn. Internet là không biên giới, nếu những nội dung đồi trụy, phi đạo đức vi phạm pháp luật được đặt tại các máy chủ ở nước ngoài thì việc xử lý gặp rất nhiều khó khăn, thậm chí là không thể. Do đó, để kiểm soát tốt hơn tình trạng này, cần phải kết hợp việc cải tiến giải pháp kỹ thuật với các công tác hành chính, giáo dục ý thức... Trong đó, cải tiến giải pháp kỹ thuật được coi là giải pháp trước nhất. Các nhà cung cấp dịch vụ ISP là các đơn vị có trách nhiệm ở đây. Nhiều ý kiến cho rằng cần phát triển mạnh hơn nữa các hệ thống lọc web đen ở ngay cổng Internet quốc gia, yêu cầu các nhà cung cấp dịch vụ đường truyền (IXP) và cung cấp dịch vụ Internet (ISP) thiết lập hệ thống tường lửa hữu hiệu. Tuy nhiên, các giải pháp đang áp dụng hiện nay vẫn không đủ để phong tỏa những web độc hại, vốn cực kỳ linh động (thường xuyên đổi địa chỉ tên miền và địa chỉ IP..., vượt qua tường lửa). Mặt khác, việc lọc từ cổng quốc gia - nơi tập trung lưu lượng thông tin khổng lồ qua lại - gây ảnh hưởng đến tốc độ của hệ thống, đối với những hệ thống tường lửa hiện nay việc đầu tư nâng cấp trang thiết bị không đáp ứng kịp với tiến độ phát triển của Internet. 1.2. Thực trạng lọc nội dung truy cập hiện nay Hiện nay do tốc độ phát triển nhanh chóng của Internet với nhiều kết nối băng rộng, nhu cầu đường truyền quốc tế gia tăng, hệ thống tường lửa của các ISP không đáp ứng được yêu cầu và thường xuyên bị quá tải dẫn tới bỏ qua không lọc các trang web độc hại. Vấn đề xử lý web đen hiện đang là yêu cầu bức xúc và là mối quan tâm hàng đầu của toàn xã hội. Tại Việt Nam, nhu cầu có một giải pháp phần mềm hỗ trợ cho các vị phụ huynh bảo vệ con em mình khỏi các thông tin độc hại, giúp cho các điểm Internet 5 công cộng ngăn chặn được các truy cập vào trang web đen, giúp cho người dùng cá nhân tránh vô tình truy cập web đen,… là rất cần thiết. Đó là giải pháp tối ưu, tiện dụng, đáp ứng được phần đa nhu cầu cá nhân sử dụng Internet hiện nay trong lúc đợi các nhà cung cấp dịch vụ ISP và Nhà nước xây dựng được một giải pháp tổng thể, thống nhất. Lọc Internet nói chung (lọc nội dung nói riêng) liên quan tới việc hạn chế khả năng thâm nhập Internet của người dùng để ngăn chặn việc truy nhập tới các trang Web có nội dung xấu. Việc lọc nội dung về hình thức có vẻ mâu thuẫn với quan niệm tự do khai thác thông tin trên Internet vì vậy việc hạn chế khả năng thâm nhập Internet cần được đảm bảo bằng pháp luật. Chính vì lẽ đó, cùng với việc nghiên cứu, phát triển các phương tiện lọc nội dung trên Web, mỗi quốc gia cũng cần xây dựng một hệ thống văn bản pháp lý đối với việc lọc thông tin nhằm đảm bảo tính hợp thức của mọi hoạt động cần thiết liên quan. Hành động của nhà nước đối với vấn đề chống truy cập web độc hại Các cơ quan chức năng rất quan tâm đến tình hình quản lý nội dung truy cập Internet, liên tục đưa ra những qui định về quản lý truy cập Internet. Cụ thể hóa sự quan tâm đó là Thông tư 02 (02/2005/TTLT-BCVT-VHTT-CA-KHĐT), có qui định "Quyền và nghĩa vụ của đại lý Internet": các đại lý cần cài đặt chương trình phần mềm quản lý đồng thời thực hiện các giải pháp kỹ thuật đảm bảo ngăn chặn người sử dụng truy cập đến các trang web có nội dung xấu trên Internet. Đại lý Internet chỉ được cung cấp nội dung thông tin về người sử dụng cho các cơ quan Nhà nước có thẩm quyền. Thông tư liên tịch số 02/2005/TTLT-BCVT-VHTT-CA-KHĐT về quản lý đại lý Internet ra đời tạo điều kiện thúc đẩy phát triển đại lý Internet theo đúng quy định của pháp luật, hướng dẫn tăng cường quản lý việc phát hành, khai thác, sử dụng thông tin qua Internet và các hoạt động khác theo quy định của pháp luật, ngoài ra giúp ngăn ngừa hoạt động vi phạm pháp luật thông qua việc sử dụng dịch vụ Internet tại các đại lý Internet công cộng. Nhiệm vụ đặt ra ở đây cho các cơ quan quản lý là đảm bảo sự phát triển, phát huy tối đa hiệu quả của Internet, mang tri thức nhân loại phục vụ cho sự nghiệp công nghiệp hóa, hiện đại hóa đất nước, đồng thời hạn chế thấp nhất những ảnh hưởng tiêu cực của Internet. Văn bản này khi đi vào cuộc sống sẽ có tính hiệu lực và hiệu quả quản lý đại lý Internet rất cao. Tuy nhiên với sự phát triển của Internet Việt Nam việc giám sát hoạt động của các đại 6 lý Internet theo yêu cầu quản lý của cơ quan Nhà nước nếu không có công cụ kỹ thuật hiệu quả thì rất khó khăn. Trong khi các cơ quan chức năng đang xây dựng giải pháp tổng thể xử lý vấn đề này thì người dùng Internet tìm đến với các công cụ (phần cứng và phần mềm) nhằm ngăn chặn web độc hại. Các chương trình này hoạt động theo một số nguyên tắc chung như lọc theo địa chỉ IP, địa chỉ URL, theo từ khóa có trong nội dung của website,.... Khái niệm website độc hại Hiện tại Web độc hại được chia ra làm hai dạng: thứ nhất là những trang web chứa những nội dung bạo lực, khiêu dâm… những nội dung trái với văn hóa của Việt Nam; thứ hai đó là những trang web mang tính chính trị, mang tính chất phá hoại an ninh quốc gia. Như đã trình bày ở trên, việc đánh giá thế nào là một trang web độc hại đang là vấn đề chưa hoàn toàn rõ ràng. Bởi lẽ trên thực tế, nhiều trường hợp rất khó để đánh giá nội dung một trang web có độc hại hay không. Ví dụ nhiều trang web có thể là độc hại với đối tượng học sinh nhưng lại không độc hại với những đối tượng khác, có những trang web có tính giáo dục về giới tính lại dễ bị nhầm là trang web đen… Tuy nhiên những đánh giá mang tính tương đối nếu áp dụng vào thực tế để ngăn chặn cũng có thể hạn chế được đa số các trang web độc hại, với hiệu suất trên 80% có thể coi là đạt yêu cầu quản lý [ 3 ]. 7 Chương 2 - MỘT SỐ NỘI DUNG CƠ BẢN VỀ PHƯƠNG PHÁP LỌC INTERNET Để có thể xây dựng được chương trình lọc nội dung truy cập Internet thì trước hết phải hiểu rõ bản chất của nội dung Internet. Vì vậy, chương này sẽ tập trung nghiên cứu những nội dung liên quan đến hình thái lọc như biện pháp lọc, phương pháp lọc và vị trí thực hiện. Từ đó có thể xây dựng được chương trình lọc nội dung truy cập Internet. 2.1. Biện pháp lọc Căn cứ vào các yêu cầu đặt ra đối với lọc nội dung truy cập Internet, có thể chia biện pháp lọc thành một số loại cụ thể như sau [ 1, 3, 4, 5, 6, 15 ]:  Lọc cụ thể (inclusion filtering): người dùng chỉ được phép truy cập những thông tin đã được cho phép, nằm trong một danh sách được hiểu theo nghĩa “danh sách trắng”, thông thường là một danh sách các địa chỉ web được phép truy nhập. Những thông tin nằm ngoài danh sách này đều bị cấm chặn.  Lọc loại trừ (exclusion filtering): người dùng sẽ bị chặn luồng thông tin nằm trong một danh sách, gọi là “danh sách đen”, thông thường là một danh sách các địa chỉ web không được phép truy nhập. Tất cả những thông tin không liên quan đến danh sách này đều được phép truy cập.  Phân tích nội dung: hạn chế và ngăn chặn người dùng những thông tin chứa những nội dung cấm theo những tiêu chuẩn đã được đề ra. Chúng ta có thể nhận thấy rằng hai cách tiếp cận đầu cho khả năng thi hành đơn giản nếu cho trước một danh sách trắng hoặc một danh sách đen. Tuy nhiên, trong thực tế thì khó khăn gặp phải chính là bài toán xác định chính xác các danh sách như vậy và luôn đưa đến một kết quả hoặc là lọc không đầy đủ (xuất hiện liên tục các trang web “đen” mới trên Internet) hoặc hạn chế miền truy cập thông tin Internet (danh sách “trắng”quá hạn chế, không tương thích với sự tăng trưởng không ngừng của Internet). Cách tiếp cận lọc thông qua phân tích nội dung được tiến hành nhờ các kỹ thuật “hiểu” nội dung của thông tin trên web để ngăn chặn các 8 thông tin có nội dung xấu. Công việc “hiểu” và đánh giá thông tin được tải về cho phép việc lọc Internet có tính công phu và hoàn hảo hơn nhưng lại đòi hỏi khối lượng tính toán lớn để xem xét từng nội dung được tải về. Tuy nhiên, do tính chất công phu của cách tiếp cận lọc nội dung và sự tăng trưởng không ngừng về năng lực tính toán mà cách tiếp cận lọc thông qua phân tích nội dung ngày càng được phát triển mạnh. Việc triển khai công nghệ lọc nội dung phụ thuộc rất nhiều vào ngữ cảnh và vị trí tiến hành. Chúng ta có thể chia làm ba mức lọc thông tin chính sau:  Mức cục bộ: mức này được thể hiện thông qua các phần mềm cài đặt trong các máy tính cá nhân với một mục đích sử dụng trong một phạm vi nhỏ như gia đình, công ty có quy mô nhỏ v.v. (bộ lọc mức này được gọi là client-based filter).  Mức tổ chức: mức này cần đến những giải pháp lọc nội dung cho một mạng cỡ vừa, ví dụ như một mạng intranet trong một trường học, một công ty cỡ lớn, v.v. (bộ lọc mức này được gọi là server-based filter).  Mức quốc gia: yêu cầu ở mức này đòi hỏi rất nhiều yếu tố khác nhau về công nghệ và kỹ thuật để đạt được khả năng lọc nội dung ở mạng xương sống (backbone) của việc truy cập Internet của cả một quốc gia Phương tiện lọc nội dung được thi hành bằng cả phần cứng lẫn phần mềm, trong đó nòng cốt là các phương tiện phần mềm. Lori Bowen Ayre và ©2005 TopTenREVIEWS, Inc. đã cung cấp danh sách các sản phẩm phần mềm lọc Internet thông dụng nhất. Đồng thời, việc thiết đặt cơ chế an ninh mạng, ở mức cao hơn là cơ chế lọc nội dung Internet, cũng đã được tiến hành trên các thiết bị phần cứng, có thể kể đến một số thiết bị như Draytek Vigor2900, Planet VRT-311, một số sản phẩm CISCO... 2.2. Phương pháp lọc Trên cơ sở phân tích luồng dữ liệu trong quá trình truy cập Internet, một cách tương đối, phương pháp lọc được chia ra thành các loại sau: 2.2.1. Lọc địa chỉ IP Tất cả các nội dung và thông tin trên mạng đều được trao đổi dưới dạng chuỗi các gói tin. Mỗi gói tin có các địa chỉ IP nguồn/đích, Port nguồn/đích, giao thức sử dụng. Lọc gói được thực hiện thông qua cơ chế kiểm tra các thông tin trên của tất 9 cả các gói và chặn chúng nếu chúng đến từ các trang web bị cấm. Lọc gói tin có thể được thực hiện tại các router bởi các nhà cung cấp dịch vụ ISP, thông qua kiểm soát thông tin về địa chỉ IP nguồn/đích. Hiện nay có một số loại router có thể thực hiện lọc gói mà không gây ra bất kỳ hiệu ứng suy thoái đối với công việc định tuyến của nó. Vấn đề chính của cơ chế lọc gói tại ISP là hoạt động dựa vào địa chỉ IP, mỗi địa chỉ IP đại diện cho một máy tính, không phải là một trang web do đó lọc gói bằng cách sử dụng IP có thể chặn một số lượng lớn các trang web lưu trữ trên máy chủ hợp pháp. Đã có nhiều trang web cộng đồng bị chặn, chẳng hạn như yahoo bị chặn bởi bản thân yahoo lưu trữ một số forum chứa nội dung không lành mạnh, phản động [ 3 ]. Đồng thời việc lọc gói tại ISP còn có những khó khăn khác nếu như thực hiện trên một quy mô lớn. Các router được sử dụng bởi các ISP để liên kết mạng Internet chỉ có giới hạn không gian nhất định cho việc định tuyến nên việc bổ sung các định tuyến lọc địa chỉ IP sẽ làm giảm nhanh chóng năng lực hoạt động của router. Đối với nhà cung cấp dịch vụ Internet thì cần có hạ tầng mạng hoạt động luôn luôn ổn định do đó cơ chế lọc gói không được sử dụng rộng rãi. 2.2.2. Lọc địa chỉ URL Phổ biến và hiệu quả cao hơn lọc gói là hình thức lọc dựa trên các URL, đảm bảo không lọc những trang web hợp pháp nhưng trên cùng một địa chỉ IP. Lọc URL có thể được sử dụng với cả hai hình thức bao gồm lọc cụ thể và lọc loại trừ. Thực hiện lọc URL có thể được tiến hành đối với từng phần của một website. Các thành phần cơ cấu địa chỉ URL của trang Web cho phép lọc truy cập vào toàn bộ các trang web, hoặc chỉ các phần của trang web. Ngoài nguồn gốc lọc gói và URL, lọc nội dung còn có thể sử dụng phương pháp như các từ khóa tìm kiếm, phân tích hình ảnh. 2.2.3. Lọc từ khóa Quét nội dung truy cập Internet vào máy tính và tìm các từ mà được liệt kê trong một danh sách đen. Một trang web bị chặn nếu nó có chứa bất cứ từ nào trong danh sách chặn đó. Hình thức lọc từ được áp dụng đối với cả những yêu cầu 10 (request) được gửi đi từ máy tính để đảm bảo truy cập đối với từ khóa cấm được lọc ngay từ đầu. Các trang web khiêu dâm thương mại cần phải được tìm thấy một cách dễ dàng được tìm thấy bởi các khách hàng tiềm năng và các công cụ tìm kiếm mà họ sử dụng để lướt web. Một trong những cơ chế của các trang web là để thêm một số khả năng tìm kiếm từ khóa để trang Web của họ, thậm chí nếu họ không thực sự hiển thị. Những từ này sẽ được chọn của trang Web crawlers, thêm vào danh mục được sử dụng bởi các công cụ tìm kiếm của họ và sau đó có thể được tìm thấy bằng cách web surfers. Do đó lọc từ khóa áp dụng triệt để đối với các từ khóa xuất hiện trong trang web tìm kiếm hay thẻ meta của nội dung các trang web truy cập. Một số nhược điểm với lọc từ khóa:  Họ chỉ kiểm tra nội dung dạng văn bản, không thực hiện kiểm tra đối với các hình ảnh. Cụ thể đối với những trang web khiêu dâm như tiếng Nga, tiếng Nhật có cả những từ nội địa và hình ảnh thực sự cần lọc thì những từ khoá tiếng Anh, tiếng Việt hoàn toàn mất tác dụng.  Khác nữa, lọc từ khóa gặp trường hợp từ khóa cần lọc nằm trong cụm từ có nghĩa khác và trong những bối cảnh khác nhau sẽ có nghĩa không cần phải lọc. 2.2.4. Lọc cụm từ Lọc cụm từ là một trường hợp mở rộng của lọc từ khóa. Lọc cụm từ thực hiện kiểm soát nội dung truy cập thông qua một cụm từ, không phải xem xét từng từ một xuất hiện trong cụm từ đó. Với biện pháp lọc này đạt kết quả cao hơn nhiều so với lọc từ khóa, hạn chế tối đa trường hợp phát sinh của việc từ khóa có nghĩa khác nhau trong bối cảnh khác nhau. 2.2.5. Lọc ảnh Ảnh là một phần quan trọng của Internet ngày nay. Thông kê cho thấy khoảng hơn 70% các trang web có chứa ảnh và trung bình có 19 ảnh trong một trang HTML [ 2 ]. Ảnh thường được sử dụng để trang web trở nên hấp dẫn. Tuy nhiên ảnh cũng chứa các nội dung độc hại như khiêu dâm, phản động. Do đó kỹ thuật lọc ảnh hiệu quả là một phần quan trọng trong giải pháp lọc nội dung trên Internet. Nhận thấy giữa các ảnh chứa các vùng da lớn và các ảnh khiêu dâm có mối tương quan với nhau, do đó trong các giải pháp lọc nội dung ảnh thường được chia 11 thành các giai đoạn [ 2 ]: o Phát hiện màu sắc da trong ảnh là bước xử lý đầu tiên trong quá trình phân tích nội dung ảnh. o Kế tiếp là giai đoạn trích trọn thuộc tính từ các vùng da đã được phát hiện. Thời gian tính toán cũng là yếu tố cần quan tâm do đó quá trình trích chọn thuộc tính cần cân bằng giữa mức độ chi tiết của các thuộc tính và thời gian để tính toán các thuộc tính. Các thuộc tính được lấy ra từ ảnh sẽ là đầu vào cho bộ lọc ảnh [ 2 ]. 2.3. Vị trí thực hiện lọc Lọc có thể diễn ra trên một máy tính cá nhân, trên một máy chủ của doanh nghiệp, tại một công ty cung cấp dịch vụ internet, hoặc trên một hệ thống lọc của bên thứ ba. 2.3.1. Lọc tại cổng Internet quốc gia Các giải pháp lọc cũng được thiết kế để hoạt động tại ISP nhưng do đặc tính về đảm bảo hoạt động tại ISP nên hiện nay các giải pháp lọc hiện chỉ thực hiện hạn chế đối với danh sách địa chỉ IP đen. Hình 2.1. Lọc tại cổng Internet quốc gia Quản trị viên sẽ tiếp nhận danh sách các trang web bị cấm từ các nhà cung cấp bộ lọc phần mềm hay các cơ quan quản lý Nhà nước, biên soạn cho phù hợp và cập nhật vào hệ thống. Đề xuất đối với giải pháp lọc tại cổng internet quốc gia cần đảm bảo hoạt động đầy đủ chức năng lọc và không ảnh hưởng tới hiệu năng của hệ thống. Lọc tại nhà cung cấp dịch vụ ISP có độ an toàn rất cao do chạy trên một hệ thống an toàn [ 1, 3, 4 ]. 2.3.2. Lọc tại cổng Internet mạng LAN Tương tự như lọc tại cổng Internet quốc gia nhưng quy mô hệ thống nhỏ hơn 12 rất nhiều. Tùy thuộc đối với quy mô hệ thống mạng LAN thành phần phân tải trong phần mềm lọc nội dung được sử dụng, đảm bảo hoạt động truy cập Internet của người sử dụng không ảnh hưởng bởi hệ thống. 2.3.3. Lọc thông qua bên thứ ba Trong trường hợp này, các truy cập Internet sẽ được trao đổi thông qua bên thứ ba, nơi mà các yêu cầu sẽ được kiểm tra đối với một bộ lọc danh sách. Để có được điều này, trình duyệt của người sử dụng đầu cuối phải được cấu hình để trỏ đến bên thứ ba và sẽ không thể truy cập vào Internet mà không đi qua bên thứ ba. Hình 2.2. Lọc thông qua bên thứ ba Hình thức lọc này đòi hỏi hệ thống bên thứ ba thiết kế đặc biệt có thể bao gồm cả trình duyệt riêng cài đặt trên máy tính người sử dụng [ 4 ]. 2.3.4. Lọc tại máy tính cá nhân Đa số các giải pháp lọc hiện nay được thiết kế để chạy trên các máy tính cá nhân. Kỹ thuật lọc thực hiện kết hợp các phương pháp lọc phổ biến trên (mục 1.2). Bộ luật lọc mới nhất được cập nhật định kỳ từ các nhà cung cấp phần mềm. Lọc tại máy tính cá nhân ưu điểm về nguồn lực dư thừa máy tính, thời gian xử lý thực, tiết kiệm chi phí đầu tư phần cứng. Tuy nhiên, lọc tại máy tính cá nhân là giải pháp ít tin cậy nhất do phần mềm hoạt động trong môi trường không bảo mật, dễ bị vô hiệu hóa. Hình 2.3. Lọc tại máy tính cá nhân 13 Chương 3 - GIẢI PHÁP LỌC NỘI DUNG INTERNET Trong chương hai đã trình bày về một số nội dung cơ bản của phương pháp lọc nội dung Internet: biện pháp lọc, phương pháp lọc và vị trí thực hiện lọc. Với mỗi nội dung đã trình bày đặc trưng và phân tích về kỹ thuật. Đó là cơ sở cho phần tiếp sau, phần trình bày về các giải pháp lọc nội dung Internet tại ba cấp độ khác nhau: cổng Internet quốc gia, cổng Internet cho mạng LAN và tại máy tính cá nhân. 3.1. Giải pháp tại cổng Internet quốc gia 3.1.1. Kiến trúc hệ thống Hệ thống tường lửa tại các ISP hiện tại. Hiện nay các nhà cung cấp dịch vụ Internet tại Việt Nam đều đang sử dụng hệ thống tường lửa để quản lý, kiểm soát luồng dữ liệu vào ra. Cơ chế hệ thống tường lửa hiện tại về cơ bản được xây dựng dựa trên kỹ thuật phân tích các luồng thông tin vào/ra tại một cổng Internet thông qua địa chỉ nguồn và địa chỉ đích. Tại đó, các danh sách trắng (danh sách các địa chỉ IP không cần lọc) và danh sách đen (danh sách các địa chỉ IP cần lọc), các địa chỉ sẽ được sử dụng trong việc xây dựng tập luật các chính sách liên quan đến việc quản lý các luồng thông tin vào/ra. Nếu địa chỉ yêu cầu nằm trong hai danh sách đó, hệ thống tường lửa này sẽ tự quyết định lọc hay không tuỳ thuộc vào địa chỉ đó có nằm trong danh sách đen hay trắng tương ứng [ 1, 3 ]. 14 Hình 3.1. Hệ thống tưởng lửa hiện tại của các ISP Hệ thống lọc nội dung tại ISP. Việc lọc các truy cập web tại ISP là một giải pháp tổng thể vì nó đảm bảo cho toàn bộ hệ thống mạng hoàn toàn đồng nhất về mặt lọc nội dung truy cập web. Với giải pháp lọc tại ISP, mọi sự truy cập vào/ra đều được kiểm soát bởi tường lửa. Tuy nhiên các tường lửa ISP hiện chỉ có thể đáp ứng được việc lọc theo địa chỉ IP (tầng Network), mà những trang web đen có thể thay đổi IP thường xuyên và với mức độ tăng trưởng thuê bao như hiện nay thì việc nâng cấp hệ thống tường lửa là không đáp ứng yêu cầu. Do đó cần có giải pháp thay thế cho tường lửa hiện nay tại ISP: khi một gói tin tới sẽ được xác định xem có nằm trong danh sách đen hay trắng không, khi đó hệ thống sẽ thực hiện việc lọc ngay. Nếu không, luồng dữ liệu yêu cầu sẽ được định hướng đến hệ thống lọc nội dung để hệ thống này quyết định cơ chế kiểm duyệt thích đáng. Sơ đồ quản lý các luồng thông tin được minh họa như hình dưới đây sẽ đảm bảo lọc đầy đủ hơn (URL, IP, nội dung) và dễ dàng thuận tiện trong việc nâng cấp hệ thống khi cần thiết. Kiến trúc một hệ thống lọc nội dung tại ISP cơ bản bao gồm các thành phần như sau [ 1, 3, 14, 15, 16, 17 ]: Tường lửa ISP Người dùng BlackList WhiteList 15 Hình 3.2. Kiến trúc hệ thống lọc nội dung Internet tại ISP 3.1.2. Hoạt động Trong quá trình sử dụng Internet, dữ liệu trao đổi giữa người sử dụng và Internet sẽ được truyền tải qua (1) và (2). Dữ liệu được kiểm soát bởi hệ thống tường lửa lọc nội dung của ISP cung cấp dịch vụ. Dữ liệu được tường lửa kiểm soát theo cơ chế sau:  Gói tin đầu tiên từ người dùng gửi yêu cầu truy cập Internet và ngược lại sẽ được tường lửa xử lý đưa vào nhánh (3): o Thông tin của gói tin (IP,URL) được thành phần Lọc cụ thể, lọc loại trừ kiểm tra trong Kho dữ liệu lọc. o Nếu gói tin có thông tin về IP, URL tồn tại trong kho thì thành phần Lọc cụ thể, lọc loại trừ sẽ gửi kết quả theo nhánh (3) về Bộ quyết định để thực hiện chặn truy cập (danh sách đen) hoặc chuyển tiếp các gói tin còn lại không qua kiểm soát của tường lửa (danh sách trắng). o Trong trường hợp ngược lại, gói tin sẽ được chuyển tiếp qua (5) đến thành phần Proxy cache để tường lửa tiếp tục kiểm soát về mặt nội dung đối với truy cập này. 16  Trong trường hợp gói tin thứ nhất có thông tin về IP, URL không tồn tại trong Kho dữ liệu lọc, từ gói tin thứ 2 trở đi của tiến trình sẽ được tường lửa xử lý đưa vào nhánh (6): o Thành phần Proxy cache thực hiện tổng hợp các gói tin và chuyển tiếp qua (7) tới thành phần Lọc nội dung. o Thành phần Lọc nội dung trên cơ sở dữ liệu đã được tổng hợp thực hiện kiểm tra nội dung thông qua Tập luật: o Kiểu dữ liệu: ảnh, text, movie,… o Từ và cụm từ: bao gồm trọng số. o Biểu thức tính điểm: các từ, cụm từ có trọng số (âm, dương) được đưa vào biểu thức để tính toán với một ngưỡng cho trước. o Căn cứ vào kết quả phân tích thông tin đạt được, thành phần Lọc nội dung gửi kết quả phân tích về Bộ quyết định qua (9) và căn cứ vào các tiêu chí đặt ra sẽ bổ sung IP,URL vào Kho dữ liệu lọc qua (10).  Bộ quyết định: o Bộ quyết định có thực hiện chuyển tiếp các gói tin vào nhánh (3) hoặc nhánh (6) theo tính chất gói tin đưa vào. o Trên cơ sở kết quả các thành phần Lọc cụ thể, lọc loại trừ và Lọc nội dung trả ra, Bộ quyết định sẽ quyết định truy cập đang thực hiện được tiếp tục hay chặn lại. Ngoài ra để đảm bảo hệ thống tường lửa đáp ứng thời gian thực, nếu quá ngưỡng cho phép mà chưa có kết quả trả ra từ các thành phần khác thì Bộ quyết định sẽ tự đưa ra quyết định dựa trên kết quả hiện có và gửi thông báo cho các thành phần liên quan qua (3), (9). 3.1.3. Phân tích các thành phần Bộ quyết định Bộ quyết định là thành phần trung tâm của tường lửa lọc nội dung. Hoạt động của các thành phần khác trong tường lửa đều được kiểm soát bởi thành phần này. Chức năng chính của Bộ quyết định là đưa ra các quyết định liên quan tới hoạt động của tường lửa, bao gồm: o Quyết định gói tin có thuộc diện cần tường lửa xử lý hay không. 17 o Quyết định gói tin sẽ được chuyển tiếp cho các thành phần khác (theo nhánh (3) hoặc nhánh (6)). o Quyết định công việc tường lửa phải thực hiện tiếp trên cơ sở kết quả trả về từ nhánh (3) và nhánh (9): trong đó kết quả trả về từ nhánh (9) là kết quả trực tiếp của các bộ phận trong thành phần Lọc nội dung (bộ phận xử lý về kiểu dữ liệu, xử lý về từ và cụm từ, …) o Quyết định công việc của tường lửa phải thực hiện khi các thành phần gửi kết quả chậm hơn thời gian quy định. o Quyết định các phần dữ liệu đã qua kiểm duyệt được chuyển tới người sử dụng khi dữ liệu chưa tập hợp đầy đủ. Lọc cụ thể, lọc loại trừ Thành phần lọc cụ thể, lọc loại trừ là thành phần cơ bản của hệ thống tường lửa lọc nội dung. Thành phần này thực hiện việc lọc trang web theo chức năng cơ bản: lọc theo địa chỉ IP và địa chỉ URL. Việc duy trì thành phần cơ bản của hệ thống tường lửa trong hệ thống tường lửa lọc nội dung đảm bảo cho việc kiểm soát các trang web đã biết được thực hiện với thời gian là nhanh nhất. Các địa chỉ IP, URL được lưu trữ trong Kho dữ liệu lọc và được phân thành hai loại: danh sách đen và danh sách trắng. Mỗi truy cập của người dùng ra Internet sẽ được kiểm soát một lần bởi thành phần Lọc cụ thể, lọc loại trừ thông qua gói tin đầu tiên đi qua. Các kết quả đạt được: o IP, URL của gói tin nằm trong danh sách đen: truy cập của người dùng bị chặn lại. o IP, URL của gói tin nằm trong danh sách trắng: truy cập của người dùng là hợp pháp, mọi gói tin tiếp theo trong tiến trình truy cập sẽ được chuyển tiếp qua mà không cần phải kiểm soát. o IP, URL của gói tin không nằm trong 2 danh sách: gói tin sẽ được chuyển sang thành phần Lọc nội dung để tiếp tục kiểm soát các gói tin tiếp theo của tiến trình truy cập. Trong trường hợp kết quả đạt được là trường hợp 3: do thông tin IP, URL của các gói tin tiếp theo hoàn toàn giống với gói tin đầu nên việc không cần sử dụng thành phần Lọc cụ thể, lọc loại trừ để kiểm soát sẽ giảm thiểu thời gian bị trì hoãn khi duyệt web của người dùng do hệ thống lọc nội dung gây ra. 18 Kho dữ liệu lọc được bổ sung, cập nhật thường xuyên từ kết quả của thành phần Lọc nội dung. Proxy cache: Proxy cache là cách gọi tắt của “Web proxy cache”, chức năng chính của nó là thực hiện lưu trữ các trang web được truyền qua nó, và khi có một yêu cầu mới về trang web đó thì sẽ được đáp ứng nhanh hơn. Proxy cache đã làm giảm đáng kể về băng thông và thời gian đáp ứng yêu cầu của người dùng khi duyệt web. Đây được coi là vấn đề cố hữu trong giải quyết vấn đề lưu lượng Internet. Bởi vì trang web lúc này đã được lưu lại trên máy chủ (proxy) cục bộ nên khi có một yêu cầu mới tới trang web nó sẽ được đáp ứng ngay từ máy chủ cục bộ. Hiệu năng của máy chủ (proxy) càng được thể hiện rõ nét khi có nhiều trang web được duyệt trên cùng một địa chỉ website. Proxy cache có cơ chế lưu trữ các hình ảnh và file con của các trang web đã được duyệt qua, khi người sử dụng chuyển qua duyệt một trang web mới nhưng trên cùng site đó, nếu trong trang web mới có sử dụng lại các hình ảnh đã có của trang web cũ thì proxy cache sẽ tự động cung cấp tới người sử dụng mà không qua việc lấy lại từ site. Trong hệ thống tường lửa lọc nội dung proxy cache được sử dụng với các mục đích sau: o Tổng hợp các gói tin thành một trang web có nội dung hoàn chỉnh cung cấp đầu vào cho thành phần lọc nội dung. o Tăng tốc độ trong việc phân tích các trang web khác trên cùng một site: do không phải lấy lại những file đã có. o Giảm thiểu thời gian bị trì hoãn khi duyệt web của người dùng do hệ thống lọc nội dung gây ra. Lọc nội dung: Thành phần Lọc nội dung là thành phần chính của tường lửa lọc nội dung. Một tường lửa thông thường sẽ thực hiện lọc các trang web thông qua thông tin đã biết của trang web đó (IP, URL). Tuy nhiên, số lượng trang web thì rất lớn và không ngừng phát triển nên nhiều trang web đi qua được tường lửa thông thường mà không được kiểm soát về nội dung. Thành phần Lọc nội dung là thành phần bổ sung cho tường lửa thông thường, thực hiện nhiệm vụ kiểm soát những trang web hiện đang chưa có thông tin lưu trữ trong Kho dữ liệu lọc. 19 Đối với tường lửa lọc nội dung thì mọi trang web đều được kiểm duyệt, tuy nhiên những trang web được kiểm duyệt bởi thành phần Lọc nội dung sẽ chỉ mang tính tương đối bởi các thuật toán lọc nội dung hiện nay đều chưa đạt độ chính xác tuyệt đối. Thành phần lọc nội dung bao gồm nhiều thành phần con, mỗi thành phần thực hiện một chức năng riêng biệt: xử lý dữ liệu dạng text, dạng hình ảnh, dạng nén,… 3.2. Giải pháp tại cổng Internet của mạng LAN 3.2.1. Kiến trúc tổng quan Về cơ bản giải pháp lọc nội dung cho một mạng LAN của một đơn vị (trường học, doanh nghiệp, điểm truy cập Internet công cộng,…) tương tự như hệ thống lọc nội dung tại ISP nhưng có quy mô nhỏ hơn [ 3, 14, 15, 16, 17 ]. Một hệ thống lọc nội dung bao gồm các thành phần: o Bộ quyết định. o Lọc cụ thể, lọc loại trừ. o Proxy cache. o Lọc nội dung. Hình 3.3. Gateway Filter lọc cho một mạng LAN 3.2.2. Giải thuật và cơ chế hoạt động Giải thuật lọc nội dung (text/html) cho cổng Internet của một mạng LAN (hiện đang được công ty Điện toán và Truyền số liệu áp dụng triển khai trên 20.000 đại lý Internet công cộng): 20 Hình 3.4. Sơ đồ giải thuật lọc cho mạng LAN 1 21 Module WebFilter sẽ lắng nghe kết nối tại port 8080, nếu nhận được kết nối và request HTTP từ client thì nó sẽ kiểm tra xem có phải kết nối này tới Proxy (người dùng tự thiết lập thông số Proxy bằng tay, hoặc Firewall tự động chuyển kết nối port 80 sang port 8080) nếu sai thì hủy kết nối, nếu đúng kiểm tra URL. Chi tiết giải thuật được mô tả trong hình. Các bước chính thực hiện của giải thuật gồm: o WebFilter thực hiện kiểm tra xác định nhận dạng của người dùng bằng cách thử: xác thực header proxy, NTLM, nhận dạng server. o Kiểm tra URL có chứa nội dung hợp lệ hay không? o Bộ lọc tạm thời có cho qua hay không? o IP của client, username, domain request hoặc URL có nằm trong danh sách được phép hay không? o Có cần quét nội dung trang web tương ứng với URL không? o Có phải trang web là ngoại lệ hoặc trong chế độ cookie bypass và request không phải là banned hoặc trong chế độ quét nội dung không? Nếu đúng thì chuyển yêu cầu header của client tới proxy, nếu sai thì kiểm tra tiếp: cho phép banner hoặc HTTPS request và không trong chế độ bypass/exception? Nếu đúng thì kiểm tra xem request có phải banned không và kiểm tra HTTPS. Nếu sai thì chuyển yêu cầu header của client tới proxy, nhận các header trả lại từ proxy (chuyển sang sơ đồ giải thuật tiếp theo). 22 Hình 3.5. Sơ đồ giải thuật lọc cho mạng LAN 2 o Có trong chế độ bypass? o Có trong chế độ exception? o Kiểm tra MIME type trả lại. o Kiểm tra phần mở rộng trả lại. o Kiểm tra Proxy header o Chuyển sang sơ đồ giải thuật tiếp theo. 23 Hình 3.6. Sơ đồ giải thuật lọc cho mạng LAN 3 o Kiểm tra: cache URL là enabled và không trong chế độ scanning; hoặc cache URL được quét là enabled. Nếu đúng, kiểm tra xem URL có nằm trong clean cache không? Nếu URL nằm trong clean cache thì chuyển sang sơ đồ giải thuật tiếp theo. o Tải body từ Proxy o Có trong chế độ scanning? Nếu có: thực hiện quét nội dung. o Có trong chế độ bypass hoặc exception? Nếu không: thực hiện lọc nội dung nếu kiểu MIME là plaintext. o Chuyển sang sơ đồ giải thuật tiếp theo. 24 Hình 3.7. Sơ đồ giải thuật lọc cho mạng LAN 4 o Tải phần còn lại của body từ proxy (nếu có). o Nếu URL không có trong cache, header phù hợp, và nội dung dạng text hoặc caching URL đã được search, thì thêm URL vào cache. o Forward header từ Proxy tới client. o Kiểm tra xem phần body đã được tải xuống và lưu trữ hay chưa. Nếu rồi thì gửi cho client phần nội dung bypass. Nếu chưa thì forward body từ proxy tới client 3.3. Giải pháp trực tiếp trên máy tính cá nhân Giải pháp tường lửa lọc nội dung trên máy tính cá nhân là giải pháp triển khai trực tiếp trên từng máy tính, nó thực hiện kiểm soát nội dung truy cập Internet vào/ra trên máy tính đó. Có thể nói đây là giải pháp có tính ‘phân tán’ cao nhất, vì hoạt động quản lý trực tiếp trên một máy tính thay vì cổng Internet mạng LAN, cổng Internet quốc gia. Phần mềm lọc nội dung truy cập Internet sẽ được cài đặt trực tiếp trên hệ điều hành của người dùng. Thành phần của tường lửa lọc nội dung cá nhân bao gồm: 25 o Thành phần Lấy nội dung. o Thành phần Bộ quyết định. o Thành phần Lọc cụ thể, lọc loại trừ. o Thành phần Lọc nội dung. Về cơ bản tường lửa lọc nội dung cá nhân được xây dựng gồm các thành phần như trên nhưng do áp dụng biện pháp khác nhau tại thành phần Lấy nội dung nên có thể chia ra thành những loại sau: 3.3.1. User mode: lấy nội dung từ lớp ứng dụng (Application) Việc kiểm soát nội dung truy cập Internet của người sử dụng sẽ được thực hiện trực tiếp trên các ứng dụng (trình duyệt) [ 3 ]. Tường lửa lọc nội dung thực hiện lấy các thông tin: o Địa chỉ truy cập. o Dữ liệu trong thẻ meta. o Nội dung: text, hình ảnh,… 26 Hình 3.8. Nội dung kiểm soát lấy từ cửa sổ trình duyệt Giải thuật: 27 Hình 3.9. Sơ đồ giải thuật User mode (lấy nội dung lớp ứng dụng) 28 Hoạt động: Tường lửa định kỳ kiểm tra các trình duyệt đang mở, với mỗi cửa sổ trình duyệt đang mở lấy về PID và URL. Thực hiện đối soát PID, URL với Kho dữ liệu (PID,URL): - Nếu tồn tại trong kho: kết thúc xử lý. - Nếu không tồn tại: thông tin PID, URL chuyển tiếp sang thành phần Lọc cụ thể, lọc loại trừ. Thông tin URL được đối soát trong Kho dữ liệu lọc (URL): - Nếu tồn tại trong kho: thông tin được chuyển tới Bộ quyết định xử lý. - Nếu không tồn tại: lấy dữ liệu của thẻ meta kiểm tra. Đối soát dữ liệu thẻ meta với Kho dữ liệu lọc (thẻ Meta): - Kết quả được chuyển Bộ quyết định xử lý. Bộ quyết định sau khi tiếp nhận thông tin của thành phần: - Lọc cụ thể, lọc loại trừ: quyết định chặn (danh sách đen) hoặc cho phép truy cập (danh sách trắng); cập nhật thông tin PID,URL tại kho dữ liệu (PID,URL). - Lọc nội dung (meta): o Chặn truy cập và cập nhật thông tin PID,URL tại kho dữ liệu (PID,URL). o Không chặn truy cập và điều khiển thành phần Lọc nội dung thực hiện Lấy dữ liệu và kiểm tra. Lọc nội dung đối soát Kho dữ liệu lọc: - Kết quả được chuyển Bộ quyết định xử lý. Nhược điểm: Phụ thuộc vào trình duyệt: để có thể lấy thông tin từ trình duyệt, tường lửa lọc nội dung cần biết tên và cấu trúc của trình duyệt để có thể lấy được các thông tin tương ứng. Khi xác định nội dung trang web thuộc diện không được truy cập thì trang web thường đã hiển thị đầy đủ trên trình duyệt. 29 Xử lý trình duyệt và cache trang web khi nội dung truy cập không được phép gặp nhiều khó khăn. 3.3.2. User Mode: lấy nội dung từ lớp phiên (Session) Còn được gọi là “Circuit Level Gateway”, hoạt động ở lớp session của mô hình OSI, hoặc lớp TCP của mô hình TCP/IP. Chúng giám sát việc bắt tay TCP (TCP handshaking) giữa các gói để xác định rằng một phiên yêu cầu là phù hợp. Tường lửa mức độ này không lọc các gói tuy nhiên dữ liệu trao đổi tại lớp phiên thuộc diện tường minh [ 7, 8, 9, 10, 11, 12, 13 ]. Tường lửa mức độ này sẽ xác định kết nối giữa hai đầu cuối có hợp lệ theo các luật hay không, sau đó mở một session (phiên làm việc) và cho phép luồng lưu thông và có sự giới hạn thời gian. Các thông tin kiểm soát lớp phiên: • Cổng nguồn, cổng đích. • Thời gian trong ngày (time of day). • Giao thức (protocol). • Người dùng (user). • Mật khẩu (password). • Nội dung. Để thực hiện kiểm soát, tường lửa lọc nội dung cần hooking vào một số thư viện của hệ thống mức user mode: 30 Hình 3.10. Hook Firewall ở User Mode Giải thuật: 31 Hình 3.11. Sơ đồ giải thuật User mode (lấy nội dung lớp phiên) 32 3.3.3. Kernel mode: lấy nội dung từ lớp mạng (IP) Tường lửa lọc nội dung tại mức kernel mode về cơ bản tương tự như mức user mode. Tuy nhiên, do tại các mức khác nhau nên có một số thay đổi đối với thông tin kiểm soát [ 7, 8, 9, 10, 11, 12, 13 ]: • Địa chỉ nguồn, địa chỉ đích. • Cổng nguồn, cổng đích. • Giao thức (protocol). • Nội dung. Nội dung kiểm soát thêm thông tin địa chỉ nguồn, địa chỉ đích nhưng không kiểm soát được thông tin về người sử dụng, mật khẩu như tường lửa mức ứng dụng user mode. Để thực hiện lọc nội dung mức kernel mode, tường lửa lọc nội dung cần can thiệp vào giao thức TCP/IP như hình vẽ dưới đây: 33 Hình 3.12. Các chế độ Hook Firewall trên Windows Giải thuật: 34 Hình 3.13. Sơ đồ giải thuật Kernel mode (lấy nội dung lớp IP) 35 Tường lửa hoạt động ở lớp mạng của mô hình OSI, hoặc lớp IP của TCP/IP. Dữ liệu truyền qua lớp này đều ở dạng gói. Mỗi gói là một lượng dữ liệu có kích thước giới hạn, đủ nhỏ để dễ điều khiển. Khi lượng lớn dữ liệu được gửi chúng được chia ra thành nhiều gói và tái hợp ở nơi nhận. Trong tường lửa mức mạng, thường chỉ giao thức và thông tin địa chỉ của mỗi gói được kiểm tra. Nội dung và ngữ cảnh (mối liên hệ với các gói khác) của nó bị bỏ qua. Các gói vào/ra được kiểm soát dựa trên một tập luật, được gọi là chính sách (policies). Về cơ bản, giải thuật lọc nội dung mức kernel mode giống như user mode, tuy nhiên trong các gói tin mức mạng đều có địa chỉ IP nguồn và địa chỉ IP đích nên bất kỳ gói tin nào cũng có thể thực hiện lọc cụ thể, lọc loại trừ (IP). Đa số các tường lửa được xây dựng trên việc kiểm soát luồng dữ liệu mức mạng. Ưu điểm: • Kiểm soát đầy đủ các thông tin vào ra. • Ít ảnh hưởng đến chất lượng mạng. • Hiệu quả trong việc đóng khối các kiểu riêng biệt: dịch vụ, nguồn. Ví dụ, telnet có thể dễ dàng được đóng khối bằng cách áp dụng một luật lọc để đóng khối TCP cổng 23. Nhược điểm: • Không thực hiện kiểm soát việc xác thực người dùng. • Xây dựng cơ chế tổng hợp dữ liệu từ các gói đơn lẻ là rất khó. 3.3.4. Kernel mode: cơ chế nghe lén (sniffer) Kết hợp giữa giải pháp lọc nội dung mức kernel mode mức 3.1 và 3.3 trên: Lấy nội dung từ lớp mạng IP: mở một socket và lắng nghe tất cả dữ liệu được gửi đi và gửi đến máy tính. Tổng hợp phân tích nội dung được trao đổi. Tác động lên trình duyệt (lớp ứng dụng) khi nội dung truy cập không hợp pháp. 36 Điểm khác biệt giữa hook firewall và sniffer:  Cơ chế lấy dữ liệu: o Hook firewall: chèn giữa các lớp trong mô hình OSI, có thể ngăn không cho dữ liệu truyền qua. o Sniffer: lấy dữ liệu đồng thời với các lớp tương ứng trong mô hình OSI, không thể ngăn dữ liệu lại.  Lưu lượng xử lý: o Hook firewall: chỉ xử lý dữ liệu được gửi đi, gửi đến máy tính đó. o Sniffer: đón nhận cả những dữ liệu không phải của máy tính đó. 3.4. Đề xuất giải pháp 3.4.1. Đánh giá giải pháp trực tiếp Các ứng dụng thường xuyên tác động lên nhau trên máy tính. Ví dụ: khi mở một file pdf trên máy tính, windows explorer sẽ gọi chương trình xem pdf mặc định để chứa nội dung pdf. Tường lửa sẽ kiểm tra tác động đó và ngăn chặn những thực thi không được phép truy cập do đó tường lửa cần có vị trí trung gian, chính là các function hook, để có thể kiểm soát các hoạt động giữa các ứng dụng với nhau. Để có chế độ bảo vệ mức cao, các chương trình ứng dụng bảo mật thường cần có mức điều khiển hơn mức tiến trình ứng dụng thông thường. Để đạt được điều đó, tường lửa thay thế một số “internal system functions” bởi các functions của riêng nó. Việc thay thế các function của hệ thống được gọi là “hooking”. Có hai chế độ để thực hiện hooking là “user mode hooks” và “kernel mode hooks”. User mode là phương thức đặc biệt cho việc xử lý các tiến trình của người dùng, với những đặc quyền truy cập thấp hơn so với kernel mode. Kernel mode, mặt khác, là sự thi hành toàn diện hơn và vận hành trực tiếp từ nhân của Windows và xử lý những lệnh đặc biệt của hệ thống. So sánh đặc trưng user mode và kernel mode hook [ 19 ]: Tiêu chuẩn so sánh User-mode hooks Kernel-mode hooks An toàn 1) Hook disabling (unhooking) Dễ dàng bị unhooking nếu không được bảo vệ cẩn thận. Mỗi phương thức của Có thể bị unhooking khi sử dụng quyền quản trị cao nhất của hệ thống. 37 chế độ user mode hook cần có biện pháp đối phó đặc biệt để chống đỡ lại unhooking. 2) Process Có thể xử lý tiến trình trong thời gian thực, một số ngăn chặn: • Kết thúc hợp pháp của ứng dụng. • Xử lý tiến trình ngay cả khi có thể thay đổi ứng dụng, không toàn vẹn dữ liệu. Không thể xử lý tiến trình trong thời gian thực. Độ ổn định 3) Hoạt động ổn định Ổn định, ít gây ra lỗi trong hoạt động. Không ổn định, độ ổn định phụ thuộc vào nhiều yếu tố khác như phần mềm, phần cứng. Tương thích 4) 64-bit Windows compatible Có Không, do Microsoft có chế độ bảo vệ. 5) Windows Vista compatible Có Không, thiết kế ban đầu của window vista không cho phép truy cập (hook) vào kernel mode. 3.4.2. Đề xuất Như đã trình bày trên đây, giải pháp lọc nội dung truy cập Internet có thể được thực hiện tại: ISP, Gateway mạng LAN hoặc trực tiếp trên máy tính người dùng cá nhân. Các giải pháp tại ISP và Gateway mang tính triệt để, tổng quát cao. Tuy nhiên để thực hiện được cần có sự phân tích nghiên cứu lâu dài. Để đáp ứng yêu cầu quản lý hiện nay của nhà nước và người sử dụng cá nhân, giải pháp trực tiếp trên máy tính người dùng cá nhân là giải pháp khả thi. Về các giải pháp trực tiếp trên máy tính người dùng cá nhân nếu thực hiện xây dựng tường lửa thông thường thì đều có thể đáp ứng được yêu cầu trong đó giải pháp thực hiện tại kernel mode được coi là tối ưu nhất. Tuy nhiên, áp dụng với tường lửa lọc nội dung thì cần phải được xem xét trên cơ sở chức năng nhiệm vụ của nó: 38 1) Kiểm soát dịch vụ truy cập ra ngoài. 2) Kiểm soát dịch vụ từ ngoài truy cập vào trong. 3) Theo dõi luồng dữ liệu mạng giữa Internet. 4) Kiểm soát địa chỉ truy cập. 5) Kiểm soát cổng truy cập. 6) Kiểm soát thời gian truy cập. 7) Kiểm soát giao thức sử dụng (HTTP, FTP, Telnet,…). 8) Kiểm soát người sử dụng và việc truy cập của người sử dụng. 9) Kiểm soát nội dung thông tin lưu chuyển trên mạng. Song song với việc kiểm soát được các nội dung như trên, tường lửa lọc nội dung sẽ đảm bảo: 1) Có mức bảo mật cao nhất. 2) Giảm thiểu ảnh hưởng tốc độ mạng tới người sử dụng. 3) Xử lý thời gian thực khi truy cập của người sử dụng không hợp pháp. Để tường lửa lọc nội dung hoạt động với các tính năng như trên và căn cứ phân tích cơ chế hoạt động tường lửa (mục 3), tường lửa lọc nội dung cần được xây dựng dựa trên sự kết hợp giữa user mode và kernel mode để có thể đảm bảo được các yêu cầu đặt ra. 39 Chương 4 - GIẢI PHÁP LỌC NỘI DUNG VÀ XÂY DỰNG PHẦN MỀM TẠI MÁY TÍNH CÁ NHÂN 4.1. Giải thuật Hình 4.1. Sơ đồ giải thuật lọc nội dung trực tiếp trên máy tính cá nhân 40 4.2. Hoạt động Khởi tạo chương trình thực hiện hook vào lớp mạng mức kernel mode của window: Kiểm soát tất cả các gói tin gửi đến và đi trước khi chuyển qua lớp mạng của Window. Các gói tin được kiểm soát theo chế độ thời gian thực: đảm bảo không ảnh hưởng tới tốc độ truy cập của người sử dụng, mỗi gói tin được kiểm soát trong khoảng thời gian nhất định. Thành phần Lấy dữ liệu và Phân tích gói tin sẽ cung cấp thông tin để thực hiện kiểm soát nội dung của gói tin được gửi tới. Các thông số của gói tin được kiểm tra Kho dữ liệu Thread: - Không xử lý: gói tin thuộc dạng không cần kiểm tra (do xác nhận của gói tin trước là phiên làm việc hiện tại thuộc danh sách trắng): gói tin sẽ được chuyển tiếp tới lớp mạng của Window, chương trình quay về trạng thái chờ gói tin tiếp theo. Gửi thông báo tới Bộ quyết định để xác định nếu là gói tin sau cùng sẽ thực hiện đóng Thread. - Nếu gói tin thuộc diện cần kiểm tra (phiên làm việc được xác lập mới, nội dung truy cập không phải thuộc danh sách trắng): sẽ chuyển tiếp cho thành phần tiếp theo xử lý. - Xử lý riêng: khi không phải là gói tin đầu tiên hoặc được điều khiển để bỏ qua những thành phần kiểm tra nhất định. Thành phần Lọc cụ thể, lọc loại trừ (URL, IP): chủ yếu thực hiện đối với gói tin đầu tiên đi và đến của một truy cập, ngoài ra thành phần này có thể thực hiện công việc khi tiếp nhận yêu cầu xử lý trực tiếp. Lọc cụ thể, lọc loại trừ URL, IP chỉ cần thực hiện với gói tin đầu tiên: mọi gói tin tiếp theo sẽ hủy bỏ hoặc chuyển tiếp không cần xử lý. Hiệu quả đối với người sử dụng: một truy cập để chuyển tải nội dung về máy người sử dụng thường bao gồm rất nhiều gói tin Thành phần Lọc kiểu dữ liệu: kiểm soát kiểu dữ liệu truy cập. Thành phần Lọc cổng: kiểm soát cổng truy cập dữ liệu. 41 Thành phần Lọc nội dung: - Lọc nội dung văn bản. - Lọc nội dung hình ảnh. Thành phần Bộ quyết định: - Tiếp nhận thông tin từ các thành phần và đưa ra quyết định đối với gói tin. Trong nhiều trường hợp để đảm bảo chương trình có thể hoạt động theo chế độ thời gian thực, Bộ quyết định sẽ đưa ra quyết định đối với gói tin trước khi có thông tin từ các thành phần khác. - Điều khiển các thành phần xử lý truy cập ở cả hai mức: user mode và kernel mode. - Cập nhật thông tin cho Kho dữ liệu Thread. 4.3. Phân tích các thành phần 4.3.1. Thành phần lấy dữ liệu Để kiểm soát được gói tin và các ứng dụng truy cập internet, tường lửa lọc nội dung thực hiện hook vào hệ thống cả mức user mode và kernel mode [ 7, 8, 9, 10, 11, 12, 13 ] : Hình 4.2. Phân lớp xử lý gói tin 42 Hình 4.3. Sơ đồ xử lý tổng quát giải pháp lọc nội dung Nhìn ở góc độ bộ đệm dữ liệu (Buffer), có thể thấy chu trình dữ liệu đi như ở hình dưới. Dữ liệu gói tin đi qua driver, lên ứng dụng, và được thao tác tại ứng dụng, và có thể đưa ra hệ thống file… Hình 4.4. Quy trình ghi log truy cập 43 Kiến trúc tường lửa lọc nội dung có thể được chia thành hai phần theo chức năng, đó là: o Lọc cụ thể, lọc loại trừ: lọc IP, URL. o Lọc nội dung: lọc cổng, lọc kiểu dữ liệu, tổng hợp, phân tích nội dung truy cập. Tương ứng với từng trường hợp lọc, việc xác định vị trí lấy dữ liệu phù hợp là cần thiết đảm bảo thực hiện yêu cầu đặt ra. Đối với chức năng “lọc cụ thể, lọc loại trừ” và một số chức năng lọc trong chức năng “lọc nội dung”, các thông tin cần thiết để thực hiện lọc có trong các gói tin mức kernel mode (Transport Layer, Network Layer, Data Link Layer). Hình 4.5. Cấu trúc dữ liệu tầng Transport struct tcp_hdr{ unsigned short sport //Source Port unsigned short dport //Destiantion Port unsigned int seq_num //Sequence Number unsigned int ack_num //Acknowledgment Number unsigned char dataoffset //Data Offset unsigned char flags //2 bits Reserve + 6 bits Flags: SYN, ACK, FIN, RST, PUSH, URG unsigned short window //Windows unsigned short checksum //Checksum unsigned short urgpointer //Urgent Pointer } 44 Hình 4.6. Cấu trúc dữ liệu tầng Network struct ip_hdr{ unsigned char ver_ihl; //Version (4 bits) + Internet Header Length (4 bits) unsigned char tos; //Type Of Service unsigned short tol_len //Total Length (Ip Header + TCP Header + Data) unsigned short id //Identification unsigned short offset //Frame Offset trong đó 8 bits cho flags unsigned char ttl //Time to Live unsigned char protocol //Protocol unsigned short checksum //Header Checksum unsigned int saddr //Source Address unsigned int daddr //Destination Address }; Hình 4.7. Cấu trúc dữ liệu tầng DataLink Ứng với mỗi tầng dữ liệu trong mô hình OSI từ tầng Transport đến tầng DataLink, gói tin sẽ được bọc thêm vào phần tiêu đề của tầng dữ liệu tương ứng. Các thông tin cần thiết để thực hiện lọc cụ thể, lọc loại trừ có trong tiêu đề gói tin mức tương ứng: Transport: cổng nguồn, cổng đích, URL và kiểu dữ liệu (trong phần data của gói tin gửi đi hoặc gửi đến). Network: giao thức thực hiện, địa chỉ IP nguồn, địa chỉ IP đích. DataLink: địa chỉ MAC nguồn, địa chỉ MAC đích. Do tường lửa lọc nội dung cho máy tính người dùng cá nhân thực hiện kiểm soát nội dung truy cập Internet của người sử dụng cá nhân nên thông tin về địa chỉ 45 MAC nguồn và đích có tại tầng DataLink là hoàn toàn không cần thiết. Và nếu dữ liệu được lấy từ tầng Transport thì sẽ không có thông tin về địa chỉ IP nguồn, địa chỉ IP đích, giao thức được sử dụng. Do đó, thành phần lấy dữ liệu tại kernel mode sẽ thực hiện lấy dữ liệu tại tầng Network:  Thông tin đầu vào cho các thành phần lọc cụ thể, lọc loại trừ có sẵn và đầy đủ.  Cung cấp các thông tin cần thiết để có thể tổng hợp các gói tin thành phiên giao dịch đầy đủ: sequence number, acknowledgement number, data ofset, flags, window,… đảm bảo dữ liệu đầu vào cho thành phần lọc nội dung đầy đủ và chính xác. Như vậy với thành phần lấy dữ liệu, ta đã có thể thu thập được toàn bộ các gói tin vào ra máy tính. Công việc tiếp theo là phân tích, tổng hợp các gói tin đi và đến. Nhiệm vụ này được các thành phần tiếp theo thực hiện. 4.3.2. Thành phần phân tích nội dung gói tin Với mỗi gói tin lấy được từ tầng Network, thành phần phân tích nội dung gói tin với cấu trúc như sau: IP header: 24 bytes TCP header: 24 bytes Data (<1500 bytes) Hình 4.8. Cấu trúc gói tin lấy dữ liệu Tách 20 bytes IP header (đến 60 bytes) lấy các thông tin:  IHL (4 bits): trường có độ dài 4 bits qui định độ dài của phần header (tính theo đơn vị words 32 bits). Phần header có độ dài tối thiểu là 5 words (160 bits) và tối đa là 15 words (480 bits).  Total length (16bits): độ lớn gói tin, đơn vị tính octets, độ dài tối đa 65535 octets.  Fragment Offset (13 bits): mảnh đầu tiên có giá trị là 0. Tùy theo giá trị của trường này sẽ xác định được có phải gói tin đầu tiên nhận được hay không, hệ thống thực hiện một số tùy chọn về lọc cụ thể, lọc loại trừ và mở tác vụ lọc nội dung mới nếu cần.  Protocol (8 bits): xác định giao thức tầng transport sử dụng, cung cấp dữ liệu cho thành phần lọc cụ thể, lọc loại trừ giao thức. 46  Source address (32 bits): địa chỉ IP nguồn, cung cấp đầu vào cho thành phần lọc cụ thể, lọc loại trừ IP.  Destination address (32bits): địa chỉ IP đích, cung cấp đầu vào cho thành phần lọc cụ thể, lọc loại trừ IP.  Phần dữ liệu còn lại là gói tin TCP. Tách 20 bytes TCP header (đến 60 bytes) lấy các thông tin:  Source port (16 bits): địa chỉ cổng nguồn, cung cấp đầu vào cho thành phần lọc cụ thể, lọc loại trừ cổng.  Destination port (16 bits): địa chỉ cổng đích, cung cấp đầu vào cho thành phần lọc cụ thể, lọc loại trừ cổng.  Sequence number (32 bits): Ở hai bước đầu tiên trong quá trình bắt tay ba bước, hai máy tính trao đổi một số thứ tự gói ban đầu (Initial Sequence Number -ISN). Số này có thể chọn một cách ngẫu nhiên. Số thứ tự này được dùng để đánh dấu các khối dữ liệu gửi từ mỗi máy tính. Sau mỗi byte được truyền đi, số này lại được tăng lên. Nhờ vậy ta có thể sắp xếp lại chúng khi tới máy tính kia bất kể các gói tới nơi theo thứ tự thế nào. Việc xác định gói tin đầu tiên phụ thuộc vào cờ flags, nếu cờ SYN bật thì nó là số thứ tự gói ban đầu và byte đầu tiên được gửi có số thứ tự này cộng thêm 1. Nếu không có cờ SYN thì đây là số thứ tự của byte đầu tiên.  Acknowledgement Number (32 bits): số bytes của gói dữ liệu tiếp theo sẽ được gửi đi. Nếu cờ ACK bật thì giá trị của trường chính là số thứ tự gói tin tiếp theo mà bên nhận cần.  Data offset (4 bits): Trường có độ dài 4 bits qui định độ dài của phần header (tính theo đơn vị words 32 bits). Phần header có độ dài tối thiểu là 5 words (160 bits) và tối đa là 15 words (480 bits).  Flags (6 bits): o URG: The Urgent Pointer field is significant. o ACK: The Acknowledgement field is significant. o EOL: End of Letter. o RST: Reset the connection. o SYN: Synchronize sequence numbrers. 47 o FIN: No more data from the sender.  Phần dữ liệu còn lại là gói tin HTTP. Phần dữ liệu còn lại sau khi được tách IP header và TCP header là dữ liệu tầng ứng dụng. Dữ liệu tầng ứng dụng được chia thành 2 phần: tiêu đề và nội dung được phân cách nhau bởi cặp thẻ “\r\n” xuất hiện 2 lần liên tiếp tính từ đầu gói tin. Cấu trúc tiêu đề gói tin HTTP có dạng: “tên trường” + “: ” + “giá trị thuộc tính” + “\r\n”. Một số “tên trường” sử dụng lấy dữ liệu đầu vào của thành phần lọc cụ thể, lọc loại trừ: GET/POST: giao thức sử dụng. Accept-Language: ngôn ngữ sử dụng. Host: địa chỉ tên miền truy cập. Refered: địa chỉ URL truy cập. Phần dữ liệu còn lại kết hợp với các thông tin trích rút được từ IP header và TCP header sẽ được tổng hợp thành phiên giao dịch đầy đủ, phục vụ kiểm soát nội dung. Hình 4.9. Các gói tin dạng thô và được phân tích theo từng lớp mạng Cùng một thời điểm có thể có nhiều phiên giao dịch tương ứng với các đối tượng của trang web (text, ảnh…). Các phiên này được phân biệt bởi các tham số trong cấu trúc dữ liệu TCP/IP (ở trên), bao gồm: địa chỉ ip, số cổng, số ACK, SEQUENT (xem hình dưới). 48 Hình 4.10. Dữ liệu tầng TCP/IP của một gói tin 4.3.3. Thành phần tách, tổng hợp gói tin thành phiên giao dịch Ở phần trên, module phân tích nội dung gói tin thực hiện xử lý các gói tin trong tầng TCP để thu được các phiên giao dịch. Khi thu được dữ liệu các phiên giao dịch, nhiệm vụ tiếp theo của module tổng hợp sẽ là phân tích nội dung giao dịch để biết đó là giao dịch theo dạng nào. Dạng của phiên giao dịch ở đây có ý nghĩa là: một trang web vốn có nhiều thành phần, gồm ảnh, phim, flash file, javascript, text file… Do đó cần phân loại các đối tượng này, để có thể phân tích nội dung tương ứng. Dưới đây là quy trình tổng hợp dữ liệu dạng text. Dưới đây là ví dụ về nội dung gói tin được phân tích. Hình 4.11. Header file ảnh 49 Trong hình trên ta có thể thấy một cấu trúc header, với nội dung cho biết đây là một gói tin chứa nội dung ảnh gif, với kích thước 12755 bytes. Hình 4.12. Header file text/html Trên đây là tiêu đề của phiên giao dịch nội dung gói tin text/html, với một trang text có nội dung 46071 bytes. Tiếp theo, các gói tin được tổng hợp để ra một trang web hoàn chỉnh. Như trên nội dung gói tin trên cho biết phiên giao dịch này có kích thước text file là 46071 bytes, với kích thước tương đối của một gói tin khoảng 1500 bytes, như vậy phiên giao dịch này sẽ có khoảng 30 gói tin. Trọn vẹn gói tin HTTP đầu tiên của phiên giao dịch có nội dung như sau: Hình 4.13. Gói tin đầu tiên của một phiên giao dịch Công việc tiếp theo đó là tập hợp các gói tin kế tiếp của phiên giao dịch. Thành phần này sẽ thực hiện tổng hợp, sắp xếp các gói tin lại thành phiên giao dịch đầy đủ dựa vào các tham số: địa chỉ ip, số cổng, số ACK, SEQUENT. Hình 4.14. Tham số Seq và Ack 50 Thực hiện kiểm tra các gói tin có các tham số như trên và Seq theo qui luật, để ghép nội dung gói tiếp theo vào phiên. Cụ thể trong ví dụ này, gói tiếp theo như sau, tham số Ack là của gói tin trước nó, tham số Seq bằng tổng của Seq của gói tin trước và kích thước gói tin trước nó (1+1460=1461): Hình 4.15. Tham số Seq và Ack gói tin kế tiếp Thực hiện tương tự đối với các gói tin tiếp theo cho tới khi nhận đủ gói tin cần thiết: tổng số Len bằng kích thước phiên giao dịch (46071 bytes) hoặc khi gói tin đến tại cổng này và ACK đã bị thay đổi. Hình dưới đây mô tả thứ tự các gói tin của phiên giao dịch. Hình 4.16. Tổng hợp các gói tin đơn lẻ thành phiên giao dịch Sau khi đã tổng hợp được hoàn chỉnh một phiên giao dịch Text, bước tiếp theo sẽ là phân tích nội dung phiên giao dịch đó, cụ thể là phân tích nội dung một text file. 51 4.3.4. Thành phần lọc cụ thể, lọc loại trừ Lọc cụ thể, lọc loại trừ: IP Đối soát trực tiếp các thông tin trích rút được từ thành phần phân tích nội dung với kho dữ liệu lọc IP. Cung cấp kết quả kiểm tra cho module Bộ quyết định để thực hiện lọc cụ thể, lọc loại trừ đối với gói tin truy cập. Như ví dụ tại hình 4.10, danh sách lọc cụ thể, lọc loại trừ IP được đối soát với địa chỉ IP trích rút ra từ tiêu đề tầng IP. Lọc cụ thể, lọc loại trừ: URL Quy trình thực hiện tương tự như đối với lọc IP, tuy nhiên thông tin để đối soát với các kho dữ liệu tương ứng không thuộc vị trí nhất định trong tiêu đề của các gói tin IP và TCP mà là một phần dữ liệu trong gói tin HTTP. Thành phần phân tích nội dung gói tin (3.2) thực hiện phân tích nội dung cung cấp thông tin URL để thành phần lọc cụ thể lọc loại trừ URL thực hiện đối soát. Áp dụng thực hiện với một danh sách lọc URL (hiện đang sử dụng cho quản lý đại lý Internet công cộng của Công ty VDC) như sau: 'anhuynh.freehomepage.com', 'datviet.com', 'bangboat.com', 'dddcvn.org', 'bdqvn.org', 'diendanpaltalk.com', 'butvang.org', 'diendangiaodan.com', 'canhen.de', 'dungday.tripod.com', 'canhsatquocgia.com', 'ebonyjoy.com', 'canhtan.choao.com', 'emviet.com', 'caodai.net', 'groups.yahoo.com/group/cpcmvntd-bc', 'conong.com', 'groups.yahoo.com/group/chinhluan', 'congly.com', 'groups.yahoo.com/group/dangcongsanvietnam', 'crfvn.org', 'groups.yahoo.com/group/diendanchinhtri', 'ctnb.org', 'groups.yahoo.com/group/diendandautranh', 'chantroi.net', 'groups.yahoo.com/group/diendantintuc', 'ChaocoVNCH.8m.com', 'groups.yahoo.com/group/freevietnam', 'chinhnghia.org', 'groups.yahoo.com/group/hanoivietnam', 'chuyenluan.com', 'groups.yahoo.com/group/hoinghi', 'daichung.com', 'groups.yahoo.com/group/nghiluan', 'daihoccuunuoc.com', 'groups.yahoo.com/group/nhanquyenchovietnam', 'daiviet.org', 'groups.yahoo.com/group/tiengchuong1', 'danchimviet.com', 'groups.yahoo.com/group/tinhlam', 'danchu.net', 'groups.yahoo.com/group/tinhmuonmau', 'danchuqueme.free.fr', 'groups.yahoo.com/group/tinhthuong36', 'danuoc.org', 'groups.yahoo.com/group/toiacdangcongsanvietnam', 'danguyen.org', 'groups.yahoo.com/group/vietnamdiendan', Hình 4.17. Trích đoạn danh sách lọc đang được áp dụng cho mạng VNN 52 Tường lửa lọc nội dung sẽ kiểm tra gói tin đầu tiên đi/đến máy tính trong một phiên truy cập (hoặc kiểm tra tất cả các gói tin đi/đến, tùy thuộc lựa chọn người sử dụng) trích rút các thông tin của trường Referer và Content-Type: Hình 4.18. Gói tin request(Get) Đối với ví dụ trên, trường Referer trong gói tin cho biết có tiến trình truy cập đến địa chỉ Nếu địa chỉ này nằm trong danh sách ‘đen’ ở trên, tường lửa lọc nội dung sẽ tác động vào trình duyệt đang truy cập trang web đó. 4.3.5. Thành phần lọc nội dung Lọc cổng truy cập Đối soát trực tiếp các thông tin trích rút được từ thành phần phân tích nội dung với kho dữ liệu lọc cổng. Cung cấp kết quả kiểm tra cho module Bộ quyết định để thực hiện lọc đối với gói tin truy cập. Để nâng cao năng lực hoạt động cho tường lửa lọc nội dung, việc kiểm soát tốt danh sách cổng sử dụng cho các ứng dụng của window hay của một số hãng phần mềm lớn đã đăng ký sẽ hạn chế rất nhiều việc kiểm soát những gói tin không cần thiết. Thông thường truy cập web có cổng nguồn là 80, do đó thực hiện lọc nội dung với các thành phần sẽ được thực thi khi gói tin đến có cổng nguồn là 80. Lọc kiểu dữ liệu Thành phần phân tích nội dung gói tin phân tích tiêu đề gói tin HTTP, trích rút thông tin kiểu dữ liệu (content-type) cung cấp thông tin của gói tin đến để thành phần lọc nội dung kiểu dữ liệu thực hiện kiểm soát. Thông qua thành phần này, những kiểu dữ liệu không được phép sẽ được lọc 53 trước khi tới được trình duyệt người sử dụng. Kiểm soát thông tin về cổng và kiểu dữ liệu tuy được lấy từ trực tiếp tại mỗi gói tin riêng biệt (header lớp TCP, HTTP), tuy nhiên đặc thù của thông tin cung cấp khả năng lọc nội dung truy cập người sử dụng nên hai kiểu lọc này được coi là tính năng của thành phần lọc nội dung. Các chức năng lọc còn lại: lọc từ khóa, lọc từ khóa có trọng số, lọc cụm từ, lọc biểu thức. Các chức năng còn lại của module lọc nội dung có điểm khác biệt với module lọc cụ thể, lọc loại trừ: nội dung không được trích rút từ những gói tin tại vị trí nhất định mà được tổng hợp từ các gói tin thuộc cùng phiên giao dịch. Kho dữ liệu lọc từ khóa, từ khóa có trọng số và cụm từ: là kho dữ liệu bao gồm các từ khóa (cụm từ) cần lọc kèm theo trọng số (số lần xuất hiện trong nội dung truy cập), lọc từ khóa là trường hợp riêng của lọc từ khóa có trọng số với trọng số bằng một. Kho dữ liệu lọc biểu thức: là kho dữ liệu bao gồm các từ khóa (cụm từ) có tính điểm trong biểu thức đặt ra với ngưỡng cho trước. Các kho dữ liệu lọc nội dung được xây dựng dựa trên kết quả phân tích thử nghiệm lượng lớn trang web trên Internet, kết quả của những bài toán lớn như: khai phá dữ liệu web, trích chọn thông tin, phân lớp, phân cụm,… Kho dữ liệu lọc như sau: STT Từ khóa Trọng số Điểm 1 xxx 2 30 2 sex 3 20 3 adult 1 4 education -1 -30 Quy trình lọc nội dung được thực hiện như sau: (gói tin trong quy trình được cung cấp bởi thành phần phân tích gói tin, đã thực hiện loại bỏ phần tiêu đề IP, TCP)  Bước 1: o Gói tin đầu của phiên giao dịch: lấy dữ liệu trong cặp thẻ meta và cặp thẻ body, chuyển sang bước 2. o Những gói tin tiếp theo: được xác định toàn bộ phần dữ liệu thuộc thẻ body, 54 chuyển sang bước 4.  Bước 2: kiểm tra dữ liệu trong thẻ meta (nếu có), như ví dụ tại hình 29 thực hiện trích rút thông tin tại trường “content” với trường name là “keywords”. Chuyển thông tin sang bước 3 với cờ báo tất cả từ khóa (cụm từ) có trọng số là một.  Bước 3: đối soát từ khóa (cụm từ) trong thẻ meta với kho dữ liệu lọc, chuyển kết quả sang bước 8 khi có một từ khóa được tìm thấy.  Bước 4: loại bỏ các cặp thẻ html trong phần dữ liệu của thẻ body. Bắt đầu từ byte đầu tiên, từng byte một cho đến byte cuối cùng cần kiểm tra. Lần lượt lấy ra số byte trong khoảng minLength(keyword) và maxLength(keyword) – độ dài nhỏ nhất và lớn nhất của từ khóa hay cụm từ lọc có trong kho dữ liệu. Với mỗi từ khóa (cụm từ) tìm được chuyển sang bước 5, nếu tới byte cuối cùng cần kiểm tra không tìm thấy từ khóa nào nữa thì sẽ kết thúc.  Bước 5 (lọc từ khóa, lọc từ khóa có trọng số và lọc cụm từ): kết hợp kết quả bước 4 và số liệu đã kiểm tra của các gói tin trước trong cùng phiên giao dịch; nếu trong tổng số các gói tin nhận được của phiên giao dịch đến thời điểm kiểm tra có số từ “xxx” >=2 hoặc “sex” >= 3 thì chuyển sang bước 8.  Bước 6 (lọc biểu thức): đối soát với ngưỡng 100; với số từ “xxx” xuất hiện là α và “sex” là β nếu α*30 + β*20 >= 100 thì chuyển sang bước 8.  Bước 7: cập nhật thông tin Kho dữ liệu thread, quay trở lại bước 4.  Bước 8: thành phần Lọc nội dung cung cấp thông tin cần lọc cho thành phần Bộ quyết định: o Cập nhật thông tin kho dữ liệu thread. o Quyết định thực hiện lọc đối với truy cập. o Kết thúc phiên truy cập. Trong một số trường hợp, để giảm thiểu dung lượng trên đường truyền các nội dung truy cập text được nén dưới dạng gzip nên để thực hiện quy trình trên cần xử lý giải nén trước. 4.3.6. Thành phần quản lý ứng dụng Như đã phân tích ở trên, các kernel mode hook tác động lên ứng dụng không đạt hiệu quả như user mode hook nên tường lửa lọc nội dung cần có một thành 55 phần thực hiện việc quản lý các ứng dụng. Tại mức user mode, window quản lý các ứng dụng thông qua định danh PID (process id). Để xác định gói tin truy cập thuộc ứng dụng nào, window sử dụng một trình quản lý ánh xạ Port và PID tương ứng. Thông qua trình quản lý tiến trình này của window, tường lửa lọc nội dung thực hiện user mode hook và kiểm soát truy cập của các ứng dụng:  Kết thúc tiến trình truy cập.  Gửi thông báo đến tiến trình truy cập.  Thay đổi nội dung truy cập. Hình 4.19. Ánh xạ tên tiến trình và cổng tương ứng Hình 4.20. Ánh xạ chi tiết PID (Process number) và số cổng 56 4.3.7. Thành phần ghi log truy cập Do tường lửa lọc nội dung kiểm soát toàn bộ các gói tin vào/ra của người sử dụng và đáp ứng thông tư 02/2005/TTLT-BCVT-VHTT-CA-KHĐT, các nội dung truy cập được ghi lại. Các log file có thể được ghi ra file một cách đầy đủ như sau, gồm các gói tin gửi đi và nhận lại: Các gói tin gửi. Các gói tin nhận Hình 4.21. Tổng hợp ghi log 4.3.8. Thành phần quản lý luật truy cập Các kho dữ liệu lọc được cập nhật bằng hai cách:  Người sử dụng chủ động điều chỉnh.  Cập nhật từ máy chủ tập trung. 57 Hình 4.22. Cập nhật luật truy cập từ server Trong quá trình sử dụng luật truy cập của tường lửa lọc nội dung được sửa đổi thay thế bởi người sử dụng và hệ thống cập nhật tự động. Tùy thuộc từng trường hợp, các sửa đổi của người sử dụng về hệ thống luật lọc sẽ có thể bị thay thế bởi cập nhật từ máy chủ. 4.4. Chương trình thử nghiệm 4.4.1. Kết quả chương trình thử nghiệm Dựa vào giải thuật lọc nội dung truy cập Internet tại máy tính cá nhân trên đây, luận văn đã thực hiện xây dựng chương trình thử nghiệm và đạt được một số kết quả:  Đã có phần mềm lọc nội dung truy cập Internet tại máy tính cá nhân với bộ luật lọc ban đầu được xây dựng dựa trên yêu cầu cơ quan quản lý (Bộ Công an) và kết hợp luật lọc có tại [ 15 ].  Trong điều kiện thử nghiệm: sử dụng công cụ tự động truy cập 1000 địa chỉ website trong đó chứa danh sách địa chỉ cấm của Bộ Công an, chương trình thử nghiệm đạt được một số kết quả: o Đối với danh sách lọc Bộ Công an: hiệu suất lọc đạt 100%, chương trình đã hoàn toàn lọc được các truy cập tới địa chỉ cấm có trong danh sách. o Đối với địa chỉ truy cập ngẫu nhiên (một số địa chỉ là của trang tìm kiếm với 58 từ khóa trong danh sách cấm): hiệu suất lọc đạt 100%, đối chiếu danh sách địa chỉ lọc (log ghi lại của chương trình) với danh sách những trang sẽ bị lọc đưa vào ban đầu, chương trình lọc nội dung của luận văn đã thực hiện lọc hoàn toàn. o Đối với lọc nội dung theo biểu thức tính điểm: áp dụng thử nghiệm đối với một số trang web về giáo dục giới tính với các biểu thức tính điểm sử dụng theo [ 15 ], kết quả cho thấy cần nghiên cứu điều chỉnh biểu thức tính điểm cho phù hợp nếu không sẽ dẫn đến tỷ lệ lọc nhầm tương đối cao. 4.4.2. So sánh với chương trình cùng loại Hiện nay, Việt Nam có một số phần mềm lọc nội dung truy cập Internet cho người dùng cá nhân được nhiều người biết đến như: VwebFilter (VWF), DWK.., Trong đó VWF là sản phẩm phần mềm của Công ty Điện toán và Truyền số liệu VDC có lượng người sử dụng khá lớn, sau 6 tháng kể từ khi phần mềm được cung cấp ra ngoài xã hội đã có khoảng 1 triệu lượt người sử dụng và trên 80% phản hồi nhận xét đánh giá sản phẩm tốt. Do đó, phần mềm VWF có thể được coi như là một thước đo đối với các phần mềm lọc nội dung khác về sự đáp ứng đối của phần mềm với người sử dụng. Do phần mềm của luận văn (Web Filter) chưa cung cấp ra ngoài xã hội nên việc so sánh các đặc trưng của phần mềm lọc nội dung với phần mềm VWF được thực hiện trong các điều kiện thí nghiệm: (mức -1: không có, mức 0: trung bình, mức 1: tốt) Đặc điểm so sánh WF VWF Ghi chú Đánh giá chung Chức năng 1 1 Tính dễ sử dụng 1 1 Tính dễ cài đặt 1 1 Đánh giá của người dùng -1 1 Phần mềm của luận văn chưa cung cấp cho người sử dụng nên không có đánh giá Thuật toán lọc Phân tích đối tượng -1 -1 Lọc cụ thể lọc loại trừ 1 1 Lọc nội dung 1 0 Điểm khác biệt cơ bản: VWF lọc nội dung khi có đủ các gói thuộc phiên giao dịch, phần 59 mềm của luận văn lọc trên từng gói tin một Khả năng lọc Lọc IP 1 1 Lọc URL 1 1 Lọc từ khóa 1 0 Lọc cụm từ 1 0 Lọc biểu thức 1 0 Lọc nội dung mail 1 0 VWF chặn nội dung truy cập khi có đủ gói tin của phiên giao dịch, phần mềm của luận văn thực hiện chặn ngay khi một phần nội dung nhận được đã nằm trong phạm vi lọc. Lọc ảnh -1 -1 Sửa danh sách lọc 1 -1 Lọc nội dung chat -1 -1 Lọc lớp mạng 1 -1 Lọc FTP 1 -1 Lọc cổng chat 1 -1 VWF chưa thực hiện các tính năng này Tính năng khác Mật khẩu quản lý 1 -1 Cập nhật luật lọc tự động 1 1 Hỗ trợ trình duyệt Internet Explorer 1 1 Firefox 1 1 Netscape 1 1 Opera 1 1 Khác 1 1 Hệ điều hành Windows 2000 1 1 Windows 2003 1 1 Windows XP 1 1 Windows Vista -1 -1 Linux -1 -1 60 KẾT LUẬN Kết quả đạt được của luận văn: Thông qua việc khảo sát, phân tích về tình hình lọc nội dung truy cập Internet trên thế giới và tại Việt Nam, luận văn đã hoàn thành một số kết quả chính sau đây:  Thống kê số liệu về lĩnh vực lọc nội dung truy cập Internet trên thế giới và tại Việt Nam (mục 1.1).  Phân tích thực trạng lọc nội dung truy cập Internet hiện nay (mục 1.2). Theo kết quả phân tích về thực trạng lọc nội dung truy cập Internet cho thấy yêu cầu đặt ra đối với giải pháp lọc nội dung truy cập là cần thiết, luận văn đã thực hiện:  Phân tích các nội dung cơ bản, kỹ thuật trong việc thực hiện lọc nội dung truy cập Internet (chương 2).  Trình bày các giải pháp lọc nội dung tại cổng Internet quốc gia, cổng Internet của mạng LAN và trực tiếp trên máy tính cá nhân (chương 3). Từ thông tin về các cơ sở để thực hiện lọc nội dung truy cập đã trình bày trong chương hai và các giải pháp lọc nội dung trong chương ba, luận văn thực hiện phân tích, đánh giá và đề xuất giải pháp lọc nội dung truy cập Internet trực tiếp trên máy tính cá nhân và xây dựng phần mềm thử nghiệm theo giải pháp đề ra. Trong các trường hợp thử nghiệm, chương trình đã hoạt động đúng với chức năng đề ra. Phương hướng nghiên cứu tiếp theo Lĩnh vực nghiên cứu lọc nội dung truy cập Internet hiện đang là một lĩnh vực thời sự hiện nay. Các phương pháp lọc hiện đang được nghiên cứu phát triển nhằm lọc nội dung truy cập hiệu quả. Vấn đề nghiên cứu, xây dựng một phần mềm lọc nội dung đạt hiệu quả cao hơn nữa là vấn đề nghiên cứu tiếp theo của luận văn này. 61 TÀI LIỆU THAM KHẢO Tiếng Việt 1. Cục Công nghệ Tin học nghiệp vụ Bộ Công An (03/2008), “Nghiên cứu, phát triển hệ thống lọc nội dung hỗ trợ quản lý và đảm bảo an toàn – an ninh thông tin trên mạng Internet”, tài liệu kỹ thuật. 2. Trường Đại học Công nghệ - ĐHQGHN (2008), “Nghiên cứu, phân tích và đánh giá các giải thuật lọc hình ảnh trên Internet”, tài liệu kỹ thuật. 3. Công ty Điện toán và Truyền số liệu (12/2006), “Giải pháp ngăn chặn truy cập nội dung Internet độc hại”, tài liệu kỹ thuật. Tiếng Anh 4. Paul Greenfield, Peter Rickwood, Huu Cuong Tran (2001). Effectiveness of Internet Filtering Software Products. NetAlert and the Australian Broadcasting Authority. 5. Sara Carro Martínez (2004). POESIA: Public Open-source Environment for a Safer Internet Access (Evaluation of POESIA Beta Release) In Workshop Present and Future of Open-source Content-based Web Filtering, Pisa, Italia. 6. Yi Zhang (2005). Bayesian Graphical Models for Adaptive Filtering. PhD. Thesis, School of Computer Science, Carnegie Mellon University. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. _hooks.pdf

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

  • pdfLUẬN VĂN-NGHIÊN CỨU GIẢI PHÁP LỌC NỘI DUNG INTERNET TẠI MÁY TÍNH CÁ NHÂN VÀ XÂY DỰNG PHẦN MỀM.pdf