Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.05 MB, 87 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
<b><small>Bài 1: Tổng quan về an ninh và bảo mật thông tin</small></b> <small> Trang 1</small>
<b>1. Khái niệm về an ninh mạng </b>
Khái niệm về an ninh khơng có nghĩa là ngặn chặn mọi sự truy cập vào mạng. An ninh phải cho phép truy cập vào mạng theo cách thức mà chúng ta muốn, cho phép mọi người có thể làm việc với nhau. Mạng an toàn là một mạng được thiết kế mở để cho phép mọi người có thể truy cập sử dụng các dịch vụ bất kể họ ở đâu và kết nối bằng gì. Nếu ta thắt chặt an ninh, ta có thể cung cấp mức độ truy cập cao hơn và đảm bảo cho phép những đối tác truy cập, và ngược lại ta cung có thể truy cập tới các đối tác
<b>2. Chiến lược phát triển an ninh mạng 2.1. Mơ hình phân cấp về an ninh </b>
An ninh bao gồm rất nhiều lĩnh vực. Nếu ta xem xét các lĩnh vực theo thứ bậc thì ta có An ninh là gốc của các lĩnh vực khác nhau. Ví dụ an ninh quốc gia, an ninh thơng tin, an ninh kinh tế có thể xem là các lĩnh vực con của an ninh.
Trong chương trình này chúng ta quan tâm tới an ninh mạng, là một bộ phận của an ninh thông tin. An ninh được xem như vấn đề bảo vệ tài sản nói chung. An ninh thông tin là vấn đề bảo vệ thông tin, và nguồn thông tin như sách vở, điện thoại, dữ liệu máy tính ... An ninh mạng liên quan tới vấn đề bảo vệ các thành phần của mạng như dữ liệu, các thiết bị phần cứng, phần mềm, môi trường
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thông tin</small></b> <small> Trang 2</small>
Mơ hình trên mơ tả quan hệ giữ an ninh mạng và các thành phần liên quan về an ninh. Nếu ta chỉ chú trọng và an ninh máy tính sẽ bỏ qua nhiều lỗ hổng có thể bị khai thác bởi hacker. Bởi vậy an ninh mạng phải được xem xét trong ngữ cảnh của các thành phần liên quan.
<b>2.2. Chế độ 3D về an ninh (3Ds of Security 10) </b>
Lĩnh vực an ninh thông tin không ngừng được phát triển, nhưng những vấn đề cơ bản để đảm bảo an ninh thì khơng thay đổi. Nếu chúng ta muốn bảo vệ tài sản được tốt thì cần phải nghiên cứu các bài học từ các chiến lược an ninh đã được sử dụng và những vấn đề mà các chiến lược an ninh đó mắc phải.
Nguyên lý cơ bản được áp dụng trong tất cả mọi trường hợp hoặc môi trường cho dù ta áp dụng chúng để bảo vệ máy tính, mạng, nhà cửa, người hay những tài sản khác. So sánh giữa an ninh cá nhân và an ninh mạng là ví dụ điển hình, về ngun tắc cơ bản thi giống nhau. Trên thực tế, an ninh mạng cũng dựa trên nguyên lý an ninh của bất kỳ lĩnh vực nào. 3 chế độ cơ bản về an ninh có thể được áp dụng trong chiến lược an ninh là:
<small>Security </small>
<small>Information Security </small>
<small>Network Security </small>
<small>Data Base Data Computer Application </small>
<b><small>Hình 1: Mơ hình phân cấp về các lĩnh vực an ninh </small></b>
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thông tin</small></b> <small> Trang 3</small>
e bảo vệ
Defence - bảo vệ - là thành phần dễ hiểu và được sử dụng đầu tiên, trước bất kỳ các phương pháp khác. Đánh giá chế độ bảo vệ giúp chúng ta giảm thiểu rủi ro về khả năng thành công của các cuộc tấn công tới các tài sản. Ngược lại, nếu đánh giá không tốt về chế độ bảo vệ ta có thể để các tài sản bị tấn cơng. Tuy nhiên defence chỉ là một thành phần của chiến lược an ninh. Rất nhiều các công ty chỉ dựa vào firewall để bảo vệ các tài sản thông tin, và những thông tin này không thể tránh được sự tấn cơng vì khơng đảm bảo các chế độ cịn lại
Ví dụ: Thường sử dụng firewall, router access list ...
Deterrence - gây khó khăn, ngăn trở - là chế độ thứ hai của an ninh. Ý tưởng của việc ngăn trở và gây khó khăn giống như việc thiết lập các luật hoặc quy tắc chống lại việc truy nhập và sử dụng trái phép tài sản, những hành vi vi phạm đều sẽ bị xử lý. Deterrence thường được xem là phương pháp hiệu quả để giảm thiểu sự vi phạm an ninh. Nếu có các quy định và luật được thiết lập thì những người tấn công sẽ phải cân nhắc trước khi thực hiện việc vi phạm. Rất nhiều các công ty đã triển khai các quy định cho nhân viên và sử dụng các hình thức xử lý để ngăn chặn các vi phạm
Ví dụ: ta có thể sử dụng các quy định, email, thông báo ...
Detection - phát hiện - là chế độ thứ 3 trong chiến lược an ninh nhưng lại thường ít được triển khai trên các máy tính trong mạng. Defence và deterrence chỉ sử dụng để ngăn chặn sự vi phạm an ninh chứ không thể phát hiện những sự vi phạm đó khi đang xẩy ra. Thơng thương sự vi phạm an ninh có thể ngấm ngầm diễn ra trong một khoảng thời gian, nếu khơng có các chế độ phát hiện kịp thời thì thiệt hại sẽ gia tăng nghiêm trọng
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thơng tin</small></b> <small> Trang 4</small>
Ví dụ: cài đặt phần mềm diệt virus, sử dụng ghi chép lần vết (audit trails hoặc log files)
Ví dụ: về 3D trong việc triển khai an ninh cho tài sản cá nhân. Chúng ta cần làm gì khi có những đồ vật quý trong nhà cần được bảo vệ nhưng vấn cho phép sử dụng? Ta sẽ cần thiết lập cả 3 chế độ. Defence, ta cần khóa cửa sử dụng các khóa cơng nghệ cao và chỉ cho phép những người tin cẩn sử dụng khóa. Deterrence, được bảo vệ bởi luật pháp chống lại việc trộm cắp, ta có thể sử dụng thêm chó canh nhà. Detection có thể được sử dụng bởi camera, infrared sensor, hoặc các công nghệ cảnh bảo khác, ta cịn có thể kết hợp với các công ty bảo vệ hoặc cảnh sát.
Chú ý: Cả 3 chế độ rất cần thiết để đảm bảo an ninh, khơng nên bỏ sót chế độ nào. Hầu hết tất cả các công ty đều đầu tư ít hoặc nhiều vào vấn đề an ninh nhưng công ty nào chú trọng vào cả 3 chế độ thì sẽ có hiệu quả hơn
<b>2.3. Q trình phát triển về an ninh mạng (Evolution of security 17) </b>
Thực tế về an ninh thông tin đã thay đổi rất nhiều trong những năm qua. Từ khi các máy tính cá nhân có thể được kết nối qua mạng trong mơi trường các trường Đại học và các Viện nghiên cứu sang mơi trường chính phủ, trước khi thương mại áp dụng vấn đề an ninh, các công nghệ về an ninh trước đây chỉ được phát triển đặc biệt cho các mơi trường đó. Trong mơi trường nghiên cứu, mục đích chính là chia sẽ thơng tin hồn tồn. Bởi vậy vấn đề an ninh chỉ thuần túy là chức năng kế tốn để tính tiền sử dụng thơng tin và tài nguyên. Trong hệ thống mạng của chính phủ, an ninh thông tin được đảm bảo chặt chẻ nên các máy tính bị ngăn chặn hồn tồn, đảm bảo sự truy nhập và sử dụng dữ liệu mật.
Government blockage model - protected internal resources, no external access Academic open access model - unprotected internal resources, full external access
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thơng tin</small></b> <small> Trang 5</small>
Ví dụ: InterNex (ISP ở Palo Alto được mua bởi Concentric Network Corp.) sử dụng mơ hình mở, khơng có kiểm soát an ninh ngoại trừ xác thực bởi username, password. Năm 1994, Kevin Mitnick đã lợi dụng kẽ hở này để sử dụng một tài khoản và tấn công các máy tính ở San Diego bằng cách giả mạo IP. Sau đó tấn cơng sang các máy tính ở các thành phố khác như San Francisco, Denver, San José. Đến tận 15/2/1995 Kevin bị bắt và xử phạt 5 năm tù và đã xác nhận về hệ thống an ninh của chính phủ năm 2000 trước Quốc hội Mỹ.
Các chiến lược an ninh này vẫn được sử dụng nhưng chúng khơng cịn phù hợp với những mơ hình của các mạng máy tính hiện nay, đặc biệt là trong lĩnh vực kinh tế, thương mại. Từ khi thương mại điện tử phát triển, cả hai mơ hình trên đều khơng phù hợp. Mơ hình đóng khơng thể thực hiện vì ta cần phải cho phép người sử dụng truy cập. Tương tự, mơ hình mở cũng khơng thể áp dụng khi ta cần phải bảo vệ thông tin cá nhân cho mọi người. Thương mại điện tử đặt ra một mơ hình an ninh hoàn toàn khác biệt cho phép giới hạn và kiểm soát sự truy cập tài nguyên của người sử dụng đồng thời đảm bảo an toàn về thơng tin cá nhân. Mơ hình này u cầu phải có sự xác thực, phân quyền và đảm bảo bí mật cho người sử dụng.
Ví dụ: Bảo vệ tài sản cá nhân. Ta có thể cho phép những người đưa hàng, vệ sinh, thợ sửa chữa vào nhà làm các công việc của họ nhưng vẫn ngăn chặn được những kẻ xấu
Các sản phẩm hiện đại đều được thiết kế để phù hợp với mơ hình an ninh mới. Tuy nhiên sự phát triển quá nhanh của Internet làm thay đổi mơ hình thương mại của các mạng máy tính. Do vậy rất nhiều sản phẩm khơng thể theo kịp những sự thay đổi đó. Hầu hết các sản phẩm sử dụng chức năng trên mạng đều rất khó hoặc khơng thể đạt các u cầu về an ninh. Bởi vậy thiết kế chiến lược an ninh cần phải nhận biết các điểm yếu để có thể đưa ra được các giải pháp để bù trừ cho các sản phẩm yếu kém.
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thông tin</small></b> <small> Trang 6</small>
Ví dụ: Tăng cường hệ thống phát hiện để hỗ trợ cho hệ thống bảo vệ (trong 3Ds). Thêm phần mềm quét và diệt virus tăng cường cho hệ thống firewall. Thường xuyên cập nhật các phiên bản mới nhất của các công cụ.
Chú ý: Có rất nhiều mơ hình an ninh trên lý thuyết. Một số mơ hình liên quan tới kiến trúc mạng, một số mơ hình liên quan đến truy cập dữ liệu. Tuy nhiên, chiến lược về an ninh cần phải linh hoạt, phải được đánh giá định kỳ và thay đổi theo thực tế và công nghệ
<b>2.4. Các bước cần thiết (5 steps to better security 12) </b>
Trong an ninh mạng, mục tiêu của việc triển khai hệ thống an ninh phải được làm rõ để hoạch định chiến lược và lựa chọn công nghệ. Trên phương diện của người thực hiện an ninh, xác định mục tiêu là vấn đề khó khăn. Thông thường chúng ta được đưa ra yêu cầu bảo vệ an ninh mạng. Trong trường hợp này, ta cần phải đưa ra được mục tiêu và đặt ra các giả thuyết để thực hiện kế hoạch về an ninh. Khi triển khai chiến lược an ninh ta phải cân nhắc
- Không thể đảm bảo an ninh tuyệt đối
- Ta có thể quản lý được các rủi ro về an ninh
- Sử dụng các công nghệ chống lại các rủi ro để đạt được mục tiêu
Trước khi thiết lập chiến lược an ninh, ta cần phải thực hiện 5 bước quan trọng. Chúng là một yêu cầu trong giai đoạn đánh giá và là một phần trong việc triển khai chiến lược an ninh. Các bước này trả lời 5 câu hỏi theo trình tự dùng để xác định các yêu cầu về an ninh và có thể hỗ trợ cho việc xây dựng các giải pháp an ninh
Assets - tài sản - Ta cần bảo vệ cái gì? Phải xác định được tài sản cần được bảo vệ để tránh việc xây dựng hệ thống an ninh sai mục đích
Ví dụ: CSDL, khả năng cung cấp dịch vụ, thông tin cá nhân
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thông tin</small></b> <small> Trang 7</small>
Risk - rủi ro - Đâu là những điểm yếu, lỗ hổng và các nguy cơ gì có thể xẩy ra? Điểm yếu của tài sản có thể bị khai thác bởi các nguy cơ nào? Rủi ro có thể được xác định trong trường hợp các nguy cơ đó khai thác được các điểm yếu. Tổng hợp các yếu tố này ta có thể xác định các thành phần cần thiết cho hệ thống an ninh để bảo vệ tài sản nói trên.
Ví dụ: dùng trong hay ngồi firewall, network, hoặc trên server và giá thành
Protections - bảo vệ - Tài sản đó được bảo vệ như thế nào? Khi yêu cầu về tài sản được xác định trong câu hỏi 1 và rủi ro được xác định trong câu hỏi 2, ta có thể xem xét các quy định, thủ tục và kỹ thuật thực tế sử dụng để cung cấp mức độ bảo vệ thích hợp. Ngồi ra ta cịn có thể đảm bảo các chúng được thiết lập đúng chỗ
Ví dụ: sử dụng các biện pháp bảo vệ (defence) như firewall, ACL hoặc các quy định (deterrence)
Tools - công cụ - Ta cần sử dụng thiết bị và công nghệ nào để đảm bảo? Câu hỏi 3 giúp ta phân loại các thành phần của hệ thông an ninh và ta cần phải lựa chọn các công cụ hỗ trợ. Đây là giai đoạn đánh giá các sản phẩm
Priorities - mức độ ưu tiên - Thứ tự thực hiện và triển khai hệ thống an ninh như thế nào? Khi ta đã xác định được các công cụ và kỹ thuật để bảo vệ tài sản từ những nguy cơ thì ta sẽ triển khai theo thứ tự ưu tiên nào. Đặc biệt trong trường hợp ta chưa có khả năng để triển khai đồng bộ toàn bộ hệ thống an ninh
Ví dụ: Khi xây dựng web site thương mại. Để trả lời những câu hỏi này người thiết kế có thể xác định các thành phần cần bảo vệ như thông tin, tài khoản của người sử dụng, khả năng phục vụ của web site. Khi đó ta cần mã hóa khi kết nối trao đổi thơng tin, lưu trữ dữ liệu trong các CSDL khác nhau và được mã hóa. Server có sử dụng firewall để chống lại DOS và có thể tiến hành chạy song song 2 server v.v.
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thông tin</small></b> <small> Trang 8</small>
<b>2.5. Triển khai chiến lược an ninh </b>
Phương pháp tổng thể để triển khai chiến lược an ninh bắt đầu bằng việc mơ tả cần bảo vệ cái gì và tại sao. Sau đó xác định khi nào triển khai và các bước triển khai cụ thể như thế nào. Thứ tự hoàn chỉnh để triển khai chiến lược an ninh bao gồm nhiều thành phần. Các thành phần đó thường được xác định qua 5 bước nói trên bao gồm: xác định mục tiêu yêu cầu, phạm vi, chính sách, kỹ thuật kiến trúc, kế hoạch thực hiện, chuẩn - thủ tục – và hướng dẫn thực hiện
Mục tiêu và yêu cầu: là điểm bắt đầu của tất cả các chiến lược an ninh. Để triển khai được giải pháp an ninh thì mục tiêu và yêu cầu phải được xác định rõ ràng. Mục tiêu không thể đơn giản như “bảo vệ mạng từ các nguy cơ từ Internet” hay “bảo vệ dữ liệu mật không cho phép các tổ chức hay cá nhân khác truy nhập”
Phạm vi an ninh là để xác định giá thành, mơ hình và thời gian thực hiện. Thông thường các dự án được chia thành các các gói nhỏ thực hiện theo từng giai đoạn để dễ dàng quản lý.
Chính sách an ninh mô tả chi tiết về mục tiêu và yêu cầu.
<b>3. An toàn và bảo mật Hệ thống thơng tin 3.1. An tồn và bảo mật thơng tin </b>
Hệ thống thông tin an tồn thì trước hết phải có sự đảm bảo thông tin (information assurance) trên cơ sở hạ tầng mạng truyền dữ liệu tin cậy và thông suốt.
<b>Đi kèm với an tồn là bảo mật thơng tin để đảm bảo bí mật về nội dung </b>
thông tin được truyền tải.
<b>Hai yếu tố an toàn và bảo mật đều rất quan trọng và có sự gắn bó mật thiết </b>
với nhau
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thông tin</small></b> <small> Trang 9</small>
<b><small>Hình 2 Các thà nh phầ n cơ bả n về thông tin </small></b>
Các thành phần cơ bản về thơng tin gồm có:
C - Confidentiality: bảo mật I - Integrity: toàn vẹn
A- Accessibility: sẵn sàng
<b>Các thành phần cơ bản về mạng: </b>
Hardware: các thiết bị Software: ứng dụng
Communication: môi trường trao đổi thông tin
<b>3.2. Các tính chất cần đảm bảo an ninh cho Hệ thống thông tin </b>
Để đảm bảo an ninh bảo mật cho Hệ thống thông tin, các hệ thống cần phải đáp ứng đầy đủ các tính chất bảo mật sau:
<i><b>Đảm bảo được các tính chất an tồn của mạng máy tính (Computer Security) </b></i>
Tính an tồn (safety) Tính tin cậy (reliability) Tính sẵn sàng (accessibility)
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thơng tin</small></b> <small> Trang 10</small>
Tính mở rộng (scalability) Tính dễ quản trị (managebility)
<i>Đảm bảo được các nguyên tắc về tính bảo mật thơng tin (Information Assurance) </i>
Tính bí mật (privacy/confidentiality) Tính tồn vẹn (integrity)
Tính xác thực/nhận dạng (authenticity)
Tính trách nhiệm/khơng thể chối bỏ (non-repudiation)
<b>3.3. Mơ hình triển khai An ninh (Defence In Depth) </b>
Từ khi các máy tính cá nhân có thể được kết nối qua mạng trong môi trường các trường Đại học và các Viện nghiên cứu sang mơi trường chính phủ, trước khi thương mại áp dụng vấn đề an ninh, các công nghệ về an ninh trước đây chỉ được phát triển đặc biệt cho các mơi trường đó. Các mơ hình triển khai cơ bản gồm có:
Government blockage model – bảo vệ tài nguyên, không cho phép truy cập từ bên ngoài, chỉ truy cập từ trong hệ thống
Academic open access model – tài nguyên được chia sẻ, cho phép truy cập từ bên ngoài
Commercial mix model – tài nguyên và dịch vụ được phân lớp và kiểm soát quyền truy cập từ ngoài cũng như từ bên trong
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thông tin</small></b> <small> Trang 11</small>
Các mơ hình triển khai An ninh (Defence In Depth) gồm có các mơ hình như sau
- Thiết lập vành đai bảo vệ (vịng ngồi)
- Phân lớp kiểm soát quyền truy cập (các khu vực) - Bảo vệ dữ liệu (theo nhiều tầng)
So sánh Lollipop Model vs Onion Model:
- Thiết lập vành đai bảo vệ truy cập (vịng ngồi)
<i> Firewall, Router Access List, Authentication </i>
- Phân lớp kiểm soát quyền truy cập (các lớp) <i>Network: Environment, protocols Host: Operating System, Authorization </i>
Lollipop Model of Defence Onion Model of Defence
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12"><b><small>Bài 1: Tổng quan về an ninh và bảo mật thông tin</small></b> <small> Trang 12</small>
<i> Application: Xử lý và trao đổi dữ liệu </i>
- Bảo vệ dữ liệu (vòng trong)
<i> Backup, Mã hóa </i>
<b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 1 </small>
<b>1. Phân tích nguy cơ </b>
Phân tích nguy cơ và định vị khe hở là bước tiên quyết trước khi triển khai các hệ thống an ninh. Xác định được các nguy cơ sẽ cho phép xây dựng được các chiến lược tập trung mà không sợ bỏ quá các khu vực trọng yếu. Trọng tâm của việc triển khai hệ thống an ninh là để hạn chế và giảm thiểu ở mức độ chấp nhận được các sự cố, với mục tiêu là có đủ thời gian để xử lý mà không làm ảnh hưởng tới các tính chất vận hành của hệ thống. Để làm được điều đó ta cần phải xác định được các nguy cơ (kẽ hở) và phân tích các rủi ro mà nguy cơ đó mang lại khi bị lợi dụng.
3 thành phần trọng tâm trong quy trình phân tích nguy cơ gồm:
- Xác định và Đánh giá tài nguyên cần bảo vệ - Những nguy cơ nào có thể xẩy ra
- Đánh giá các rủi ro và khả năng ảnh hưởng tới hệ thống
<b>1.1. Nguy cơ và rủi ro </b>
Các hiểm họa với hệt thống bao gồm các thông tin đặc trưng như phát sinh từ đâu, truy nhập vào hệ thống qua kẽ hở, điểm yếu nào và nó sẽ gây ảnh hưởng như thế nào tới tài nguyên trên hệ thống.
Mỗi nguy cơ bao gồm các thông tin đặc trưng như phát sinh từ đâu, truy nhập vào hệ thống qua kẽ hở nào va nó sẽ gây ảnh hưởng như thế nào tới tài nguyên trên hệ thống. Ví dụ như một virus đính kèm trong email được gửi tới hệ thống, nguy cơ sẽ xẩy ra khi nhân viên đọc email đó. Theo điều tra và thống kê của Computer Security Institute (CSI) về rủi ro trên các hệ thống thông tin phần lớn lại bắt nguồn từ các nguy cơ bên trong hệ thống
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 2 </small>
<b>1.2. Phân loại nguy cơ </b>
Các máy tính kết nối Internet ln là những mục tiêu để tấn cơng của hackers hoặc các chương trình mã độc. Nếu chúng ta không update các bản vá kẽ hở trên hệ thống và đánh giá đúng các nguy cơ thì hệ thống của chúng ta sẽ bị tấn công dễ dàng.
Tấn công các hệ thống bao gồm nhiều dạng thức từ tự động, mobile code trên mạng, hoặc cố tình bởi các hackers
Malicious Mobile Code: tự động gồm các nguy cơ tiềm ẩn như: o Computer Virus
o Computer Worms o Email Worms
o Trojan horse programs o Remote Access Trojans
o Zombie Trojans và DDoS attacks o Malicious HTML
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 3 </small>
Manual Cracking: được điều khiển bởi hackers trong đó có các hình thức tấn công như:
<b>o Network Layer attacks: Rất nhiều các nguy cơ được phát hiện lợi dụng </b>
khe hở của giao thức mạng (tâng 3 – tầng 6 của mơ hình OSI). Các giao thức mạng như TCP/IP, NetBIOS, AppleTalk, IPX, BGP … định nghĩa phương pháp trao đổi dữ liệu chuẩn để đảm bảo mơ hình liên kết mở. o Packet sniffing (ethereal, www.tcpdump.org
Tấn công tầng ứng dụng thường lợi dụng khe hở của các ứng dụng đồng thời tấn công thông qua các hệ điều hành mà ứng dụng chạy trên đó
Content attacks: o SQL injection
o Unauthorized network shares o file system trasversals
Buffer Overflow Password cracking
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 4 </small>
<b>2. Định vị kẽ hở </b>
Trong thực tế khi muốn nối kết các hệ thống có nguồn gốc khác nhau thì những hệ thống này phải mở, bằng cách giao diện và giao thức được chuẩn hoá. Việc đố đồng nghĩa với các đặc tả kỹ thuật công khai
Mặt trái của việc công bố và áp dụng rộng rãi kỹ thuật là nhờ đó mà tin tặc có thể nắm rất vững các nhược điểm nếu có của các thành phần trên hệ thống và triệt để khai thác chúng.
<b>2.1. Khe hở trên Hệ điều hành </b>
Mơ hình an ninh của hệ điều hành (trusted computing base) là một tập hợp các quy tắc, giao thức để đảm bảo chức năng an ninh của hệ thống. Hệ thống an ninh thực hiện từ mức giao thức mạng xuống đến các hoạt động của hệ điều hành. Hệ điều hành tốt sẽ bảo vệ toàn bộ máy chủ, các phần mềm và thiết bị trên hệ thống
Account Database Management
<b>Windows: </b>
<i>• Hệ thống độc lập: Security Account Manager (SAM) </i>
<i>• Domain và Server: sử dụng Central Account Database và </i>
domain-wide previleges điều khiển bởi Domain Controller
<i>• Windows 2003 trở lên: sử dụng thêm mơ hình Forest Account </i>
<b>Unix-like (Solaris, HP-UX, AIX, Linux, …) </b>
<i>• UNIX account database files: ../etc/passwd và ../etc/shadow • Nhóm tài khoản: ../etc/group </i>
Access Control Lists
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 5 </small>
Bên cạnh việc xác thực, để hạn chế sự tấn công khi user đã truy nhập được vào hệ thống, ta còn cần phải thiết lập chức năng phân quyền (authorization) sử dụng tài nguyên. Phân quyền thường được thiết lập để xác định quyền truy nhập vào tài nguyên như tệp tin, thiết bị, cơ sở dữ liệu v.v. ngồi ra cịn xác định một tập hợp các đặc quyền của người sử dụng trong mạng. Hiện nay có rất nhiều các phương pháp phân quyền khác nhau như: quyền user, phân quyền theo chức năng, danh sách kiểm soát quyền truy nhập, và phân quyền theo quy định
Các hệ thống thơng tin cũng sử dụng các danh sách kiểm sốt truy nhập (ACL – Access Control Lists) để xác định các tài nguyên hoặc dịch vụ nào được phép sử dụng. Truy nhập tệp tin trên Server thường được kiểm soát bằng các thông tin của từng tệp tin. Tương tự, khả năng truy nhập các dịch vụ khác nhau của các thiết bị mạng cũng được kiểm soát bởi ACL
<i><b>File-Access Permission Cả Windows (NT trở lên) và Unix đều sử dụng quyền truy </b></i>
nhập tệp tin để quản lý sự truy nhập. Hai hệ thống này thiết lập quyền truy nhập tệp tin khác nhau những đều đảm bảo việc kiểm soát sự truy nhập và sử dụng các tệp tin trong hệ thống
• Hệ thống tệp tin NTFS của Windows sử dụng ACL cho từng tệp tin và thư mục. ACL là một danh mục các quyền truy nhập (ACEs – Access Control Entries). Mỗi ACE bao gồm SID và quyền của SID đó, quyền có thể là access hoặc deny. SID (Security ID) có thể là một tài khoản, một nhóm người dùng. ACE có thể được thiết lập bởi admin, người chủ sở hữu của tệp tin, hoặc những người có quyền.
• Hệ thống sẽ xác định đặc quyền của tài khoản người dùng, nhóm người dùng của tài khoản để xác định SID khi đăng nhập và sẽ cấp phát cho một thẻ (token). Thẻ đó sẽ được gắn vào trong các process thực thi của tài khoản đăng nhập trên hệ thống và kiểm soát sự truy nhập vào hệ thống tệp tin.
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 6 </small>
permission and attributes, add file, delete folder
Read, execute, change and delete file and attributes
Read and Execute List folder, read information Read and execute file, read information
List Folder Contents List file and folder, execute files, read information
N/A
attributes and permission
Write and append data, write attribute and permission
<i><b>Unix File-Access Permission </b></i>
• Trước đây Unix không sử dụng ACL mà các file được bảo vệ bằng cách hạn chế truy nhập bởi tài khoản người dùng và nhóm tài khoản. Bởi vậy ta không thể thiết lập các quyền khác nhau cho người sử dụng. Ví dụ ta khơng thể cấp quyền chỉ được phép đọc dữ liệu trong tệp cho một người dùng. Các hệ thống Unix sau này (Solaris) bắt đầu sử dụng ACL
</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">
<b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 7 </small>
• Trước đây các hệ thống Unix phân quyền cho các tệp tin để kiểm soát truy cập chỉ bao gồm 3 mức truy nhập đó là: chủ, nhóm người dùng, và tất cả. Đặc quyền của người chủ sở hữu file cho phép xác định ai được phép truy nhập tệp tin để đọc, ghi, hoặc thực thi.
Remote Procedure Calls
<b>Remote Procedure Calls Windows: </b>
• Windows cho phép gọi thủ tục lấy dữ liệu và dịch vụ từ xa RPC thông qua các cổng mặc định (SQL sapphire worm qua cổng 1433,1434) • Disable các services không cần thiết (chú ý) Telnet, alerter, Clipbook,
Indexing serviceMessanger, Remote Registry <b>Unix-like (Solaris, HP-UX, AIX, Linux, …) </b>
• Tự động khởi động tất cả các services
</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 8 </small>
• Các daemons mở cổng giao tiếp hệ thống (<1024) bắt buộc phải chạy quyền Root access nên ta cần thay đổi các cổng mặc định.
• Cài đặt OpenSSL, thay các daemons bằng OpenSSH (telnet, FTP, r* command như rlogin, rsh, rexec).
Để thực hiện được SSH ta phải có daemon sshd cài và thực thi. Sshd thường được thiết lập mặc định tại /usr/local/sbin và sshd_config tại usr/local/etc
<b>2.2. Khe hở trên giao thức </b>
<i><b>Họ giao thức TCP/IP </b></i>
Bộ giao thức TCP/IP hiện nay đang được sử dụng phổ biến nhất trên thế giới, bởi vì mạng tồn cầu Internet và các mạng cục bộ Ethernet đều sử dụng nó. TCP/IP version 4 thường vẫn được sử dụng thì có các lỗ hỗng chính như
o Spoofing (giả mạo IP): thường dùng trong DOS
o Session guessing và highjacking: chiếm dụng phiên làm việc o Authentication or encryption: khơng xác thực và mã hóa o SYN flooding
TCP/IP version 6 được thiết kế với IPSec, SSL, authentication và encryption, chống lại spoofing, data integrity, confidentiality và privacy
Wireless LANs: sử dụng chuẩn 802.11x cho phép xây dựng các mạng diện rộng với to-point bridge links
point-• WLAN khác hồn tồn với Ethernet bởi vì tất cả các thiết bị sử dụng chuẩn 802.11 chỉ hoạt động theo chế độ half-duplex khi thu phát tín hiệu. Các thiết bị thu phát chỉ đóng vai trò là cầu nối như một hub nên dễ dàng tấn công dạng package sniffing
</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 9 </small>
• Khả năng phát hiện và chạm trên mạng không dây là không thể nên Wireless sử dụng CSMA/CA thay cho CSMA/CD sử dụng trên Ethernet LAN.
• Dữ liệu được mã hóa và xác thực theo chuẩn Wireless Equivalent Privacy (WEP) đối với các thiết bị theo chuẩn 802.11a,b,g sử dụng thuật tốn mã hóa dịng RC4 với khóa 64-128 bits (
• Bắt đầu từ chuẩn 802.11i các thiết bị WLAN sử dụng TKIP và EAP thay cho WEP với khả năng mạnh hơn
( hoặc www.dachb0den.com) spoofing và man-in the-middle attack
<b>2.3. Ứng dụng và người dùng </b>
<i><b>Ứng dụng: </b></i>
An ninh mức ứng dụng hầu hết được xác định bởi người phát triển. Ta có thể thắt chặt thêm an ninh nhưng nếu các ứng dụng đó tiềm tàng các kẽ hở thì rất khó có thể bảo vệ. Một số đặc tính an ninh ứng dụng:
</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 10 </small>
<b>3. Một số biện pháp bảo vệ </b>
<b>3.1. Vùng an toàn và phân đoạn </b>
Trong vấn đề xây dựng kiến trúc an ninh phải xác định các khu vực khác nhau về mức độ tin tưởng và an ninh của hệ thống mạng. Có những khu vực hồn tồn tin tưởng, là nơi những dữ liệu quan trọng được lưu trữ. Có những khu vực ta khơng tin tưởng tuyệt đối là nơi để chứa những dữ liệu kém quan trọng hơn và chúng có thể được chia sẻ cho các vùng hoặc mạng không tin tưởng. Hệ thống an ninh sẽ phải kiểm soát giao diện của các khu vực này một cách chặt chẽ
Khi chúng ta có thể xác định được quy trình hoạt động, những nguy cơ và các mối đe dọa cho hệ thống, và ta cũng xác định được các chức năng cần thiết cho hệ thống hoạt động thì ta có thể bắt đầu phân chia các chức năng thành các vùng đặc quyền (zones of trust). Để làm được công việc này ta phải xác định được mức độ tin cậy của các chức năng hoặc dữ liệu và cũng phải xác định mức độ rủi ro chấp nhận được để chức năng hoặc dữ liệu đó phục vụ hoạt động hệ thống. Đó là sự đánh đổi giữa những gì ta muốn thực hiện và những gì ta muốn tránh
Khu vực an ninh trên mạng thường liên kết với nhau và hoạt động của hệ thống yêu cầu sự phát triển cũng như trao đổi thông tin giữa các vùng với độ tin cậy khác nhau
</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 11 </small>
<b><small>Hình 2: Phân vùng độ tin cậy các khu vực mạng </small></b>
Firewalls, routers,VPN, hoặc các công nghệ và thiết bị kiểm tra quyền truy cập có thể được sử dụng để ngăn cách các khu vực với mức độ tin tưởng khác nhau (physical location). Thiết lập các quy định trong firewall hoặc ACL để đảm bảo sự truy nhập và trao đổi thông tin giữa các vùng.
Sự tin tưởng còn phải được xác định trên phương diện hoạt động của các giao dịch trong hệ thống (logical process). Rất nhiều các giao dịch yêu cầu trao đổi thông tin qua nhiều khu vực đặc quyền và giữa các khu vực đó phải có sự liên kết về an ninh để thực hiện giao dịch đó. Ví dụ: Web Server kiểm soát quyền thực thi COM của một yêu cầu truy cập Website trên hệ thống, hoặc hệ thống kiểm sốt thanh tốn thẻ tín dụng.
Phân khu tài nguyên trên mạng dựa vào các tiêu chí về quyền truy cập sẽ thiết lập được hệ thống an ninh tốt. Giảm tính phụ thuộc giữa các khu vực để dễ dàng quản lý
</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 12 </small>
<b><small>Hình 3: Phân vùng mạng với điều khiển truy cập bằng ACL </small></b>
<b>3.2. Virus và cách phịng chống </b>
Virus đầu tiên có tính chất phá hoại trên Internet xuất hiện từ tháng 5 năm 2000 là “Morris”, tham khảo tại bắt đầu cảnh báo ngành công nghệ mạng về vấn đề an ninh. Tiếp theo đó Internet worm Love Letter là một virus gây nhiều tai tiếng vì sự lan rộng qua email. Một trong những virus gây hại đầu tiên tới dữ liệu là “Sircam”, virus này lây nhiễm các tệp offices và tự động gửi cho các địa chỉ trong danh bạ
Virus máy tính ngày một phát triển, các biến thể của virus ngày một phức tạp. Theo thống kê của CERT khi một máy tính khởi động và kết nối vào Internet, thì chỉ sau 15 giây (trước đây là khoảng 45 giây – 2005) là đã có những loại virus tấn cơng tới máy tính đó.
</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 13 </small>
Việc viết các chương trình virus hoặc sở hữu các chương trình virus khơng phải khó khăn. Hiện nay trên mạng có rất nhiều các chương trình tạo virus và thậm chí cịn cho phép thiết lập khả năng hoạt động của virus. Những loại virus đó cịn cho phép thay đổi chữ ký, mã nhận biết để vượt qua các chương trình phịng chống virus hiện hành.
Với sự phát triển quá nhanh và phức tạp của virus, có thể từ các hackers, từ các tổ chức chính phủ (Magic Lantern-FBI), nhân viên công ty, học sinh sinh viên … Trên thực tế, khơng có biện pháp nào là hoàn toàn hữu hiệu với virus, dù cho các phần mềm phòng chống virus đã được cập nhật và phân loại thường xuyên. Các loại AntiVirus phổ biến gồm
- Personal AV, cài trên máy cá nhân, không quản lý tập trung
- Corporate AV, cài trên máy cá nhân với server (user có thể disable)
<b>- Gateway AV, cài trên Mail Server, chỉ chống được cho Mail Server cài đặt </b>
<b>- Network Gateway AV, chống được các loại download, nhưng có thể download qua </b>
<b>cổng khác nếu được thiết lập </b>
Internet virus chủ yếu phát tán và lây nhiễm thông qua các dịch vụ thường được sử dụng trên Internet như Email, Web, FTP … nên để phịng chống thì cần phải cập nhật thường xuyên các sản phẩm chống virus và virus list, các patches phần mềm và hệ thống, và hướng dẫn user trong hệ thống
<b>3.3. Xác thực định danh Proxy Servers </b>
Trong thực tế các hệ thống đều phải có Internet để thực hiện các công việc và người sử dụng thông thường không quan tâm hệ thống được kết nối như thế nào và dữ liệu được trao đổi qua những thành phần nào trên mạng. Người quản trị mạng phải nhận biết và thiết lập mơ hình kết nối trực tiếp, quan NAT, hoặc qua Proxy
</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 14 </small>
<b><small>Hình 4: Kết nối trực tiếp qua IP thực </small></b>
Cách đơn giản nhất là kết nối trực tiếp các thiết bị trong hệ thống với Internet qua các IP thực. Tuy nhiên đây là cách thức tốn kém và không đảm bảo. NAT (Network Address Translation) được sử dụng như một firewall bởi vì nó cho phép thiết lập các subsets. Tất cả các máy tính nội mạng đều có các IP nội mạng và không được sử dụng như IP Internet (192.168.x.x, 172.16.x.x, 10.x.x.x) và NAT được sử dụng như một Gateway. Nếu muốn triển khai Server ta có thể kết hợp thêm PAT (Port Address Translation). PAT cho phép các Server nhận kết nối từ Internet mà không cần thiết phải sử dụng IP thực, NAT server sẽ làm nhiệm vụ chuyển tất cả các liên kết tới máy chủ cần thiết (và thường không sử dụng các cổng mặc định)
</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 15 </small>
<b>3.4. Hệ thống phát hiện thâm nhập Intrusion Detection System (IDS) </b>
Phát hiện xâm nhập là quá trình theo dõi và phát hiện những sự truy cập hoặc điều khiển hệ thống trái phép. Hầu hết tất cả những người quản trị mạng đều phải thực hiện công việc này, kiểm tra các log files để xem xét các sự cố
ID có thể là các phần mềm cài đặt trên nền hệ điều hành như các phần mềm diệt virus, nhưng hiện nay các thiết bị lắng nghe đường truyền (network sniffing) được sử dụng nhiều hơn. Các hệ thống phát hiện xâm nhập có thể phát hiện các dạng thức tấn công như:
<b>- Impersonation attemps: Mạo danh </b>
- Password cracking: phá password
- Protocols attacks: tấn công các khe hở giao thức - Buffer Overflows: làm tràn bộ đệm
<small>Router </small>
<small>Real IP NAT Server </small>
</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 16 </small>
- Installation of rootkits: cài đặt phần mềm nghe lén - Software vulnerability exploit:
- Malicious code (viruses, worms, trojans) - Illigal data manipulation
- Unauthorized file access - DOS attacks: từ chối dịch vụ
Chúng ta cần hiểu các nguy cơ và khả năng lợi dụng các nguy cơ đó để có thể thiết lập hệ thống IDS ngăn chặn và phát hiện. Các nguy cơ được phân làm 2 loại đó là sử dụng sai quy định hoặc tấn cơng ... Free IDS: AIDE, Snort, Suricata …
<b>Network protocols attacks </b>
Rất nhiều các nguy cơ được phát hiện lợi dụng khe hở của giao thức mạng (tâng 3 – tầng 6 của mơ hình OSI). Các giao thức mạng như TCP/IP, NetBIOS, AppleTalk, IPX, BGP … định nghĩa phương pháp trao đổi dữ liệu chuẩn để đảm bảo mơ hình liên kết mở. Thơng tin được trao đổi bởi các gói tin (packets) và chúng có cấu trúc đặc biệt của từng giao thức nhưng thường chúng không được thiết kế để xử lý các gói tin khơng đúng cấu trúc
Tấn cơng giao thức mạng gồm có: o TCP/IP packet analysis o Flag Exploit
Tấn công ứng dụng
o Content Obfucation o Data Normalization
</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29"><b><small>Bài 2: Phân tích nguy cơ và định vị kẽ hở</small></b> <small> Trang 17 </small>
IDS types and detection models
- Host Based IDS: được cài đặt trên hệ thống muốn theo dõi, có thể là server, workstation, hoặc bất kỳ thiết bị nào (gateway, router, printer)
File integrity: kiểm tra tính tồn vẹn tệp bằng checksum hoặc hash Tripwire
Pedestal software
- Behavior monitoring: thực hiện kiểm soát theo thời gian thực các hoạt động ngờ vực. Ví dụ Windows HIDS sẽ thơng báo khi có tiến trình nào thực hiện thay đổi registry, password changes, hoặc privilege escalation. Trên Unix thường sẽ theo dõi khi download tệp ../etc/passwd hoặc sử dụng lệnh setuid và setgid
CISCO IDS Host Sensor Okena Storm Watch
Entercept Security Technologies
<i><b>Chúc Anh/ Chị học tập tốt! </b></i>
</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 1
Mật mã học là khái niệm đã có từ lâu đời, qua nhiều năm nghiên cứu, phát triển người ta đã đưa ra một số khái niệm căn bản để định nghĩa về mật mã học như sau:
<i><b> Mật mã học (cryptography) là khoa học nghiên cứu phương pháp che dấu thông tin. </b></i>
Thơng tin được che dấu vẫn có thể bị khám phá mà khơng cần biết khóa, ngành học đó
<i><b>gọi là thám mã (cryptanalysis). </b></i>
<i> Lý thuyết mật mã nghiên cứu đồng thời mật mã học và thám mã để đánh giá mức độ an </i>
<i>toàn và khả năng bảo mật thông tin </i>
Lịch sử mật mã học chính là lịch sử của những phương pháp mật mã học cổ điển - các phương pháp mật mã hóa với bút và giấy, đơi khi có hỗ trợ từ những dụng cụ đơn giản. Vào đầu thế kỷ 20, sự xuất hiện của các thiết bị cơ khí và điện cơ, chẳng hạn như máy Enigma, đã cung cấp những cơ chế phức tạp và hiệu quả hơn cho việc mật mã hóa. Sự ra đời và phát triển mạnh mẽ của ngành điện tử và máy tính trong những thập kỷ gần đây đã tạo điều kiện để mật mã học phát triển nhảy vọt lên một tầm cao mới
<b>1.1. Lịch sử phát triển </b>
Mật mã là ngành khoa học biến các thông điệp trở nên bí mật trước những người khác, những người khơng có quyền được biết về nội dung của thơng điệp. Thơng điệp đầu tiên đã được mã hóa bằng thuật tốn mã hóa dịch chuyển Ceasar, được sử dụng bởi quân đội của Julius Ceasar. Đây là một thuật toán mã hóa đơn giản, chỉ là lấy một chữ cái trong thông điệp gốc và thay thế bằng một chữ cái khác cách nhau một số xác định vị trí trong bảng chữ cái Alphabet. Ví dụ như chúng ta sẽ quy định số vị trí dịch chuyển là 4, ký tự a được dịch chuyển đi 4 vị trí sẽ là ký tự e trong bảng chữ cái Alphabet. Đây là một ví dụ về mã hóa mà người gửi và người nhận đã biết cách mà thông điệp được mã hóa và cách giải mã thơng
</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 2
điệp, vì vậy họ phải biết khóa mã và khóa giải mã. Nên thuật tốn mã hóa này được gọi là thuật tốn mã hóa đối xứng. Trải qua một thời gian dài phát triển thuật toán này ngày càng được cải tiến, đòi hỏi phải mất rất nhiều thời gian nếu muốn bẻ (tìm được nội dung của thơng điệp đã mã hóa).
Một số thuật tốn mã hóa mạnh đã được phát triển từ nguyên lý của thuật toán mà mã hóa đơn giản Julius Ceasar đã phát triển, thuật tốn mà mỗi chữ cái trong bảng Alphabet được thay bởi một ký tự khác trong bảng Alphabet. Nhưng vấn đề của thuật tốn này là nó có thể dễ dàng bị bẻ bởi phương pháp gọi là phân tính tần số, với phương pháp này bạn có thể phân tích số lần xuất hiện của mỗi ký tự trong thông điệp đã được mã hóa và gán ký tự phổ biến nhất bằng ký tự e (đây là một ký tự phổ biến nhất trong bảng chữ cái Alphabet, theo thứ tự các chữ cái phổ biến nhất là E, T, N, A, O, R, I, S, H). Và tiếp tục phân tích các chữ các có tần số xuất hiện lớn nhất lúc này thay thế bằng chữ cái có thứ tự tiếp theo trong dãy các chữ cái có tần suất xuất hiện lớn trong các từ tiếng Anh).
Nên đã có thuật tốn mã hóa mới được cải tiến gọi là Vigenere, thuật tốn khơng thể bị bẻ bởi phương pháp phân tích tần suất.
Một thuật tốn mã hóa mạnh khác, có vai trị lớn trong lịch sử mã hóa nhân loại là thuật tốn German enigma (người Đức bí ẩn). Thuật tốn này được thực tế hóa bằng cách dụng một máy để mã hóa ký tự, và để thực hiện những người nghiên cứu cũng đã xây dựng một máy tính có khả năng lập trình được gọi là Colossus, máy tính được coi là tổ tiên của các máy vi tính hiện đại.
<b>1.2. Mật mã học qua các giai đoạn </b>
Trải qua một quá trình hình thành và phát triển, mật mã học đã trở thành môn khoa học quan trọng hang đầu hiện nay khi lượng thông tin trên thế giới bùng nổ kèm theo các vấn đề an toàn trong q trình truyền thơng. Với lịch sử hình thành và phát triển, nghành mật mã học có thể chia ra làm các giai đoạn như sau:
</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 3 Mật mã học Cổ điển
Mật mã học Trung cổ
Mật mã học từ 1800 tới Thế chiến thứ II Mật mã học trong Thế chiến thứ II Mật mã học Hiện đại
<i>Mã hóa cổ điển: Các chữ tượng hình khơng tiêu chuẩn tìm thấy trên các bức tượng </i>
Ai Cập cổ đại (cách đây khoảng 4500). Văn tự cổ này chứa đựng các dấu tích của nền văn hóa Ai cập cổ đại huyền bí hay văn tự của người Trung Quốc cũng là một trong những văn tự cổ theo dạng tượng hình khơng được coi là dạng mật mã.
<i><small>Hình 1: Văn tự người Ai Cập cổ đại </small></i>
Mã hóa cổ điển được ghi nhận bởi người Hy Lạp cổ đại. Người Hy Lạp cổ đại đã xây dựng hệ thống mật mã theo phương pháp chuyển vị (transposition) sử dụng một dụng cụ gọi
</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 4
<b>là gậy mật mã (scytale). Trong cùng thời đại này, </b> Người Do Thái cổ (Hebrew) sáng
<b>tạo ra thuật tốn mã hóa atbash sử dụng phương pháp thay thế (substitution) các ký tự trong </b>
bảng chữ cái. Hai nền văn mình này được coi là nền móng của mật mã học hình thành và phát triển cho đến ngày nay.
<i><small>Hình 2: Gậy Scytale của người Hy Lạp </small></i>
<i>Mã hóa Trung cổ: Thời Trung cổ, hoàng đế La Mã nổi tiếng Gaius Julius Caesar đã </i>
tạo một công cụ lập mã rất đơn giản theo nguyên lý mã vòng (cyclic code) để trao đổi thông tin với các tướng lĩnh. Đế chế Lã Mã là một trong những quốc gia đi đầu trong lĩnh vực mã hóa. Thậm chí đã có những đề cập đến một cuốn sách nói về mật mã trong quân đội La Mã.
</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 5
<i><small>Hình 3: Vịng mã hóa Caesar </small></i>
<i>Mã hóa cận đại (từ 1800 - thế chiến thứ 2): Trong những giai đoạn tiếp theo, mật mã </i>
học được phát triển mạnh ở Châu Âu và chủ yếu chỉ được sử dụng trong lĩnh vực quân sự. Rất nhiều các hệ thống mã hóa được phát triển dựa trên nguyên lý thay thế (substitution) và chuyển vị (transposition). Các kỹ thuật thám mã cũng ngày càng phát triển, phương pháp phân tích tần suất xuất hiện của các ký tự đã phá vỡ hoàn toàn các hệ thống mã hóa sử dụng khóa là ký tự đơn (Monoalphabetic cipher). Alberti được cho là người đã sáng tạo ra kỹ thuật mật mã sử dụng khóa đa ký tự (Polyalphabetic cipher)
o Trong thế chiến II, các hệ thống mật mã cơ khí và cơ điện tử được sử dụng rộng rãi mặc dù các hệ thống thủ công vẫn được dùng tại những nơi không đủ điều kiện.
o Các kỹ thuật phân tích mật mã đã có những đột phá. Người Đức đã sử dụng rộng rãi một hệ thống máy rô tơ cơ điện tử, dưới nhiều hình thức khác nhau,
<b>có tên gọi là máy Enigma. </b>
</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 6
<i><small>Hình 4: Máy Enigma của Đức </small></i>
<i>Mã hóa cận đại (từ thừ thế chiến thứ 2 – 1970s):</i> Trong giai đoạn này, nhiều phương pháp toán học đã được ứng dụng trong mật mã học. William F. Friedman công bố tác phẩm “Index of Coincidence and its application in Cryptography” năm 1920 và ông được cho là cha đẻ của “mật mã học hiện đại”
Marian Rejewski và một nhóm các nhà mật mã học thành công trong việc bẻ gãy mật mã hệ thống Enigma của quân đội Đức và cung tấp mọi thông tin cho quân đồng minh, theo đánh giá rút ngắn cuộc chiến được 2 năm
</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 7
<i><small>Hình 5: William Frederick Friedman (1891 - 1969) </small></i>
Mã hóa hiện đại: Claude Shannon, được coi là cha đẻ của lý thuyết thơng tin. Những cơng trình to lớn của ông như “Lý thuyết về truyền thông trong các hệ thống bảo mật” và “Lý thuyết toán học trong truyền thông” - cùng với Warren Weaver đã thiết lập một nền tảng lý thuyết cơ bản cho mật mã học và thám mã học
Giữa thập niên kỷ 1970 được chứng kiến hai tiến bộ cơng chính lớn (công khai). o 17/03/1975: Công bố đề xuất Tiêu chuẩn mã hóa dữ liệu (DES). DES đã chính thức
được thay thế bởi AES (Advanced Encryption Standard) năm 2001
o 15/1/1977: Tiêu chuẩn Xử lý Thông tin của Liên bang sử dụng trong máy tính dân sự (FISP)
</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 8
<i><small>Hình 6: Claude Elwood Shannon </small></i>
<b>2. Mật mã và an tồn thơng tin </b>
Trao đổi thơng tin là mục đích cơ bản của các hệ thống mạng máy tính, và Internet là một mơi trường thuận lợi và lý tưởng để kết nối và truyền tin. Tuy nhiên đây là một môi trường mở được thiết kế để các hệ thống có thể dễ dàng trao đổi thơng tin.
Mã hóa là phương pháp hỗ trợ tốt nhất và cơ bản nhất hiện nay được sử dụng để bảo đảm an tồn thơng tin, chống lại những truy cập bất hợp pháp tới dữ liệu được trao đổi trong các kênh truyền tin không tin cậy (môi trường mở)
Hình sau mơ phỏng q trình truyền thơng tin trên mơi trường Internet và những hiểm họa của nó.
</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 9
<i><small>Hình 7: Trao đổi thông tin trên môi trường Internet </small></i>
<b>2.1. Một số khái niệm cơ bản </b>
<i><b>a) Người gửi và người nhận (Sender and Receiver) </b></i>
Mục đích của người gửi là muốn gửi thông điệp cho người nhận. Hơn nữa, người gửi muốn gửi thơng điệp một cách an tồn, anh ta muốn chắc chắn rằng kẻ đọc trộm không thể đọc hiểu được thông điệp mà anh ta gửi đi.
<i><b>b) Thơng điệp và mã hóa (Message and Encrytion) </b></i>
Thông điệp là đoạn văn bản rõ nghĩa (plaintext – đơi khi cịn được gọi là cleartext) Quá trình biến đổi bản rõ trở thành thơng điệp vơ nghĩa hay khác nghĩa hồn tồn
được gọi là mã hóa (encryption). Và thơng điệp đã được mã hóa gọi là ciphertext (bản mã), q trình biến đổi ciphertext trở lại plaintext gọi là giải mã (decryption).
Kỹ thuật và khoa học giữ cho thông điệp được an toàn như vậy gọi là mật mã (viết mã – cryptography), và nó được thực hiện bởi người viết mã (cryptographer).
Thám mã (cryptanalyst) là những người thực hiện kỹ thuật thám mã, kỹ thuật tìm lại bản rõ từ bản mã mà không cần phải biết khóa mã. Các nhà thám mã hiện đại thường là những người có kiến thức tốn học rất un sâu.
</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 10 Bản rõ thường được ký hiệu là M (message) hay P (Plaintext). Bản rõ có thể là dịng
các bit dữ liệu, tệp văn bản, tệp ảnh, dòng dữ liệu âm thanh số… Bản mã thường được ký hiệu là C. Nó cũng là dữ liệu dạng nhị phân.
Thủ tục mã hóa được ký hiệu là E hoạt động với dữ liệu là M, ký hiệu trong toán học là: E(M) = C.
Thủ tục giải mã được ký hiệu là D được thực hiện với dữ liệu là C tạo ra M: D(C)=M.
<i><b>c) An ninh thơng tin </b></i>
Tính bí mật: Chỉ có người nhận đã xác thực có thể lấy ra được nội dung của thông tin chứa đựng trong dạng đã mã hóa của nó. Nói các khác, nó khơng cho phép những người khác có thể có được bất kỳ thơng tin nào đáng kể về nội dung của thông điệp.
Nguyên vẹn: Người nhận cần có khả năng xác định được thơng tin có bị thay đổi trong q trình truyền đi hay khơng.
Tính xác thực: Người nhận cần có khả năng xác định người gửi và kiểm tra xem người gửi đó có thực sự gửi thông tin đi hay không.
Không thể chối bỏ: Người gửi không thể phủ nhận việc đã gửi thông điệp đi. Chống lập lại: Không cho phép gửi thông tin nhiều lần đến người nhận mà người
gửi khơng hề hay biết.
<i><b>d) Thuật tốn và khóa </b></i>
Thuật tốn mã hóa (Crytography Algorithms) hay cịn được gọi là viết mã (Cipher), là thủ tục toán học được sử dụng để mã hóa và giải mã.
Nếu sự an tồn của thuật tốn dựa trên việc giữ bí mật cách thức thuật tốn được thực hiện, nó được gọi là thuật toán giới hạn (Restricted Algorithms). Thuật toán bị giới hạn
</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40"><b>Bài 3: Lý thuyết mã hóa và an tồn thơng tin</b> Trang 11
có những ưu điểm, nhưng chúng lại khơng thể tương xứng với các chuẩn ngày nay. Với những nhóm làm việc, khi một người nào đó rời khỏi nhóm thì những người cịn lại phải thay đổi thuật tốn, vì anh ta có thể tiết lộ thuật tốn.
Tồi tệ hơn, thuật tốn bị giới hạn khơng cho phép chuẩn hóa. Tất cả các nhóm người sử dụng phải có thuật tốn riêng. Chẳng hạn nhóm khơng thể sử dụng phần mềm nào đó để phục vụ cho việc mã hóa, vì kẻ nghe trộm có thể cũng mua phần mềm như vậy và tìm hiểu thuật tốn. Họ phải tự thiết kế thuật toán và thực hiện, nếu khơng có ai trong nhóm là một người viết mã chun nghiệp, họ sẽ khơng thể biết được thuật tốn của họ có thực sự an tồn hay khơng.
Khóa có thể là một con số hay một dãy các ký tự được dùng để mã hóa và giải mã thơng điệp. Đối với thuật tốn mã hóa đối xứng thì có một khóa dùng chung cho cả q trình mã hóa và giải mã. Cịn đối với thuật tốn mã hóa cơng khai thì khóa cơng cộng được dùng để mã hóa dữ liệu, khóa riêng được dùng để giải mã dữ liệu.
Viết mã hiện đại xử lý vấn đề này với khóa (key), ký hiệu là K. Khóa này có thể là bất cứ một số nào đó có giá trị rất lớn, và phạm vi có thể của giá trị khóa được gọi là khơng gian khóa (keyspace). Cả q trình mã hóa và giải mã đều sử dụng khóa này, các hàm này sẽ có dạng:
Một số thuật tốn sẽ dụng khóa mã và khóa giải mã khác nhau. Chẳng hạn khóa mã K1 khác khóa giải mã K2. Trong trường hợp này các hàm sẽ có dạng: