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 ...
71 trang |
Chia sẻ: haohao | Lượt xem: 1328 | Lượt tải: 1
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:
- 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.pdf