Lĩnh vực nghiên cứu chính của bảo mật thông tin rất rộng gồm các vấn đề về pháp lý như hệ thống chính sách, các quy định, yếu tố con người; các vấn đề thuộc tổ chức như kiểm toán xử lý d
Trang 1ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
TÔ QUANG HIỆP
NGHIÊN CỨU VẤN ĐỀ BẢO MẬT THÔNG TIN
VÀ ĐỀ XUẤT GIẢI PHÁP BẢO MẬT CHO HỆ THỐNG THÔNG TIN TRƯỜNG CAO ĐẲNG KINH TẾ - KỸ THUẬT VĨNH PHÚC
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
THÁI NGUYÊN - 2014
Trang 2ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
TÔ QUANG HIỆP
NGHIÊN CỨU VẤN ĐỀ BẢO MẬT THÔNG TIN
VÀ ĐỀ XUẤT GIẢI PHÁP BẢO MẬT CHO HỆ THỐNG THÔNG TIN TRƯỜNG CAO ĐẲNG KINH TẾ - KỸ THUẬT VĨNH PHÚC
Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số: 60 48 01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Người hướng dẫn khoa học: TS PHÙNG VĂN ỔN
THÁI NGUYÊN - 2014
Trang 3LỜI CÁM ƠN
Em xin chân thành cảm ơn sự chỉ bảo tận tình của TS Phùng Văn Ổn,
người đã tận tình hướng dẫn, giúp đỡ em trong suốt thời gian thực hiện luận văn
Em xin chân thành cảm ơn PGS TSKH Nguyễn Xuân Huy – người đã tận tình giảng dạy hướng dẫn, hướng dẫn học phần “An toàn và bảo mật thông tin”, “phương pháp nghiên cứu khoa học” là nguồn kiến thức chính cho luận văn này
Em xin chân thành cảm ơn thầy, cô Viện Công nghệ thông tin cùng quý thầy, cô Trường Đại học Công nghệ thông tin và truyền thông – Đại học Thái Nguyên đã giảng dạy, giúp đỡ để chúng em có được những kiến thức quý báu trong những năm học qua
Tôi xin chân thành cảm ơn các bạn đồng nghiệp Khoa Công nghệ thông tin – Trường Cao đẳng Kinh tế - Kỹ thuật Vĩnh Phúc đã cung cấp số liệu hiện trạng hệ thống thông tin nhà trường và cùng tôi tìm hiểu hiện trạng bảo mật hệ thống thông tin của nhà trường, đưa ra giải pháp khắc phục các nguy cơ bảo mật
Con cảm ơn Cha, Mẹ và gia đình, những người đã dạy dỗ, khuyến khích, động viên con trong những lúc khó khăn, tạo mọi điều kiện cho chúng con nghiên cứu học tập
Mặc dù đã cố gắng hết sức cùng với sự tận tâm của thầy giáo hướng dẫn song do trình độ còn hạn chế, nội dung đề tài rộng, mới nên Luận văn khó tránh khỏi những thiếu sót và hạn chế Do vậy em rất mong nhận được sự thông cảm và góp ý kiến của thầy cô và các bạn
Thái Nguyên, tháng 01/2014
HỌC VIÊN
Tô Quang Hiệp
Trang 4LỜI CAM ĐOAN
Tôi xin cam đoan luận văn “Nghiên cứu vấn đề bảo mật thông tin và
đề xuất giải pháp bảo mật cho hệ thống thông tin Trường Cao đẳng Kinh tế
- Kỹ thuật Vĩnh Phúc” này là kết quả nghiên cứu của riêng tôi Các số liệu sử
dụng trong luận văn là trung thực Các kết quả nghiên cứu đƣợc trình bày trong luận văn chƣa từng đƣợc công bố tại bất kỳ công trình nào khác
Thái Nguyên, tháng 01/2014
HỌC VIÊN
Tô Quang Hiệp
Trang 5MỤC LỤC
Trang
LỜI CÁM ƠN i
LỜI CAM ĐOAN ii
MỤC LỤC iii
DANH MỤC CÁC KÝ HIỆU, CHỮ CÁI VIẾT TẮT v
DANH MỤC CÁC BẢNG vi
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ vii
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN VỀ BẢO MẬT THÔNG TIN 3
1.1 Các định nghĩa về bảo mật thông tin 3
1.2 Những hiểm hoạ ảnh hưởng đến bảo mật thông tin 4
1.2.1 Động cơ ảnh hưởng đến bảo mật 4
1.2.2 Các hiểm họa và sự rò rỉ thông tin 4
1.2.3 Các hình thức tấn công bảo mật hệ thống thông tin 6
CHƯƠNG 2 CÁC BIỆN PHÁP BẢO MẬT 14
2.1 Các mức bảo mật thông tin 14
2.2 Firewall và các cơ chế bảo mật của Firewall 15
2.2.1 Giới thiệu về Firewall 15
2.2.2 Các công nghệ FireWall 18
2.2.2.1 FireWall kiểu bộ lọc gói: 18
2.2.2.2 FireWall kiểu cổng ứng dụng hay còn gọi là máy chủ 19
2.2.2.3 FireWall kiểu kiểm duyệt trạng thái 20
2.2.3 Những đe dọa FireWall không thể chống lại 20
2.3 Các kỹ thuật mã hoá 24
2.3.1 Tổng quan về mã hóa: 24
2.3.2 Chuẩn mật mã nâng cao AES 30
2.3.2.1 Giới thiệu về mã hóa AES 30
Trang 62.3.2.2 Cấu trúc AES 32
34
2.3.2.4 Đánh giá thuật toán AES 38
2.3.3 Hệ mật mã khóa công khai RSA 39
2.3.3.1 Bài toán phân tích số nguyên 39
2.3.3.2 Định nghĩa các tập làm việc của hệ RSA 40
2.3.3.3 Quá trình tạo khoá, mã hoá và giải mã 40
2.3.3.4 Tính đúng của quá trình giải mã 42
2.3.3.5 Đánh giá hệ mật mã khóa công khai RSA 44
2.3.3.6 Một số phương pháp tấn công hệ mã RSA 45
2.3.3.7 Độ an toàn của hệ mã RSA 47
CHƯƠNG 3 BẢO MẬT HỆ THỐNG THÔNG TIN TRONG TRƯỜNG CAO ĐẲNG KINH TẾ - KỸ THUẬT VĨNH PHÚC 49
3.1 Hệ thống thông tin trường cao đẳng kinh tế - kỹ thuật Vĩnh Phúc 49
3.2 Đề xuất giải pháp bảo mật cho hệ thống 52
3.2.1 Biện pháp bảo mật các files trên máy tính 52
3.2.2 Thiết lập các chính sách bảo mật trên server 55
3.2.3 Sử dụng Firewall 57
3.2.4 Bảo mật cơ sở dữ liệu 61
3.2.5 Thực hiện gửi thông tin bảo mật trên mạng 66
3.2.6 Cơ chế phân quyền trong phần mềm đào tạo 67
3.2.7 Xác minh hai bước 70
3.2.8 Sử dụng công nghệ trắc sinh học 70
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 72
TÀI LIỆU THAM KHẢO 73
PHỤ LỤC LUẬN VĂN 1
MÃ NGUỒN 2 LỚP MÃ HÓA AES VÀ RSA 1
Xây dựng lớp AES 1
Xây dựng lớp RSA 21
Trang 7DANH MỤC CÁC KÝ HIỆU, CHỮ CÁI VIẾT TẮT
ADSL Asymmetric Digital Subscriber Line
AES Advanced Encryption Standard
BCB Cipher Block Chaining
BSD Berkeley Software Distribution
CFB Cipher Feedback Mode
CPU Central Processing Unit
DES Data Encryption Standard
DOS Disk Operating System
ECB Electronic code book
FEAL Fast Encryption Algorithm
FTP File Transfer Protocol
GNFS General Number Field Sieve ()
HAS Human Auditory System
ICMP Internetwork Control Message Protocol
IDEA International Data Encryption Algorithm)
IP Internet Protocol
ISA Internet Security Accelerator
LAN Local Area Network
MIPS Million instructions per second
NIST National Institute of Standards and Technology
NNTP Network News Transfer Protocol
NSA National Security Agency
NTFS New Technology File System
OFB Output Feedback Mode
PKCS Public Key Cryptography Standards
RSA Revised Statutes Annotated
SMTP Simple Mail Transfer Protocol
TCP/UDP Transmission control protocol/ User Datagram Protocol
Trang 8DANH MỤC CÁC BẢNG
Bảng: 1 Chính sách lọc gói 18 Bảng: 2 Các hàm chính của AES 33 Bảng: 3 Tóm tắt các bước tạo khoá, mã hoá, giải mã của Hệ RSA 41 Bảng: 4 Thống kê thiết bị CN thông tin trường CĐ Kinh tế - Kỹ thuật VP 50
Trang 9DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1: Các mức bảo mật thông tin 14
Hình 2: Sử dụng Firewall bảo vệ hệ thống mạng với môi trường ngoài 16
Hình 3: Tấn công cướp kênh truyền 22
Hình 4: Tấn công thu trộm thông tin trên kênh truyền 24
Hình 5: Hệ mã hóa đối xứng 26
Hình 6: Hệ Mã hóa công khai 28
Hình 7: Cấu trúc khóa AES 32
Hình 8: Sơ đồ thuật toán AES 34
Hình 9: Sơ đồ hệ thống mạng Trường CĐ Kinh tế - Kỹ thuật Vĩnh Phúc 49
Hình 10: Giao diện chương trình mô phỏng mã hóa 53
Hình 11: Chức năng chọn kiểu và các tham số cho mã hóa 54
Hình 12: Cửa sổ chứa Bản gốc - Bản mã - Bản giải mã 55
Hình 13: Thiết lập chính sách bảo mật 56
Hình 14:Mô mạng có tường lửa bảo vệ 58
Hình 15:Mô hình xác thực bằng Cisco Secure 64
Hình 16: Mô hình sử dụng tầng kiểm soát Proxy 64
Hình 17: Mô hình cập nhật và khai thác dữ liệu giữa máy trạm và máy chủ 65 Hình 18: Mô hình mã hóa dữ liệu trên đường truyền 66
Hình 19: Giao diện phần mềm quản lý đào tạo 67
Hình 20: Giao diện phần Quản trị hệ thống 68
Hình 21: Chức năng quản lý người dùng 69
Trang 10MỞ ĐẦU
V phát triển nhanh công nghệ thông tin, hiện nay đa số dữ
và lưu trữ trong máy tính đã tạo nên sự thuận tiện cho con người
Sự phát triển của mạng máy tính đã giúp con người khai thác thông tin một cách dễ dàng nhưng bên cạnh đó cũng này sinh vấn đề rất quan trọng về việc bảo về các thông tin riêng của cá nhân hay của tập thể Thông tin riêng (cá nhân) có thể là mật khẩu đăng nhập vào hệ thống, chiến lược kinh doanh, các phát minh sáng chế chưa được công bố, kế hoạch quân sự … thông tin này rất quan trọng, nếu bị lộ có thể sẽ ảnh hưởng lớn đến cá nhân, tổ chức, hệ thống về mọi mặt như kinh tế, chính trị, thời gian, con người …
Khi có được thông tin đăng nhập hệ thống thông tin thì có thể sẽ có nhiều quyền với hệ thống đó Khi đó các thông tin trên hệ thống có thể bị sửa đổi, chuyển cho người khác, thậm chí còn có thể bị phá cả hệ thống Như vậy
đi liền với phát triển hệ thống thông tin thì bảo vệ hệ thống thông tin cũng là vấn đề quan trọng Để một hệ thống thông tin hoạt động chính xác, tin cậy, an toàn đáp ứng được nhu cầu của cá nhân, tập thể thì cần thiết phải áp dụng biện pháp, chính sách bảo mật Bảo mật thông tin là các phương thức nhằm bảo vệ tính bí mật của thông tin Phương pháp chủ yếu là biến đổi thông tin để người khác không thể đọc, không thể hiểu được Chỉ người có thẩm quyền mới có thể biến đổi ngược lại để đọc được nội dung của thông tin đó
Từ xưa con người đã có nhiều cách biến đổi thông tin nhằm đảm bảo tính
bí mật khi gửi đi như thay thế bằng các biểu tượng, ký hiệu, viết ngược, viết vào gỗ sau đó phủ sáp lên, viết vào dây quấn quanh gậy, dùng hóa chất để viết khi hơ nóng sẽ hiện chữ Nếu một người có được thông tin biến đổi và biết được phương pháp biến đổi thông tin thì dễ dàng biết cách để đọc được thông tin Vậy để giữ bí mật thông tin cần phải giữ bí mật cả phương pháp biến đổi thông tin
Trang 11Ngày nay hầu hết thông tin đã được số hóa và truyền trên mạng mỗi khi cần trao đổi với người khác Do đó đã ra đời nhiều phương pháp biến đổi thông tin nhằm đảm bảo các thông tin này không bị lộ trên đường truyền Việc nghiên cứu xây dựng hệ thống đã khó thì việc bảo vệ nó lại càng khó hơn Hiện nay nhiều quốc gia trên thế giới đã và đang đầu tư mạnh cho việc nghiên cứu và xây dựng hạ tầng cơ sở cho việc đảm bảo an toàn bảo mật thông tin Nhiều giao thức bảo mật được thiết kế trước đây an toàn thì nay đã
lộ ra những lỗ hổng Vì vậy nghiên cứu bảo mật thông tin luôn luôn đi cùng với sự phát triển của công nghệ thông tin
Vì lý do bảo mật thông tin quan trọng như vậy nên tôi chọn đề tài về
“Nghiên cứu vấn đề bảo mật thông tin” trong luận văn tốt nghiệp, qua đó đề
xuất giải pháp bảo mật hệ thống thông tin trường cao đẳng kinh tế - kỹ thuật Vĩnh Phúc nơi tôi đang công tác
Để hoàn thành được luận văn tôi chọn phương pháp nghiên cứu tài liệu
về vấn đề bảo mật thông tin, xác thực thông tin, thuật toán mã hóa hiện đại đang được áp dụng Kết hợp với khảo sát thực tiễn, qua đó phân tích, đánh giá rồi đề xuất triển khai giải pháp bảo mật nhằm bảo đảm cho hệ thống thông tin hoạt động chính xác, tin cậy, ổn định Hạn chế tối đa sự cố lộ thông tin
Luận văn bao gồm ba chương:
Chương 1 Tổng quan về bảo mật thông tin
Chương 2 Các biện pháp bảo mật
Chương 3 Bảo mật hệ thống thông tin trong trường Cao đẳng kinh tế -
kỹ thuật Vĩnh Phúc
Mặc dù đã cố gắng hết sức, song do trình độ còn hạn chế, nội dung đề tài rộng, công nghệ mới nên luận văn khó tránh khỏi những thiếu sót Do vậy em mong nhận được sự góp ý của quý thầy cô và các bạn để luận văn hoàn thiện hơn, đáp ứng được nhu cầu bảo mật trong thực tiễn
Trang 12CHƯƠNG 1 TỔNG QUAN VỀ BẢO MẬT THÔNG TIN
1.1 Các định nghĩa về bảo mật thông tin
Bảo mật (security) là việc giữ bí mật những thứ có giá trị
Bảo mật thông tin (information security) là những vấn đề bảo mật có liên quan đến lưu trữ và xử lý thông tin
Bảo mật máy tính (computer security) là lĩnh vực liên quan đến việc xử
lý ngăn ngừa và phát hiện những hành động bất hợp pháp/trái phép (đối với thông tin và tài nguyên hệ thống) của người dùng trong một hệ thống máy tính” Lĩnh vực nghiên cứu chính của bảo mật thông tin rất rộng gồm các vấn
đề về pháp lý như hệ thống chính sách, các quy định, yếu tố con người; các vấn đề thuộc tổ chức như kiểm toán xử lý dữ liệu điện tử, quản lý, nhận thức;
và các vấn đề kỹ thuật như kỹ thuật mật mã, bảo mật mạng, công nghệ thẻ thông minh…
Mục đích của bảo mật máy tính nhằm bảo đảm các tính chất sau của thông tin:
Tính bí mật: Thông tin không bị lộ ra ngoài, với những người không có thầm quyền thì không được biết thông tin
Tính toàn vẹn: Thông tin không bị sửa đổi trái phép bởi người không có thẩm quyền
Tính sẵn sàng: Sẵn sàng đáp ứng nhu cầu của người dùng có thẩm quyền
Trên thực tế, kỹ thuật mật mã được triển khai rộng rãi để đảm bảo tính
bí mật và toàn vẹn của thông tin được lưu trữ hay truyền nhận nhưng kỹ thuật này không bảo đảm cho tính sẵn sàng của hệ thống.[6]
Bảo mật mạng (network security) là các vấn đề về mã hóa thông tin khi truyền qua mạng và kiểm soát truy xuất thông tin trên đường truyền
Như vậy bảo mật là khái niệm bao gồm tất cả các phương pháp như các
kỹ thuật xác nhận danh tính, mật mã hoá, che giấu thông tin, xáo trộn …
Trang 13nhằm đảm bảo cho các thông tin được truyền đi, cũng như các thông tin lưu trữ được chính xác và an toàn
Bảo mật luôn đi đôi với an toàn “an toàn và bảo mật”, đây là hai yếu tố quan trọng và gắn bó mật thiết với nhau trong một hệ thống Có thể nói hệ thống mất an toàn thì không bảo mật được và ngược lại hệ thống không bảo mật được thì mất an toàn [2]
Hệ thống sẽ là an toàn khi các khiếm khuyết không thể làm cho hoạt động chủ yếu của nó ngừng hẳn và các sự cố đều xảy ra sẽ được khắc phục kịp thời mà không gây thiệt hại đến mức độ nguy hiểm cho chủ sở hữu
Mục đích của an toàn và bảo mật thông tin là tránh được người không có thẩm quyền đọc, sửa, thay đổi thông tin Nhưng đồng thời đảm bảo người có thầm quyền sẵn sàng khai thác thông tin trong phạm vi quyền hạn của họ
1.2 Những hiểm hoạ ảnh hưởng đến bảo mật thông tin
1.2.1 Động cơ ảnh hưởng đến bảo mật
Một người nếu có đủ thầm quyền về hệ thống thì họ truy cập vào hệ thống trong phạm vi, quyền hạn cho phép của họ Nhưng nếu một người khác không có thẩm quyền lại tìm cách truy cập hệ thống để thực hiện những việc không được phép đối với hệ thông có thể suất phát từ những động cơ như chỉ
để tìm hiểu, giải trí, hoặc muốn thể hiện khả năng cá nhân, để ăn cắp các bí mật thương mại, bí mật quốc gia hoặc các thông tin độc quyền, làm tê liệt mạng, phát động chiến tranh thông tin trên mạng…
1.2.2 Các hiểm họa và sự rò rỉ thông tin
Một hệ thống thông tin khi vận hành có nhiều đối tượng tham gia tác động nên nó, mối đối tượng đều có thể tiềm ẩn những nguy cơ về bảo mật làm ảnh hưởng đến hệ thống Bao gồm 02 nhóm chính sau:
Trang 14
- (hacker, cracker), thông
y ngầm bên trong
Đối tượng sử dụng ở bên trong hệ thống có nhiều quyền với hệ thống Họ
có thông tin như tên, mật khẩu Thông tin này có thể bị lộ, bị lợi dụng và tấn công Do vậy để hạn chế lỗi bảo mật giúp cho hệ thống vận hành an toàn, ổn định thì cần thiết phải có những chính sách cụ thể, có cơ chế phân quyền hệ thống cụ thể… khi xảy ra lỗi dễ dàng xác định thiệt hại, nguyên nhân, đối tượng gây lỗi Quy trách nhiệm pháp luật đối với đối tượng gây hại [3]
Ảnh hưởng đến bảo mật thông tin còn do hành vi của đối tương tham gia
hệ thông thông tin qua các hiểm họa như dưới đây:
- Hiểm họa vô tình: Khi người sử dụng tắt nguồn của một hệ thống
và khi được khởi động lại, hệ thống ở chế độ single-user (đặc quyền) - người sử dụng có thể làm mọi thứ anh ta muốn đối với hệ thống
- Hiểm họa cố ý: Có thể xảy ra đối với dữ liệu trên mạng hoặc máy tính cá nhân thông qua các tấn công tinh vi có sử dụng các kiến thức hệ thống đặc biệt
- Hiểm hoạ thụ động: Có thể bị lợi dụng bởi người khác để thực hiện hành vi vi phạm bảo mật hệ thống
- Hiểm hoạ chủ động: Là việc cố tình thực hiện hành vi vi phạm bảo mật
Trong giao dịch điện tử mối đe dọa và hậu quả tiềm ẩn đối với thông tin rất lớn Nguy cơ rủi ro đối với thông tin trong giao dịch điện tử được thể hiện hoặc tiềm ẩn trên nhiều khía cạnh khác nhau như người sử dụng, kiến trúc hệ thống công nghệ thông tin, chính sách bảo mật thông tin, các công cụ quản lý
và kiểm tra, quy trình phản ứng
Trang 15- Hiểm hoạ từ phía người sử dụng: xâm nhập bất hợp pháp, ăn cắp thông tin có giá trị của các đối tượng khác tham gia giao dịch điện tử
- Nguy cơ rủi ro tiềm ẩn trong kiến trúc hệ thống công nghệ thông tin, đó là các hệ thống không có cơ chế bảo vệ thông tin trong việc tổ chức và khai thác cơ sở dữ liệu; tiếp cận từ xa; sử dụng phần mềm ứng dụng; chương trình kiểm tra, không kiểm soát người sử dụng, thiếu phát hiện và xử lý sự cố
- Mất thông tin có thể còn tiềm ẩn ngay trong cấu trúc phần cứng của các thiết bị tin học và trong phần mềm hệ thống và ứng dụng do hãng sản xuất cài sẵn các loại mã độc theo ý đồ định trước, thường gọi là
“bom điện tử” Khi cần thiết, thông qua kênh viễn thông, người ta có thể điều thiết bị đang lưu trữ thông tin, hoặc tự động rẽ nhánh thông tin vào một địa chỉ đã định trước
1.2.3 Các hình thức tấn công bảo mật hệ thống thông tin
* Tấn công trực tiếp:
Sử dụng một máy tính để tấn công một máy tính khác với mục đích dò tìm mật mã, tên tài khoản tương ứng, … Họ có thể sử dụng một số chương trình giải mã để giải mã các file chứa password trên hệ thống máy tính của nạn nhân Do đó những mật khẩu ngắn và đơn giản thường rất dễ bị phát hiện Ngoài ra, hacker có thể tấn công trực tiếp thông qua các lỗi của chương trình hay hệ điều hành làm cho hệ thống đó tê liệt hoặc hư hỏng Trong một
số trường hợp, hacker đoạt được quyền của người quản trị hệ thống
* Kỹ thuật đánh lừa: Social Engineering
Đây là thủ thuật được nhiều hacker sử dụng cho các cuộc tấn công và thâm nhập vào hệ thống mạng và máy tính bởi tính đơn giản mà hiệu quả của
nó Thường được sử dụng để lấy cấp mật khẩu, thông tin, tấn công vào và phá hủy hệ thống
Trang 16Ví dụ: kỹ thuật đánh lừa Fake Email Login
Về nguyên tắc, mỗi khi đăng nhập vào hộp thư thì phải nhập thông tin tài khoản của mình bao gồm username và password rồi gởi thông tin đến Mail Server xử lý Lợi dụng việc này, những người tấn công đã thiết kế một trang web giống hệt như trang đăng nhập mà hay sử dụng Tuy nhiên, đó là một trang web giả và tất cả thông tin mà điền vào đều được gởi đến cho họ Kết quả, bị đánh cắp mật khẩu!
Nếu là người quản trị mạng, nên chú ý và dè chừng trước những email, những messengers, các cú điện thoại yêu cầu khai báo thông tin Những mối quan hệ cá nhân hay những cuộc tiếp xúc đều là một mối nguy hiểm tiềm ẩn
* Kỹ thuật tấn công vào vùng ẩn:
Những phần bị dấu đi trong các website thường chứa những thông tin về phiên làm việc của các client Các phiên làm việc này thường được ghi lại ở máy khách chứ không tổ chức cơ sở dữ liệu trên máy chủ Vì vậy, người tấn công có thể sử dụng chiêu chức View Source của trình duyệt để đọc phần đầu
đi này và từ đó có thể tìm ra các sơ hở của trang Web mà họ muốn tấn công
Từ đó, có thể tấn công vào hệ thống máy chủ
Ví dụ: Một website cho phép sửa các cấp thành viên Mod, Members, Banned nhưng không cho phép sửa lên cấp Admin Thử View Code của website này, có thể thấy như sau:
<form action=”” method=”post” name=”settings”>
<select class=search name=status>
Trang 17Banned sẽ mang giá trị là 3, Member mang giá trị 2, Moderator mang giá trị 1 Vậy có thể suy luận Admin có giá trị là 0 chẳng hạn Tiếp tục, lưu trang setting member đó, sau đó chuyển sang một trình text để hiệu chỉnh đoạn code đó như sau:
<form action=”” method=”post” name=”settings”>
<select class=search name=status>
Sửa code như sau:
<form action=” http://www.hcmut.edu.vn/sinhvien/xemdiem.php”method=”post” name=”settings”>
<select class=search name=status>
* Tấn công vào các lỗ hổng bảo mật:
Hiện, nay các lỗ hổng bảo mật được phát hiện càng nhiều trong các hệ điều hành, các web server hay các phần mềm khác, Và các hãng sản xuất
Trang 18luôn cập nhật các lỗ hổng và đưa ra các phiên bản mới sau khi đã vá lại các lỗ hổng của các phiên bản trước Do đó, người sử dụng phải luôn cập nhật thông tin và nâng cấp phiên bản cũ mà mình đang sử dụng nếu không các hacker sẽ lợi dụng điều này để tấn công vào hệ thống
Thông thường, các forum của các hãng nổi tiếng luôn cập nhật các lỗ hổng bảo mật và việc khai thác các lỗ hổng đó như thế nào thì tùy từng người
* Khai thác tình trạng tràn bộ đệm:
Tràn bộ đệm là một tình trạng xảy ra khi dữ liệu được gởi quá nhiều so với khả năng xử lý của hệ thống hay CPU Nếu hacker khai thác tình trạng tràn bộ đệm này thì họ có thể làm cho hệ thống bị tê liệt hoặc làm cho hệ thống mất khả năng kiểm soát
Để khai thác được việc này, hacker cần biết kiến thức về tổ chức bộ nhớ, stack, các lệnh gọi hàm Shellcode
Khi hacker khai thác lỗi tràn bộ đệm trên một hệ thống, họ có thể đoạt quyền root trên hệ thống đó Đối với nhà quản trị, tránh việc tràn bộ đệm không mấy khó khăn, họ chỉ cần tạo các chương trình an toàn ngay từ khi thiết kế
* Nghe trộm:
Các hệ thống truyền đạt thông tin qua mạng đôi khi không chắc chắn lắm
và lợi dụng điều này, hacker có thể truy cập vào data paths để nghe trộm hoặc đọc trộm luồng dữ liệu truyền qua
Hacker nghe trộm sự truyền đạt thông tin, dữ liệu sẽ chuyển đến sniffing hoặc snooping Nó sẽ thu thập những thông tin quý giá về hệ thống như một packet chứa password và username của một ai đó Các chương trình nghe trộm còn được gọi là các sniffing Các sniffing này có nhiệm vụ lắng nghe các cổng của một hệ thống mà hacker muốn nghe trộm Nó sẽ thu thập dữ liệu trên các cổng này và chuyển về cho hacker
Trang 19* Kỹ thuật giả mạo địa chỉ:
Thông thường, các mạng máy tính nối với Internet đều được bảo vệ bằng Tường lửa (firewall) Tường lửa có thể hiểu là cổng duy nhất mà người đi vào nhà hay đi ra cũng phải qua đó và sẽ bị “điểm mặt” Tường lửa hạn chế rất nhiều khả năng tấn công từ bên ngoài và gia tăng sự tin tưởng lẫn nhau trong việc sử dụng tài nguyên chia sẻ trong mạng nội bộ
Sự giả mạo địa chỉ nghĩa là người bên ngoài sẽ giả mạo địa chỉ máy tính của mình là một trong những máy tính của hệ thống cần tấn công Họ tự đặt địa chỉ IP của máy tính mình trùng với địa chỉ IP của một máy tính trong mạng bị tấn công Nếu như làm được điều này, hacker có thể lấy dữ liệu, phá hủy thông tin hay phá hoại hệ thống
* Kỹ thuật chèn mã lệnh:
Một kỹ thuật tấn công căn bản và được sử dụng cho một số kỹ thuật tấn công khác là chèn mã lệnh vào trang web từ một máy khách bất kỳ của người tấn công
Kỹ thuật chèn mã lệnh cho phép người tấn công đưa mã lệnh thực thi vào phiên làm việc trên web của một người dùng khác Khi mã lệnh này chạy, nó
sẽ cho phép người tấn công thực hiện nhiều nhiều chuyện như giám sát phiên làm việc trên trang web hoặc có thể toàn quyền điều khiển máy tính của nạn nhân Kỹ thuật tấn công này thành công hay thất bại tùy thuộc vào khả năng
và sự linh hoạt của người tấn công
* Tấn công vào hệ thống có cấu hình không an toàn:
Cấu hình không an toàn cũng là một lỗ hổng bảo mật của hệ thống Các
lỗ hổng này được tạo ra do các ứng dụng có các thiết lập không an toàn hoặc người quản trị hệ thống định cấu hình không an toàn Chẳng hạn như cấu hình máy chủ web cho phép ai cũng có quyền duyệt qua hệ thống thư mục Việc
Trang 20thiết lập như trên có thể làm lộ các thông tin nhạy cảm như mã nguồn, mật khẩu hay các thông tin của khách hàng
Nếu quản trị hệ thống cấu hình hệ thống không an toàn sẽ rất nguy hiểm
vì nếu người tấn công duyệt qua được các file pass thì họ có thể download và giải mã ra, khi đó họ có thể làm được nhiều thứ trên hệ thống
Cookies được Browser của người dùng chấp nhận lưu trên đĩa cứng của máy tính, không phải Browser nào cũng hổ trợ cookies
* Can thiệp vào tham số trên URL:
Đây là cách tấn công đưa tham số trực tiếp vào URL Việc tấn công có thể dùng các câu lệnh SQL để khai thác cơ sở dữ liệu trên các máy chủ bị lỗi Điển hình cho kỹ thuật tấn công này là tấn công bằng lỗi “SQL INJECTION” Kiểu tấn công này gọn nhẹ nhưng hiệu quả bởi người tấn công chỉ cần một công cụ tấn công duy nhất là trình duyệt web và backdoor
* Vô hiệu hóa dịch vụ:
Kiểu tấn công này thông thường làm tê liệt một số dịch vụ, được gọi là DOS (Denial of Service - Tấn công từ chối dịch vụ)
Các tấn công này lợi dụng một số lỗi trong phần mềm hay các lỗ hổng bảo mật trên hệ thống, hacker sẽ ra lệnh cho máy tính của chúng đưa những yêu cầu không đâu vào đâu đến các máy tính, thường là các server trên mạng
Trang 21Các yêu cầu này được gởi đến liên tục làm cho hệ thống nghẽn mạch và một
số dịch vụ sẽ không đáp ứng được cho khách hàng
Đôi khi, những yêu cầu có trong tấn công từ chối dịch vụ là hợp lệ Ví dụ một thông điệp có hành vi tấn công, nó hoàn toàn hợp lệ về mặt kỹ thuật Những thông điệp hợp lệ này sẽ gởi cùng một lúc Vì trong một thời điểm mà server nhận quá nhiều yêu cầu nên dẫn đến tình trạng là không tiếp nhận thêm các yêu cầu Đó là biểu hiện của từ chối dịch vụ
* Chặn bắt gói tin (Network Packet Sniffing)
Những chương trình chặn bắt gói tin có thể chặn bất kỳ một gói tin trong mạng và hiển thị nội dung gói tin một cách dễ đọc nhất Hai đầu của kết nối
có thể không biết được gói tin của mình bị xem trộm Đây là công cụ ưa thích của những người quản trị mạng dùng để kiểm tra mạng Khi mạng nội bộ được kết nối vào Internet, một kẻ khả nghi bên ngoài dùng Packet Sniffer có thể dễ dàng chặn gói tin được gửi đến một máy tính nào đó trong mạng và dễ dàng nghe trộm thông tin
* Sử dụng virus máy tính
Là một chương trình gắn vào một chương trình hợp lệ khác và có khả năng lây lan nó vào các môi trường đích mỗi khi chương trình hợp lệ được chạy Sau khi virus lây nhiễm vào hệ thống nó sẽ thực hiện phá hoại mỗi khi
nó muốn, thông thường là phá hoại theo thời gian định trước Đúng như tên gọi của nó, một trong những hành động của virus đó là lây lan bản thân nó vào tất cả các chương trình mà nó tìm thấy trong môi trường hệ thống Chúng chuyển từ máy tính này sang máy tính khác mỗi khi chương trình được sao chép bất kể qua mạng hay qua thiết bị lưu trữ vật lý
* Lợi dụng lỗi quản trị hệ thống
Yếu tố con người với những tính cách chủ quan và không hiểu rõ tầm quan trọng của việc bảo mật hệ thống nên dễ dàng để lộ các thông tin quan
Trang 22trọng cho hacker Ngày nay, trình độ của các hacker ngày càng giỏi hơn, trong khi đó các hệ thống mạng vẫn còn chậm trong việc xử lý các lỗ hổng của mình Điều này đòi hỏi người quản trị mạng phải có kiến thức tốt về bảo mật mạng để có thể giữ vững an toàn cho thông tin của hệ thống Đối với người dùng cá nhân, họ không thể biết hết các thủ thuật để tự xây dựng cho mình một Firewall, nhưng cũng nên hiểu rõ tầm quan trọng của bảo mật thông tin cho mỗi cá nhân, qua đó tự tìm hiểu để biết một số cách phòng tránh những
sự tấn công đơn giản của các hacker Vấn đề là ý thức, khi đã có ý thức để phòng tránh thì khả năng an toàn sẽ cao hơn[14]
Trang 23CHƯƠNG 2 CÁC BIỆN PHÁP BẢO MẬT 2.1 Các mức bảo mật thông tin
Các đối tượng tương tác với hệ thống thông tin có rất nhiều và sự tương tác với hệ thống cũng khác nhau phụ thuộc vào tính chất công việc của đối tượng như: người quản trị, người quản lý, người sử dụng … tại mỗi sự tương tác này đều có thể nảy sinh vấn đề về bảo mật Do vậy không thể có một giải pháp an toàn tuyệt đối cho một hệ thống thông tin Để bảo mật cho một hệ thống ta phải kết hợp nhiều mức bảo mật khác nhau để tạo thành rào chắn vững rắc đối với hoạt động xâm phạm trái phép
Việc bảo mật chủ yếu là bảo vệ các thông tin lưu trữ trên máy tính do vậy ngoài một số biệt pháp để hạn chế thông tin thất thoát (lộ, sai hỏng, sửa đổi) trên đường truyền thì chủ yêu tập chung vào các giải pháp nghiên cứu các truy cập thông tin từ bên ngoài vào trong hệ thống[1]
Quyền truy nhập (Access Right): Lớp bảo vệ này nhằm kiểm soát việc
truy nhập tài nguyên mạng và quyền hạn trên tài nguyên đó Cụ thể là việc quản lý được tiến hành ở mức truy nhập tệp Việc xác lập các quyền này được quyết định bởi người quản trị mạng (supervisor)
Đăng ký tên/mật khẩu (login/password): Mỗi người sử dụng muốn vào
sử dụng mạng đều phải đăng ký tên/mật khẩu Nếu người ngoài không biết tên, mật khẩu thì không thể truy nhập vào hệ thống Phương pháp này đơn giản, hiệu quả Nhưng nếu không cẩn thận để kẻ thâm nhập biết tên, mật khẩu
Hình 1: Các mức bảo mật thông tin
Mã hóa thông tin
Đăng
ký và mật khẩu
Thông tin
Quyền truy nhập
Trang 24thì có thể gây nguy hiểm Phương pháp này không mấy hiệu quả với những kẻ quá hiểu biết về hệ thống
Mã hoá dữ liệu (Data Encryption): Phương pháp này nhằm mục đích
biến đổi dữ liệu từ dạng nhận thức được đến dạng không nhận thức được theo một thuật toán nào đó và sẽ được biến đổi ngược lại ở trạm nhập
Lớp bảo vệ vật lý (Physical Protection): Lớp này nhằm ngăn cản các
truy cập vật lý bất hợp pháp vào hệ thống Thường dùng các biện pháp như cấm tuyệt đối không cho người không có phận sự vào phòng máy, dùng ổ khoá trên máy tính, khoá bàn phím, dùng các trạm không sử dụng ổ đĩa mềm hoặc các biện pháp dùng khoá cứng…
Tường lửa (Fire Wall): để bảo vệ an toàn và ngăn chặn từ xa một máy
tính hay cả mạng nội bộ Đây là biện pháp phổ biến để bảo vệ các mạng nội
bộ, nó ngăn chặn các thâm nhập trái phép và có thể lọc bỏ các gói tin mà không muốn gửi đi hoặc nhận vào vì những lý do nào đó [1,Tr5]
2.2 Firewall và các cơ chế bảo mật của Firewall
2.2.1 Giới thiệu về Firewall
Ngày nay Internet cho phép chúng ta truy cập tới mọi nơi trên thế giới, nhờ đó mà ta có thể biết được thông tin trên toàn cầu Nhưng cũng chính vì thế mà các hệ thống máy tính có thể bị xâm nhập vào bất kỳ lúc nào Do vậy việc bảo vệ hệ thống là một vấn đề chúng ta đáng phải quan tâm Người ta đã đưa ra kỹ thuật FireWall để giải quyết vấn đề này FireWall là một kỹ thuật được tích hợp vào hệ thống mạng để chống lại sự truy cập trái phép nhằm bảo
vệ các nguồn thông tin nội bộ cũng như hạn chế sự xâm nhập vào hệ thống thông tin khác không mong muốn Nói cách khác FireWall đóng vai trò là một trạm gác ở cổng vào của mạng FireWall là một giải pháp rất hiệu quả trong việc bảo vệ máy tính khi tham gia vào mạng Nó được coi như là tường
Trang 25lửa bảo vệ máy tính của người dùng trước sự tấn công của các hình thức tấn công trên mạng
Trong một số trường hợp, Firewall có thể được thiết lập ở trong cùng một mạng nội bộ và cô lập các miền an toàn
Ví dụ: Mô hình sử dụng Firewall để bảo vệ hệ thống mạng nội bộ
(LAN) bên trong với môi trường internet bên ngoài
Hình 2: Sử dụng Firewall bảo vệ hệ thống mạng với môi trường ngoài
FireWall là cổng chắn giữa mạng nội bộ với thế giới bên ngoài (Internet), mục đích là tạo nên một lớp vỏ bọc bao quanh mạng để bảo vệ các máy bên trong mạng, tránh các đe dọa từ bên ngoài Cơ chế làm việc của tường lửa là dựa trên việc kiểm tra các gói dữ liệu IP lưu truyền giữa máy chủ
và trạm làm việc FireWall quyết định những dịch vụ nào từ bên trong được phép truy cập từ bên ngoài, những người nào từ bên ngoài được phép truy cập
Trang 26đến các dịch vụ bên trong, và cả những dịch vụ nào bên ngoài được phép truy cập bởi những người bên trong
FireWall bao gồm: một hoặc nhiều hệ thống máy chủ kết nối với các bộ định tuyến (router) hoặc có chức năng router với bộ lọc gói tin (packet filtering); pháo đài bảo vệ (Bastionhost) để cung cấp cơ chế an toàn cho phép thâm nhập ra ngoài; các phần mềm quản lí an ninh chạy trên hệ thống máy chủ - Thông thường là các hệ quản trị xác thực (Authentication), cấp quyền (Authorization) và định khoản (Accounting); Bộ lọc gói tin (Packet Filtering) cho phép hay ngăn cấm các gói tin khi chúng chuyển từ mạng này đến mạng khác
Trong bộ lọc gói tin ta phải cài đặt một tập các quy tắc chỉ định gói tin loại nào sẽ được phép đi qua (cho qua) và loại nào sẽ bị ngăn cấm (không cho qua); bộ lọc gói tin có thể cài đặt trên một bộ định tuyến (router) hay trên một máy chủ
Mỗi gói tin chứa đựng những thông tin:
Địa chỉ nguồn IP, địa chỉ đích IP
Giao thức sử dụng TCP/UDP
Cổng nguồn của TCP/UDP, cổng đích của TCP/UDP Ngoài ra router biết được giao diện mà gói tin đến và giao diện mà router phải định hướng gói tin đi Thực tế các server cung cấp các dịch vụ Internet tại một vị trí nhất định cho phép router khóa hay mở đối với các loại kết nối bằng cách chỉ định số cổng thích hợp
Ví dụ như TCP cổng 23 cho các kết nối Telnet, trong bộ quy tắc được
chỉ định cho packet filtering
Pháo đài bảo vệ (Bastionhost): Để cho phép thâm nhập tường lửa phải
có hai lớp rào chắn Rào chắn phía ngoài ngăn các gói tin đi vào trừ các gói tin được phép đi vào pháo đài bảo vệ và các gói tin cho client ở trên pháo đài
Trang 27bảo vệ Rào chắn phía trong ngăn cản các gói tin đi ra, trừ các gói tin từ pháo đài bảo vệ
FireWall có nhiệm vu cơ bản là bảo vệ dữ liệu và tài nguyên hệ thống
2.2.2 Các công nghệ FireWall
2.2.2.1 FireWall kiểu bộ lọc gói:
Là kiểu FireWall dùng các bộ lọc gói trên cơ sở các quy tắc truy cập:
- Địa chỉ nguồn
- Địa chỉ đích
- Ứng dụng hoặc giao thức
- Số của cổng nguồn (Source Port)
- Số của cổng đích (Destination Port) Lọc gói, công nghệ Firewall nguyên thủy, thường là một chức năng được tích hợp sẵn trong các router, nó kiểm soát lưu thông dựa vào thông tin lớp mạng và lớp vận chuyển chứa trong trường mào đầu (header) của các gói
dữ liệu Các thông tin này bao gồm:
- Địa chỉ IP và số của cổng nguồn
- Địa chỉ IP và số của cổng đích
- Giao thức sử dụng (ví dụ: TCP, UDP, ICMP)
Những thông tin này được dùng làm tiêu chí của các quy tắc truy cập Các quy tắc này được tổ chức thành một vài “kiểu lọc” và mỗi kiểu điều khiển lưu thông đến FireWall qua một giao diện xác định Bảng sau đây là một ví
dụ về chính sách lọc gói
Máy tính của tôi Máy tính khác
Ngăn chặn * * Microsoft.com * Ngăn chặn mọi
thứ từ MS Cho phép My-
Getway
e-mail đến
Bảng: 1 Chính sách lọc gói
Trang 28Ưu điểm: Giá thành thấp, CPU overhead thấp
Nhược điểm: Chỉ dựa vào thông tin của lớp mạng và lớp vận chuyển;
Cấu hình “tĩnh” các cổng TCP hoặc UDP là mở cho các tin tặc (hacker) khai thác Do nhược điểm như vậy nên FireWall kiểu bộ lọc gói đã dần dần được thay thế bắng các công nghệ FireWall an toàn hơn Tuy nhiên, trên thực tế hiện vẫn còn nhiều router vẫn dùng công nghệ lọc gói Ngày nay, bất cứ mạng riêng nào thường xuyên kết nối với Internet cũng cần những cơ chế tường lửa mạnh hơn cơ chế lọc gói kiểu “tĩnh” nói trên
2.2.2.2 FireWall kiểu cổng ứng dụng hay còn gọi là máy chủ
FireWall kiểu cổng ứng dụng hay còn gọi là máy chủ, đây là một công nghệ truyền thống khác của FireWall Mọi kết nối giũa hai mạng được thực hiện qua một chương trình ứng dụng gọi là Proxy (ủy nhiệm) Các Proxy là riêng biệt theo ứng dụng hoặc giao thức Chỉ có giao thức mà được cấu hình theo các Proxy nói riêng mới được phép đi qua FireWall, mọi lưu thông khác đều bị loại trừ
Ưu điểm của FireWall kiểu cổng ứng dụng:
- Rất an toàn nếu dùng kết hợp với một FireWall lọc gói thông minh
- Các proxy được thiết kế tốt tạo ra bảo mật rất tốt
Nhược điểm của FireWall kiểu cổng ứng dụng:
- Cần nhiều sức mạnh của CPU
- Yêu cầu máy tính chủ chất lượng cao
- Hệ điều hành của máy chủ dễ bị tấn công
- Không trong suốt đối với người dùng
- Đắt tiền
Trang 292.2.2.3 FireWall kiểu kiểm duyệt trạng thái
Còn gọi là FireWall kiểu lọc gói động, đây là những FireWall an toàn nhất có thể có hiện nay Với công nghệ FireWall thế hệ thứ 3, thường được gọi là “lọc gói động”, có thể hiểu được dữ liệu trong các gói tin từ lớp mạng (các trường mào đầu) tới lớp ứng dụng; theo dõi trang thái của các phiên liên lạc
Các FireWall kiểu kiểm duyệt trạng thái mở và đóng các cổng theo kiểu động (các điểm kết nối theo ứng dụng) trên cơ sở các chính sách truy cập (FireWall kiểm tra các chính sách để xác nhận tính hợp lệ của máy tính gửi dữ liệu và cho phép lưu thông chuyển tới mạng công cộng)
Ưu điểm của FireWall kiểu kiểm duyệt trạng thái:
- Giám sát trạng thái của mọi luồng dữ liệu
- Làm cho các bộ lọc thích nghi một cách động trên cơ sở các chính sách và các quy tắc
- Dễ thích nghi với các ứng dụng Internet mới
- Trong suốt đối với người dùng
- Không cần nhiều sức mạnh của CPU
Nhược điểm của FireWall kiểm duyệt trạng thái:
- Cần có chương trình client mới
- Sự sẵn có mã nguồn đối với nhiều nền tảng khác nhau có thể gây ảnh hưởng tới chính sách bảo mật[11]
2.2.3 Những đe dọa FireWall không thể chống lại
Virus và các chương trình Trojan horse
FireWall không thể chống lại các virus hoặc các chương trình trojan horse Hiển nhiên thấy rằng các virus có thể làm mà không đếm xỉa đến việc
có sử dụng FireWall hay không Một FireWall không thể biết được (không cần thiết) bên trong gói tin có nội dung như thế nào Việc chống lại virus là do
Trang 30ý thức người sử dụng, có tuân theo những quy tắc tối thiểu cho việc chống virus hay không
Giả sử đối phương tìm cách cài vào trong hệ thống mạng được bảo vệ một phần mềm gián điệp nhằm chuyển thông tin đến một số nơi thu nhận thông tin trái phép đã xác định trước hoặc phần mềm này cho phép đối phương can thiệp vào trong hệ thống Vì lí do phần mềm gián điệp ở trong hệ thống mạng được bảo vệ và nếu đối phương ở bên ngoài cũng giả mạo một địa chỉ hợp pháp thì chắc chắn FireWall sẽ cho phép phần mềm nối ra ngoài Tấn công này rất nguy hiểm
Tấn công từ bên trong
Vai trò chính của FireWall là chặn thông tin từ bên ngoài đi tới Việc tấn công từ bên trong, việc phát hiện ra và ngăn chặn không phải là điều dễ dàng Chỉ trong trường hợp mạng được chia càng nhỏ, sự tấn công giữa các
bộ phận vì thế có thể giảm xuống Một điều hiển nhiên là những tấn công từ bên trong thường gây thiệt hại nghiêm trọng hơn rất nhiều và khó phát hiện hơn các tấn công từ bên ngoài Đây là vấn đề tin cậy nội bộ
FireWall không phản ứng với tấn công sửa đổi nội dụng dữ liệu
và đưa thêm tin xấu
FireWall không có cơ chế kiểm tra nội dung thông tin của các gói tin nên nó không thể biết được nội dung đó có gì Nếu gói tin đó có nội dung xấu thì FireWall vẫn cho đi vào mạng được bảo vệ
Tấn công phát ngược lại (replay) có thể đánh lừa được FireWall
Ví dụ như một kênh đã được sát thực và mã hóa, hacker sẽ không thể giả danh để đánh lừa và truy cập vào server Tuy nhiên chúng chỉ cần thu các gói tin hoặc thông tin trao đổi giữa client và server, sau đó sử dụng các gói tin hoặc thông tin client đã phát đi để truyền tiếp lần nữa đến server để đánh lừa server Hầu hết các thông tin mà hacker phát ngược lại đã được FireWall chấp
Trang 31nhận nên nó không phân biệt được các thông tin này và vẫn cho đi vào mạng được bảo vệ
FireWall hoàn toàn bất lực trước tấn công cướp kênh truyền (Hijacking):
Kẻ tấn công sẽ cướp các kết nối đã khởi tạo giữa client và server, thậm chí chúng có thể cướp cả kênh đã xác thực giữa client và server nếu kênh đó không mã hóa Giả sử chúng muốn đóng giả là client, đối phương sẽ bẻ kết nối từ client đến server thành kết nối từ hacker đến server, khi này máy hacker đóng giả có định danh là máy client FireWall sẽ không kiểm tra được
sự giả mạo này, còn server vẫn chấp nhận kết nối mới
Hình 3: Tấn công cướp kênh truyền
FireWall có thể bị đánh lừa bởi tấn công bởi bên thứ ba:
Đối phương không tấn công trực tiếp vào tài nguyên hay các dịch vụ của ta cung cấp, nhưng chúng mạo danh sử dụng các tài nguyên của một bên thứ 3 mà chúng ta tin tưởng để làm bàn đạp Khi này FireWall không đề phòng vì nó tin tưởng bên thứ 3 là an toàn
Mọi thông tin tấn công theo phương pháp xác thực giả mạo phía client đều được FireWall cho đi qua:
Trang 32Bằng cách nào đó hacker tìm cách thu trộm các thông tin của nạn nhân như tên người sử dụng và mật khẩu, sau đó sử dụng chúng để giả mạo kết nối đến server Ví dụ hacker thu trộm mật khẩu đã được mã hóa của client và gửi nguyên bản đến server mà không cần giải mã để đánh lừa server Trường hợp này FireWall không chống được vì các thông tin trên đều đã được FireWall chấp nhận trước đó
FireWall không chống lại được tấn công kéo theo dữ liệu khi truyền:
Đây là dạng tấn công có liên quan đến giữ liệu được truyền theo một giao thức Ví dụ như virus, bom thư kèm theo thư điện tử hoặc có thể lấy cắp
số thẻ tín dụng khi khách hàng thanh toán qua mạng Nếu như bom thư được đính kèm thư thì FireWall không thể kiểm soát nội dung mà vẫn cho bức thư này đi vào mạng được bảo vệ
FireWall không thể kiểm soát được những thông tin không đi qua nó:
Ví dụ như một người sử dụng modem quay số kết nối trực tiếp với bên ngoài thì FireWall không thể kiểm soát được những thông tin này
FireWall không chống lại được tấn công thu trộm thông tin trên kênh truyền:
Việc xây dựng một phần mềm thu trộm mọi gói tin khi trao đổi giữa trạm A và trạm B khi truyền qua mạng là khá đơn giản, đối phương đánh cắp giữ liệu mà không cần đột nhập vào máy được bảo vệ Nếu các gói tin này không được mã hóa hoặc mã hóa yếu thì đối phương đã có nội dung chúng cần
Trang 33Hình 4: Tấn công thu trộm thông tin trên kênh truyền
Có thể nói FireWall bảo vệ được rất nhiều nhưng không phải là tất cả Một sự an ninh tin cậy chỉ có thể có được khi kết hợp FireWall với nhiều yếu
tố khác, đặc biệt là ý thức bảo vệ của bản thân người sử dụng hệ thống Không nên cho rằng, khi cài đặt thành công một FireWall là mạng máy tính
đã hoàn toàn yên ổn Điều này giống như khi ta tin rằng chỉ cần người bảo vệ
là có thể tránh khỏi mọi vụ trộm trong tòa nhà[7]
2.3 Các kỹ thuật mã hoá
2.3.1 Tổng quan về mã hóa:
Mã hóa là phương pháp để biến thông tin (phim ảnh, văn bản, hình ảnh)
từ định dạng bình thường sang dạng thông tin không thể hiểu được nếu không
có phương tiện giải mã Mã hóa đã xuất hiện từ rất sớm, được con người tâm chung nghiên cứu Cho đến nay nghiên cứu mã hóa đã trở thành một ngành là mật mã học
Mục đích mã hóa là giúp người gửi, gửi thông điệp đến người nhận được bảo đảm bí mật không để người khác biết được Trong quá trình gửi tin thông tin được truyền trong môi trường mạng phức tạp khó kiểm soát và tin tắc có thể bắt được các gói tin trên môi trường truyền tin
Vậy để thông tin được dữ bí mật thì thông tin phải được mã hóa để không thể đọc được phòng trường hợp tin tặc đánh cắp được trong môi trường
Trang 34truyền tin Cho dù tin tặc có thể bắt được các gói tin cũng không thể đọc được thông tin
Khi đến người nhận thông tin cần phải được giải mã trở lại để trở thành bản rõ ban đầu để người nhận hiểu được thông tiệp của người gửi
Phát triển cùng với lịch sử loài người mã hóa được chia thành 02 giai đoạn là mã hóa cổ điển (trước 1970) và mã hóa hiện đại (từ 1970 đến nay)
Ở mã hóa cổ điển con người cố gắng tìm một cách để bảo vệ thông tin, tránh việc thông tin bị giải mã khi người khác có được chúng Các cách áp dụng đó thường dùng một số cách đơn giản và có thể dễ dàng bị giải mã nếu thông tin về cách thức che giấu bị lộ hoặc bị suy đoán Được áp dụng nhiều trong lĩnh vực quân đội Các phương pháp mã hóa cổ điển đã được áp dụng như các loại mật mã thay thế như mật mã Ceasar, mật mã Playfair, mật mã Hill, mật mã Vigenere hoặc các loại mật mã hoán vị như mật mã rail-fence
Ví dụ: Mã hóa văn bản gốc có nội dung là “CAO HOC K10B” với mã
là dịch vòng 1 đơn vị đối với bảng mã ASCII
Bản rõ là chuỗi: C A O H O C K 1 0 B
Biến đổi bản rõ ra mã ASCII ta được: 43 41 4F 20 48 4F 43 20 4B 31 30 42
Dịch vòng bản rõ 1 đơn vị ta có bản mã: 44 42 50 21 49 50 44 21 4C 32 31 43
Hiển thị bảng mã dưới dạng chuỗi: D B P ! I P D ! L 2 1 C
Người ngửi sẽ gửi chuỗi đã được mã hóa: D B P ! I P D ! L 2 1 C
Người nhận giải mã sẽ thu được bản rõ là: C A O H O C K 1 0 B
Sự cần thiết phải có các phương pháp mã hóa an toàn hơn đã được đáp ứng bằng việc áp dụng các kết quả nghiên cứu của toán học Sự thay đổi về phương pháp mã hóa cũng như độ an toàn của các hệ mã mới đã đưa lịch sử của mật mã học sang trang mới Các hệ mật mã với khóa mã đối xứng đã góp phần to lớn trong việc củng cố vai trò của mật mã học trong các ứng dụng của con người Đưa mật mã đến với cả các ứng dụng trong cuộc sống đời thường
Trang 35của con người, mật mã không còn chỉ được nhắc đến nhiều trong lĩnh vực quân sự Ứng của mật mã học đã trở thành một công cụ cần thiết cho mọi người, cần thiết cho các hoạt động thường ngày Các phương pháp mã hóa khác nhau có những ưu, nhược điểm khác nhau Khi sử dụng các phương pháp mã hóa, người dùng sẽ cân nhắc để lựa chọn phương pháp mã hóa thích hợp nhất đối với mình
Hệ mật mã hiện đại thường gồm 5 thành phần (P, C, K, E, D)
Nội dung cần mã hóa thể hiện dưới dạng bản rõ (P) Người gửi sử dụng qui tắc (E) và khóa (K) mã hoá bản rõ (P), kết quả thu được gọi là bản mã (EK (P) = C) Bản mã này được gửi đi trên một đường truyền tới người nhận, sau khi nhận được bản mã (C) người nhận sử dụng qui tắc (D) và khóa (K) giải mã nó để hiểu được nội dung thông điệp gốc (DK’(C) = P) [4,Tr92]
Hệ mật mã hiện đại cần đảm bảo được yêu cầu đảm bảo tính bảo mật: ngăn không để người lạ thực hiện việc trích chọn, sửa đổi thông tin từ các bản
mã được gửi trên các kênh truyền phổ biến (thường không an toàn)
* Hệ mã hóa đối xứng
Như tên gọi của hệ mã hóa “đối xứng” Công việc giải mã được tiến hành ngược lại với mã hóa, giải mã bằng chính khóa đã dùng để mã hóa
Mối trường truyền tin
Hình 5: Hệ mã hóa đối xứng
Trang 36Mục đích: người gửi thực hiện gửi thông điệp cho người nhận một cách
bí mật không cho người ngoài biết
Quá trình gửi: người gửi tiến hành mã hóa bản rõ bằng một khóa bí mật nào đó, sau đó gửi bản mã này đến người nhận
Quá trình nhận: người nhận nhận được bản mã dùng chính khóa mà người gửi đã khóa để giải mã chi ra bản rõ có thể đọc được thông điệp
Đi cùng với lịch sử đã có rất nhiều hệ mã hóa đối xứng nổi tiếng như:
Twofish, Serpent, Blowfish, CAST5, RC4, DES, Triple DES, và IDEA chúng được thiết kế và áp dụng hiểu quả trên thiết bị thông tin Nhưng do công nghệ liên tục phát triển các hệ mã hóa trên đã rần bộc lỗ những điểm yếu khiến tin tắc có thể khai thác để đọc được các thông tin mật
Hiện nay các thuật toán trên được thay bằng thuật toán “Tiêu chuẩn mã hóa tiên tiến - AES” có độ bảo mật cao và chưa phát hiện lỗ hổng bảo mật AES hiện đang được cài đặt ở rất nhiều các thiết bị phần mềm, phần cứng trong hệ thống thông tin hiện nay
Hệ mã hóa đối xứng có tốc độ nhanh, độ an toàn cao nhưng có một
nhược điểm là thông báo khóa cho người nhận biết được khóa để thực hiện
giải mã Ta không thể mã hóa cả khóa vì nếu gửi khóa K bằng cách mã hóa
dữ liệu khóa thì vẫn phải dùng một khóa khác K2 để thực hiện mã hóa, vậy làm sao báo cho người nhận biết được K2 để thực hiện giải mã cho ra K1?
Nếu gửi khóa cho người nhận mà không mã hóa thì trên đường truyền rất có thể sẽ bị tin tặc tóm được hoặc bị nghe trộm và dùng để giải mã được thông tin thông tin
Mã hóa đối xứng được dùng để mã hóa dữ liệu trên máy cục bộ Khi truyền dữ liệu mã hóa trên mạng thì hệ mã đối xứng thường kết hợp với một
hệ mã hóa khác để truyền khóa cho người nhận
Trang 37Mối trường truyền tin
AES hiện đang là hệ mã hóa bảo mật cho những thông tin tối mật Do vậy nghiên cứu hệ mã hóa đối xứng sẽ tập chung nghiên cứu mã hóa AES
* Hệ mã hóa công khai (bất đối xứng)
Là hệ mật mã sử dụng cặp khóa (02 khóa), một khóa dùng để mã hóa, khóa còn lại dùng để giải mã Chính nhờ tính chất quan trọng này mật mã khóa công khai đã được đã được ứng dụng mạnh mẽ để bảo mật thông tin khi truyền trên mạng cũng như xác nhận thông tin thông qua chữ ký điện tử Hai khóa này khác nhau và có quan hệ toán học với nhau
Hình 6: Hệ Mã hóa công khai
Trong cặp khóa của hệ mã hóa công khai thì một khóa được dữ bí mật (khóa riêng – private key), một khóa được công khai cho các đối tác sử dụng (pubic key)
Quá trình gửi thông điệp bí mật:
Khi người gửi muốn gửi một thông điệp cho người nhận sẽ làm như sau
+ Lấy public key của người nhận mã hóa thông điệp rồi gửi cho người nhận
+ Người nhận dùng private key của mình giải mã thông điệp, đọc thông tin
Trong quá trình truyền tin có thể bị tin tặc bắt được những cũng không thể giải mã vì không có khóa private của người nhận Chính vị vậy thông điệp được gửi đến người nhận được bảo mật, giải quyết được bài toán truyền khóa trong môi trường truyền tin ở hệ mã đối xứng
Trang 38Khi máy tính ra đời, dữ liệu của máy tính có thể được copy thành nhiều bản, có thể bị thay đổi thông tin, con người luôn đặt câu hỏi liệu thông tin I có phải do chính người X tạo ra không Câu hỏi này đã được trả lời từ khi hệ mật
mã khóa đối xứng ra đời Và hệ quả là có rất nhiều các ứng dụng như về bản quyền, về chống từ chối trách nhiệm, về việc đảm đối với thông tin, ra đời chữ ký điển tử Mã hóa công khai đã góp phần to lớn trong việc cải cách các thủ tục hành chính, giảm bớt giấy tờ phức tap, khó quản lý kiểm soát nâng cao hiệu quả công việc Góp phần thúc đẩy nền kinh tế phát triển Nhà nước ta hiện đang từng bước áp dụng chữ ký số trong quản lý, giao dịch
Quá trình gửi thông điệp bảo đảm không từ chối trách nhiệm:
+ Người gửi X thông điệp dùng khóa riêng của mình để mã hóa (ký) vào thông điệp và gửi đi bản mã
+ Một người nhận bất kỳ nào đó muốn kiểm tra thông điệp nhận được
có phải do người dùng X gửi không chỉ cần lấy public key của người gửi giải
mã để được thông điệp và kết luận thông điệp này do chính người X gửi
Trong thực tế khi gửi thông điệp đảm bảo không từ chối trách nhiệm, thì nội dung của thông tin không nhất thiết phải bảo mật, có thể cần quản bá
để mọi người đều biến đến Vấn đề chính là xác định được thông tin này có đúng là do người X gửi không Việc mã hóa và giải mã đối với mã hóa công khai chạy chậm, mất nhiều thời gian khi dữ liệu lớn Nên thay vì ký vào dữ liệu thì người gửi ký vào bản băm của dữ liệu (bản băm có kích thước xác định, thường rất nhỏ)
Vì vậy trong hệ thông khi gửi dữ liệu hoặc khi đưa dữ liệu lên hệ thống
để mọi người khai thác thì để đảm bảo nguồn gốc của dữ liệu, người gửi ký
vào bản băm của dữ liệu sau đó gửi bản băm đã ký cùng với dữ liệu Người
nhận sẽ kiểm tra nguồn gốc của dữ liệu bằng cách lấy public key của người
Trang 39gửi giải mã bản băm đã được mã hóa để xác nhận có đúng người X gửi thông điệp hay không
Hệ mã hóa công khai khắc phục được nhược điểm gửi thông điệp bảo mật của hệ mã hóa đối xứng nhưng thực tế ít dùng để mã hóa thông điệp Do quá trình mã hóa và giải mã phải làm việc với những số nguyên tố rất lơn Hệ
mã hóa có khối lương tính toán lớn Điều này ảnh hưởng đến tốc độ của hệ
thống Khiến chi phí để mã hóa rất cao Do vậy đối với chức năng gửi thư bảo mật sẽ là tối ưu nếu kết hợp sức mạnh của mã hóa đối xứng để mã hóa dữ liệu , còn việc truyền khóa mã đối xứng sẽ sử dụng hệ mã công khai để truyền tới người nhận Điều này khắc phục được nhược điểm về tốc độ của mã hóa công
khai cũng như khắc phục được việc truyền khóa ở mã đối xứng
Có nhiều hệ mã hóa công khai nổi tiếng như RSA, ElGamal, DSA, mật
mã đường cong elliptic Hiện nay thuật toán RSA đang được ứng dụng phổ biến trong các hệ thống bảo mật thông tin lên trong phạm vi luận văn này sẽ chủ yếu nghiên cứu hệ mã hóa AES và RSA, nghiên cứu cách kết hợp 2 hệ
mã hóa để có thể gửi được thông tin bảo mật với tốc độ nhanh
2.3.2 Chuẩn mật mã nâng cao AES
2.3.2.1 Giới thiệu về mã hóa AES
Qua thời gian, có nhiều thuật toán mật mã khối khác nhau được đề xuất bởi cộng đồng khoa học mật mã như FEAL (-4, -8, -N, -NX), NewDES, LOKI91, Blowfísh, RC2, MMB, IDEA Tuy nhiên, khá nhiều trong số đó đã
bị phá giải hoặc chỉ ra có những điểm yếu nhất định Hiện nay với tốc độ và khả năng xử lý của các bộ vi xử lý ngày càng được nâng cao, phương pháp
mã hóa chuẩn DES, Tri DES, Blowfish, IDEA đã trở nên không an toàn trong bảo mật thông tin Vì thế cần nghiên cứu chuẩn mật mã đáp ứng được nhu cầu bảo mật thông tin, chuẩn mật mã nâng cao AES (Advanced Encryption Standard) ra đời
Trang 40Một chuẩn chung cần thiết phải có với các thuộc tính như:
1 Bảo mật ở mức cao
2 Thuật toán được đặc tả và công khai hoàn toàn, tức là tính bảo mật không được phép dựa trên những phần che giấu đặc biệt của thuật toán
3 Việc cài đặt phải dễ dàng để đem lại tính kinh tế
4 Phải mềm dẻo để áp dụng được cho muôn vàn nhu cầu ứng dụng
AES được Viện Tiêu chuẩn và Công Nghệ Hoa Kỳ (National Institute of Standards and Technology - NIST) chính thức chọn thuật toán Rijndael làm Chuẩn mã hóa nâng cao (Advanced Encryption Standard - AES) năm 2000 sau khi qua nhiều vòng tuyển chọn Thuật toán được thiết kế bởi hai nhà mật
mã học người Bỉ: Joan Daemen và Vincent Rijmen Vì vậy khi nói thuật toán tiêu chuẩn mã hóa nâng cao thì ngầm hiểu là thuật toán mã hóa Rijndael Đây là thuật toán có tốc độ mã hóa nhanh và độ an toàn rất cao nên hoàn toàn có thể dùng để mã hóa các thông tin mật "Thiết kế và độ dài khóa của thuật toán AES (128, 192 và 256 bit) là đủ an toàn để bảo vệ các thông tin được xếp vào loại TỐI MẬT (secret) Các thông tin TUYỆT MẬT (top secret) sẽ phải dùng khóa 192 hoặc 256 bit" [10]
Đối với phép mã, đầu vào là khối rõ và khóa, đầu ra là bản mã
Đối với phép giải mã, đầu vào là khối mã và khóa, đầu ra là khối rõ Các phép biến đổi của Rijndael thao tác trên một kết quả trung gian, được gọi là trạng thái Trạng thái có thể được thể hiện như là một mảng chữ nhật các byte với 4 dòng Số các cột trong trạng thái được ký hiệu bởi Nb và bằng độ dài khối chia cho 32 (đối với AES thì Nb bằng 4)
Đơn vị cơ bản để