You are on page 1of 128

Machine Translated by Google

Chương 6

Nguyên tắc cơ bản về mã hóa

Chương Mục tiêu


Sau khi đọc chương này và hoàn thành các bài tập, bạn sẽ có thể làm được những việc sau:

■ Giải thích các khái niệm mã hóa.

■ Mô tả lịch sử mã hóa và các phương pháp mã hóa hiện đại.

■ Sử dụng một số kỹ thuật giải mã đơn giản.

Giới thiệu
Mã hóa là một phần quan trọng của bất kỳ chiến lược an ninh mạng nào. Cho dù mạng có an toàn đến đâu, nếu dữ liệu không được mã

hóa khi lưu trữ hoặc trong quá trình truyền thì dữ liệu đó sẽ dễ bị tấn công. Ngay cả hầu hết các bộ định tuyến không dây cơ bản

dành cho người dùng gia đình hiện nay đều cung cấp tính năng mã hóa.

Chương này cung cấp thông tin tổng quan cơ bản về mã hóa và giải thích cách hoạt động của mã hóa để giúp bạn đưa ra quyết định

đúng đắn cho tổ chức của mình. Việc kiểm tra đầy đủ nằm ngoài phạm vi của cuốn sách này, nhưng chương này cung cấp “sự hiểu

biết của người quản lý” về mật mã để giúp bạn đặt những câu hỏi phù hợp về nhu cầu mã hóa của tổ chức bạn.

Lịch sử mã hóa
Mã hóa thông tin liên lạc là một ý tưởng rất cũ. Mọi người đã nhận thấy nhu cầu gửi những thông tin liên lạc riêng tư trong

hầu hết lịch sử của nền văn minh. Nhu cầu về quyền riêng tư ban đầu xuất phát từ nhu cầu quân sự và chính trị, nhưng đã mở rộng

ra ngoài phạm vi đó. Các doanh nghiệp cần giữ dữ liệu ở chế độ riêng tư để duy trì lợi thế cạnh tranh. Mọi người muốn giữ kín

một số thông tin nhất định, chẳng hạn như hồ sơ y tế và hồ sơ tài chính của họ.

140
Machine Translated by Google

Lịch sử mã hóa 141

Trong phần lớn lịch sử loài người, thông tin liên lạc riêng tư có nghĩa là mã hóa các thông cáo bằng văn

bản. Trong thế kỷ qua đã mở rộng sang truyền dẫn vô tuyến, thông tin liên lạc qua điện thoại và máy tính/

Truyền thông Internet. Trong vài thập kỷ qua, việc mã hóa các đường truyền được vi tính hóa đã thực sự trở

nên phổ biến. Trên thực tế, bạn có thể thấy thông tin liên lạc trên máy tính/Internet được mã hóa thường

xuyên hơn điện thoại hoặc radio. Môi trường kỹ thuật số giúp việc triển khai một loại mã hóa cụ thể trở nên

dễ dàng hơn nhiều.

Bất kể bản chất của dữ liệu bạn đang mã hóa hay chế độ truyền dữ liệu là gì, khái niệm cơ bản thực sự khá

đơn giản. Tin nhắn phải được thay đổi theo cách mà bất kỳ bên nào chặn chúng đều không thể đọc được dễ

dàng nhưng người nhận dự định có thể giải mã dễ dàng. Trong phần này bạn sẽ xem xét một vài phương pháp

mã hóa lịch sử. Lưu ý rằng đây là những phương pháp rất cũ và ngày nay chúng không thể được sử dụng để

liên lạc an toàn. Một người nghiệp dư có thể dễ dàng thực hiện được các phương pháp được thảo luận trong

phần này. Tuy nhiên, chúng là những ví dụ tuyệt vời để truyền đạt khái niệm mã hóa mà không cần phải kết hợp

nhiều phép toán, điều cần thiết cho các phương pháp mã hóa phức tạp hơn.

FYI: Tuyên bố sai về mã hóa

Như bạn sẽ thấy trong chương này, các khái niệm cơ bản về mã hóa rất đơn giản. Bất kỳ ai có kỹ năng lập trình thô sơ đều có

thể viết chương trình thực hiện một trong những phương pháp mã hóa đơn giản được xem xét ở đây. Tuy nhiên, những phương

pháp này không an toàn và chỉ được đưa vào để minh họa các khái niệm mã hóa cơ bản.

Thỉnh thoảng, một người nào đó mới làm quen với mã hóa phát hiện ra những phương pháp cơ bản này và với sự nhiệt tình cố

gắng tạo ra phương pháp mã hóa của riêng mình bằng cách thực hiện một số sửa đổi nhỏ.

Mặc dù đây có thể là một bài tập kích thích trí tuệ nhưng nó chỉ có vậy thôi. Người dùng không được đào tạo về toán học hoặc

mật mã nâng cao rất khó có thể gặp phải một phương pháp mã hóa mới hiệu quả để liên lạc an toàn.

Những người nghiệp dư thường xuyên đăng các tuyên bố rằng họ đã phát hiện ra thuật toán mã hóa mới nhất, không thể phá vỡ trên

nhóm tin Usenet sci.crypt (nếu bạn không quen với Usenet, những nhóm đó hiện có thể truy cập được thông qua liên kết Nhóm trên

www.google.com). Thuật toán của họ thường nhanh chóng bị phá vỡ.

Thật không may, một số người triển khai phương pháp như vậy vào một sản phẩm phần mềm và tiếp thị nó dưới dạng an toàn.

Một số nhà phân phối các phương pháp và phần mềm mã hóa không an toàn làm như vậy chỉ vì lòng tham đơn thuần và cố tình lừa

gạt công chúng không nghi ngờ. Những người khác làm như vậy chỉ vì thiếu hiểu biết, thành thật tin rằng phương pháp của họ là

ưu việt hơn. Các phương pháp đánh giá các yêu cầu mã hóa sẽ được thảo luận sau trong chương này.

Mật mã Caesar
Một trong những phương pháp mã hóa lâu đời nhất được ghi lại là mật mã Caesar. Tên này dựa trên tuyên bố

rằng phương pháp này đã được sử dụng bởi các hoàng đế La Mã cổ đại. Phương pháp này dễ thực hiện, không

cần hỗ trợ về mặt kỹ thuật. Bạn chọn một số số để dịch chuyển từng chữ cái trong văn bản. Ví dụ, nếu văn bản là

Con mèo
Machine Translated by Google

142 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

và bạn chọn dịch chuyển bằng hai chữ cái thì tin nhắn sẽ trở thành

C ecv

Hoặc, nếu bạn chọn dịch chuyển theo ba chữ cái, nó sẽ trở thành

D fdw

Trong ví dụ này, bạn có thể chọn bất kỳ mẫu dịch chuyển nào bạn muốn. Bạn có thể dịch sang phải hoặc trái

theo bất kỳ số lượng khoảng trống nào bạn muốn. Bởi vì đây là một phương pháp đơn giản dễ hiểu nên nó là

một nơi tốt để bạn bắt đầu nghiên cứu về mã hóa. Tuy nhiên, nó cực kỳ dễ bị crack. Bạn thấy đấy, bất kỳ

ngôn ngữ nào cũng có một số chữ cái và tần suất từ nhất định, nghĩa là một số chữ cái được sử dụng thường

xuyên hơn những chữ cái khác. Trong tiếng Anh, từ có một chữ cái phổ biến nhất là a. Từ có ba chữ cái phổ

biến nhất là the. Chỉ biết hai đặc điểm này thôi cũng có thể giúp bạn giải mã được mật mã Caesar. Ví dụ:

nếu bạn thấy một chuỗi các chữ cái dường như vô nghĩa và nhận thấy rằng một từ có ba chữ cái thường xuyên

được lặp lại trong tin nhắn, bạn có thể dễ dàng phỏng đoán rằng từ này là —và khả năng cao là điều này đúng.

Hơn nữa, nếu bạn thường xuyên nhận thấy một từ có một chữ cái trong văn bản thì rất có thể đó là chữ cái a.
Bây giờ bạn đã tìm được sơ đồ thay thế cho a, t, h và e. Bây giờ bạn có thể dịch tất cả các chữ cái đó

trong tin nhắn và cố gắng phỏng đoán phần còn lại hoặc chỉ cần phân tích các chữ cái thay thế được sử dụng

cho a, t, h và e và rút ra mật mã thay thế được sử dụng cho tin nhắn này. Việc giải mã một tin nhắn kiểu

này thậm chí không cần đến máy tính. Một người không có nền tảng về mật mã có thể làm điều đó trong vòng

chưa đầy mười phút bằng bút và giấy.

Mật mã Caesar thuộc một loại thuật toán mã hóa được gọi là mật mã thay thế. Tên này xuất phát từ thực tế là

mỗi ký tự trong tin nhắn không được mã hóa được thay thế bằng một ký tự trong văn bản được mã hóa. Sơ đồ

thay thế cụ thể được sử dụng (ví dụ: 12 hoặc 11) trong mật mã Caesar được gọi là bảng chữ cái thay thế

(nghĩa là b thay thế cho a, u thay thế cho t, v.v.). Bởi vì một chữ cái luôn thay thế cho một chữ cái khác

nên mật mã Caesar đôi khi được gọi là phương pháp thay thế bằng một bảng chữ cái, nghĩa là nó sử dụng một

sự thay thế duy nhất để mã hóa.

Mật mã Caesar, giống như tất cả các mật mã lịch sử, đơn giản là quá yếu để sử dụng hiện đại. Nó được trình

bày ở đây chỉ để giúp bạn hiểu các khái niệm về mật mã.

THỐI 13

ROT 13 là một mật mã thay thế bảng chữ cái duy nhất khác. Tất cả các ký tự được xoay 13 ký tự thông qua

bảng chữ cái.

Cụm từ

CON MÈO

trở thành

N PNG

ROT 13 là mật mã thay thế đơn.


Machine Translated by Google

Lịch sử mã hóa 143

Mật mã Atbash
Những người ghi chép tiếng Do Thái sao chép sách Giê-rê-mi đã sử dụng mật mã Atbash. Sử dụng nó rất đơn giản; bạn

chỉ cần đảo ngược bảng chữ cái. Theo tiêu chuẩn hiện đại, đây là một mật mã nguyên thủy và dễ phá. Tuy nhiên, nó sẽ

giúp bạn hiểu được cách thức hoạt động của mật mã.

Mật mã Atbash là một mã tiếng Do Thái thay thế chữ cái đầu tiên của bảng chữ cái cho chữ cái cuối cùng và chữ cái

thứ hai cho chữ cái thứ hai đến chữ cái cuối cùng, v.v. Nó chỉ đơn giản là đảo ngược bảng chữ cái; ví dụ: A trở

thành Z, B trở thành Y, C trở thành X, v.v.

Mã này, giống như mật mã Caesar và ROT 13, cũng là mật mã thay thế một lần.

Thay thế nhiều bảng chữ cái


Cuối cùng, một cải tiến nhỏ về mật mã Caesar đã được phát triển, được gọi là phép thay thế nhiều bảng chữ cái (còn

gọi là phép thay thế đa bảng chữ cái). Trong sơ đồ này, bạn chọn nhiều số để dịch chuyển các chữ cái (nghĩa là nhiều

bảng chữ cái thay thế). Ví dụ: nếu bạn chọn ba bảng chữ cái thay thế (12, 22, 13), thì

CON MÈO

trở thành

C ADV

Lưu ý rằng chữ cái thứ tư bắt đầu lại bằng số 12 khác và bạn có thể thấy chữ A đầu tiên đã được chuyển thành C

và chữ A thứ hai được chuyển thành D. Điều này khiến việc giải mã văn bản cơ bản trở nên khó khăn hơn. Mặc dù khó

giải mã hơn mật mã Caesar nhưng nó không quá khó giải mã. Nó có thể được thực hiện bằng bút và giấy đơn giản và

một chút nỗ lực. Nó có thể bị bẻ khóa nhanh chóng bằng máy tính. Trên thực tế, ngày nay không ai sử dụng phương

pháp như vậy để gửi bất kỳ tin nhắn thực sự an toàn nào vì loại mã hóa này được coi là rất yếu.

Một trong những mật mã đa bảng chữ cái được biết đến rộng rãi nhất là mật mã Vigenère. Chủ đề này sẽ được thảo luận

chi tiết sau trong chương này. Mật mã này được phát minh vào năm 1553 bởi Giovan Battista Bellaso. Đó là một

phương pháp mã hóa văn bản chữ cái bằng cách sử dụng một loạt các mật mã bảng chữ cái đơn khác nhau được chọn dựa

trên các chữ cái của từ khóa. Thuật toán này sau đó được gán sai cho Blaise de Vigenère, và do đó ngày nay nó được

gọi là “mật mã Vigenère”, mặc dù Vigenère không thực sự phát minh ra nó.

Mật mã đa bảng chữ cái an toàn hơn mật mã thay thế đơn. Tuy nhiên, chúng vẫn không được chấp nhận trong việc sử

dụng mật mã hiện đại. Các hệ thống phân tích mật mã dựa trên máy tính có thể bẻ khóa các phương pháp mã hóa lịch sử

(cả bảng chữ cái đơn và đa bảng chữ cái) một cách dễ dàng. Mật mã bảng chữ cái thay thế một lần và bảng chữ cái thay

thế nhiều lần được thảo luận chỉ để cho bạn thấy lịch sử của mật mã và giúp bạn hiểu về cách thức hoạt động của mật

mã.

Hàng rào đường sắt

Tất cả các mật mã trước đó mà chúng ta đã kiểm tra đều là mật mã thay thế. Một cách tiếp cận khác đối với mật mã

cổ điển là mật mã chuyển vị. Mật mã hàng rào đường sắt có thể là sự chuyển vị được biết đến rộng rãi nhất
Machine Translated by Google

144 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

mật mã. Bạn chỉ cần lấy tin nhắn bạn muốn mã hóa và thay đổi từng chữ cái trên một hàng khác nhau. Vì vậy “tấn công vào lúc bình

minh” được viết là

Một tcadw

tat MỘT

Tiếp theo, bạn viết văn bản đọc từ trái sang phải như bình thường, từ đó tạo ra

atcadwtaktan

Để giải mã tin nhắn, người nhận phải viết nó ra thành hàng:

Một tcadw

tat MỘT

Sau đó người nhận sẽ xây dựng lại tin nhắn ban đầu. Hầu hết các văn bản đều sử dụng hai hàng làm ví dụ; tuy nhiên,

điều này có thể được thực hiện với bất kỳ số hàng nào bạn muốn sử dụng.

Vigenère
Như chúng ta đã thảo luận trước đây, mật mã đa bảng chữ cái sử dụng nhiều phép thay thế để phá vỡ tần
số của chữ cái và từ. Chúng ta hãy xem xét một ví dụ đơn giản. Hãy nhớ rằng mật mã Caesar có một sự
dịch chuyển, ví dụ như sự dịch chuyển +2 (hai bên phải). Mật mã thay thế đa bảng chữ cái sẽ sử dụng nhiều ca.
Có lẽ là +2, –1, +1, +3. Khi bạn đọc đến chữ cái thứ năm, bạn chỉ cần bắt đầu lại. Vì vậy, hãy xem
xét từ Tấn công, được mã hóa

A (1) + 2 = 3 hoặc C

T (20) –1 = 19 hoặc S

T(20) +1 = 21 hoặc U

A (1) +3 = 4 hoặc D

C (3) +2 = 5 hoặc E

K (11) –1 = 10 hoặc J

Vì vậy, bản mã là CSUDEJ. Cho rằng mỗi chữ cái có bốn khả năng thay thế, tần số của chữ cái và từ
bị gián đoạn đáng kể.

Có lẽ mật mã đa bảng chữ cái được biết đến rộng rãi nhất là mật mã Vigenère. Mật mã này thực ra được phát minh

vào năm 1553 bởi Giovan Battista Bellaso, mặc dù nó được đặt theo tên của Blaise de Vigenère. Đó là một phương

pháp mã hóa văn bản chữ cái bằng cách sử dụng một loạt các mật mã bảng chữ cái đơn khác nhau được chọn dựa trên

các chữ cái của từ khóa. Bellaso đã thêm khái niệm sử dụng bất kỳ từ khóa nào mà người ta có thể muốn, do đó làm

cho việc lựa chọn bảng chữ cái thay thế trở nên khó tính toán.
Machine Translated by Google

Lịch sử mã hóa 145

bí ẩn
Thực sự không thể có một cuộc thảo luận về mật mã mà không nói về Enigma. Trái ngược với những quan
niệm sai lầm phổ biến, Enigma không phải là một cỗ máy đơn lẻ mà là một nhóm máy móc. Phiên bản đầu
tiên được phát minh bởi kỹ sư người Đức Arthur Scherbius vào gần cuối Thế chiến thứ nhất. Nó được
nhiều quân đội khác nhau sử dụng, không chỉ quân Đức Quốc xã.

Một số văn bản quân sự được mã hóa bằng phiên bản Enigma đã bị phá bởi các nhà giải mã người Ba
Lan Marian Rejewski, Jerzy Rozycki và Henryk Zygalski. Về cơ bản, cả ba đã thiết kế ngược một cỗ
máy Enigma đang hoạt động và sử dụng thông tin đó để phát triển các công cụ phá mật mã Enigma, bao
gồm một công cụ có tên là bom mật mã.

Cốt lõi của máy Enigma là các rôto hoặc đĩa được sắp xếp thành một vòng tròn với 26 chữ cái trên
đó. Các cánh quạt đã được xếp hàng. Về cơ bản, mỗi rôto đại diện cho một mật mã thay thế duy nhất
khác nhau. Bạn có thể coi Enigma như một loại mật mã cơ học đa bảng chữ cái. Người vận hành máy
Enigma sẽ nhận được một tin nhắn ở dạng văn bản gốc và sau đó nhập tin nhắn đó vào Enigma. Đối với
mỗi chữ cái được gõ vào, Enigma sẽ cung cấp một bản mã khác nhau dựa trên bảng chữ cái thay thế
khác nhau. Người nhận sẽ nhập văn bản mật mã, lấy ra văn bản gốc, miễn là cả hai máy Enigma đều có
cùng cài đặt rôto.

Trên thực tế, có một số biến thể của máy Enigma. Máy Enigma của Hải quân cuối cùng đã bị bẻ khóa bởi
các nhà mật mã người Anh làm việc tại Bletchley Park nổi tiếng hiện nay. Alan Turing và một nhóm các
nhà phân tích cuối cùng đã phá được cỗ máy Hải quân Enigma. Nhiều nhà sử học cho rằng điều này đã
rút ngắn Thế chiến II tới hai năm. Câu chuyện này là nền tảng cho bộ phim The Imitation Game năm 2014.

Hoạt động nhị phân


Một phần của mật mã đối xứng hiện đại liên quan đến việc sử dụng các phép toán nhị phân. Các phép toán khác

nhau trên số nhị phân (các số chỉ gồm số 0 và số 1) rất quen thuộc với các lập trình viên và sinh viên lập

trình. Nhưng đối với những độc giả không quen thuộc với chúng, sẽ có lời giải thích ngắn gọn sau đây. Khi

làm việc với số nhị phân, ba phép toán không được tìm thấy trong toán học thông thường: phép toán AND, OR

và XOR. Mỗi cái được minh họa tiếp theo.

Để thực hiện phép toán AND, bạn lấy hai số nhị phân và so sánh chúng từng vị trí một.
Nếu cả hai số đều có số một ở cả hai vị trí thì số kết quả là số một. Nếu không thì số kết quả là
số 0, như bạn thấy ở đây:

1 1 0 1

1 0 0 1
-------

1 0 0 1
Machine Translated by Google

146 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

HOẶC

Phép toán OR kiểm tra xem liệu có một hoặc cả hai số ở một vị trí nhất định hay không. Nếu vậy thì số kết

quả là một. Nếu không, số kết quả sẽ bằng 0, như bạn thấy ở đây:

1 1 0 1

1 0 0 1
-------

1 1 0 1

XOR

Hoạt động XOR tác động nhiều nhất đến việc nghiên cứu mã hóa của bạn. Nó kiểm tra xem liệu có một số một ở

một vị trí nhất định hay không, nhưng không có cả hai số ở vị trí đó. Nếu nó ở một số mà không phải ở số kia

thì số kết quả là một. Nếu không, số kết quả sẽ bằng 0, như bạn thấy ở đây:

1 1 0 1

1 0 0 1
-------

0 1 0 0

XORing có một đặc tính thú vị là nó có thể đảo ngược được. Nếu bạn XOR số kết quả với số thứ hai, bạn sẽ

lấy lại số đầu tiên. Và nếu bạn XOR số kết quả với số đầu tiên, bạn sẽ nhận được số thứ hai.

0 1 0 0

1 0 0 1
-------

1 1 0 1

Mã hóa nhị phân sử dụng thao tác XOR mở ra cơ hội cho một số mã hóa khá đơn giản. Lấy bất kỳ tin nhắn nào

và chuyển đổi nó thành số nhị phân, sau đó XOR tin nhắn đó bằng một số khóa. Chuyển đổi tin nhắn thành số

nhị phân là một quá trình gồm hai bước đơn giản. Đầu tiên, chuyển đổi tin nhắn sang mã ASCII, sau đó chuyển

đổi các mã đó thành số nhị phân. Mỗi chữ cái/số sẽ tạo ra một số nhị phân 8 bit.

Sau đó, bạn có thể sử dụng một chuỗi số nhị phân ngẫu nhiên có độ dài bất kỳ làm khóa. Chỉ cần XOR tin nhắn

của bạn bằng khóa để nhận văn bản được mã hóa, sau đó XOR lại bằng khóa đó để truy xuất tin nhắn gốc.

Phương pháp này dễ sử dụng và rất tốt cho sinh viên khoa học máy tính; tuy nhiên, nó không hoạt động tốt đối với các liên lạc

thực sự an toàn vì tần số từ và chữ cái cơ bản vẫn còn. Điều này tiết lộ những manh mối có giá trị mà ngay cả một nhà mật mã

nghiệp dư cũng có thể sử dụng để giải mã tin nhắn. Tuy nhiên, nó cung cấp sự giới thiệu có giá trị về khái niệm mã hóa một

khóa, sẽ được thảo luận chi tiết hơn trong phần tiếp theo. Mặc dù XOR văn bản đơn giản không phải là phương pháp thường

được sử dụng nhưng các phương pháp mã hóa một khóa vẫn được sử dụng rộng rãi ngày nay. Ví dụ: bạn có thể chỉ cần bao gồm một

sự thay thế nhiều bảng chữ cái sau đó được XOR với một số luồng bit ngẫu nhiên—các biến thể của chúng tồn tại trong một số ít

phương pháp mã hóa thực tế hiện đang được sử dụng.


Machine Translated by Google

Tìm hiểu về các phương pháp mã hóa hiện đại 147

Các phương pháp mã hóa hiện đại, cũng như máy tính, khiến việc giải mã trở thành một ngành khoa học khá tiên tiến.

Vì vậy, việc mã hóa phải phức tạp không kém thì mới có cơ hội thành công.

Những gì bạn đã thấy cho đến nay về mã hóa chỉ nhằm mục đích giáo dục. Như đã lưu ý nhiều lần, bạn sẽ không có một

hệ thống thực sự an toàn nếu bạn triển khai bất kỳ sơ đồ mã hóa nào đã đề cập trước đó. Bạn có thể cảm thấy rằng

điều này đã được cường điệu hóa trong văn bản này. Tuy nhiên, việc có được cái nhìn chính xác về những phương

pháp mã hóa nào hoạt động và không hoạt động là rất quan trọng. Bây giờ là lúc thảo luận về một số phương pháp

thực sự được sử dụng ngày nay.

Các trang web sau đây cung cấp thêm thông tin về mật mã:

■ Khóa học về Mật mã học trên Coursera: https://www.coursera.org/course/crypto

■ Khóa học mật mã ứng dụng trên Udacity: https://www.udacity.com/course/applied-

mật mã--cs387

■ Phòng thí nghiệm nghiên cứu mật mã: www.cypher.com.au/crypto_history.htm

Việc hiểu các phương pháp đơn giản được mô tả ở đây và các phương pháp khác do các trang web nói trên cung cấp

sẽ giúp bạn hiểu được cách thức hoạt động của mật mã cũng như những gì liên quan đến việc mã hóa thư. Bất kể bạn

có tiếp tục nghiên cứu các phương pháp mã hóa phức tạp, hiện đại hay không, việc có một số ý tưởng cơ bản về

cách mã hóa hoạt động ở cấp độ khái niệm là điều quan trọng. Về nguyên tắc, việc nắm bắt cơ bản về cách hoạt động

của mã hóa sẽ giúp bạn có thể hiểu rõ hơn các khái niệm về bất kỳ phương pháp mã hóa nào bạn gặp trong thế giới

thực.

FYI: Nghề nghiệp trong ngành Mật mã học

Một số độc giả có thể quan tâm đến sự nghiệp trong lĩnh vực mật mã. Kiến thức cơ bản về mật mã là đủ
để trở thành một quản trị viên bảo mật, nhưng không đủ để trở thành một nhà mật mã. Nền tảng toán học
vững chắc là điều cần thiết để khám phá sâu về mật mã, đặc biệt khi theo đuổi sự nghiệp trong lĩnh vực
này. Một nền tảng đầy đủ bao gồm tối thiểu chuỗi phép tính hoàn chỉnh (thông qua các phương trình vi
phân), thống kê thông qua lý thuyết xác suất cơ bản, đại số trừu tượng, đại số tuyến tính và lý
thuyết số. Một chuyên ngành kép về khoa học máy tính và toán học là lý tưởng. Yêu cầu tối thiểu một
môn toán phụ và việc làm quen với các phương pháp mã hóa hiện có là rất quan trọng.

Tìm hiểu về các phương pháp mã hóa hiện đại


Không có gì ngạc nhiên khi các phương pháp mã hóa hiện đại an toàn hơn các phương pháp trước đây vừa được thảo

luận. Tất cả các phương pháp được thảo luận trong phần này đều được sử dụng ngày nay và được coi là khá an toàn.

Lưu ý rằng DES là một ngoại lệ, nhưng chỉ do độ dài khóa ngắn của nó.
Machine Translated by Google

148 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

Trong một số trường hợp, thuật toán đằng sau những phương pháp này đòi hỏi sự hiểu biết sâu sắc về toán học. Lý

thuyết số thường tạo cơ sở cho các thuật toán mã hóa. May mắn thay, vì mục đích của chúng tôi, việc có được thông

tin chi tiết chính xác về các thuật toán mã hóa này không quan trọng; điều này có nghĩa là bạn không cần có nền tảng

toán học vững chắc để theo dõi tài liệu này. Quan trọng hơn là sự hiểu biết chung về cách hoạt động của một phương

thức mã hóa cụ thể và mức độ an toàn của nó.

Mã hóa đối xứng


Mã hóa đối xứng đề cập đến các phương pháp trong đó cùng một khóa được sử dụng để mã hóa và giải mã bản rõ.

Tiêu chuẩn mã hóa dữ liệu

Tiêu chuẩn Mã hóa Dữ liệu, hay còn gọi là DES, được IBM phát triển vào đầu những năm 1970 và công bố rộng rãi vào

năm 1976. DES sử dụng hệ thống khóa đối xứng. Hãy nhớ lại phần thảo luận trước đó của chúng ta rằng điều này có

nghĩa là cùng một khóa được sử dụng để mã hóa và giải mã tin nhắn. DES sử dụng các khóa ngắn và dựa vào các thủ tục

phức tạp để bảo vệ thông tin của mình. Thuật toán DES thực tế khá phức tạp. Tuy nhiên, khái niệm cơ bản như sau:

1. Dữ liệu được chia thành các khối 64 bit và các khối đó sau đó được chuyển đổi.

2. Sau đó, dữ liệu được chuyển đổi sẽ được xử lý bằng 16 vòng mã hóa riêng biệt, bao gồm các phép thay thế,

dịch chuyển bit và các phép toán logic bằng cách sử dụng khóa 56 bit.

3. Cuối cùng, dữ liệu được chuyển đổi lần cuối.

Thông tin thêm về DES có tại trang web Tiêu chuẩn Xử lý Thông tin Liên bang tại https://csrc.nist.gov/csrc/media/

publications/fips/46/3/archive/1999-10-25/documents/fips46-3. pdf.

Mô tả chi tiết hơn về DES được đưa ra dưới đây, nhưng bạn có thể bỏ qua phần này nếu muốn.

DES sử dụng khóa mật mã 56 bit được áp dụng cho khối 64 bit. Trên thực tế, có một khóa 64 bit, nhưng một bit của

mỗi byte thực sự được sử dụng để phát hiện lỗi, chỉ để lại 56 bit cho các thao tác khóa thực tế.

DES là mật mã Feistel có 16 vòng và khóa tròn 48 bit cho mỗi vòng. Khóa vòng chỉ là khóa phụ được lấy từ khóa mật mã

mỗi vòng, theo thuật toán lịch trình khóa. Chức năng chung của DES tuân theo phương pháp Feistel chia khối 64 bit

thành hai nửa (mỗi nửa 32 bit; đây không phải là mật mã Feistel không cân bằng), áp dụng hàm tròn cho một nửa, sau

đó XOR đầu ra đó với nửa còn lại.

Vấn đề đầu tiên cần giải quyết là lịch trình chính. DES tạo khóa phụ mới mỗi vòng như thế nào? Ý tưởng là lấy khóa

56 bit ban đầu và hoán đổi nó một chút trong mỗi vòng, sao cho mỗi vòng áp dụng một khóa hơi khác nhau, nhưng một

khóa dựa trên khóa mật mã ban đầu. Để tạo các khóa tròn, khóa 56 bit được chia thành hai nửa 28 bit và các nửa đó

được dịch chuyển vòng tròn sau mỗi vòng một hoặc hai bit. Điều này sẽ cung cấp một khóa phụ khác nhau cho mỗi vòng.

Trong phần tạo khóa vòng của thuật toán (hãy nhớ rằng phần này được gọi là lịch trình khóa) mỗi vòng, hai nửa khóa

mật mã ban đầu (56 bit khóa mà hai điểm cuối của mã hóa phải trao đổi) được dịch chuyển. một số tiền cụ thể.
Machine Translated by Google

Tìm hiểu về các phương pháp mã hóa hiện đại 149

Khi khóa vòng đã được tạo cho vòng hiện tại, bước tiếp theo là xử lý một nửa khối ban đầu sẽ được đưa vào hàm

vòng. Hãy nhớ lại rằng hai nửa mỗi nửa có 32 bit. Khóa tròn là 48 bit. Điều đó có nghĩa là phím tròn không khớp với

kích thước của nửa khối mà nó sẽ được áp dụng. Bạn thực sự không thể XOR khóa tròn 48 bit với nửa khối 32 bit, trừ

khi bạn đơn giản bỏ qua 16 bit của khóa tròn. Nếu bạn làm như vậy, về cơ bản bạn sẽ làm cho phím tròn ngắn hơn

một cách hiệu quả và do đó kém an toàn hơn, vì vậy đây không phải là một lựa chọn tốt.

Nửa 32 bit cần được mở rộng thành 48 bit trước khi được XOR bằng phím tròn. Điều này được thực hiện bằng cách

sao chép một số bit để nửa 32 bit trở thành 48 bit.

Quá trình mở rộng này thực sự khá đơn giản. 32 bit cần mở rộng sẽ được chia thành các phần 4 bit. Các bit ở mỗi

đầu được nhân đôi. Nếu bạn chia 32 cho 4 thì câu trả lời là 8. Vậy có 8 nhóm 4 bit này. Nếu bạn sao chép các bit

cuối của mỗi nhóm, điều đó sẽ thêm 16 bit vào 32 bit ban đầu, do đó cung cấp tổng cộng 48 bit.

Điều quan trọng cần lưu ý là các bit ở mỗi đầu đã được sao chép; đây sẽ là mục quan trọng sau này trong hàm round.

Có lẽ ví dụ này sẽ giúp bạn hiểu điều gì đang xảy ra vào thời điểm này. Giả sử 32 bit như được hiển thị ở đây:

11110011010111111111000101011001

Bây giờ chia nó thành 8 phần, mỗi phần 4 bit, như được hiển thị ở đây:

1111 0011 0101 1111 1111 0001 0101 1001

Bây giờ mỗi cái này đều có các bit cuối được sao chép, như bạn thấy ở đây:

1111 trở thành 111111

0011 trở thành 000111

0101 trở thành 001011

1111 trở thành 111111

1111 trở thành 111111

0001 trở thành 000011

0101 trở thành 001011

1001 trở thành 110011

Chuỗi 48 bit kết quả hiện được XOR bằng khóa tròn 48 bit. Đó là phạm vi phím tròn được sử dụng trong mỗi vòng.

Bây giờ nó đã được loại bỏ và ở vòng tiếp theo, một khóa tròn 48 bit khác sẽ được lấy từ hai nửa 28 bit của khóa

mật mã 56 bit.

Bây giờ chúng ta có đầu ra 48 bit của thao tác XOR. Bây giờ nó được chia thành tám phần, mỗi phần 6 bit. Đối với

phần còn lại của phần giải thích này, chúng tôi sẽ chỉ tập trung vào một trong các phần 6 bit đó, nhưng hãy nhớ

rằng quy trình tương tự được thực hiện cho tất cả tám phần.
Machine Translated by Google

150 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

Phần 6 bit được sử dụng làm đầu vào cho hộp s. Hộp s là một bảng nhận đầu vào và tạo ra đầu ra dựa trên đầu vào đó.

Nói cách khác, nó là hộp thay thế thay thế các giá trị mới cho đầu vào. Các hộp s được sử dụng trong DES đã được

xuất bản, hộp đầu tiên được hiển thị trong Hình 6-1.

HÌNH 6-1 Hộp DES đầu tiên

Lưu ý đây chỉ đơn giản là một bảng tra cứu. 2 bit ở hai đầu được hiển thị ở cột bên trái và 4 bit ở giữa được hiển

thị ở hàng trên cùng. Chúng khớp với nhau và giá trị kết quả là đầu ra của hộp s.

Ví dụ: với các số minh họa trước đây mà chúng tôi đang sử dụng, khối đầu tiên của chúng tôi sẽ là 111111. Vì vậy,

bạn tìm thấy 1xxxx1 ở bên trái và x1111x ở trên cùng. Giá trị kết quả là 13 ở dạng thập phân hoặc 1101 ở dạng nhị phân.

Khi kết thúc việc này, bạn đã tạo ra 32 bit là đầu ra của hàm tròn. Sau đó, để phù hợp với cấu trúc Feistel, chúng

được XOR với 32 bit không được nhập vào hàm tròn và hai nửa được hoán đổi cho nhau. DES là mật mã Feistel 16 vòng,

nghĩa là quá trình này được lặp lại 16 lần.

Chỉ còn hai phần còn lại để thảo luận về DES. Đầu tiên là hoán vị ban đầu, được gọi là IP, sau đó là hoán vị cuối

cùng, nghịch đảo của IP.

Một lợi thế mà DES mang lại là tính hiệu quả. Một số triển khai DES cung cấp tốc độ thông lượng dữ liệu ở mức hàng

trăm megabyte mỗi giây. Nói một cách dễ hiểu, điều này có nghĩa là nó có thể mã hóa rất nhiều dữ liệu một cách nhanh

chóng. Bạn có thể cho rằng 16 bước sẽ khiến quá trình mã hóa diễn ra khá chậm; tuy nhiên, đó không phải là trường

hợp sử dụng thiết bị máy tính hiện đại. Vấn đề với DES cũng giống như vấn đề mà tất cả các thuật toán khóa đối xứng

đều gặp phải: Làm thế nào để bạn truyền khóa mà không bị xâm phạm? Vấn đề này đã dẫn đến sự phát triển của mã hóa

khóa công khai.

Một ưu điểm khác của DES là tính phức tạp trong việc xáo trộn văn bản. DES sử dụng 16 vòng riêng biệt để xáo trộn

văn bản. Điều này tạo ra một văn bản bị xáo trộn rất khó phá vỡ. DES không còn được sử dụng vì kích thước khóa ngắn

không còn đủ để chống lại các cuộc tấn công vũ phu. Tuy nhiên, cấu trúc tổng thể, được gọi là mạng Feistel hoặc mật

mã Feistel, là cơ sở cho nhiều thuật toán vẫn được sử dụng cho đến ngày nay, chẳng hạn như Blowfish.

Như đã đề cập, DES sử dụng một khóa không còn được coi là đủ dài nữa. Máy tính hiện đại có thể bẻ khóa 56-bit bằng

vũ lực. Thuật toán được sử dụng trong DES thực sự khá tốt. Đây là cấu trúc Feistel được sử dụng rộng rãi đầu tiên

và cấu trúc đó vẫn là cơ sở tốt cho mật mã khối.

Khi máy tính trở nên mạnh mẽ hơn, việc tìm kiếm giải pháp thay thế DES bắt đầu. Cuối cùng, mật mã Rijndael sẽ được

sử dụng cho Tiêu chuẩn mã hóa nâng cao (AES) và sẽ thay thế DES.

Tạm thời, ý tưởng là sử dụng nhiều khóa DES để mã hóa. Lý tưởng nhất là sử dụng ba khóa 56 bit riêng biệt, do đó

giải pháp tạm thời này được gọi là triple-DES hoặc 3DES. Trong một số trường hợp chỉ có hai khóa DES được sử dụng

và thuật toán luân phiên áp dụng chúng.


Machine Translated by Google

Tìm hiểu về các phương pháp mã hóa hiện đại 151

Cá nóc

Blowfish là một mật mã khối đối xứng. Điều này có nghĩa là nó sử dụng một khóa duy nhất để mã hóa và giải

mã tin nhắn, đồng thời hoạt động trên các “khối” tin nhắn cùng một lúc. Nó sử dụng khóa có độ dài thay đổi

từ 32 đến 448 bit. Tính linh hoạt về kích thước khóa này cho phép bạn sử dụng nó trong nhiều tình huống

khác nhau. Blowfish được thiết kế vào năm 1993 bởi Bruce Schneier. Nó đã được cộng đồng mật mã phân tích

rộng rãi và đã được chấp nhận rộng rãi. Nó cũng là một sản phẩm phi thương mại (nghĩa là miễn phí), do

đó nó trở nên hấp dẫn đối với các tổ chức quan tâm đến ngân sách.

FYI: Mật mã khối và Mật mã luồng

Mật mã khối hoạt động trên các khối có độ dài cố định, thường là 64 hoặc 128 bit. Trong mật mã
khối, khóa mật mã và thuật toán được áp dụng cho một khối dữ liệu (ví dụ: 64 bit liền kề) cùng
một lúc dưới dạng một nhóm thay vì từng bit một. Mật mã luồng chỉ đơn giản coi văn bản là một
luồng đang diễn ra, mã hóa từng bit khi gặp nó. Mật mã dòng có xu hướng nhanh hơn mật mã khối.
Mật mã luồng tạo ra dòng khóa (một chuỗi bit được sử dụng làm khóa). Mã hóa được thực hiện bằng
cách kết hợp dòng khóa với bản rõ, thường là bằng phép toán XOR theo bit.

AES

Tiêu chuẩn mã hóa nâng cao (AES) sử dụng thuật toán Rijndael. Các nhà phát triển thuật toán này đã
đề xuất nhiều cách phát âm thay thế cho cái tên này, bao gồm “reign dahl”, “rain Doll” và “rhine
dahl”. Thuật toán này được phát triển bởi hai nhà nghiên cứu người Bỉ, Joan Daemen của Proton World
International và Vincent Rijmen, một nhà nghiên cứu sau tiến sĩ tại Khoa Kỹ thuật Điện của Katholieke
Universiteit Leuven.

AES chỉ định ba kích thước khóa: 128, 192 và 256 bit. Để so sánh, khóa DES dài 56 bit và Blowfish cho phép thay

đổi độ dài lên tới 448 bit. AES sử dụng mật mã khối. Độc giả quan tâm có thể tìm thấy thông số kỹ thuật chi tiết

cho thuật toán này, bao gồm phần thảo luận chi tiết về toán học, tại https://csrc.nist.gov/csrc/media/publications/

fips/197/final/documents/fips-197.pdf.

Thuật toán này được sử dụng rộng rãi (như được trình bày trong phần thảo luận về tường lửa ở Chương 4, “Ứng

dụng thực tế của tường lửa”), được coi là rất an toàn và do đó là lựa chọn tốt cho nhiều tình huống mã hóa.

Đối với những độc giả muốn biết thêm chi tiết, đây là tổng quan chung về quy trình được sử dụng trong AES. Thuật toán bao gồm

một số bước tương đối đơn giản được sử dụng trong các vòng khác nhau. Các bước được mô tả ở đây:

■ AddRoundKey: Mỗi byte trạng thái được kết hợp với khóa tròn bằng cách sử dụng XOR theo bit.
Đây là nơi Rijndael áp dụng khóa tròn được tạo từ lịch trình khóa.

■ SubBytes: Bước thay thế phi tuyến trong đó mỗi byte được thay thế bằng một byte khác theo bảng tra cứu. Đây là

nơi nội dung của ma trận được đưa vào các hộp s. Mỗi hộp s là 8 bit.
Machine Translated by Google

152 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

■ ShiftRows: Bước chuyển vị trong đó mỗi hàng của trạng thái được dịch chuyển theo chu kỳ một số bước nhất định. Ở

bước này, hàng đầu tiên được giữ nguyên. Mỗi byte ở hàng thứ hai được dịch chuyển một byte sang trái (với

phần bao quanh bên trái). Mỗi byte của hàng thứ ba được dịch chuyển hai byte sang trái và mỗi byte của hàng thứ tư

được dịch chuyển ba byte sang trái (một lần nữa với sự bao quanh).

■ MixColumns: Thao tác trộn hoạt động trên các cột của trạng thái, kết hợp 4 byte trong mỗi cột. Trong bước

MixColumns, mỗi cột của trạng thái được nhân với một đa thức cố định.

Với các bước đã nói ở trên, đây là cách các bước đó được thực thi trong mật mã Rijndael. Đối với khóa 128 bit, có 10

vòng. Đối với khóa 192 bit, có 12 vòng. Đối với khóa 256 bit, có 14 vòng.

■ Mở rộng khóa: Bước đầu tiên là các khóa tròn được lấy từ khóa mật mã bằng cách sử dụng

Lịch trình quan trọng của Rijndael. Lịch trình khóa là cách tạo khóa cho mỗi vòng, dựa trên khóa mật mã được

trao đổi giữa người gửi và người nhận.

■ Vòng đầu tiên: Vòng đầu tiên này sẽ chỉ thực hiện bước AddRoundKey. Điều này đơn giản là

XOR bằng phím tròn. Vòng đầu tiên này được thực hiện một lần, sau đó các vòng tiếp theo sẽ được thực hiện.

■ Vòng: Giai đoạn này của thuật toán thực hiện một số bước theo thứ tự sau:

■ SubByte

■ ShiftHàng

■ Cột trộn

■ AddRoundKey

■ Vòng Chung kết: Vòng này có mọi thứ mà giai đoạn vòng này có, ngoại trừ không có MixColumn:

■ SubByte

■ ShiftHàng

■ AddRoundKey

Trong bước AddRoundKey, khóa phụ được XOR với trạng thái. Đối với mỗi vòng, một khóa phụ được lấy từ khóa chính bằng cách

sử dụng lịch trình khóa của Rijndael; mỗi khóa phụ có cùng kích thước với trạng thái.

Ý TƯỞNG

Thuật toán mã hóa dữ liệu quốc tế (IDEA) là một mật mã khối khác. Thuật toán cụ thể này hoạt động với hai khối dữ liệu 64

bit cùng một lúc và sử dụng khóa 128 bit. Quy trình này khá phức tạp và sử dụng các khóa phụ được tạo từ khóa để thực

hiện một loạt các phép tính số học và XOR mô-đun trên các phân đoạn của khối văn bản gốc 64 bit. Sơ đồ mã hóa sử dụng tổng

cộng 52 khóa phụ 16 bit. Chúng được tạo từ khóa phụ 128 bit theo quy trình sau:

■ Khóa 128-bit được chia thành 8 khóa 16-bit, là 8 khóa phụ đầu tiên.
Machine Translated by Google

Tìm hiểu về các phương pháp mã hóa hiện đại 153

■ Các chữ số của khóa 128 bit được dịch chuyển sang trái 25 bit để tạo thành khóa mới, sau đó khóa này được chia

vào tám khóa con 16-bit tiếp theo.

■ Bước thứ hai được lặp lại cho đến khi tạo được 52 khóa con. Quá trình mã hóa bao gồm tám vòng mã hóa.

con rắn

Thuật toán này được phát minh bởi Ross Anderson, Eli Biham và Lars Knudsen. Nó đã được gửi đến cuộc thi AES

nhưng không được chọn, phần lớn là do hiệu suất của nó chậm hơn AES. Tuy nhiên, trong những năm tiếp theo kể từ

cuộc cạnh tranh AES, sức mạnh tính toán đã tăng lên đáng kể. Điều này đã khiến một số chuyên gia xem xét lại việc

sử dụng Serpent trên các hệ thống hiện đại.

Hai con cá

Twofish là một trong năm người lọt vào vòng chung kết của cuộc thi AES (chúng ta sẽ khám phá chi tiết hơn trong

Chương 7, “Mạng riêng ảo”). Nó có liên quan đến mật mã khối Blowfish và Bruce Schneier cũng là thành viên của

nhóm nghiên cứu thuật toán này. Twofish là mật mã Feistel sử dụng kích thước khối 128 bit và kích thước khóa là

128, 192 và 256 bit. Nó cũng có 16 vòng, giống như DES. Giống như Blowfish, Twofish không được cấp bằng sáng chế

và thuộc phạm vi công cộng và có thể được sử dụng mà không bị hạn chế bởi bất kỳ ai muốn sử dụng nó.

Chọn mật mã khối

Nếu bạn đã quyết định chọn mật mã khối, bạn sẽ chọn mật mã nào? Chúng tôi đã xem xét một số ở đây, tất cả đều có

điểm mạnh và điểm yếu khác nhau. Không có câu trả lời duy nhất nào đúng cho tất cả mọi người. Một số yếu tố liên

quan đến việc lựa chọn thuật toán mã hóa. Dưới đây là một số điều cần ghi nhớ:

■ Nếu bạn mã hóa lượng lớn dữ liệu thì tốc độ mã hóa có thể gần như quan trọng

như bảo mật.

■ Nếu bạn có dữ liệu kinh doanh tiêu chuẩn thì hầu hết mọi phương pháp mã hóa phổ biến, được chấp nhận đều có

thể đủ an toàn và bạn có thể tập trung vào những thứ như độ dài khóa và tốc độ trong quá trình ra quyết

định của mình. Tuy nhiên, nếu bạn đang gửi dữ liệu có độ nhạy cảm cao, chẳng hạn như dữ liệu nghiên cứu

hoặc quân sự, bạn nên quan tâm nhiều hơn đến bảo mật, ngay cả khi phải trả giá bằng tốc độ.

■ Các phím có độ dài thay đổi chỉ quan trọng nếu bạn cần chúng. Nếu bạn có một số sản phẩm mã hóa-

các ucts được sử dụng ở Hoa Kỳ và một số ở bên ngoài thì cần ít nhất hai chiều dài. Nếu bạn có một số dữ

liệu muốn được mã hóa mạnh hơn ngay cả khi điều đó có nghĩa là tốc độ chậm hơn và dữ liệu khác cần tốc

độ nhanh nhưng không an toàn bằng thì khóa có độ dài thay đổi cũng rất quan trọng.

Kéo dài phím


Đôi khi cần phải kéo dài một phím để làm cho nó mạnh hơn. Quá trình này thường được gọi là kéo dài khóa. Chìa

khóa được đưa vào một thuật toán sẽ kéo dài hoặc làm cho nó dài hơn. Có hai thuật toán kéo dài khóa được sử

dụng rộng rãi:

■ PBKDF2 (Chức năng phái sinh khóa dựa trên mật khẩu 2) là một phần của PKCS #5 v. 2.01. Nó áp dụng

một số chức năng (như hàm băm hoặc HMAC) đối với mật khẩu hoặc cụm mật khẩu cùng với muối để tạo khóa dẫn

xuất. (Khái niệm về muối sẽ được thảo luận sau, trong phần “Băm”.)
Machine Translated by Google

154 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

■ bcrypt được sử dụng cùng với mật khẩu và về cơ bản nó sử dụng một dẫn xuất của thuật toán Blowfish,

được chuyển đổi thành thuật toán băm, để băm mật khẩu và thêm muối vào đó.

PRNG
Bạn đã thấy rằng tất cả các mật mã đối xứng đều cần có khóa mật mã. Chúng được tạo ra như thế nào? Trên thực tế, các thuật

toán được gọi là trình tạo số giả ngẫu nhiên (PRNG) được sử dụng để tạo ra các khóa này.

Những con số thực sự ngẫu nhiên chỉ được tạo ra bởi các hiện tượng tự nhiên như phân rã phóng xạ. Điều này không thuận

tiện cho việc mã hóa dữ liệu. Vì vậy, thay vào đó, chúng tôi sử dụng thuật toán tạo ra các số “đủ ngẫu nhiên” và các thuật

toán này là các trình tạo số giả ngẫu nhiên. Điều gì khiến PRNG “đủ tốt”? Có ba đặc tính mà người ta mong muốn:

■ Trình tự không tương quan: Các trình tự không tương quan. Bạn không thể lấy một dãy số nhất định (giả sử là 16

bit) và sử dụng số đó để dự đoán các bit tiếp theo.

■ Khoảng thời gian dài: Lý tưởng nhất là chuỗi chữ số (thường là bit) không bao giờ có bất kỳ sự lặp lại nào

các mẫu. Tuy nhiên, thực tế là cuối cùng sẽ có một số sự lặp lại. Khoảng cách (tính bằng chữ số hoặc bit)

giữa các lần lặp lại là khoảng thời gian. Thời gian càng dài càng tốt.

■ Tính đồng nhất: Các số giả ngẫu nhiên thường được biểu diễn dưới dạng nhị phân. nên có

có số lượng số 1 và số 0 bằng nhau, mặc dù chúng không cần được phân bố theo bất kỳ mẫu rõ ràng nào.

Chuỗi số ngẫu nhiên phải đồng nhất và không thiên vị.

Văn phòng An toàn Thông tin Liên bang Đức (BSI) đã thiết lập bốn tiêu chí về chất lượng của trình tạo số ngẫu nhiên:

■ K1: Dãy số ngẫu nhiên có xác suất thấp chứa các số liên tiếp giống hệt nhau
các phần tử.

■ K2: Một dãy số không thể phân biệt được với các số “ngẫu nhiên thực sự” theo

kiểm tra thống kê cụ thể.

■ K3: Kẻ tấn công không thể tính toán hoặc đoán được từ bất kỳ chuỗi con nào hoặc từ bất kỳ giá trị nào trước đó

hoặc tương lai trong chuỗi.

■ K4: Kẻ tấn công không thể tính toán hoặc đoán từ trạng thái bên trong của bộ tạo, bất kỳ số nào trước đó trong

chuỗi hoặc bất kỳ trạng thái nào của bộ tạo bên trong trước đó.

Mã hóa khóa công khai


Mã hóa khóa công khai về cơ bản là đối lập với mã hóa khóa đơn. Với bất kỳ thuật toán mã hóa khóa chung nào, một khóa

được sử dụng để mã hóa tin nhắn (gọi là khóa chung) và một khóa khác được sử dụng để giải mã tin nhắn (khóa riêng). Bạn

có thể tự do phân phối khóa công khai của mình để bất kỳ ai


Machine Translated by Google

Tìm hiểu về các phương pháp mã hóa hiện đại 155

có thể mã hóa tin nhắn để gửi cho bạn, nhưng chỉ bạn mới có khóa riêng và chỉ bạn mới có thể giải mã tin

nhắn. Toán học thực tế đằng sau việc tạo ra và ứng dụng các khóa hơi phức tạp và nằm ngoài phạm vi của cuốn

sách này. Ở một mức độ nào đó, nhiều thuật toán khóa công khai phụ thuộc vào số nguyên tố lớn, phân tích

nhân tử và lý thuyết số.

RSA

Phương pháp RSA là một thuật toán mã hóa được sử dụng rộng rãi. Bạn không thể thảo luận về mật mã mà không

có ít nhất một số thảo luận về RSA. Phương pháp khóa công khai này được phát triển vào năm 1977 bởi ba
nhà toán học: Ron Rivest, Adi Shamir và Len Adleman. Tên RSA có nguồn gốc từ chữ cái đầu tiên của mỗi
họ của nhà toán học .

Một ưu điểm đáng kể của RSA là nó là phương pháp mã hóa khóa công khai. Điều đó có nghĩa là không có mối

lo ngại nào về việc phân phối khóa để mã hóa. Tuy nhiên, RSA chậm hơn nhiều so với mật mã đối xứng. Trên

thực tế, nhìn chung, mật mã bất đối xứng chậm hơn mật mã đối xứng.

Các bước tạo key như sau:

1. Tạo hai số nguyên tố ngẫu nhiên lớn p và q có kích thước xấp xỉ bằng nhau.

2. Chọn hai số sao cho khi nhân chúng với nhau sẽ có kích thước như bạn mong muốn (tức là 2048 bit,

4096 bit, v.v.).

3. Bây giờ nhân p và q để được n.

4. Cho n = pq.

5. Nhân tổng số Euler của mỗi số nguyên tố này. Nếu bạn chưa quen với khái niệm này,

Euler's Totient là tổng số các số nguyên tố cùng nhau. Hai số được coi là nguyên tố cùng nhau nếu

chúng không có ước chung. Ví dụ: nếu số ban đầu là 7 thì 5 và 7 sẽ nguyên tố cùng nhau. Điều đó

xảy ra là đối với các số nguyên tố, đây luôn là số trừ 1. Ví dụ: 7 có 6 số nguyên tố cùng nhau (nếu

bạn nghĩ kỹ về điều này một chút bạn sẽ thấy rằng 1, 2, 3, 4 , 5, 6 đều nguyên tố cùng với 7).

6. Cho m = (p – 1)(q – 1).

7. Chọn số khác; gọi số này e. Bạn muốn chọn e sao cho nó nguyên tố cùng nhau với m.

8. Tìm một số d mà khi nhân với e và modulo m sẽ bằng 1. (Lưu ý: Modulo có nghĩa là chia hai số và trả

về số dư. Ví dụ: 8 modulo 3 sẽ là 2.)

9. Tìm d sao cho de mod m ≡ 1.

Bây giờ bạn xuất bản e và n làm khóa chung và giữ d và n làm khóa bí mật.

Để mã hóa, bạn chỉ cần nâng thông điệp của mình lên lũy thừa e và modulo n:

= Tôi % n
Machine Translated by Google

156 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

Để giải mã, bạn lấy bản mã và nâng nó lên lũy thừa d modulo n:

P = Cd %n

Nếu tất cả điều này có vẻ hơi phức tạp đối với bạn, bạn phải nhận ra rằng nhiều người làm việc trong lĩnh vực

an ninh mạng mà không quen thuộc với thuật toán thực tế cho RSA (hoặc bất kỳ mật mã nào khác cho vấn đề đó).

Bạn cũng có thể hiểu rõ hơn về RSA bằng cách xem qua thuật toán sử dụng các số nguyên nhỏ.

Thông thường RSA được thực hiện với số nguyên rất lớn. Để làm cho phép tính dễ theo dõi, ví dụ này sử dụng các

số nguyên nhỏ (Lưu ý: Ví dụ này lấy từ Wikipedia):

1. Chọn hai số nguyên tố phân biệt, chẳng hạn p = 61 và q = 53.

2. Tính n = pq cho n = 61 × 53 = 3233.

3. Tính tổng của tích là Φ(n) = (p 1)(q 1) cho Φ(3233) = (61 1)(53 1)
= 3120.

4. Chọn số 1 < e < 3120 nguyên tố cùng nhau với 3120. Chọn số nguyên tố e

chúng ta chỉ cần kiểm tra xem e không phải là ước của 3120. Cho e = 17.

5. Tính d, như ở trên sao cho de mod m ≡ 1; mang lại d = 2753.

6. Khóa công khai là (n =3233, e =17). Đối với tin nhắn văn bản gốc có đệm m, hàm mã hóa là m17

(mod 3233).

7. Khóa riêng là (n = 3233, d = 2753). Đối với bản mã được mã hóa c, hàm giải mã là c2753 (mod 3233).

RSA dựa trên số nguyên tố lớn. Bạn có thể nghĩ, “Không ai có thể lấy khóa chung và sử dụng phân tích nhân tố để

lấy khóa riêng sao?” Vâng, theo giả thuyết thì có. Tuy nhiên, hóa ra việc phân tích những số thực sự lớn thành

thừa số nguyên tố của chúng là khá khó khăn. Không có thuật toán hiệu quả tồn tại để làm điều đó. Với “số lượng

lớn”, chúng tôi muốn nói rằng RSA có thể sử dụng các khóa 1024-, 2048-, 4096-bit và lớn hơn. Những điều đó tạo

nên một số con số khổng lồ. Tất nhiên, nếu bất cứ ai phát minh ra một thuật toán hiệu quả sẽ phân tích một số

lớn thành thừa số nguyên tố của nó thì RSA sẽ chết.

RSA đã trở thành một phương pháp mã hóa phổ biến. Nó được coi là khá an toàn và thường được sử dụng trong

các tình huống cần mức độ bảo mật cao.

Diffie-Hellman

Bây giờ bạn đã thấy RSA, hãy xem xét một vài thuật toán bất đối xứng khác. Có lẽ nổi tiếng nhất là Diffie-

Hellman, đây là thuật toán bất đối xứng được mô tả công khai đầu tiên.

Giao thức mật mã này cho phép hai bên thiết lập khóa chung qua kênh không an toàn. Nói cách khác, Diffie-Hellman

thường được sử dụng để cho phép các bên trao đổi khóa đối xứng thông qua một số phương tiện không an toàn,

chẳng hạn như Internet. Nó được phát triển bởi Whitfield Diffie và Martin Hellman vào năm
Machine Translated by Google

Tìm hiểu về các phương pháp mã hóa hiện đại 157

1976. Một sự thật thú vị là phương pháp này thực ra đã được Malcolm J. Williamson thuộc Cơ quan Tình

báo Anh phát triển vài năm trước đó, nhưng nó đã được phân loại.

ElGamal

ElGamal dựa trên thuật toán trao đổi khóa Diffie-Hellman vừa mô tả. Nó được Taher Elgamal mô tả lần đầu

tiên vào năm 1984. Nó được sử dụng trong một số phiên bản của Pretty Good Privacy (PGP).

MQV

Giống như ElGamal, MQV (Menezes-Qu-Vanstone) là một giao thức thỏa thuận khóa dựa trên Diffie-Hellman.

Nó được đề xuất lần đầu tiên bởi Menezes, Qu và Vanstone vào năm 1995 và sau đó được sửa đổi vào năm 1998.

MQV được tích hợp trong tiêu chuẩn khóa công khai IEEE P1363.

Thuật toán chữ ký số

Thuật toán chữ ký số (DSA) được mô tả trong Bằng sáng chế Hoa Kỳ số 5.231.668, nộp ngày 26 tháng 7 năm 1991 và

được quy cho David W. Kravitz. Nó được chính phủ Hoa Kỳ áp dụng vào năm 1993 với FIPS 186. Mặc dù bất kỳ thuật

toán bất đối xứng nào cũng có thể được sử dụng cho chữ ký số nhưng thuật toán này được thiết kế cho mục đích đó.

Đường cong elip

Thuật toán Đường cong Elliptic được mô tả lần đầu tiên vào năm 1985 bởi Victor Miller (IBM) và Neil

Koblitz (Đại học Washington).

Tính bảo mật của mật mã Đường cong Elliptic dựa trên thực tế là việc tìm logarit rời rạc của một phần tử

đường cong elip ngẫu nhiên đối với một điểm cơ sở được biết đến công khai là khó đến mức không thực tế.

Kích thước của đường cong elip xác định độ khó của việc tìm kiếm thuật toán và do đó tính bảo mật của

việc triển khai. Mức độ bảo mật được cung cấp bởi hệ thống dựa trên RSA với mô đun lớn có thể đạt được

với nhóm đường cong elip nhỏ hơn nhiều. Thực tế có một số thuật toán ECC.

Có phiên bản ECC của Diffie-Hellman, phiên bản ECC của DSA và nhiều phiên bản khác.

Cơ quan An ninh Quốc gia Hoa Kỳ đã chứng thực ECC (Mật mã đường cong Elliptic) bằng cách đưa các sơ đồ

dựa trên nó vào bộ thuật toán được đề xuất của Bộ B và cho phép sử dụng chúng để bảo vệ thông tin được

phân loại ở mức tối mật bằng khóa 384 bit.

Chữ ký số
Chữ ký số đang sử dụng mật mã bất đối xứng, theo thứ tự ngược lại. Hãy xem xét một tình huống trong đó

mối quan tâm không phải là bảo mật dữ liệu mà là xác minh ai đã gửi tin nhắn. Có lẽ bạn nhận được e-mail

từ sếp nói với bạn rằng bạn nên nghỉ làm vào tuần tới và được trả lương. Bạn nên xác minh tin nhắn này

thực sự đến từ sếp của bạn và không phải là tin nhắn giả mạo từ một đồng nghiệp đang chơi khăm. Chữ ký

số thực hiện được điều này.


Machine Translated by Google

158 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

Một phần của tin nhắn, thường là hàm băm của tin nhắn, được mã hóa (hoặc ký) bằng khóa riêng của người dùng. Tất nhiên,

vì bất kỳ ai cũng có thể truy cập khóa chung của người gửi đó nên quá trình này không ảnh hưởng gì đến tính bảo mật.

Nhưng bất kỳ người nhận nào cũng có thể xác minh chữ ký bằng khóa chung của người gửi và tin chắc rằng người gửi thực

sự đã gửi tin nhắn.

Xác định mã hóa tốt


Hàng chục phương pháp mã hóa khác được phát hành miễn phí ra công chúng hoặc được cấp bằng sáng chế và bán kiếm lời

hàng năm. Tuy nhiên, lĩnh vực đặc biệt này của ngành công nghiệp máy tính có đầy rẫy những gian lận và lừa đảo. Người

ta chỉ cần tìm kiếm “mã hóa” trên bất kỳ công cụ tìm kiếm nào để tìm thấy vô số quảng cáo về mã hóa “không thể phá vỡ”

mới nhất. Nếu bạn không am hiểu về mã hóa, làm cách nào để phân biệt các phương pháp mã hóa hợp pháp và gian lận?

Mặc dù không có cách nào đảm bảo để phát hiện gian lận nhưng các nguyên tắc sau sẽ giúp bạn tránh được hầu hết các khiếu

nại về mã hóa gian lận:

■ “Không thể phá vỡ”: Bất kỳ ai có kinh nghiệm về mật mã đều biết rằng không có thứ gì như vậy

thứ như một mật mã không thể phá vỡ được. Mã tồn tại mà chưa bị phá vỡ. Một số mã rất khó phá vỡ. Tuy nhiên,

khi ai đó tuyên bố rằng phương pháp của anh ta hoàn toàn không thể phá vỡ được, bạn nên nghi ngờ.

■ “Đã chứng nhận”: Không có quy trình chứng nhận nào được công nhận cho các phương pháp mã hóa, do đó mọi

“Chứng nhận” mà công ty có hoàn toàn vô giá trị.

■ Nhà cung cấp thiếu kinh nghiệm: Tìm hiểu kinh nghiệm của bất kỳ công ty nào tiếp thị phương pháp mã hóa

mới. Kinh nghiệm của những người làm việc với nó là gì? Họ có kiến thức nền tảng về toán học, mã hóa

hoặc thuật toán không? Nếu không, họ đã gửi phương pháp của mình cho các chuyên gia trên các tạp chí được

bình duyệt chưa? Ít nhất họ có sẵn sàng tiết lộ cách thức hoạt động của phương pháp của họ để có thể đánh

giá nó một cách công bằng không?

Một số chuyên gia cho rằng bạn chỉ nên sử dụng các phương pháp được biết đến rộng rãi như Blowfish. Tôi không đồng ý.

Chắc chắn có thể có một hệ thống an toàn sử dụng các phương pháp mã hóa ít nổi tiếng hơn hoặc thậm chí mới. Tất cả các

phương pháp được sử dụng rộng rãi ngày nay đều từng mới và chưa được thử nghiệm. Tuy nhiên, cần phải thực hiện các

biện pháp phòng ngừa bổ sung để đảm bảo rằng bạn không bị lừa khi sử dụng một phương pháp ít được biết đến hơn. Nói rõ

hơn, tôi không hề đề xuất các thuật toán chưa được kiểm chứng. Ví dụ: khi NIST tổ chức cuộc thi kết thúc bằng việc chọn

mật mã Rijndael là AES, có bốn thuật toán lọt vào vòng chung kết khác đã được kiểm tra nghiêm ngặt nhưng bị từ chối, một

số do vấn đề về hiệu suất. Đó có thể là những thuật toán tốt để xem xét.

Hiểu chữ ký số và chứng chỉ


Chữ ký số không được sử dụng để đảm bảo tính bảo mật của tin nhắn mà để đảm bảo ai đã gửi tin nhắn. Điều này được gọi là

tính không thoái thác. Về cơ bản, chữ ký số chứng minh ai


Machine Translated by Google

Hiểu chữ ký số và chứng chỉ 159

người gửi là. Chữ ký số thực sự khá đơn giản nhưng thông minh. Họ chỉ đơn giản là đảo ngược quá trình mã hóa bất

đối xứng. Hãy nhớ lại rằng trong mã hóa bất đối xứng, khóa chung (mà bất kỳ ai cũng có thể truy cập) được sử dụng

để mã hóa tin nhắn gửi đến người nhận và khóa riêng (được giữ an toàn và riêng tư) có thể giải mã nó. Với chữ ký

số, người gửi mã hóa thứ gì đó bằng khóa riêng của mình. Nếu người nhận có thể giải mã mã đó bằng khóa chung của

người gửi thì nó phải được gửi bởi người được cho là đã gửi tin nhắn.

Chứng chỉ số
Hãy nhớ từ cuộc thảo luận về mật mã bất đối xứng rằng khóa công khai được phân phối rộng rãi và việc lấy khóa công

khai của ai đó là khá dễ dàng. Bạn cũng đã thấy trong phần trước rằng khóa công khai cũng cần thiết để xác minh chữ

ký số. Về cách phân phối khóa công khai, có lẽ cách phổ biến nhất là thông qua chứng chỉ kỹ thuật số. Chứng chỉ số

chứa khóa chung và một số phương tiện để xác minh khóa chung đó là của ai.

X.509 là tiêu chuẩn quốc tế về định dạng và thông tin có trong chứng chỉ kỹ thuật số.

X.509 là loại chứng chỉ số được sử dụng nhiều nhất trên thế giới. Đó là một tài liệu kỹ thuật số chứa khóa công khai

được ký bởi bên thứ ba đáng tin cậy, được gọi là cơ quan cấp chứng chỉ (CA). Nội dung của chứng chỉ X.509 là

■ Phiên bản

■ Khóa công khai của người giữ chứng chỉ

■ Số sê-ri

■ Tên phân biệt của người giữ chứng chỉ

■ Thời hạn hiệu lực của chứng chỉ

■ Tên duy nhất của tổ chức cấp chứng chỉ

■ Chữ ký số của tổ chức phát hành

■ Định danh thuật toán chữ ký

Cơ quan cấp chứng chỉ phát hành chứng chỉ số. Vai trò chính của CA là ký điện tử và xuất bản khóa chung được liên kết với một

người dùng nhất định. Nó là một thực thể được một hoặc nhiều người dùng tin cậy để quản lý chứng chỉ.

Cơ quan đăng ký (RA) thường được sử dụng để giảm bớt gánh nặng cho CA bằng cách xử lý việc xác minh trước khi

chứng chỉ được cấp. RA hoạt động như một proxy giữa người dùng và CA. RA nhận được yêu cầu, xác thực nó và chuyển

tiếp đến CA.

Cơ sở hạ tầng khóa công khai (PKI) phân phối chứng chỉ số. Đây là mạng gồm các máy chủ CA đáng tin cậy đóng vai trò

là cơ sở hạ tầng để phân phối chứng chỉ kỹ thuật số có chứa khóa chung. PKI là một sự sắp xếp liên kết các khóa

chung với danh tính người dùng tương ứng bằng CA.
Machine Translated by Google

160 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

Điều gì sẽ xảy ra nếu chứng chỉ hết hạn hoặc bị thu hồi? Danh sách thu hồi chứng chỉ (CRL) là danh sách các chứng chỉ đã bị thu

hồi vì lý do này hay lý do khác. Cơ quan cấp chứng chỉ công bố danh sách thu hồi chứng chỉ của riêng họ. Một phương pháp mới

hơn để xác minh chứng chỉ là Giao thức trạng thái chứng chỉ trực tuyến (OSCP), một giao thức thời gian thực để xác minh chứng

chỉ.

Có một số loại chứng chỉ X.509 khác nhau. Mỗi loại đều có ít nhất các thành phần được liệt kê ở phần đầu của phần này nhưng

dành cho các mục đích khác nhau. Các loại chứng chỉ phổ biến nhất được liệt kê ở đây.

■ Chứng chỉ xác nhận tên miền là một trong những chứng chỉ phổ biến nhất. Chúng được sử dụng để đảm bảo liên lạc với một

miền cụ thể. Đây là chứng chỉ chi phí thấp mà quản trị viên trang web sử dụng để cung cấp TLS cho một tên miền nhất định.

■ Chứng chỉ ký tự đại diện, như tên cho thấy, có thể được sử dụng rộng rãi hơn, thường với nhiều tên miền phụ của

một tên miền nhất định. Vì vậy, thay vì có chứng chỉ X.509 khác nhau cho từng tên miền phụ, bạn sẽ sử dụng chứng

chỉ ký tự đại diện cho tất cả tên miền phụ.

■ Chứng chỉ ký mã là chứng chỉ X.509 được sử dụng để ký điện tử một số loại máy tính

mã số. Những điều này thường yêu cầu xác nhận nhiều hơn đối với người yêu cầu chứng chỉ trước khi chúng có thể được

cấp.

■ Chứng chỉ máy/máy tính là chứng chỉ X.509 được gán cho một máy cụ thể. Chúng thường được sử dụng trong các giao thức

xác thực. Ví dụ: để máy đăng nhập vào mạng, máy phải xác thực bằng chứng chỉ máy của mình.

■ Chứng chỉ người dùng được sử dụng cho người dùng cá nhân. Giống như chứng chỉ máy/máy tính, đây là

thường được sử dụng để xác thực. Người dùng phải xuất trình chứng chỉ của mình để xác thực trước khi truy cập một số

tài nguyên.

■ Chứng chỉ e-mail được sử dụng để bảo mật e-mail. Tiện ích mở rộng thư Internet đa năng an toàn (S/MIME) sử dụng chứng

chỉ X.509 để bảo mật liên lạc e-mail. Tất nhiên là PGP sử dụng PGP

giấy chứng nhận.

■ Tên thay thế chủ đề (SAN) không hẳn là một loại chứng chỉ mà là một trường đặc biệt trong

X.509. Nó cho phép bạn chỉ định các mục bổ sung sẽ được bảo vệ bởi chứng chỉ duy nhất này. Những cái này

có thể là tên miền hoặc địa chỉ IP bổ sung.

■ Chứng chỉ gốc được sử dụng cho cơ quan cấp quyền gốc. Chúng thường được cơ quan đó tự ký.

Chứng chỉ PGP

Pretty Good Privacy (PGP) không phải là một thuật toán mã hóa cụ thể mà là một hệ thống. Nó cung cấp chữ ký số, mã hóa bất đối

xứng và mã hóa đối xứng. Nó thường được tìm thấy trong các ứng dụng e-mail. PGP được giới thiệu vào đầu những năm 1990 và được

coi là một hệ thống rất tốt.

PGP sử dụng định dạng chứng chỉ riêng của mình. Tuy nhiên, điểm khác biệt chính là chứng chỉ PGP được tự tạo. Chúng không được

tạo ra bởi bất kỳ cơ quan cấp chứng chỉ nào.


Machine Translated by Google

Hiểu chữ ký số và chứng chỉ 161

Băm

Hàm băm H là hàm nhận đầu vào có kích thước thay đổi m và trả về một chuỗi có kích thước cố định. Giá
trị được trả về được gọi là giá trị băm h hoặc giá trị tóm tắt. Điều này có thể được biểu diễn dưới
dạng toán học là h = H(m). Có ba thuộc tính mà hàm băm nên có:

■ Đầu vào có độ dài thay đổi với đầu ra có độ dài cố định. Nói cách khác, bất kể bạn đưa gì vào
thuật toán băm, đầu ra có cùng kích thước được tạo ra.

■ H(x) là một chiều; bạn không thể "băm" thứ gì đó.

■ H(x) không va chạm. Hai giá trị đầu vào khác nhau không tạo ra cùng một đầu ra. Xung đột đề cập đến tình huống

trong đó hai đầu vào khác nhau mang lại cùng một đầu ra. Hàm băm không được có xung đột.

Băm là cách Windows lưu trữ mật khẩu. Ví dụ: nếu mật khẩu của bạn là “mật khẩu”, thì trước tiên Windows
sẽ băm mật khẩu đó, tạo ra kết quả như sau:

0BD181063899C9239016320B50D3E896693A96DF

Sau đó, nó lưu trữ hàm băm đó trong tệp SAM (Trình quản lý tài khoản bảo mật) trong thư mục Hệ thống Windows.

Khi bạn đăng nhập, Windows không thể "băm" mật khẩu của bạn, vì vậy, Windows sẽ lấy bất kỳ mật khẩu nào
bạn nhập vào, băm mật khẩu đó rồi so sánh kết quả với mật khẩu có trong tệp SAM. Nếu chúng khớp (chính
xác) thì bạn có thể đăng nhập.

Lưu trữ mật khẩu Windows chỉ là một ứng dụng băm. Co nhung nguoi khac. Ví dụ, trong điều tra máy tính,
băm ổ đĩa trước khi bắt đầu kiểm tra pháp y là thông lệ. Sau đó, bạn luôn có thể băm lại để xem liệu có
điều gì bị thay đổi không (vô tình hay cố ý). Nếu hàm băm thứ hai khớp với hàm băm đầu tiên thì không có
gì thay đổi.

Liên quan đến hàm băm, thuật ngữ muối dùng để chỉ các bit ngẫu nhiên được sử dụng làm một trong những đầu

vào của hàm băm. Về cơ bản, muối được trộn lẫn với thông điệp cần băm. Dữ liệu muối làm phức tạp thêm các

cuộc tấn công từ điển sử dụng mã hóa trước các mục từ điển. Nó cũng có hiệu quả chống lại các cuộc tấn công

bảng cầu vồng. Để bảo mật tốt nhất, giá trị muối được giữ bí mật, tách biệt với cơ sở dữ liệu/tệp mật khẩu.

MD5
MD5 là hàm băm 128 bit được chỉ định bởi RFC 1321. Nó được Ron Rivest thiết kế vào năm 1991 để thay thế hàm

băm trước đó, MD4. Năm 1996, một lỗ hổng được phát hiện trong thiết kế của MD5. Mặc dù đây rõ ràng không phải

là một điểm yếu nghiêm trọng nhưng các nhà mật mã học đã bắt đầu khuyến nghị sử dụng các thuật toán khác,

chẳng hạn như SHA-1. Vấn đề lớn nhất với MD5 là nó không có khả năng chống va chạm.

SHA
Thuật toán băm an toàn có lẽ là thuật toán băm được sử dụng rộng rãi nhất hiện nay. Một số phiên bản SHA hiện

đã tồn tại. SHA (tất cả các phiên bản) được coi là an toàn và không có xung đột. Các phiên bản bao gồm

■ SHA-1: Hàm băm 160-bit này giống với thuật toán MD5. Điều này được Cơ quan An ninh Quốc gia
(NSA) thiết kế để trở thành một phần của Thuật toán Chữ ký Số.
Machine Translated by Google

162 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

■ SHA-2: Đây thực sự là hai hàm băm tương tự nhau, với các kích thước khối khác nhau, được gọi là

SHA-256 và SHA-512. Chúng khác nhau về kích thước từ; SHA-256 sử dụng các từ 32 byte (256 bit) trong khi

SHA-512 sử dụng các từ 64 byte (512 bit). Ngoài ra còn có các phiên bản rút gọn của từng tiêu chuẩn,

được gọi là SHA-224 và SHA-384. Chúng cũng được thiết kế bởi NSA.

■ SHA-3: Đây là phiên bản mới nhất của SHA. Nó đã được thông qua vào tháng 10 năm 2012.

RIPEMD
Thông báo đánh giá tính toàn vẹn của RACE Bản tóm tắt thông báo là một thuật toán băm 160 bit được phát triển bởi Hans

Dobbertin, Antoon Bosselaers và Bart Preneel. Tồn tại các phiên bản 128-, 256- và 320-bit của thuật toán này, được gọi lần

lượt là RIPEMD-128, RIPEMD-256 và RIPEMD-320. Tất cả đều thay thế RIPEMD ban đầu, được phát hiện có vấn đề va chạm. Kích

thước bit lớn hơn giúp việc này an toàn hơn nhiều so với MD5 hoặc RIPEMD.

RIPEMD-160 được phát triển ở Châu Âu như một phần của dự án RIPE và được Cơ quan An ninh Đức
khuyến nghị. Các tác giả của thuật toán mô tả RIPEMD như sau: “RIPEMD-160 là hàm băm mật mã nhanh
được điều chỉnh để triển khai phần mềm trên kiến trúc 32 bit. Nó được phát triển từ phần mở rộng
256-bit của MD4, được Ron Rivest giới thiệu vào năm 1990. Đặc điểm thiết kế chính của nó là hai
chuỗi song song độc lập và khác nhau, kết quả của chúng được kết hợp ở cuối mỗi ứng dụng của chức
năng nén.” Để đọc phần giải thích đầy đủ của tác giả về RIPEMD-160, hãy xem www.esat.kuleuven.be/
cosic/publications/article-317.pdf.

HAVAL
HAVAL là hàm băm mật mã. Không giống như MD5, nhưng giống như hầu hết các hàm băm mật mã hiện đại khác, HAVAL có

thể tạo ra các hàm băm có độ dài khác nhau. HAVAL có thể tạo ra các giá trị băm có độ dài 128 bit, 160 bit, 192

bit, 224 bit và 256 bit. HAVAL cũng cho phép người dùng chỉ định số vòng (3, 4 hoặc 5) sẽ được sử dụng để tạo hàm

băm. HAVAL được Yuliang Zheng, Josef Pieprzyk và Jennifer Seberry phát minh vào năm 1992.

Hiểu và sử dụng giải mã


Rõ ràng, nếu một người có thể mã hóa một tin nhắn thì người ta cũng có thể giải mã được nó. Tất nhiên, phương

pháp ưu tiên là phải có khóa và thuật toán, đồng thời hy vọng phần mềm được sử dụng để mã hóa và sau đó dễ dàng

giải mã tin nhắn. Tuy nhiên, những người cố gắng xâm phạm bảo mật của bạn sẽ không có thuật toán và khóa và sẽ

muốn phá vỡ dữ liệu hoặc đường truyền được mã hóa của bạn.

Giải mã là một khoa học giống như mã hóa. Nó sử dụng nhiều phương pháp toán học khác nhau để bẻ khóa mã hóa. Bạn

có thể tìm thấy một số tiện ích trên web thực sự có thể bẻ khóa mã hóa cho bạn.

Như đã thảo luận trước đó, không có thứ gì tồn tại dưới dạng mã hóa không thể phá vỡ. Tuy nhiên, càng an toàn thì
Machine Translated by Google

Bẻ khóa mật khẩu 163

kỹ thuật mã hóa thì thời gian bẻ khóa càng lâu. Nếu phải mất nhiều tháng hoặc nhiều năm nỗ lực để bẻ khóa thì dữ liệu của bạn

sẽ được bảo mật. Vào thời điểm ai đó bẻ khóa được nó, thông tin có thể sẽ không còn phù hợp hoặc hữu ích với họ nữa.

Các chuyên gia bảo mật và quản trị viên mạng hiểu biết về bảo mật thường xuyên sử dụng cùng các công cụ để kiểm tra hệ thống

của họ mà tin tặc sử dụng để cố gắng đột nhập. Sử dụng các công cụ của tin tặc để cố gắng bẻ khóa một phương thức mã hóa là

một cách thực tế và đơn giản để kiểm tra tính bảo mật dữ liệu.

Bẻ khóa mật khẩu


Mặc dù không hoàn toàn giống như việc phá các đường truyền được mã hóa nhưng việc bẻ khóa mật khẩu cũng tương tự như vậy.

Nếu ai đó có thể bẻ khóa thành công mật khẩu, đặc biệt là mật khẩu quản trị viên, thì các biện pháp bảo mật khác sẽ không còn

phù hợp nữa.

John the Ripper


John the Ripper là một công cụ bẻ khóa mật khẩu phổ biến với cả quản trị viên mạng và tin tặc. Bạn có thể

tải xuống miễn phí từ www.openwall.com/john/.

Sản phẩm này hoàn toàn dựa trên dòng lệnh và không có giao diện Windows. Nó cho phép người dùng chọn các tệp văn bản cho

danh sách từ để thử bẻ mật khẩu. Mặc dù John the Ripper kém thuận tiện hơn khi sử dụng do giao diện dòng lệnh nhưng nó đã

xuất hiện từ lâu và được cả cộng đồng bảo mật và hack đánh giá cao. Điều thú vị là có một công cụ có sẵn tại www.openwall.com/

passwdqc/ để đảm bảo mật khẩu của bạn không thể dễ dàng bị John the Ripper bẻ khóa.

John the Ripper làm việc với các tệp mật khẩu thay vì cố gắng bẻ khóa mật khẩu trực tiếp trên một hệ thống nhất định. Mật

khẩu thường được mã hóa và ở dạng tập tin trên hệ điều hành. Tin tặc thường cố gắng lấy tập tin đó ra khỏi máy và tải nó

xuống hệ thống của chúng để có thể bẻ khóa theo ý muốn. Họ cũng có thể tìm kiếm phương tiện bị loại bỏ trong thùng rác của

bạn để tìm các băng sao lưu cũ có thể chứa các tệp mật khẩu. Mỗi hệ điều hành lưu trữ tệp đó ở một nơi khác nhau:

■ Trong Linux, đó là /etc/passwd.

■ Trong Windows 95, nó ở dạng tệp .pwl.

■ Trong Windows 2000 trở lên, nó nằm trong tệp .sam ẩn.

Sau khi tải xuống John the Ripper, bạn có thể chạy nó bằng cách nhập (tại một dòng lệnh) từ john theo sau là tệp bạn muốn nó

thử bẻ khóa:

john passwd

Để sử dụng danh sách từ chỉ có quy tắc, hãy nhập:

john -wordfile:/usr/dict/words -rules passwd


Machine Translated by Google

164 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

Mật khẩu bị bẻ khóa sẽ được in ra thiết bị đầu cuối và được lưu trong một tệp có tên john.pot, được tìm thấy trong thư

mục mà bạn đã cài đặt John the Ripper.

Sử dụng bảng cầu vồng

Năm 1980, Martin Hellman đã mô tả sự đánh đổi bộ nhớ-thời gian trong phân tích mật mã giúp giảm thời gian phân tích mật mã

bằng cách sử dụng dữ liệu được tính toán trước được lưu trữ trong bộ nhớ. Về cơ bản, những loại chương trình bẻ khóa

mật khẩu này đang hoạt động với các giá trị băm được tính toán trước của tất cả mật khẩu có sẵn trong một không gian ký tự

nhất định, có thể là az hoặc a-zA-z hoặc a-zA-Z0-9, v.v. Những tệp này được gọi là bảng cầu vồng. Chúng đặc biệt hữu ích

khi cố gắng bẻ khóa các hàm băm. Bởi vì hàm băm là hàm một chiều nên cách phá vỡ nó là cố gắng tìm kết quả khớp. Kẻ tấn

công lấy giá trị băm và tìm kiếm trong các bảng Rainbow để tìm kết quả khớp với hàm băm. Nếu tìm thấy thì văn bản gốc của

hàm băm sẽ được tìm thấy. Các công cụ hack phổ biến như Ophcrack phụ thuộc vào bảng Rainbow.

Sử dụng các công cụ bẻ khóa mật khẩu khác

Hiện có rất nhiều công cụ bẻ khóa mật khẩu khác, nhiều công cụ trong số đó bạn có thể tìm thấy trên Internet và tải xuống

miễn phí. Danh sách các trang web sau đây có thể hữu ích trong tìm kiếm đó:

■ Công cụ bẻ khóa mật khẩu của Nga: www.password-crackers.com/crack.html

■ Khôi phục mật khẩu: www.elcomsoft.com/prs.html

■ Khôi phục mật khẩu LastBit: http://lastbit.com/mso/Default.asp

Trình bẻ khóa mật khẩu chỉ được quản trị viên sử dụng để kiểm tra khả năng phòng thủ của hệ thống của chính họ.

Cố gắng bẻ khóa mật khẩu của người khác và xâm nhập vào hệ thống của cô ấy có cả hậu quả về mặt đạo đức và pháp lý.

Phân tích mật mã tổng quát

Bảng cầu vồng là một cách để lấy mật khẩu; tuy nhiên, phân tích mật mã là khoa học cố gắng tìm ra những cách khác để phá vỡ

mật mã. Trong hầu hết các trường hợp, nó không thành công lắm. Nếu bạn đã xem tin tức trong một hoặc hai năm qua, bạn sẽ

biết rằng FBI Hoa Kỳ đã không thể phá được mã hóa AES trên iPhone. Phân tích mật mã có thể khá tẻ nhạt và không đảm bảo

thành công.

Tuy nhiên, một số phương pháp phổ biến sẽ được thảo luận ở đây.

Lực lượng vũ phu

Phương pháp này chỉ đơn giản là thử mọi chìa khóa có thể. Nó được đảm bảo sẽ hoạt động, nhưng có thể sẽ mất nhiều thời

gian đến mức không thể sử dụng được. Ví dụ: để phá mật mã Caesar, chỉ có 26 khóa khả thi mà bạn có thể thử trong thời gian

rất ngắn. Nhưng hãy xem xét AES, với kích thước khóa nhỏ nhất là 128 bit. Nếu bạn thử 1 nghìn tỷ khóa mỗi giây, có thể mất

112.527.237.738.405.576.542 năm để thử tất cả. Đó là một chút lâu hơn tôi quan tâm để chờ đợi!
Machine Translated by Google

Bẻ khóa mật khẩu 165

Phân tích tần số

Phân tích tần suất liên quan đến việc xem xét các khối của tin nhắn được mã hóa để xác định xem có tồn tại bất

kỳ mẫu chung nào không. Ban đầu, nhà phân tích không cố gắng giải mã mà xem xét các mẫu trong thông báo.

Trong tiếng Anh, các chữ cái e và t và các từ như the, and, that, it, và is rất phổ biến.

Các chữ cái đơn lẻ đứng một mình trong câu thường được giới hạn ở a và I.

Một nhà giải mã quyết tâm sẽ tìm kiếm các kiểu mẫu này và theo thời gian, có thể suy ra phương pháp được sử

dụng để mã hóa dữ liệu. Quá trình này đôi khi có thể đơn giản hoặc có thể tốn rất nhiều công sức.

Phương pháp này chỉ hoạt động trên các mật mã lịch sử mà chúng ta đã thảo luận ở đầu chương này. Nó không hoạt

động trên các thuật toán hiện đại.

Bản rõ đã biết

Cuộc tấn công này dựa vào việc kẻ tấn công có các cặp bản rõ đã biết cùng với bản mã tương ứng. Điều này cung

cấp cho kẻ tấn công một nơi để bắt đầu cố gắng lấy khóa. Với các mật mã hiện đại, vẫn phải mất hàng tỷ kết hợp

như vậy mới có cơ hội giải được mật mã. Tuy nhiên, phương pháp này đã thành công trong việc giải mã Bí ẩn Hải

quân Đức. Những người phá mã ở Bletchley Park nhận ra rằng tất cả các thông điệp của Hải quân Đức đều kết thúc

bằng Heil Hitler. Họ đã sử dụng cuộc tấn công bằng văn bản gốc đã biết này để bẻ khóa.

Bản rõ được chọn

Trong cuộc tấn công này, kẻ tấn công có được các bản mã tương ứng với một tập hợp các bản rõ mà chúng chọn.

Điều này cho phép kẻ tấn công cố gắng lấy khóa được sử dụng và do đó giải mã các tin nhắn khác được mã hóa bằng

khóa đó. Điều này có thể khó khăn, nhưng không phải là không thể. Các phương pháp nâng cao như phân tích mật

mã vi phân là các kiểu tấn công bằng văn bản gốc được chọn.

Tấn công khóa liên quan

Điều này giống như một cuộc tấn công bằng bản rõ được chọn, ngoại trừ kẻ tấn công có thể lấy được bản mã được

mã hóa bằng hai khóa khác nhau. Đây thực sự là một cuộc tấn công rất hữu ích nếu bạn có thể thu được bản rõ và

bản mã phù hợp.

Tấn công sinh nhật

Đây là một cuộc tấn công vào các hàm băm mật mã, dựa trên một thứ gọi là định lý sinh nhật. Ý tưởng cơ bản là:

Bạn cần có bao nhiêu người trong một phòng để có khả năng cao là hai người sẽ có cùng ngày sinh (tháng và ngày,

nhưng không phải năm)?

Rõ ràng, nếu bạn đặt 367 người vào một phòng thì ít nhất 2 người trong số họ phải có cùng ngày sinh, vì một năm

chỉ có 365 ngày, cộng thêm một ngày nữa vào năm nhuận.

Nghịch lý không phải là bạn cần bao nhiêu người để đảm bảo một trận đấu, mà là bạn cần bao nhiêu người để có xác

suất mạnh mẽ.


Machine Translated by Google

166 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

Ngay cả khi có 23 người trong phòng, bạn vẫn có 50% khả năng 2 người có cùng ngày sinh.

Xác suất để người đầu tiên không có cùng ngày sinh với bất kỳ người nào trước đó là 100%, vì không có người

nào trước đó trong tập hợp. Điều đó có thể được viết là 365/365.

Người thứ hai chỉ có một người đứng trước và khả năng người thứ hai có ngày sinh khác với người thứ nhất là 364/365.

Người thứ ba có thể có cùng ngày sinh nhật với hai người đi trước nên khả năng có ngày sinh của một trong hai

người trước là 363/365. Bởi vì mỗi cái này độc lập nên chúng ta có thể tính xác suất như sau:

365/365 × 364/365 × 363/365 * 362/365 … × 342/365

(342 là xác suất người thứ 23 có cùng ngày sinh với người đứng trước.) Khi chúng ta chuyển đổi những giá trị

này thành giá trị thập phân, nó sẽ mang lại (cắt ngắn ở dấu thập phân thứ ba):

1 × 0,997 × 0,994 × 0,991 × 0,989 × 0,986 × … 0,936 = 0,49, hay 49 phần trăm

49 phần trăm này là xác suất để 23 người không có ngày sinh chung; do đó, có 51% (tốt hơn tỷ lệ chẵn) rằng 2

trong số 23 người sẽ có ngày sinh chung.

Phép toán tính ra khoảng 1,7 √n để xảy ra va chạm. Hãy nhớ xung đột là khi hai đầu vào tạo ra cùng một đầu ra.

Vì vậy, đối với hàm băm MD5, bạn có thể nghĩ rằng mình cần 2128 + 1 đầu vào khác nhau để xảy ra xung đột. Và để

đảm bảo va chạm, bạn sẽ làm được. Đó là một con số cực kỳ lớn: 3,4028236692093846346337460743177e+38. Nhưng

nghịch lý sinh nhật cho chúng ta biết rằng để có 51% cơ hội có một hàm băm, bạn chỉ cần 1,7 √n (n là 2128) đầu

vào. Con số đó vẫn còn rất lớn: 31.359.464.925.306.237.747,2. Nhưng nó nhỏ hơn nhiều so với nỗ lực thử từng đầu

vào!

Phân tích mật mã vi phân

Phân tích mật mã vi sai là một hình thức phân tích mật mã có thể áp dụng cho các thuật toán khóa đối xứng. Điều

này được phát minh bởi Eli Biham và Adi Shamir. Về cơ bản, đó là việc kiểm tra sự khác biệt ở đầu vào và điều

đó ảnh hưởng như thế nào đến sự khác biệt tổng hợp ở đầu ra. Ban đầu nó chỉ hoạt động với bản rõ được chọn.

Tuy nhiên, nó cũng chỉ có thể hoạt động với bản rõ và bản mã đã biết.

Cuộc tấn công dựa trên việc nhìn thấy các cặp đầu vào văn bản gốc có liên quan với nhau bằng một số khác biệt

không đổi. Cách thông thường để xác định sự khác biệt là thông qua thao tác XOR, nhưng có thể sử dụng các

phương pháp khác. Kẻ tấn công tính toán sự khác biệt trong các bản mã thu được và tìm kiếm một số mẫu thống

kê. Sự khác biệt thu được được gọi là sự khác biệt. Nói cách khác, phân tích mật mã vi sai tập trung vào việc

tìm ra mối quan hệ giữa những thay đổi xảy ra ở các bit đầu ra do thay đổi một số bit đầu vào.

Phân tích mật mã tuyến tính

Kỹ thuật này được phát minh bởi Mitsuru Matsui. Đây là một cuộc tấn công bằng văn bản gốc đã biết và sử dụng

phép tính gần đúng tuyến tính để mô tả hành vi của mật mã khối. Cho đủ cặp bản rõ và bản rõ tương ứng
Machine Translated by Google

Mật mã 167

bản mã, có thể thu được các bit thông tin về khóa. Rõ ràng, càng có nhiều cặp bản rõ và bản mã thì cơ hội thành

công càng cao. Phân tích mật mã tuyến tính dựa trên việc tìm ra các phép tính gần đúng affine đối với hoạt động

của mật mã. Nó thường được sử dụng trên mật mã khối.

Hãy nhớ rằng phân tích mật mã là một nỗ lực để bẻ khóa mật mã. Ví dụ: với khóa DES 56 bit, lực lượng vũ phu có

thể mất tới 256 lần thử. Phân tích mật mã tuyến tính sẽ sử dụng 247 bản rõ đã biết.1 Điều này tốt hơn so với

phương pháp mạnh mẽ, nhưng vẫn không thực tế trong hầu hết các tình huống.

Mật mã
Steganography là nghệ thuật và khoa học viết các tin nhắn ẩn theo cách mà không ai, ngoài người gửi và người

nhận dự định, nghi ngờ sự tồn tại của tin nhắn; đây là một hình thức bảo mật thông qua sự tối nghĩa. Thông báo

thường được ẩn trong một số tệp khác, chẳng hạn như tệp hình ảnh hoặc âm thanh kỹ thuật số, để không bị phát

hiện.

Ưu điểm của kỹ thuật giấu tin, so với mật mã, là các thông điệp không thu hút sự chú ý đến bản thân chúng. Nếu

không ai biết thông điệp thậm chí còn ở đó, thì họ thậm chí sẽ không cố gắng giải mã nó. Trong nhiều trường hợp,

tin nhắn được mã hóa và ẩn thông qua kỹ thuật steganography.

Việc triển khai steganography phổ biến nhất là sử dụng các bit ít quan trọng nhất trong một tệp để lưu trữ dữ

liệu. Bằng cách thay đổi bit ít quan trọng nhất, người ta có thể ẩn dữ liệu bổ sung mà không làm thay đổi tệp

gốc theo bất kỳ cách nào đáng chú ý.

Dưới đây là một số thuật ngữ steganography cơ bản bạn nên biết:

■ Tải trọng là dữ liệu được truyền đi một cách bí mật. Nói cách khác, đó là thông điệp bạn muốn
trốn.

■ Sóng mang là tín hiệu, luồng hoặc tệp dữ liệu mà tải trọng được giấu trong đó.

■ Kênh là loại phương tiện được sử dụng . Đây có thể là ảnh tĩnh, video hoặc tệp âm thanh.

Mặc dù việc sử dụng kỹ thuật giấu tin kỹ thuật số rõ ràng là khá mới mẻ nhưng khái niệm ẩn tin nhắn thì không.

Dưới đây là một số trường hợp về tin nhắn ẩn trong lịch sử:

■ Người Trung Quốc cổ đại bọc tiền giấy trong sáp và nuốt chúng khi vận chuyển.

■ Ở Hy Lạp cổ đại, đầu của người đưa tin có thể bị cạo trọc, để lại một thông điệp được viết trên đầu, sau đó là mái tóc của anh ta.

tóc đã được phép mọc lại.

■ Vào đầu những năm 1500, Johannes Trithemius đã viết một cuốn sách về mật mã và mô tả một kỹ thuật trong đó

một thông điệp được ẩn đi bằng cách lấy mỗi chữ cái thành một từ trong một cột cụ thể.

1. Matsui, M. (1999) Phương pháp phân tích mật mã tuyến tính cho DES. https://www.cs.bgu.ac.il/~beimel/Courses/crypto2001/Matsui.pdf.
Machine Translated by Google

168 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

Trong thời gian gần đây, trước khi máy tính ra đời, các phương pháp khác đã được sử dụng để ẩn tin nhắn:

■ Trong Thế chiến thứ hai, Kháng chiến Pháp đã gửi tin nhắn viết trên mặt sau của người đưa tin bằng cách sử dụng

Mực tàng hình.

■ Microdots là những hình ảnh/phim chưa tráng có kích thước bằng một chiếc máy đánh chữ, được nhúng trên những vật thể vô thưởng vô phạt.

các tài liệu. Những thứ này được cho là được sử dụng bởi các điệp viên trong Chiến tranh Lạnh.

Cách phổ biến nhất để thực hiện steganography ngày nay là thông qua các bit ít quan trọng nhất. Mỗi tệp có một số bit nhất định trên

mỗi đơn vị của tệp. Ví dụ: tệp hình ảnh trong Windows là 24 bit cho mỗi pixel. Nếu bạn thay đổi những bit ít quan trọng nhất thì sự

thay đổi đó sẽ không được nhận thấy bằng mắt thường. Ví dụ: người ta có thể ẩn thông tin trong các bit ít quan trọng nhất của tệp

hình ảnh. Với sự thay thế bit có ý nghĩa nhỏ nhất (LSB), một số bit nhất định trong tệp sóng mang sẽ được thay thế.

Steganophony là thuật ngữ dùng để ẩn tin nhắn trong tập tin âm thanh. Điều này có thể được thực hiện bằng phương pháp LSB hoặc các

phương pháp khác, chẳng hạn như ẩn tiếng vang, phương pháp này sẽ thêm âm thanh bổ sung vào tiếng vang bên trong tệp âm thanh—âm

thanh bổ sung đó sẽ che giấu thông tin.

Thông tin cũng có thể được ẩn trong các tập tin video. Có nhiều phương pháp khác nhau để thực hiện điều này. Biến đổi Cosine rời

rạc thường được sử dụng cho kỹ thuật giấu tin video. Phương pháp này thay đổi giá trị của một số phần nhất định của từng khung.

Phương pháp thông thường là làm tròn các giá trị.

Một số công cụ có sẵn để thực hiện steganography. Nhiều phần mềm miễn phí hoặc ít nhất có phiên bản dùng thử miễn phí. Một số công cụ

này được liệt kê ở đây:

■ QuickStego: Dễ sử dụng nhưng rất hạn chế

■ Bí mật vô hình: Mạnh mẽ hơn nhiều với cả phiên bản miễn phí và thương mại

■ MP3Stego: Đặc biệt để ẩn tải trọng trong các tập tin MP3

■ Tệp ẩn 4: Hoạt động với tệp âm thanh, tệp video và tệp hình ảnh

■ TUYẾT: Ẩn dữ liệu trong khoảng trắng

Phân tích mật mã

Giám định viên pháp y phải quan tâm đến việc phát hiện kỹ thuật giấu tin và trích xuất thông tin ẩn. Nhiệm vụ này thường được thực

hiện bởi phần mềm, nhưng hiểu được phần mềm đang làm gì là điều quan trọng. Bằng cách phân tích những thay đổi trong các cặp màu gần

nhau của hình ảnh, nhà phân tích mật mã có thể xác định xem liệu thay thế LSB có được sử dụng hay không. Các cặp màu đóng bao gồm

hai màu có giá trị nhị phân chỉ khác nhau trong LSB.

Có một số phương pháp phân tích hình ảnh nhằm phát hiện các thông báo ẩn, một trong số đó là phương pháp Ghép nhanh thô (RQP).

Điều này dựa trên số liệu thống kê về số lượng màu duy nhất và các cặp màu gần nhau trong hình ảnh 24 bit. RQP phân tích các cặp màu

được tạo bằng cách nhúng LSB.


Machine Translated by Google

Điện toán lượng tử và Mật mã lượng tử 169

Một tùy chọn khác sử dụng phương pháp chi bình phương từ số liệu thống kê. Phân tích chi bình phương tính toán

LSB trung bình và xây dựng bảng tần số và cặp giá trị. Sau đó nó thực hiện kiểm tra chi bình phương trên hai bảng

này. Về cơ bản, nó đo lường sự khác biệt về mặt lý thuyết so với sự khác biệt về dân số được tính toán.

Phân tích ẩn các tệp âm thanh liên quan đến việc kiểm tra độ méo tiếng ồn trong tệp sóng mang. Sự biến dạng nhiễu có

thể cho thấy sự hiện diện của tín hiệu ẩn.

Điện toán lượng tử và Mật mã lượng tử


Những đổi mới trong điện toán lượng tử hứa hẹn sẽ tăng đáng kể sức mạnh tính toán. Điều này sẽ mang lại những tiến

bộ trong nhiều khía cạnh của điện toán bao gồm khai thác dữ liệu, trí tuệ nhân tạo và các ứng dụng khác. Tuy nhiên,

sự gia tăng sức mạnh tính toán cũng sẽ đặt ra một thách thức đối với việc mã hóa. Máy tính dựa vào các bit riêng lẻ

để lưu trữ thông tin. Điện toán lượng tử dựa vào qubit.

Vấn đề thiết yếu của điện toán lượng tử là khả năng biểu diễn nhiều hơn hai trạng thái. Công nghệ điện toán hiện

tại, sử dụng bit cổ điển, chỉ có thể biểu diễn các giá trị nhị phân. Qubit, hay bit lượng tử, lưu trữ dữ liệu thông

qua sự phân cực của một photon. Hai trạng thái cơ bản là phân cực ngang hoặc phân cực dọc. Tuy nhiên, cơ học

lượng tử cho phép có sự chồng chất của hai trạng thái cùng một lúc.

Đây là điều đơn giản là không thể xảy ra trong một chút cổ điển. Hai trạng thái của qubit được biểu diễn bằng ký

hiệu lượng tử là |0> hoặc |1>. Chúng đại diện cho sự phân cực ngang hoặc dọc. Qubit là siêu vị trí của hai trạng

thái cơ bản này. Sự chồng chất này được biểu diễn dưới dạng | ψ > = α|0> + β|1>.

Về cơ bản, một bit cổ điển có thể biểu thị một hoặc một số không. Một qubit có thể biểu thị một, một số 0 hoặc bất

kỳ sự chồng chất lượng tử nào của hai trạng thái qubit đó. Sự chồng chất này cho phép tính toán mạnh mẽ hơn nhiều.

Sự chồng chất cho phép qubit lưu trữ số 1, số 0, cả số 1 và số 0 hoặc một phạm vi giá trị từ 1 đến 0. Điều này làm

tăng đáng kể khả năng lưu trữ và xử lý dữ liệu.

Hiện đã có các thuật toán dựa trên lượng tử có khả năng phân tích số lượng lớn vượt trội hơn nhiều so với các

thuật toán cổ điển. Đó là một vấn đề quan trọng vì thuật toán RSA được sử dụng rộng rãi dựa trên sự khó khăn trong

việc phân tích một số lượng lớn thành thừa số nguyên tố của nó. Khi máy tính lượng tử trở thành hiện thực, bài toán

bao thanh toán đó sẽ không còn khó khăn nữa và RSA sẽ lỗi thời. Các thuật toán trao đổi khóa khác nhau như Diffie-

Hellman phụ thuộc vào độ khó của việc giải bài toán logarit rời rạc. Hai cải tiến đáng kể nhất của Diffie-Hellman,

ElGamal và MQV (Menezes-Qu-Vanstone) cũng phụ thuộc vào bài toán logarit rời rạc. Mật mã đường cong elip dựa trên

độ khó của việc giải bài toán logarit rời rạc đối với đường cong elip. Các thuật toán lượng tử cũng sẽ làm cho bài

toán logarit rời rạc có thể giải được khá dễ dàng, do đó khiến các thuật toán này cũng trở nên lỗi thời.

Về cơ bản, tất cả mật mã bất đối xứng hiện nay đều dựa trên một trong hai loại bài toán lý thuyết số tổng quát sau:

phân tích nhân tử hoặc giải bài toán logarit rời rạc. Về cơ bản, khi máy tính lượng tử trở thành hiện thực thực tế,

thay vì chỉ là mối quan tâm nghiên cứu, tất cả các thuật toán bất đối xứng hiện đại sẽ trở nên lỗi thời. Đây là mối

lo ngại đáng kể đối với an ninh mạng vì tất cả thương mại điện tử hiện đại, e-mail được mã hóa và liên lạc an toàn

qua mạng đều phụ thuộc vào các thuật toán này. Hiện tại, NIST đang thực hiện một nghiên cứu kéo dài nhiều năm để

xác định các tiêu chuẩn cho mật mã hậu lượng tử. Và có một số hệ thống mật mã đầy hứa hẹn. Việc khám phá sâu về mật

mã lượng tử nằm ngoài phạm vi của chương này; tuy nhiên, mật mã dựa trên mạng và mật mã đa biến có vẻ là những ứng

cử viên sáng giá cho các hệ thống mật mã điện toán lượng tử.
Machine Translated by Google

170 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

Bản tóm tắt


Mã hóa là một yếu tố cơ bản của bảo mật máy tính. Bạn không bao giờ nên gửi dữ liệu nhạy cảm chưa được mã hóa.

Mã hóa ổ cứng hệ thống của bạn cũng là một ý tưởng hay, để nếu chúng bị đánh cắp, dữ liệu có giá trị trên ổ đĩa

sẽ ít có khả năng bị xâm phạm hơn. Đọc chương này sẽ không đủ tiêu chuẩn để bạn trở thành một nhà mật mã học,

nhưng thông tin nó cung cấp sẽ cung cấp một phác thảo cơ bản về cách thức hoạt động của mật mã.

Trong các bài tập sau đây, bạn sẽ thực hành sử dụng các phương pháp mã hóa khác nhau và tìm hiểu thêm về một số

phương pháp mã hóa.

Kiểm tra kỹ năng của bạn

CÂU HỎI CÓ NHIỀU LỰA CHỌN

1. Tại sao mã hóa là một phần quan trọng của bảo mật?

A. Cho dù mạng của bạn có an toàn đến đâu thì dữ liệu được truyền đi vẫn dễ bị tấn công

không có mã hóa.

B. Đường truyền được mã hóa sẽ giúp ngăn chặn các cuộc tấn công từ chối dịch vụ.

C. Gói được mã hóa sẽ di chuyển nhanh hơn trên các mạng.

D. Việc truyền được mã hóa chỉ cần thiết với VPN.

2. Phương pháp nào sau đây là phương pháp mã hóa lâu đời nhất được biết đến?

A. PGP

B. Nhiều bảng chữ cái

C. Mật mã Caesar

D. Mật mã bí ẩn

3. Điểm nào sau đây là điểm yếu chính của mật mã Caesar?

A. Nó không làm gián đoạn tần số chữ cái.

B. Nó không sử dụng toán học phức tạp.

C. Nó không sử dụng hệ thống khóa công khai.

D. Không có điểm yếu đáng kể; mật mã Caesar là đủ cho hầu hết các mục đích sử dụng mã hóa.

4. Một cải tiến của mật mã Caesar sử dụng nhiều hơn một dịch chuyển được gọi là gì?

A. Mã hóa DES

B. Thay thế nhiều bảng chữ cái

C. Ý TƯỞNG

D. Ba DES
Machine Translated by Google

Bản tóm tắt 171

5. Phép toán nhị phân nào có thể được sử dụng cho phương pháp mã hóa đơn giản?

A. Dịch chuyển bit

B. HOẶC

C. XOR

D. Hoán đổi bit

6. Tại sao phương pháp mô tả ở Câu hỏi 5 không an toàn?

A. Nó không thay đổi tần số của chữ cái hoặc từ.

B. Toán học còn thiếu sót.

C. Nó không sử dụng hệ thống khóa đối xứng.

D. Độ dài khóa quá ngắn.

7. Hệ thống nào sau đây là hệ thống khóa đối xứng sử dụng khối?

A. RSA

B. DES

C. PGP

D. Diffie-Hellman

8. Ưu điểm chính của thuật toán mã hóa được mô tả trong Câu hỏi 7 là gì?

A. Nó rất phức tạp.

B. Nó không thể phá vỡ được.

C. Nó sử dụng các phím bất đối xứng.

D. Nó tương đối nhanh.

9. Thuật toán ở câu 7 sử dụng khóa kích thước bao nhiêu?

A. 255 bit

B. 128 bit

C. 56bit

D. 64 bit

10. Loại mã hóa nào sử dụng khóa để mã hóa tin nhắn khác với khóa được sử dụng để giải mã
thông điệp?

A. Khóa riêng

B. Khóa chung

C. Đối xứng

D. Bảo mật
Machine Translated by Google

172 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

11. Phương pháp nào sau đây là phương pháp mã hóa được phát triển bởi ba nhà toán học ở
những năm 1970?

A. PGP

B. DES

C. DSA

D.RSA

12. Thuật toán mã hóa nào sử dụng khóa đối xứng có độ dài thay đổi?

A. RSA

B. Cá nóc

C. DES

D. PGP

13. Thuật toán mã hóa nào sau đây là mật mã khối và sử dụng thuật toán Rijndael
thuật toán?

A. DES

B. RSA

C. AES

D.NSA

14. Nếu bạn đang sử dụng mật mã khối để mã hóa lượng lớn dữ liệu, điều nào sau đây sẽ là điều
quan trọng nhất cần cân nhắc khi quyết định sử dụng mật mã nào (giả sử tất cả các lựa chọn
có thể có của bạn đều được biết rõ và an toàn)?

A. Kích thước của các khóa

được sử dụng B. Tốc độ của

thuật toán C. Nó có được sử dụng bởi bất kỳ nhóm quân sự nào hay

không D. Số lượng khóa được sử dụng

15. Cái nào sau đây có ba kích cỡ khóa khác nhau có thể sử dụng?

A. AES

B. DES

C. Ba DES
D. Ý TƯỞNG
Machine Translated by Google

Bản tóm tắt 173

16. Cách nào sau đây là cách sử dụng hợp pháp phổ biến nhất của công cụ bẻ khóa mật khẩu?

A. Việc bẻ mật khẩu không được sử dụng hợp pháp.

B. Các nhân viên tình báo quân sự sử dụng nó để phá vỡ liên lạc của kẻ thù.

C. Kiểm tra mã hóa mạng của chính bạn.

D. Cố gắng phá vỡ liên lạc của các tổ chức tội phạm để thu thập bằng chứng.

17. Chữ ký số là gì?

A. Một phần dữ liệu được mã hóa được thêm vào dữ liệu khác để xác minh người gửi

B. Phiên bản được quét của chữ ký của bạn, thường ở định dạng .jpg C. Chữ

ký được nhập qua bàn phím kỹ thuật số hoặc thiết bị khác D. Một phương

pháp để xác minh người nhận tài liệu

18. Mục đích của chứng chỉ là gì?

A. Để xác minh rằng phần mềm không có vi-rút

B. Để đảm bảo rằng chữ ký hợp lệ C. Để xác thực

người gửi chữ ký số hoặc phần mềm D. Để xác thực người nhận tài liệu

19. Ai cấp giấy chứng nhận?

A. Cơ quan mã hóa của Liên Hợp Quốc B.

Bộ Quốc phòng Hoa Kỳ C. Cơ quan cấp chứng chỉ riêng

D. Hiệp hội Máy tính

BÀI TẬP

BÀI TẬP 6.1: Sử dụng mật mã Caesar

Lưu ý: Bài tập này rất phù hợp cho các bài tập nhóm hoặc lớp học.

1. Viết một câu bằng văn bản thông thường.

2. Sử dụng mật mã Caesar do chính bạn thiết kế để mã hóa nó.

3. Chuyển câu đã mã hóa cho người khác trong nhóm hoặc lớp của bạn.

4. Mất bao lâu để người đó phá được mã hóa.

5. (tùy chọn) Tính thời gian trung bình để cả lớp phá được mật mã Caesar.
Machine Translated by Google

174 CHƯƠNG 6 Nguyên tắc cơ bản về mã hóa

BÀI TẬP 6.2: Sử dụng mật mã khối nhị phân

1. Viết một câu bằng văn bản thông thường.

2. Chuyển đổi văn bản sang ASCII. Bạn có thể tìm thấy một số trang web có bảng mã ASCII, chẳng hạn

như http://www.asciitable.com.

3. Chuyển đổi từng ký tự thành nhị phân.

4. Tạo khóa 16 bit ngẫu nhiên. Theo nghĩa đen, bạn có thể viết ra một chuỗi ngẫu nhiên gồm 1 và 0.

5. XOR phím đó với văn bản của bạn.

6. Chuyển câu được mã hóa cho một học sinh khác trong lớp và cho cô ấy cơ hội giải mã nó.

7. Khi tất cả học sinh đã có đủ cơ hội để phá vỡ mã hóa của các học sinh khác,

yêu cầu họ đưa cho nhau chìa khóa thích hợp.

BÀI TẬP 6.3: Cơ quan cấp chứng chỉ

1. Tìm kiếm trên web các cơ quan cấp chứng chỉ.

2. So sánh hai cơ quan cấp chứng chỉ. Bạn muốn giới thiệu cái nào trong hai cái đó?

3. Bạn đưa ra lý do gì để khách hàng giới thiệu tổ chức cấp chứng chỉ mà bạn đã chọn?

BÀI TẬP 6.4: Bẻ khóa mật khẩu

1. Tải xuống phần mềm bẻ khóa mật khẩu mà bạn chọn.

2. Cố gắng bẻ khóa mật khẩu trên PC của chính bạn.

3. Mô tả kết quả thí nghiệm của bạn. Bạn có thể bẻ khóa mật khẩu không? Nếu vậy thì bao lâu
nó đã mất?

4. Việc thay đổi mật khẩu để tăng độ khó ảnh hưởng như thế nào đến thời gian crack

Mật khẩu?

DỰ ÁN

DỰ ÁN 6.1: Mã hóa RSA

Sử dụng web hoặc các tài nguyên khác, viết một bài viết ngắn gọn về mã hóa lượng tử. Mối quan tâm đặc biệt phải

là hiện trạng nghiên cứu trong lĩnh vực đó (ngược lại với nền tảng/lịch sử đơn giản). Bạn cũng nên giải quyết

những trở ngại đáng kể trong việc triển khai mã hóa lượng tử.
Machine Translated by Google

Bản tóm tắt 175

DỰ ÁN 6.2: Lập trình mật mã Caesar

Lưu ý: Dự án này dành cho những sinh viên đã có nền tảng về lập trình.

Viết một chương trình đơn giản, bằng bất kỳ ngôn ngữ nào bạn thích hoặc bằng ngôn ngữ mà người hướng dẫn của

bạn đề xuất, có thể thực hiện mật mã Caesar. Chương này giải thích cách thức hoạt động của mật mã này và

đưa ra một số ý tưởng về cách sử dụng mã ASCII để mã hóa bằng bất kỳ ngôn ngữ lập trình tiêu chuẩn nào.

DỰ ÁN 6.3: Mã hóa lịch sử

Tìm một phương pháp mã hóa đã được sử dụng trong lịch sử nhưng không còn được sử dụng nữa (chẳng hạn như mật

mã Enigma của người Đức trong Thế chiến thứ hai). Mô tả cách thức hoạt động của phương pháp mã hóa đó,

đặc biệt chú ý đến sự tương phản của nó với các phương pháp hiện đại hơn.

DỰ ÁN 6.4: Bẻ khóa mật khẩu

Thực hiện theo các bước trong Bài tập 6.4 với ít nhất hai tiện ích bẻ khóa mật khẩu khác, sau đó viết báo cáo

so sánh và đối chiếu các công cụ bẻ khóa mật khẩu. Lưu ý cái nào bạn nghĩ là hiệu quả nhất. Đồng

thời giải thích việc sử dụng tiện ích như vậy có thể mang lại lợi ích như thế nào cho quản trị viên mạng.
Machine Translated by Google

Chương 7

Mạng riêng ảo

Chương Mục tiêu


Sau khi đọc chương này và hoàn thành các bài tập, bạn sẽ có thể làm được những việc sau:

■ Sử dụng mạng riêng ảo (VPN).

■ Sử dụng Giao thức đường hầm điểm-điểm (PPTP) làm công cụ mã hóa cho VPN.

■ Sử dụng Giao thức đường hầm lớp 2 (L2TP) làm công cụ mã hóa cho VPN.

■ Tăng cường tính bảo mật và quyền riêng tư cho hoạt động truyền thông bằng IPSec.

■ Hiểu và đánh giá các giải pháp VPN.

Giới thiệu
Các chương trước tập trung chủ yếu vào bảo mật trong mạng. Tuy nhiên, điều gì xảy ra khi người dùng từ

xa muốn đăng nhập vào mạng so với người dùng từ xa chỉ truy cập máy chủ web hoặc máy chủ FTP trên mạng?

Quá trình này liên quan đến một người dùng từ xa, có thể là toàn bộ văn phòng từ xa, kết nối với mạng và

truy cập các tài nguyên giống như thể cô ấy đang ở trên mạng cục bộ của bạn. Điều này rõ ràng trình bày

các vấn đề bảo mật quan trọng.

Mạng riêng ảo (VPN) đang trở thành một cách phổ biến để kết nối từ xa với mạng một cách an toàn. VPN tạo

kết nối mạng riêng qua Internet để kết nối các trang web hoặc người dùng từ xa với nhau. Thay vì sử dụng

kết nối chuyên dụng như đường dây thuê riêng, VPN sử dụng các kết nối ảo được định tuyến qua Internet

từ trang web hoặc người dùng từ xa đến mạng riêng. Bảo mật được thực hiện bằng cách mã hóa tất cả các

đường truyền.

VPN cho phép người dùng từ xa có quyền truy cập mạng giống như cô ấy là người cục bộ của mạng riêng.

Điều này có nghĩa là không chỉ kết nối cô ấy với mạng như thể cô ấy là người địa phương mà còn đảm bảo

kết nối an toàn. Bởi vì hầu hết các tổ chức đều có nhiều nhân viên đi công tác và làm việc tại nhà, từ xa

176
Machine Translated by Google

Công nghệ VPN cơ bản 177

truy cập mạng đã trở thành một mối quan tâm bảo mật quan trọng. Người dùng muốn quyền truy cập và quản trị viên

muốn bảo mật. VPN là tiêu chuẩn hiện tại để cung cấp cả hai.

Công nghệ VPN cơ bản


Để thực hiện được mục đích của mình, VPN phải mô phỏng kết nối mạng trực tiếp. Điều này có nghĩa là nó phải cung

cấp cùng mức độ truy cập và cùng mức độ bảo mật như kết nối trực tiếp. Để mô phỏng một liên kết điểm-điểm chuyên

dụng, dữ liệu được đóng gói hoặc bọc bằng tiêu đề cung cấp thông tin định tuyến cho phép dữ liệu truyền qua

Internet để đến đích. Điều này tạo ra một kết nối mạng ảo giữa hai điểm. Dữ liệu được gửi cũng được mã hóa, do đó

làm cho mạng ảo đó ở chế độ riêng tư.

Tuần Internet đã đưa ra một định nghĩa tuyệt vời về VPN. Điều này đã rất cũ nhưng vẫn được áp dụng cho đến ngày

nay: “sự kết hợp giữa các công nghệ và dịch vụ tạo đường hầm, mã hóa, xác thực và kiểm soát truy cập được sử dụng

để truyền lưu lượng truy cập qua Internet, mạng IP được quản lý hoặc đường trục của nhà cung cấp”.

VPN không yêu cầu công nghệ riêng biệt, đường dây thuê riêng hoặc cáp trực tiếp. Đó là một mạng riêng ảo, có nghĩa

là nó có thể sử dụng các kết nối hiện có để cung cấp kết nối an toàn. Trong hầu hết các trường hợp, nó được sử

dụng qua kết nối Internet thông thường. Về cơ bản, VPN là một cách “cõng” qua Internet để tạo kết nối an toàn.

Hình 7-1 minh họa VPN.

Mạng riêng tư

Đường hầm (Truyền được mã hóa)

Internet

Máy tính từ xa

HÌNH 7-1 Công nghệ VPN

Có nhiều phương pháp khác nhau để kết nối máy tính này với máy tính khác. Có một thời, việc quay số tới ISP qua

modem điện thoại là điều phổ biến. Hiện nay modem cáp, thiết bị di động và các cơ chế khác đã phổ biến hơn. Tất

cả các phương pháp này đều có điểm chung: chúng vốn không an toàn.

Tất cả dữ liệu được gửi qua lại đều không được mã hóa và bất kỳ ai cũng có thể sử dụng trình nghe lén gói để chặn

và xem dữ liệu. Hơn nữa, cả hai đầu đều không được xác thực. Điều này có nghĩa là bạn không thể hoàn toàn chắc

chắn mình đang thực sự gửi dữ liệu đến hoặc nhận dữ liệu từ ai. VPN cung cấp câu trả lời cho những vấn đề này.

Kiểu sắp xếp này thường được chấp nhận đối với một ISP. Khách hàng kết nối chỉ muốn có một đường dẫn vào Internet

và không cần kết nối trực tiếp hoặc an toàn với một mạng cụ thể. Tuy nhiên, thiết lập này không phù hợp với người

dùng từ xa đang cố gắng kết nối với mạng của tổ chức. Trong những trường hợp như vậy, kết nối riêng tư và an toàn

mà VPN cung cấp là rất quan trọng.


Machine Translated by Google

178 CHƯƠNG 7 Mạng riêng ảo

Người dùng từ xa cá nhân không phải là người dùng duy nhất của công nghệ VPN. Nhiều tổ chức lớn hơn có văn phòng ở nhiều địa điểm

khác nhau. Đạt được kết nối site-to-site đáng tin cậy và an toàn cho các tổ chức như vậy là một vấn đề quan trọng. Các văn phòng

chi nhánh khác nhau phải được kết nối với mạng công ty trung tâm thông qua các đường hầm vận chuyển lưu lượng qua Internet.

Việc sử dụng công nghệ VPN để kết nối site-to-site cho phép văn phòng chi nhánh có nhiều liên kết thoát khỏi đường truyền dữ liệu

chuyên dụng, đắt tiền và chỉ cần sử dụng các kết nối Internet hiện có.

Sử dụng giao thức VPN để mã hóa VPN


Có nhiều cách để đạt được nhu cầu mã hóa của VPN. Một số giao thức mạng thường được sử dụng cho VPN. Hai giao thức được sử dụng

phổ biến nhất cho mục đích này là Giao thức đường hầm điểm-điểm (PPTP) và Giao thức đường hầm lớp 2 (L2TP). Phần kết nối trong đó

dữ liệu được đóng gói được gọi là đường hầm. L2TP thường được kết hợp với IPSec để đạt được mức độ bảo mật cao. IPSec sẽ được

thảo luận chi tiết hơn ở phần sau của chương này.

PPTP
PPTP là giao thức đường hầm cho phép giao thức kết nối cũ hơn, PPP (Giao thức điểm-điểm), có các gói được gói gọn trong các gói

Giao thức Internet (IP) và được chuyển tiếp qua bất kỳ mạng IP nào, kể cả chính Internet. PPTP thường được sử dụng để tạo VPN.

PPTP là giao thức cũ hơn L2TP hoặc IPSec. Một số chuyên gia cho rằng PPTP kém an toàn hơn L2TP hoặc IPSec, nhưng nó tiêu tốn ít

tài nguyên hơn và được hầu hết mọi hoạt động triển khai VPN hỗ trợ. Về cơ bản nó là một phần mở rộng an toàn cho PPP. Xem Hình 7-2.

Trình bao bọc IP được cung cấp bởi PPTP

PPP tiêu chuẩn

Gói dữ liệu

HÌNH 7-2 Gói PPTP PPP

PPTP ban đầu được đề xuất làm tiêu chuẩn vào năm 1996 bởi Diễn đàn PPTP—một nhóm các công ty bao gồm Ascend Communications, ECI

Telematics, Microsoft, 3Com và US Robotics. Mục đích của nhóm này là thiết kế một giao thức cho phép người dùng từ xa giao tiếp an

toàn qua Internet.


Machine Translated by Google

Sử dụng giao thức VPN để mã hóa VPN 179

FYI: PPP

Vì PPTP dựa trên PPP nên biết một chút về PPP có thể khiến bạn quan tâm. PPP được thiết kế để di chuyển
các datagram qua các liên kết điểm-điểm nối tiếp. Nó gửi các gói qua một liên kết vật lý, một cáp nối
tiếp được thiết lập giữa hai máy tính. Nó được sử dụng để thiết lập và cấu hình liên kết truyền thông
và các giao thức lớp mạng cũng như để đóng gói các datagram. PPP có một số thành phần và thực tế được
tạo thành từ một số giao thức:

■ MP: Giao thức đa liên kết PPP

■ MP+: Giao thức đa liên kết Plus của Ascend

■ MPLS: Chuyển mạch nhãn đa giao thức

Mỗi trong số này xử lý một phần khác nhau của quá trình. PPP ban đầu được phát triển như một giao thức
đóng gói để vận chuyển lưu lượng IP qua các liên kết điểm-điểm. PPP cũng thiết lập một tiêu chuẩn cho
nhiều nhiệm vụ liên quan bao gồm:

■ phân công và quản lý địa chỉ IP

■ đóng gói đồng bộ theo hướng bit và không đồng bộ

■ ghép kênh giao thức mạng

■ cấu hình liên kết

■ kiểm tra chất lượng liên kết

■ phát hiện lỗi

PPP hỗ trợ các chức năng này bằng cách cung cấp Giao thức điều khiển liên kết (LCP) có thể mở rộng và
một nhóm Giao thức điều khiển mạng (NCP) để đàm phán các tham số và phương tiện cấu hình tùy chọn.
Ngoài IP, PPP còn hỗ trợ các giao thức khác, bao gồm Trao đổi gói Internetwork Packet (IPX) của Novell.

Mặc dù đã có các giao thức VPN mới hơn nhưng PPTP vẫn được sử dụng rộng rãi một phần vì hầu hết tất cả

các nhà cung cấp thiết bị VPN đều hỗ trợ PPTP. Một lợi ích quan trọng khác của PPTP là nó hoạt động ở lớp

2 của mô hình OSI (lớp liên kết dữ liệu), cho phép các giao thức mạng khác nhau chạy trên đường hầm PPTP.

Ví dụ: PPTP có thể được sử dụng để truyền tải IPX, NetBEUI và các dữ liệu khác.

Mô hình OSI, viết tắt của mô hình Kết nối hệ thống mở, là một mô tả tiêu chuẩn về cách các mạng giao tiếp.

Nó mô tả các giao thức và hoạt động khác nhau, đồng thời mô tả cách chúng liên quan với nhau. Mô hình này

được chia thành bảy lớp, như trong Bảng 7-1.


Machine Translated by Google

180 CHƯƠNG 7 Mạng riêng ảo

BẢNG 7-1 Mô hình OSI

Lớp Chức năng Giao thức

Ứng dụng Giao diện trực tiếp với ứng dụng và thực hiện các dịch vụ POP, SMTP,
ứng dụng phổ biến cho các quy trình ứng dụng DNS, FTP

Bài thuyết trình Giảm bớt mối lo ngại của lớp ứng dụng về sự khác biệt về mặt Telnet

chiến thuật trong cách biểu diễn dữ liệu trong hệ thống của
người dùng cuối

Phiên họp Cung cấp cơ chế quản lý đối thoại giữa các quy trình NetBIOS

ứng dụng của người dùng cuối

Chuyên chở Cung cấp khả năng kiểm soát truyền thông đầu cuối TCP, UDP

Mạng Định tuyến thông tin trong mạng IP, ICMP

Liên kết dữ liệu Mã hóa và giải mã các gói dữ liệu thành các bit ở lớp SLIP, PPP này

Thuộc vật chất Đại diện cho các thiết bị vật lý thực tế ở lớp này, chẳng hạn như card Không có

giao diện mạng

FYI: Mô hình OSI

Các nguồn sau đây cung cấp thêm thông tin:

■ Webopedia: www.Webopedia.com/quick_ref/OSI_Layers.asp

■ HowStuffWorks.com: https://computer.howstuffworks.com/osi.htm

PPTP hỗ trợ hai loại đường hầm chung: tự nguyện và bắt buộc. Trong đường hầm tự nguyện, người dùng từ
xa quay số vào mạng của nhà cung cấp dịch vụ và phiên PPP tiêu chuẩn được thiết lập cho phép người
dùng đăng nhập vào mạng của nhà cung cấp. Sau đó, người dùng khởi chạy phần mềm VPN để thiết lập phiên
PPTP quay lại máy chủ truy cập từ xa PPTP trong mạng trung tâm. Quá trình này được gọi là đường hầm tự
nguyện vì người dùng chọn loại mã hóa và xác thực để sử dụng. Trong đường hầm bắt buộc, máy chủ chọn
giao thức mã hóa và xác thực.

Xác thực PPTP


Khi kết nối người dùng với hệ thống từ xa, việc mã hóa việc truyền dữ liệu không phải là khía cạnh bảo
mật duy nhất. Bạn cũng phải xác thực người dùng. PPTP hỗ trợ hai công nghệ riêng biệt để thực hiện
điều này: Giao thức xác thực mở rộng (EAP) và Giao thức xác thực bắt tay thử thách (CHAP).

EAP

EAP được thiết kế đặc biệt với PPTP và hoạt động như một phần của PPP. EAP hoạt động từ bên trong giao
thức xác thực của PPP. Nó cung cấp một khuôn khổ cho một số phương thức xác thực khác nhau. EAP nhằm

mục đích thay thế các hệ thống xác thực độc quyền và bao gồm nhiều phương pháp xác thực khác nhau sẽ

được sử dụng, bao gồm mật khẩu, mã thông báo phản hồi thử thách và chứng chỉ cơ sở hạ tầng khóa công khai.
Machine Translated by Google

Sử dụng giao thức VPN để mã hóa VPN 181

CHAP

CHAP thực chất là một thủ tục bắt tay gồm ba phần (thuật ngữ dùng để biểu thị các quá trình xác thực).
Sau khi liên kết được thiết lập, máy chủ sẽ gửi thông báo thử thách đến máy khách khởi tạo liên kết.
Người khởi tạo phản hồi bằng cách gửi lại giá trị được tính bằng hàm băm một chiều.
Máy chủ kiểm tra phản hồi dựa trên tính toán của chính nó về giá trị băm dự kiến. Nếu các giá trị
khớp nhau, xác thực sẽ được xác nhận; nếu không, kết nối thường bị chấm dứt. Điều này có nghĩa là
việc ủy quyền kết nối máy khách có ba giai đoạn. Hình 7-3 minh họa chúng.

Bước 1: Kết nối được thiết lập

Bước 2: Máy chủ gửi lại thử thách

Bước 3: Khách hàng phản hồi bằng Hash

Máy tính từ xa Máy chủ VPN

HÌNH 7-3 Xác thực CHAP

Điều khiến CHAP đặc biệt thú vị là nó lặp lại quá trình này theo định kỳ. Điều này có nghĩa là ngay
cả sau khi kết nối máy khách được xác thực, CHAP vẫn liên tục tìm cách xác thực lại máy khách đó,
cung cấp mức độ bảo mật mạnh mẽ.

FYI: Hàm băm là gì?

Thuật ngữ hàm băm xuất hiện khá nhiều trong các cuộc thảo luận về mã hóa và xác thực.

Do đó, có một sự hiểu biết vững chắc về những gì nó là quan trọng. Như đã thảo luận trong Chương 6, “Các nguyên tắc cơ bản về

mã hóa”, hàm băm (H) là một phép biến đổi. Phép biến đổi này nhận đầu vào có kích thước thay đổi (m) và trả về một chuỗi có độ

dài cố định. Chuỗi có độ dài cố định được trả về được gọi là giá trị băm (h). Được biểu diễn dưới dạng phương trình toán học,

đây là h 5 H(m). Thông tin chi tiết về hàm băm có tại các trang web sau:

■ Điểm hướng dẫn: https://www.tutorialspoint.com/cryptography/cryptography_hash_functions.htm

■ Thế giới toán học: http://mathworld.wolfram.com/HashFunction.html

L2TP
Giao thức đường hầm lớp 2 là một phần mở rộng hoặc nâng cao của Giao thức đường hầm điểm-điểm thường
được sử dụng để vận hành các mạng riêng ảo qua Internet. Về cơ bản, đây là phiên bản mới và cải tiến
của PPTP. Đúng như tên gọi, nó hoạt động ở lớp liên kết dữ liệu của mô hình OSI (như PPTP). Cả PPTP
và L2TP đều được nhiều chuyên gia đánh giá là kém an toàn hơn IPSec.
Tuy nhiên, việc thấy IPSec được sử dụng cùng với L2TP để tạo kết nối VPN an toàn không phải là hiếm.
Machine Translated by Google

182 CHƯƠNG 7 Mạng riêng ảo

Xác thực L2TP

Giống như PPTP, L2TP hỗ trợ EAP và CHAP. Tuy nhiên, nó cũng cung cấp hỗ trợ cho các phương thức xác thực khác,

tổng cộng có sáu phương thức:

■ EAP

■ CHAP

■ MS-CHAP

■ PAP

■ SPAP

■ Kerberos

EAP và CHAP đã được thảo luận trong phần trước. Phần sau đây thảo luận về năm điều còn lại.

MS-CHAP

Đúng như tên gọi, MS-CHAP là một phần mở rộng dành riêng cho Microsoft cho CHAP. Microsoft đã tạo MS-
CHAP để xác thực các máy trạm Windows từ xa. Mục tiêu là cung cấp chức năng có sẵn trên mạng LAN cho
người dùng từ xa đồng thời tích hợp các thuật toán mã hóa và băm được sử dụng trên mạng Windows.

Bất cứ khi nào có thể, MS-CHAP đều phù hợp với CHAP tiêu chuẩn. Tuy nhiên, một số khác biệt cơ bản giữa
MS-CHAP và CHAP tiêu chuẩn bao gồm:

■ Gói phản hồi MS-CHAP có định dạng được thiết kế để tương thích với Microsoft
Các sản phẩm mạng Windows.

■ Định dạng MS-CHAP không yêu cầu người xác thực lưu trữ mật khẩu dạng văn bản rõ ràng hoặc

được mã hóa đảo ngược.

■ MS-CHAP cung cấp cơ chế thử lại xác thực và thay đổi mật khẩu được kiểm soát bởi người xác thực. Các cơ chế thử

lại và thay đổi mật khẩu này tương thích với các cơ chế được sử dụng trong mạng Windows.

■ MS-CHAP định nghĩa một tập hợp các mã lý do lỗi được trả về trong gói tin lỗi
trường thông báo nếu xác thực thất bại. Đây là những mã mà phần mềm Windows có thể đọc và giải
thích, do đó cung cấp cho người dùng lý do xác thực không thành công.

PAP

Giao thức xác thực mật khẩu (PAP) là hình thức xác thực cơ bản nhất. Với PAP, tên và mật khẩu của

người dùng được truyền qua mạng và được so sánh với một bảng gồm các cặp tên-mật khẩu.
Thông thường, mật khẩu được lưu trong bảng được mã hóa. Tuy nhiên, việc truyền mật khẩu ở dạng văn
bản rõ ràng, không được mã hóa, điểm yếu chính của PAP. Tính năng xác thực cơ bản được tích hợp trong
Machine Translated by Google

Sử dụng giao thức VPN để mã hóa VPN 183

giao thức HTTP sử dụng PAP. Hình 7-4 cho thấy xác thực này. Phương pháp này không còn được sử dụng và chỉ

được trình bày cho mục đích lịch sử.

Tên người dùng và mật khẩu là

Gửi bằng văn bản rõ ràng

Nếu tên người dùng và mật khẩu tốt

Khách hàng đã được xác thực

Máy tính từ xa Máy chủ VPN

HÌNH 7-4 PAP

SPAP

Giao thức xác thực mật khẩu Shiva (SPAP) là phiên bản độc quyền của PAP. Hầu hết các chuyên gia cho rằng

SPAP an toàn hơn PAP một chút vì tên người dùng và mật khẩu đều được mã hóa khi chúng được gửi, không

giống như PAP. Hình 7-5 minh họa giao thức này.

Tên người dùng và mật khẩu

Được gửi được mã hóa

Nếu tên người dùng và mật khẩu tốt

Khách hàng đã được xác thực

Máy tính từ xa Máy chủ VPN

HÌNH 7-5 SPAP

Vì SPAP mã hóa mật khẩu nên ai đó chụp các gói xác thực sẽ không thể đọc được mật khẩu SPAP. Tuy nhiên, SPAP

vẫn dễ bị tấn công phát lại (nghĩa là một người ghi lại trao đổi và phát lại tin nhắn để có được quyền truy

cập gian lận). Các cuộc tấn công phát lại có thể xảy ra vì SPAP luôn sử dụng cùng một phương thức mã hóa có

thể đảo ngược để gửi mật khẩu qua mạng.

Kerberos

Kerberos là một trong những giao thức xác thực mạng nổi tiếng nhất. Nó được phát triển tại MIT và tên của

nó bắt nguồn từ con chó ba đầu thần thoại canh giữ cổng vào Địa ngục.

Kerberos có mặt khắp nơi và nó cũng được hỏi về một số kỳ thi chứng chỉ liên quan đến bảo mật (Security+,

CISSP, CASP, v.v.). Vì vậy, hiểu biết cơ bản về Kerberos là một ý kiến hay.

Phần này cung cấp một cái nhìn tổng quan ngắn gọn, đủ cho hầu hết các kỳ thi chứng chỉ ngành.
Machine Translated by Google

184 CHƯƠNG 7 Mạng riêng ảo

Kerberos hoạt động bằng cách gửi tin nhắn qua lại giữa máy khách và máy chủ. Mật khẩu thực tế (hoặc thậm

chí là hàm băm của mật khẩu) không bao giờ được gửi. Điều đó khiến ai đó không thể chặn được nó. Thay vào

đó, điều xảy ra là tên người dùng sẽ được gửi. Sau đó, máy chủ tra cứu hàm băm được lưu trữ của mật khẩu

đó và sử dụng mật khẩu đó làm khóa mã hóa để mã hóa dữ liệu và gửi lại cho máy khách. Sau đó, máy khách sẽ

lấy mật khẩu mà người dùng đã nhập và sử dụng mật khẩu đó làm chìa khóa để giải mã dữ liệu. Nếu người dùng

nhập sai mật khẩu thì nó sẽ không bao giờ được giải mã. Đây là một cách thông minh để xác minh mật khẩu mà

không bao giờ bị truyền đi. Xác thực xảy ra với UDP (Giao thức gói dữ liệu người dùng) trên cổng 88.

Sau khi tên người dùng của người dùng được gửi đến dịch vụ xác thực (AS), AS đó sẽ sử dụng hàm băm của

mật khẩu người dùng được lưu dưới dạng khóa bí mật để mã hóa hai tin nhắn sau được gửi đến máy khách:

■ Thông báo A: Chứa khóa phiên Máy khách/TGS (Dịch vụ cấp vé) được mã hóa bí mật

chìa khóa của khách hàng

■ Thông báo B: Chứa TGT (Vé cấp vé) bao gồm ID khách hàng, địa chỉ mạng khách hàng và thời hạn

hiệu lực

Hãy nhớ rằng cả hai tin nhắn này đều được mã hóa bằng khóa do AS tạo ra.

Sau đó, người dùng cố gắng giải mã tin nhắn A bằng khóa bí mật do máy khách tạo ra để băm mật khẩu đã nhập

của người dùng. Nếu mật khẩu đã nhập đó không khớp với mật khẩu AS tìm thấy trong cơ sở dữ liệu thì hàm

băm sẽ không khớp và quá trình giải mã sẽ không hoạt động. Nếu nó hoạt động thì thông báo A chứa khóa phiên

Máy khách/TGS có thể được sử dụng để liên lạc với TGS. Tin nhắn B được mã hóa bằng khóa bí mật TGS và máy

khách không thể giải mã được.

Bây giờ người dùng đã được xác thực vào hệ thống. Nhưng khi người dùng thực sự yêu cầu một dịch vụ thì

cần phải có thêm một số thông tin liên lạc bằng tin nhắn. Khi yêu cầu dịch vụ, máy khách sẽ gửi các thông

báo sau tới TGS:

■ Tin nhắn C: Bao gồm TGT từ tin nhắn B và ID của dịch vụ được yêu cầu

■ Tin nhắn D: Trình xác thực (bao gồm ID khách hàng và dấu thời gian), được mã hóa

sử dụng khóa phiên Máy khách/TGS

Khi nhận được tin nhắn C và D, TGS sẽ lấy tin nhắn B từ tin nhắn C. Nó giải mã tin nhắn B bằng khóa bí mật

TGS. Điều này mang lại cho nó khóa phiên Client/TGS. Sử dụng khóa này, TGS giải mã tin nhắn D (Authenticator)

và gửi hai tin nhắn sau cho máy khách:

■ Tin nhắn E: Vé máy khách đến máy chủ (bao gồm ID máy khách, địa chỉ mạng máy khách, thời hạn

hiệu lực và khóa phiên máy khách/máy chủ) được mã hóa bằng khóa bí mật của dịch vụ

■ Thông báo F: Khóa phiên máy khách/máy chủ được mã hóa bằng khóa phiên Máy khách/TGS
Machine Translated by Google

185
Sử dụng giao thức VPN để mã hóa VPN

Khi nhận được tin nhắn E và F từ TGS, máy khách có đủ thông tin để xác thực chính nó với Máy chủ dịch vụ (SS). Máy khách kết

nối với SS và gửi hai thông báo sau:

■ Tin nhắn E: Từ bước trước (thẻ từ máy khách đến máy chủ, được mã hóa bằng mã dịch vụ

chìa khoá bí mật)

■ Tin nhắn G: Trình xác thực mới, bao gồm ID khách hàng và dấu thời gian và được mã hóa

sử dụng khóa phiên máy khách/máy chủ

SS giải mã vé (tin nhắn E) bằng khóa bí mật của chính nó để lấy khóa phiên máy khách/máy chủ.

Sử dụng khóa phiên, SS giải mã Authenticator và gửi thông báo sau tới máy khách để xác nhận danh tính thực sự của nó và sự sẵn

sàng phục vụ máy khách:

■ Tin nhắn H: Dấu thời gian được tìm thấy trong Authenticator của khách hàng

Máy khách giải mã xác nhận (tin nhắn H) bằng khóa phiên máy khách/máy chủ và kiểm tra xem dấu thời gian có chính xác hay

không. Nếu vậy, máy khách có thể tin cậy máy chủ và có thể bắt đầu gửi yêu cầu dịch vụ đến máy chủ.

Máy chủ cung cấp các dịch vụ được yêu cầu cho máy khách.

Kerberos được đơn giản hóa (không có chi tiết về các thông báo từ A đến H) được hiển thị trong Hình 7-6

KDC

Trung tâm phân phối khóa

Bước 1: Người dùng được xác thực bởi AS.


BẰNG

(Dịch vụ xác thực)

Bước 2: AS chỉ đạo TGS tạo TGT.

Bước 3: TGT được gửi lại cho người dùng. Được mã hóa bằng

khóa đối xứng chỉ có KDC mới biết. TGS

(Dịch vụ cấp vé)

Bước 4: Người dùng yêu cầu phiếu dịch vụ, gửi

TGT sang KDC.

Người dùng

Bước 5: KDC gửi phiếu dịch vụ cho người dùng. Tốt

với khóa đối xứng <5 phút được KDC biết

và Dịch vụ.

Bước 6: Người dùng gửi phiếu dịch vụ đến dịch vụ.


Dịch vụ (Một số máy chủ/dịch vụ

người dùng muốn truy cập.)

HÌNH 7-6 Kerberos được đơn giản hóa


Machine Translated by Google

186 CHƯƠNG 7 Mạng riêng ảo

Sau đây là các thuật ngữ Kerberos cần biết:

■ Hiệu trưởng: Một máy chủ hoặc máy khách mà Kerberos có thể gán phiếu cho.

■ Dịch vụ xác thực (AS): Dịch vụ ủy quyền cho người ủy quyền và kết nối họ với Máy chủ cấp vé.

Lưu ý một số sách/nguồn nói rằng máy chủ chứ không phải dịch vụ.

■ Dịch vụ cấp vé (TGS): Cung cấp vé.

■ Trung tâm phân phối khóa (KDC): Máy chủ cung cấp vé ban đầu và xử lý TGS

yêu cầu. Thường thì nó chạy cả dịch vụ AS và TGS.

■ Vương quốc: Một ranh giới trong một tổ chức. Mỗi lĩnh vực có AS và TGS riêng.

■ Máy chủ cấp vé từ xa (RTGS): Một TGS ở vùng xa.

■ Vé cấp vé (TGT): Vé được cấp trong quá trình xác thực.

■ Vé: Dùng để xác thực với máy chủ. Chứa danh tính của khách hàng, khóa phiên, dấu thời gian và

tổng kiểm tra. Được mã hóa bằng khóa của máy chủ.

■ Khóa phiên: Khóa mã hóa tạm thời.

■ Trình xác thực: Chứng minh khóa phiên đã được tạo gần đây. Thường hết hạn trong vòng 5 phút.

L2TP so với PPTP


L2TP thực chất là sự hội tụ của Giao thức chuyển tiếp lớp 2 (do Cisco phát triển) và PPTP (đã thảo luận ở

phần trước). Sự phát triển của L2TP được thúc đẩy bởi những thiếu sót được nhận thấy trong PPTP. Một

trong những thiếu sót đó là PPTP chỉ hỗ trợ các địa chỉ IP công cộng. Nhiều dịch vụ mạng quay số chỉ hỗ

trợ các địa chỉ IP đã đăng ký, điều này hạn chế các loại ứng dụng được triển khai qua VPN. Nói cách khác,

chỉ những địa chỉ IP công cộng được đăng ký với interNIC mới được chấp nhận. Do nhiều VPN cuối cùng kết

nối với một máy chủ nội bộ có thể sử dụng địa chỉ IP riêng nên điều này có một số hạn chế. L2TP hỗ trợ

nhiều giao thức và địa chỉ IP chưa đăng ký và quản lý riêng qua Internet.

Một cải tiến quan trọng khác của L2TP so với PPTP là nó sử dụng IPSec để mã hóa, trong khi PPTP chỉ sử

dụng Mã hóa điểm-điểm của Microsoft (MPPE). MPPE thực sự là một phiên bản của DES (được thảo luận trong

Chương 6) và như vậy đủ an toàn cho hầu hết các tình huống. Tuy nhiên, hầu hết các chuyên gia đều coi

IPSec an toàn hơn. Bảng 7-2 cung cấp sự so sánh giữa PPTP và L2TP.

BẢNG 7-2 L2TP so với PPTP

L2TP PPTP

Mạng không IP Có, L2TP có thể hoạt động trên mạng X.25 Không, chỉ IP
và mạng ATM

Mã hóa Có, sử dụng IPSec Có, sử dụng MPPE

Xác thực Có, sử dụng EAP hoặc MS-CHAP Có, EAP, MS-CHAP, CHAP, SPAP và PAP
Machine Translated by Google

IPSec 187

Windows NT chỉ hỗ trợ PPTP, nhưng Windows 2000 và các phiên bản mới hơn cũng hỗ trợ L2TP, khiến nó trở thành

một lựa chọn hấp dẫn đối với các quản trị viên mạng Windows vì nó hỗ trợ nhiều tùy chọn xác thực và kết nối

mạng hơn cũng như an toàn hơn.

Cho bạn biết: L2TP

Các nguồn này cung cấp thêm dữ liệu về L2TP:

■ Wikipedia: https://en.wikipedia.org/wiki/Layer_2_Tunneling_Protocol

■ IPVN: https://www.ivpn.net/pptp-vs-l2tp-vs-openvpn

IPSec
Bảo mật Giao thức Internet (IPSec) là một công nghệ được sử dụng để tạo mạng riêng ảo. IPSec được sử dụng

cùng với giao thức IP để tăng thêm tính bảo mật và quyền riêng tư cho giao tiếp TCP/IP. IPSec được tích hợp

với hệ điều hành của Microsoft cũng như nhiều hệ điều hành khác. Ví dụ: cài đặt bảo mật trong Tường lửa kết

nối Internet đi kèm với Windows XP và các phiên bản mới hơn cho phép người dùng bật IPSec để truyền. IPSec

là một bộ giao thức được phát triển bởi IETF (Lực lượng đặc nhiệm kỹ thuật Internet; www.ietf.org) để hỗ trợ

trao đổi gói tin an toàn. IPSec đã được triển khai rộng rãi để triển khai VPN.

IPSec có hai chế độ mã hóa: vận chuyển và đường hầm. Chế độ vận chuyển hoạt động bằng cách mã hóa dữ liệu

trong mỗi gói nhưng không mã hóa tiêu đề. Điều này có nghĩa là địa chỉ nguồn và đích cũng như thông tin tiêu

đề khác không được mã hóa. Chế độ đường hầm mã hóa cả tiêu đề và dữ liệu. Chế độ này an toàn hơn chế độ vận

chuyển nhưng có thể hoạt động chậm hơn. Ở đầu nhận, thiết bị tuân thủ IPSec sẽ giải mã từng gói. Để IPSec

hoạt động, các thiết bị gửi và nhận phải chia sẻ một khóa, dấu hiệu cho thấy IPSec là công nghệ mã hóa một

khóa.

IPSec cũng cung cấp hai giao thức khác ngoài hai chế độ đã được mô tả:

■ Tiêu đề xác thực (AH): Giao thức AH chỉ cung cấp cơ chế xác thực.

AH cung cấp tính toàn vẹn dữ liệu, xác thực nguồn gốc dữ liệu và dịch vụ bảo vệ chống phát lại tùy chọn.

Tính toàn vẹn dữ liệu được đảm bảo bằng cách sử dụng thông báo tóm tắt được tạo bằng thuật toán

như HMAC-MD5 hoặc HMAC-SHA. Xác thực nguồn gốc dữ liệu được đảm bảo bằng cách sử dụng khóa bí mật

chung để tạo bản tóm tắt thông báo.

■ Đóng gói tải trọng bảo mật (ESP): Giao thức ESP cung cấp tính bảo mật dữ liệu

(mã hóa) và xác thực (toàn vẹn dữ liệu, xác thực nguồn gốc dữ liệu và bảo vệ chống phát lại).

ESP có thể được sử dụng chỉ với tính bảo mật, chỉ xác thực hoặc cả tính bảo mật và xác thực.

Một trong hai giao thức có thể được sử dụng riêng lẻ để bảo vệ gói IP hoặc cả hai giao thức có thể được áp dụng cùng

nhau cho cùng một gói IP.


Machine Translated by Google

188 CHƯƠNG 7 Mạng riêng ảo

IPSec cũng có thể hoạt động ở hai chế độ. Những chế độ đó là chế độ vận chuyển và chế độ đường hầm. Chế độ vận

chuyển là chế độ trong đó IPSec mã hóa dữ liệu chứ không phải tiêu đề gói. Chế độ đường hầm mã hóa tiêu đề cũng như

dữ liệu gói.

Có các giao thức khác liên quan đến việc làm cho IPSec hoạt động. IKE hay Internet Key Exchange, được sử dụng để

thiết lập các liên kết bảo mật trong IPSec. Một liên kết bảo mật được hình thành bởi hai điểm cuối của đường hầm

VPN, sau khi chúng quyết định cách chúng sẽ mã hóa và xác thực. Ví dụ: họ có sử dụng AES để mã hóa các gói không,

giao thức nào sẽ được sử dụng để trao đổi khóa và giao thức nào sẽ được sử dụng để xác thực? Tất cả những vấn đề

này đều được đàm phán giữa hai điểm cuối và các quyết định được lưu trữ trong liên kết bảo mật (SA). Điều này

được thực hiện thông qua giao thức IKE. Trao đổi khóa Internet (IKE và IKEv2) được sử dụng để thiết lập SA bằng

cách xử lý việc đàm phán các giao thức và thuật toán cũng như để tạo khóa mã hóa và xác thực sẽ được sử dụng.

Hiệp hội bảo mật Internet và Giao thức quản lý khóa (ISAKMP) cung cấp một khuôn khổ để xác thực và trao đổi khóa.

Sau khi giao thức IKE thiết lập SA, đã đến lúc thực sự thực hiện xác thực và trao đổi khóa.

Tổng quan chung về IPSec là đủ đối với nhiều chuyên gia bảo mật. Nếu bạn muốn biết thêm chi tiết về quy trình trao đổi khóa và

xác thực IPSec, các đoạn sau sẽ cung cấp điều đó.

Trao đổi đầu tiên giữa các điểm cuối VPN sẽ thiết lập chính sách bảo mật cơ bản; người khởi xướng đề xuất các

thuật toán mã hóa và xác thực mà họ sẵn sàng sử dụng. Người phản hồi chọn đề xuất phù hợp và gửi cho người khởi

xướng. Trao đổi tiếp theo sẽ chuyển khóa công khai Diffie-Hellman và dữ liệu khác. Các khóa công khai Diffie-Hellman

đó sẽ được sử dụng để mã hóa dữ liệu được gửi giữa hai điểm cuối. Trao đổi thứ ba xác thực phiên ISAKMP. Quá trình

này được gọi là chế độ chính.

Sau khi IKE SA được thiết lập, quá trình đàm phán IPSec (Chế độ nhanh) sẽ bắt đầu.

Đàm phán IPSec ở Chế độ nhanh, hay Chế độ nhanh, tương tự như đàm phán IKE ở Chế độ linh hoạt, ngoại trừ việc đàm

phán phải được bảo vệ trong IKE SA. Chế độ nhanh đàm phán SA để mã hóa dữ liệu và quản lý việc trao đổi khóa cho

IPSec SA đó. Nói cách khác, Chế độ nhanh sử dụng các khóa Diffie-Hellman được trao đổi ở chế độ chính để tiếp tục

trao đổi các khóa đối xứng sẽ được sử dụng để mã hóa thực tế trong VPN.

Chế độ linh hoạt nén quá trình đàm phán IKE SA thành ba gói, với tất cả dữ liệu cần thiết cho SA được người khởi

tạo chuyển qua. Người trả lời gửi đề xuất, tài liệu chính và ID, đồng thời xác thực phiên trong gói tiếp theo.

Người khởi xướng trả lời bằng cách xác thực phiên. Việc đàm phán diễn ra nhanh hơn và ID người khởi xướng và

người phản hồi được chuyển đi rõ ràng.

SSL/TLS
Một loại tường lửa mới sử dụng SSL (Lớp cổng bảo mật) hoặc TLS (Bảo mật lớp truyền tải) để cung cấp quyền truy cập

VPN thông qua cổng web. Về cơ bản, TLS và SSL là các giao thức được sử dụng để bảo mật các trang web. Nếu bạn thấy

một trang web bắt đầu bằng HTTPS thì lưu lượng truy cập đến và đi từ trang web đó sẽ được mã hóa bằng SSL hoặc TLS.
Machine Translated by Google

SSL/TLS 189

Ngày nay, chúng tôi hầu như luôn muốn nói đến TLS khi nói đến SSL. Chỉ là nhiều người đã quen với việc nói SSL và cụm từ

này bị mắc kẹt. Điều này có thể thấy rõ qua lịch sử ngắn gọn của SSL/TLS được trình bày ở đây:

■ SSL v1 chưa được phát hành (Netscape).

■ Phiên bản 2 ra mắt năm 1995 nhưng còn nhiều sai sót.

■ Phiên bản 3 phát hành năm 1996 (RFC 6101).

■ Tiêu chuẩn TLS 1.0, RFC 2246, phát hành năm 1999.

■ TLS 1.1 được định nghĩa trong RFC 4346 vào tháng 4 năm 2006.

■ TLS 1.2 được định nghĩa trong RFC 5246 vào tháng 8 năm 2008. Nó dựa trên thông số TLS 1.1 trước đó.

■ Tính đến tháng 7 năm 2017, TLS 1.3 là bản nháp và các chi tiết vẫn chưa được sửa chữa.

Trong một số giải pháp VPN, người dùng đăng nhập vào một trang web được bảo mật bằng SSL hoặc TLS, sau đó được cấp quyền

truy cập vào mạng riêng ảo. Tuy nhiên, việc truy cập trang web sử dụng SSL hoặc TLS không có nghĩa là bạn đang sử dụng VPN.

Theo nguyên tắc chung, hầu hết các trang web, chẳng hạn như trang web ngân hàng, chỉ cung cấp cho bạn quyền truy cập vào

một bộ dữ liệu rất hạn chế, chẳng hạn như số dư tài khoản của bạn. VPN cung cấp cho bạn quyền truy cập vào mạng, quyền

truy cập tương tự hoặc tương tự với những gì bạn sẽ có nếu bạn thực sự ở trên mạng đó.

Cho dù bạn đang sử dụng SSL để kết nối với trang web thương mại điện tử hay để thiết lập VPN, quy trình bắt tay SSL là cần

thiết để thiết lập kết nối an toàn/được mã hóa:

1. Máy khách gửi cho máy chủ số phiên bản SSL của máy khách, cài đặt mật mã, dữ liệu theo phiên cụ thể và thông tin

khác mà máy chủ cần liên lạc với máy khách bằng SSL.

2. Máy chủ gửi cho khách hàng số phiên bản SSL của máy chủ, cài đặt mật mã, dữ liệu theo phiên cụ thể và thông tin

khác mà khách hàng cần để liên lạc với máy chủ qua SSL.

Máy chủ cũng gửi chứng chỉ riêng của nó và nếu máy khách đang yêu cầu tài nguyên máy chủ yêu cầu xác thực ứng

dụng khách thì máy chủ sẽ yêu cầu chứng chỉ của máy khách.

3. Máy khách sử dụng thông tin do máy chủ gửi để xác thực máy chủ—ví dụ: trong trường hợp trình duyệt web kết nối với

máy chủ web, trình duyệt sẽ kiểm tra xem tên chủ đề của chứng chỉ nhận được có thực sự khớp với tên của máy chủ

được liên hệ hay không, liệu người phát hành chứng chỉ có phải là cơ quan cấp chứng chỉ đáng tin cậy hay

không, chứng chỉ đã hết hạn hay chưa và lý tưởng nhất là chứng chỉ đã bị thu hồi hay chưa. Nếu máy chủ

không thể được xác thực, người dùng sẽ được cảnh báo về sự cố và được thông báo rằng không thể thiết lập kết

nối được mã hóa và xác thực. Nếu máy chủ có thể được xác thực thành công, máy khách sẽ chuyển sang bước tiếp theo.

4. Sử dụng tất cả dữ liệu được tạo trong quá trình bắt tay cho đến nay, máy khách (với sự hợp tác của máy chủ, tùy thuộc

vào mật mã được sử dụng) tạo bí mật tiền chính cho phiên, mã hóa nó bằng khóa chung của máy chủ (thu được từ

chứng chỉ của máy chủ, được gửi ở bước 2), sau đó gửi bí mật tiền chính được mã hóa đến máy chủ.
Machine Translated by Google

190 CHƯƠNG 7 Mạng riêng ảo

5. Nếu máy chủ đã yêu cầu xác thực ứng dụng khách (một bước tùy chọn trong quá trình bắt tay), máy

khách cũng ký một phần dữ liệu khác dành riêng cho quá trình bắt tay này và được cả máy khách và

máy chủ đều biết. Trong trường hợp này, máy khách sẽ gửi cả dữ liệu đã ký và chứng chỉ của chính

máy khách đến máy chủ cùng với bí mật tiền chính được mã hóa.

6. Nếu máy chủ đã yêu cầu xác thực ứng dụng khách, máy chủ sẽ cố gắng xác thực ứng dụng khách. Nếu máy

khách không thể được xác thực, phiên kết thúc. Nếu máy khách có thể được xác thực thành công,

máy chủ sẽ sử dụng khóa riêng của nó để giải mã bí mật tiền chính, sau đó thực hiện một loạt các bước

(máy khách cũng thực hiện, bắt đầu từ cùng một bí mật tiền chính) để tạo bí mật chính .

7. Cả máy khách và máy chủ đều sử dụng bí mật chính để tạo các khóa phiên.

khóa đối xứng được sử dụng để mã hóa và giải mã thông tin được trao đổi trong phiên SSL và để xác

minh tính toàn vẹn của nó (nghĩa là để phát hiện bất kỳ thay đổi nào trong dữ liệu giữa thời điểm nó

được gửi và thời gian nó được nhận qua kết nối SSL).

8. Máy khách gửi một tin nhắn đến máy chủ để thông báo rằng các tin nhắn trong tương lai từ máy khách

sẽ được mã hóa bằng khóa phiên. Sau đó, nó sẽ gửi một tin nhắn riêng (được mã hóa) cho biết rằng

phần bắt tay của máy khách đã kết thúc.

9. Máy chủ gửi một tin nhắn đến máy khách để thông báo rằng các tin nhắn trong tương lai từ máy chủ

sẽ được mã hóa bằng khóa phiên. Sau đó, nó sẽ gửi một tin nhắn riêng (được mã hóa) cho biết phần

máy chủ của quá trình bắt tay đã hoàn tất.

Quá trình này được tóm tắt trong Hình 7-7.

Giấy chứng nhận

Thẩm quyền
xác thực máy chủ với CA.

Bước 3: Khách hàng

Bước 1: Xin chào khách hàng (cài đặt mật mã, phiên bản SSL, v.v.)

Bước 2: Xin chào máy chủ (cài đặt mật mã, phiên bản SSL, chứng chỉ X. 509, v.v.)

Bước 4: Khách hàng gửi pre-master secret.

Bước 5: Client có session key và kết thúc quá trình bắt tay.

Máy khách Máy chủ

Bước 6: Server có session key và kết thúc quá trình bắt tay.

HÌNH 7-7 Bắt tay SSL/TLS

Lưu ý rằng bước 3 thường không diễn ra vào ngày hôm nay. Thay vào đó, hầu hết các máy tính được bán

thương mại đều có kho chứng chỉ chứa các chứng chỉ số dành cho các cơ quan cấp chứng chỉ chính (hãy nhớ

lại phần thảo luận về chứng chỉ số ở Chương 6). Chỉ cần sử dụng chứng chỉ đó để xác minh chữ ký số từ máy

chủ.
Machine Translated by Google

Triển khai giải pháp VPN 191

Triển khai giải pháp VPN


Bất kể bạn sử dụng giao thức nào cho VPN, bạn phải triển khai lựa chọn của mình trong một số cấu hình phần mềm/phần cứng. Nhiều

hệ điều hành có sẵn kết nối máy chủ và máy khách VPN. Đây thường là tốt cho các tình huống văn phòng nhỏ hoặc gia đình. Tuy

nhiên, chúng có thể không đủ cho các hoạt động quy mô lớn hơn trong đó nhiều người dùng kết nối qua VPN. Đối với những tình

huống đó, giải pháp VPN chuyên dụng có thể cần thiết. Phần này thảo luận về một số giải pháp đó.

Giải pháp của Cisco

Cisco cung cấp các giải pháp VPN, bao gồm một mô-đun (https://www.cisco.com/c/en/us/products/

thế chấp/bộ định tuyến/2800-series-integrated-services-routers-isr/prod_qas0900aecd80516d81.html) có thể được thêm vào nhiều

thiết bị chuyển mạch và bộ định tuyến của họ để triển khai các dịch vụ VPN. Nó cũng cung cấp phần cứng phía máy khách được thiết

kế để cung cấp phía máy khách dễ triển khai nhưng an toàn cho VPN.

Ưu điểm chính của giải pháp này là nó kết hợp hoàn hảo với các sản phẩm khác của Cisco.

Quản trị viên sử dụng tường lửa Cisco hoặc bộ định tuyến Cisco có thể thấy giải pháp này phù hợp hơn.

Tuy nhiên, giải pháp này có thể không phù hợp với những người không sử dụng các sản phẩm khác của Cisco và những người không có

kiến thức về hệ thống của Cisco. Tuy nhiên, nhiều thông số kỹ thuật hấp dẫn cho sản phẩm này bao gồm:

■ Nó có thể sử dụng mã hóa 3DES (phiên bản cải tiến của DES). Nhưng AES được ưu tiên và mạnh mẽ hơn

khuyến khích.

■ Nó có thể xử lý các gói lớn hơn 500 byte.

■ Nó có thể tạo tới 60 đường hầm ảo mới mỗi giây, một tính năng tốt nếu có nhiều người dùng

đăng nhập hoặc tắt.

Giải pháp dịch vụ

Trong một số trường hợp, đặc biệt là với các tình huống VPN WAN lớn, bạn có thể không muốn đầu tư thời gian, công sức và chi

phí để thiết lập, bảo mật và giám sát các kết nối VPN. Bạn có thể ký hợp đồng toàn bộ quá trình này, việc thiết lập và quản trị

với các nhà cung cấp VPN. AT&T cung cấp dịch vụ này cho nhiều công ty.

Các giải pháp dịch vụ có ưu điểm là không yêu cầu bất kỳ kỹ năng VPN cụ thể nào từ bộ phận CNTT nội bộ. Một bộ phận thiếu các

lĩnh vực kỹ năng cụ thể này nhưng muốn triển khai VPN có thể thấy rằng sử dụng dịch vụ bên ngoài là giải pháp phù hợp.

Openwan

Sản phẩm openswan (www.openswan.org/) là một giải pháp VPN nguồn mở có sẵn cho hệ điều hành Linux. Là một sản phẩm nguồn mở, một

trong những ưu điểm lớn nhất của nó là miễn phí. openswan sử dụng IPSec, khiến nó trở thành giải pháp VPN có độ bảo mật cao.
Machine Translated by Google

192 CHƯƠNG 7 Mạng riêng ảo

openswan hỗ trợ người dùng từ xa đăng nhập qua VPN hoặc kết nối site-to-site. Nó cũng hỗ trợ kết nối không dây. Tuy nhiên, nó

không hỗ trợ NAT (dịch địa chỉ mạng, giải pháp thay thế mới cho máy chủ proxy).

Giải pháp khác

Rõ ràng có nhiều giải pháp VPN khả thi. Một Google hoặc Yahoo! tìm kiếm “Giải pháp VPN” tạo ra nhiều phản hồi. Bạn gặp phải các

giải pháp VPN trước đó thường xuyên nhất. Bạn phải kiểm tra các yêu cầu sử dụng dữ liệu cụ thể của tổ chức mình để xác định

giải pháp VPN phù hợp nhất.

Trong thực tế

Thiết lập máy chủ VPN với Windows 2016

Thiết lập mạng riêng ảo với Windows Server 2016 tương đối dễ dàng. Chỉ cần làm theo các bước cơ bản sau và bạn

sẽ có một máy chủ VPN mà bất kỳ máy khách nào cũng có thể kết nối tới:

1. Vai trò máy chủ mở đầu tiên.

2. Thêm vai trò.

3. Thêm vai trò truy cập từ xa (xem Hình 7-8).

HÌNH 7-8 Vai trò truy cập từ xa


Machine Translated by Google

Triển khai giải pháp VPN 193

4. Chọn hộp kiểm DirectAccess và VPN (RAS) như trong Hình 7-9, rồi nhấn Next.

HÌNH 7-9 Truy cập VPN

5. Wizard sẽ yêu cầu bạn xác nhận một số mục, sau đó bạn sẽ thấy hình ảnh hiển thị trong
Hình 7-10.

HÌNH 7-10 Đã hoàn tất


Machine Translated by Google

194 CHƯƠNG 7 Mạng riêng ảo

Định cấu hình người dùng để có thể đăng nhập qua VPN. Lưu ý rằng theo mặc định, người dùng bị vô hiệu hóa quyền truy cập

quay số, vì vậy bạn phải bật tính năng quay số cho bất kỳ người dùng nào bạn muốn sử dụng VPN.

Máy chủ bạn dự định sử dụng làm máy chủ VPN phải sử dụng địa chỉ IP tĩnh (trái ngược với địa chỉ được gán động).

1. Đi tới Bắt đầu, Chương trình, Cài đặt, Công cụ quản trị, Định tuyến và Truy cập từ xa, rồi

sau đó nhấp vào biểu tượng bên cạnh tên máy chủ của bạn.

2. Nhấp vào Hành động, Định cấu hình và Kích hoạt Định tuyến và Dịch vụ Từ xa. Thao tác này sẽ khởi động một trình

hướng dẫn đơn giản sẽ hướng dẫn bạn qua quá trình định cấu hình máy chủ VPN của mình.

Sau khi hoàn thành trình hướng dẫn, bạn có thể kiểm tra cấu hình của mình hoặc thay đổi cấu hình bằng cách nhấp chuột phải

vào biểu tượng máy chủ và chọn Thuộc tính. Kiểm tra để đảm bảo các cài đặt sau được đặt đúng chỗ:

1. Bạn có kết nối mạng LAN và quay số theo yêu cầu.

2. Nó được thiết lập để định tuyến IP và truy cập IP từ xa.

3. Thiết lập cổng để sử dụng L2TP hoặc PPTP.

Tùy thuộc vào môi trường mạng của bạn, bạn sẽ cần định cấu hình tường lửa của mình để cho phép lưu lượng VPN đi qua.
Machine Translated by Google

Bản tóm tắt 195

Bản tóm tắt


Mạng riêng ảo là các kết nối an toàn qua Internet cho phép người dùng và trang web từ xa kết nối với mạng
trung tâm. Bạn có thể sử dụng PPTP, L2TP hoặc IPSec để tạo VPN. IPSec được coi là an toàn nhất trong ba

loại. Quản trị viên chọn giao thức VPN nên xem xét cách các gói được mã hóa, loại xác thực nào được sử dụng

và liệu phần cứng và phần mềm hiện tại có hỗ trợ công nghệ đó hay không.

Kiểm tra kỹ năng của bạn

CÂU HỎI CÓ NHIỀU LỰA CHỌN

1. PPTP là từ viết tắt của từ nào sau đây?

A. Giao thức truyền điểm-điểm

B. Giao thức đường hầm điểm-điểm

C. Thủ tục truyền điểm-điểm

D. Quy trình đào hầm điểm-điểm

2. L2TP có nghĩa là gì?

A. Giao thức truyền cấp 2

B. Giao thức đường hầm lớp 2 C.

Giao thức đường hầm cấp 2

D. Giao thức truyền cấp 2

3. PPTP dựa trên giao thức nào trước đó?

MỘT PHIẾU

B. L2TP

C. IPSec

D. PPP

4. PPTP hoạt động ở lớp nào của mô hình OSI?

Hiện tượng vật lý

B. Mạng

C. Liên kết dữ liệu

D. Vận chuyển
Machine Translated by Google

196 CHƯƠNG 7 Mạng riêng ảo

5. Sự khác biệt giữa đào hầm tự nguyện và bắt buộc trong PPTP là gì?

A. Chỉ có đường hầm tự nguyện mới cho phép người dùng chọn mã hóa.

B. Chỉ có đường hầm bắt buộc mới buộc người dùng phải gửi mật khẩu của mình.

C. Chỉ đường hầm tự nguyện mới cho phép kết nối PPP/không phải VPN tiêu chuẩn.

D. Chỉ đường hầm bắt buộc mới buộc mã hóa 3DES.

6. Những giao thức xác thực nào có sẵn trong PPTP?

A. MS-CHAP, PAP, SPAP

B. EAP, CHAP

C. PAP, EAP, MS-CHAP

D. SPAP, MS-CHAP

7. Điều nào sau đây là tính năng bảo mật quan trọng trong CHAP?

A. Nó định kỳ xác thực lại.

B. Nó sử dụng mã hóa 3DES.

C. Nó miễn dịch với việc giả mạo IP.

D. Nó sử dụng mã hóa AES.

8. Giao thức xác thực nào có sẵn với L2TP mà không có ở PPTP?

A. MS-CHAP, PAP, SPAP

B. EAP, CHAP

C. PAP, EAP, MS-CHAP

D. SPAP, MS-CHAP

9. Điều nào sau đây thường được coi là kém an toàn nhất?

A. PAP

B. SPAP

C. MS-CHAP

D. X-PAP

10. Lỗ hổng chính trong SPAP là gì?

A. Mã hóa yếu B. Tấn

công phát lại C. Xóa

mật khẩu văn bản

D. Không có mã băm
Machine Translated by Google

Bản tóm tắt 197

11. PPTP sử dụng gì để thực hiện mã hóa?

A. MPPE

B. IPSec

C. 3DES

D. AES

12. Điểm yếu nào sau đây là điểm yếu của PPTP?

A. Xóa mật khẩu văn bản B.

Không mã hóa C. Chỉ

được sử dụng với mạng IP D. Không

được hỗ trợ trên hầu hết các nền tảng

13. Giao thức nào tạo nên IPSec?

A. A. AH, IKE, ESP, ISAKMP

B. AH, PAP, CHAP, ISAKMP

C. ISAKMP, MS-CHAP, PAP, AH

D. AH, SPAP, CHAP, ISAKMP

14. Sự khác biệt giữa chế độ vận chuyển và chế độ đường hầm trong IPSec là gì?

A. Chỉ có chế độ vận chuyển là không được mã hóa.

B. Chỉ có chế độ đường hầm là không được mã hóa.

C. Chỉ có chế độ đường hầm không mã hóa tiêu đề.

D. Chỉ chế độ vận chuyển không mã hóa tiêu đề.

15. AH có lợi thế gì hơn SPAP?

A. AH sử dụng mã hóa mạnh hơn.

B. AH xác thực mạnh hơn.

C. AH không dễ bị tấn công lại.

D. Không có; SPAP an toàn hơn.

16. Điều gì bảo vệ dữ liệu gói thực tế trong IPSec?

A. AH

B. ESP

C. SPAP

D. CHAP
Machine Translated by Google

198 CHƯƠNG 7 Mạng riêng ảo

17. Mục đích của IKE là gì?

A. Trao đổi khóa

B. Mã hóa gói

C. Bảo vệ tiêu đề

D. Xác thực

BÀI TẬP

BÀI TẬP 7.1: Thiết lập máy chủ Windows VPN

Windows XP lần đầu tiên giới thiệu Trình hướng dẫn VPN dễ sử dụng và nó đã được chuyển sang các
phiên bản Windows sau này cho phép bạn thiết lập máy XP của mình làm máy chủ VPN.

1. Bấm vào Bắt đầu rồi chọn Panel Điều khiển.

2. Trong Bảng Điều khiển, chọn Kết nối Mạng.

3. Trong cửa sổ Kết nối mạng, chọn Tạo kết nối mới, thao tác này sẽ khởi chạy Chào mừng bạn đến với Trình hướng dẫn

kết nối mới.

4. Nhấp vào Tiếp theo trên màn hình đầu tiên của trình hướng dẫn.

5. Trên màn hình Loại kết nối mạng, chọn tùy chọn Thiết lập kết nối nâng cao.

6. Trên màn hình Tùy chọn kết nối nâng cao, chọn Chấp nhận kết nối đến và
Bấm tiếp.

7. Trên màn hình Thiết bị cho kết nối đến, chọn thiết bị tùy chọn mà bạn muốn chấp nhận kết nối đến.

8. Trên màn hình Kết nối Mạng riêng ảo (VPN) sắp tới, chọn tùy chọn Cho phép kết nối riêng ảo và nhấp

vào Tiếp theo.

9. Trên màn hình Quyền của Người dùng, chọn những người dùng được phép tạo VPN đến
kết nối. Bấm tiếp.

10. Trên màn hình Networking Software, nhấp vào mục nhập Internet Protocol (TCP/IP) và nhấp

nút Thuộc tính.

11. Trong hộp thoại Thuộc tính TCP/IP đến, hãy đánh dấu vào hộp kiểm Cho phép người gọi truy cập Mạng cục bộ của

tôi để cho phép người gọi VPN kết nối với các máy tính khác trong mạng LAN. Nếu hộp kiểm này không được

chọn, người gọi VPN sẽ chỉ có thể kết nối với các tài nguyên trên chính máy chủ Windows XP VPN. Bấm OK để quay

lại màn hình Phần mềm mạng rồi bấm Tiếp theo.
Machine Translated by Google

Bản tóm tắt 199

12. Nhấp vào Hoàn tất để tạo kết nối trên màn hình Hoàn tất Trình hướng dẫn Kết nối Mới.

13. Sau khi Kết nối đến hoàn tất, nhấp chuột phải vào Kết nối bạn đã thực hiện trong cửa sổ Kết nối

mạng và chọn Thuộc tính.

Bây giờ bạn có một máy chủ VPN.

BÀI TẬP 7.2: Thiết lập máy khách Windows XP VPN

1. Bấm vào Bắt đầu rồi chọn Panel Điều khiển.

2. Trong Bảng Điều khiển, chọn Kết nối Mạng.

3. Mở Trình hướng dẫn Kết nối Mới. Nhấp vào Kết nối với mạng tại Nơi làm việc của tôi và
Bấm tiếp.

4. Nhấp vào Kết nối mạng riêng ảo và nhấp vào Tiếp theo.

5. Nhập tên cho kết nối này rồi nhấp vào Tiếp theo.

6. Chọn xem Windows có tự động quay số kết nối ban đầu với Internet mà bạn

được tạo trước đó hoặc cho phép bạn làm điều đó một cách thủ công. Nếu sử dụng nhiều kết nối Internet, bạn nên sử

dụng phương pháp thủ công, nhưng nếu luôn sử dụng cùng một kết nối, bạn có thể cân nhắc sử dụng phương pháp

tự động.

7. Nhấp vào Tiếp theo, sau đó nhập tên máy chủ hoặc địa chỉ IP của máy chủ RRAS của bạn. Nếu bạn không

biết điều này, hãy kiểm tra với bộ phận CNTT của bạn. Bấm vào Tiếp theo lần nữa và chọn Chỉ sử dụng của tôi cho

kết nối này. Nhấn Next lần nữa rồi nhấn Finish để tạo kết nối VPN

8. Bạn có thể kiểm tra điều này bằng cách kết nối với máy chủ mà bạn đã tạo trong Bài tập 7.1.

BÀI TẬP 7.3: Thiết lập VPN Linux

Linux có thể khác nhau tùy theo từng bản phân phối, vì vậy hãy tham khảo tài liệu về bản phân phối cụ thể của bạn.

Tuy nhiên, một số nguồn được cung cấp cho bạn ở đây, theo thứ tự tôi đề xuất. Đầu tiên là dễ làm theo nhất:

■ http://www.techrepublic.com/article/set-up-a-linux-vpn-server-by-following-these-10-steps/

■ http://vpnlabs.org/linux-vpn.php
Machine Translated by Google

200 CHƯƠNG 7 Mạng riêng ảo

BÀI TẬP 7.4: Chặn gói tin

Chương 5 đã thảo luận về IDS Snort mã nguồn mở. Một trong những chế độ của nó chỉ đơn giản là chặn và đọc

các gói tin. Bạn sẽ sử dụng nó trong bài tập này.

1. Chạy Snort ở chế độ dò gói trên máy chủ VPN của bạn.

2. Chặn các gói tin đến.

3. Xác định xem chúng có được mã hóa hay không.

BÀI TẬP 7.5: Cài đặt và cấu hình openswan

1. Truy cập trang web được đề cập trong chương về openswan.

2. Tải sản phẩm xuống máy chủ Linux của bạn.

3. Cài đặt và cấu hình theo tài liệu sản phẩm.

BÀI TẬP 7.6: Tính độc lập của hệ điều hành

Bài tập này chứng tỏ rằng các hệ điều hành khác nhau có thể giao tiếp dễ dàng qua kết nối VPN.

1. Sử dụng máy Linux, kết nối với máy chủ Windows VPN mà bạn đã tạo trong Bài tập 7.1.

2. Sử dụng máy Windows, kết nối với máy chủ Linux VPN mà bạn đã tạo trong Bài tập 7.3 hoặc 7.5.

DỰ ÁN

DỰ ÁN 7.1: So sánh các giao thức xác thực

1. Sử dụng trang web hoặc các tài nguyên khác để tra cứu từng giao thức xác thực được đề cập trong

chương nầy.

2. So sánh các giao thức bằng cách chỉ ra điểm mạnh và điểm yếu của từng giao thức.

3. Bạn muốn giới thiệu cái nào cho trường học, công ty hoặc tổ chức của mình?

4. Nêu rõ lý do đằng sau đề xuất của bạn.


Machine Translated by Google

Bản tóm tắt 201

DỰ ÁN 7.2: Trao đổi khóa Internet

1. Sử dụng trang web và các nguồn khác để tra cứu thông tin về cách thức hoạt động của IKE.

2. Mô tả các phương pháp được sử dụng để đảm bảo an toàn cho việc trao đổi khóa.

3. Điểm yếu có thể có của phương pháp IKE là gì?

4. Bạn có coi đây là phương pháp trao đổi khóa an toàn không?

DỰ ÁN 7.3: Hiệu quả chi phí

Thật không may, sức mạnh kỹ thuật không phải là tiêu chí duy nhất để đánh giá bất kỳ giải pháp nào. Chi phí phải

được tính đến. Đối với dự án này, bạn sẽ thực hiện ước tính chi phí. Điều này sẽ yêu cầu bạn phải nghiên cứu

các trang web về sản phẩm và thậm chí có thể gọi điện cho đại diện bán hàng.

1. Giả sử mạng cục bộ nhỏ (dưới 100 người dùng, 5 máy chủ).

2. Giả sử có 20 người dùng từ xa, không phải tất cả đều được kết nối cùng một lúc.

3. Giả sử trung bình có năm đến tám kết nối tại một thời điểm bất kỳ.

4. Nghiên cứu ba giải pháp có thể hỗ trợ kịch bản này và báo cáo chi phí của từng giải pháp.
Machine Translated by Google

Chương 8

Tăng cường hệ điều hành

Chương Mục tiêu


Sau khi đọc chương này và hoàn thành các bài tập, bạn sẽ có thể làm được những việc sau:

■ Cấu hình hệ thống Windows đúng cách để vận hành an toàn.

■ Cấu hình hệ thống Linux đúng cách để vận hành an toàn.

■ Áp dụng các bản vá hệ điều hành phù hợp cho Windows.

■ Áp dụng các bản vá ứng dụng.

■ Cấu hình trình duyệt web một cách an toàn.

Giới thiệu
Bảo vệ vành đai và mạng con của hệ thống thông qua tường lửa, máy chủ proxy (hoặc máy hỗ trợ NAT), hệ

thống phát hiện xâm nhập, honeypot và các thiết bị khác chỉ là một phần của việc bảo mật mạng. Ngay cả

việc cài đặt phần mềm chống vi-rút và phần mềm chống phần mềm gián điệp cũng không hoàn thiện được tính

bảo mật của mạng. Để đạt được một mạng an toàn hơn, bạn phải thực hiện tăng cường hệ điều hành. Đây là

quá trình định cấu hình đúng cách cho từng máy và đặc biệt là máy chủ để có cài đặt bảo mật tối ưu. Từ tối ưu

thay vì tối đa được sử dụng vì một lý do. Bảo mật tối đa cũng là ít sử dụng nhất. Bảo mật tối ưu tạo ra

sự cân bằng giữa tính dễ sử dụng và bảo mật.

Trong chương này, bạn sẽ tìm hiểu cách cấu hình đúng cách Windows 7, Windows 8/8.1, Windows 10, Linux và

các trình duyệt web khác nhau. Cấu hình an toàn hệ điều hành và phần mềm của nó là một bước quan trọng

trong bảo mật hệ thống thường bị bỏ qua. Ngay cả những nhà quản trị bảo mật tương đối ngây thơ cũng

thường nghĩ đến việc cài đặt tường lửa hoặc phần mềm chống vi-rút, nhưng nhiều người đã thất bại trong

việc bảo vệ từng máy khỏi các cuộc tấn công. Việc phát hiện sự hiện diện của các lỗ hổng cho phép bạn đóng

các cổng “mở” và hạn chế hơn nữa các hoạt động “đầu vào/đầu ra”. Tất cả các kỹ thuật và quy trình này

đều nằm trong lĩnh vực bao quát của Hệ thống quản lý rủi ro và Đảm bảo thông tin.

202
Machine Translated by Google

Cấu hình Windows đúng cách 203

Cần lưu ý rằng bảo mật ứng dụng cũng quan trọng như bảo mật hệ điều hành. Tuy nhiên, có rất nhiều ứng dụng khác nhau

nên không thể đề cập đến cấu hình bảo mật ở đây, ngoài việc nói rằng bạn nên tham khảo tài liệu ứng dụng và đảm bảo nó

được định cấu hình an toàn và luôn được vá/cập nhật. Lập trình an toàn cũng là một chủ đề quan trọng, nhưng là một chủ

đề hoàn toàn riêng biệt nằm ngoài phạm vi của cuốn sách này.

Cấu hình Windows đúng cách


Cấu hình Windows đúng cách (tập trung vào Windows 7, 8 và 10) bao gồm nhiều khía cạnh.

Bạn phải tắt các dịch vụ không cần thiết, định cấu hình sổ đăng ký đúng cách, bật tường lửa, định cấu hình trình duyệt

đúng cách, v.v. Chương 4, “Các ứng dụng thực tế của tường lửa”, đã thảo luận về tường lửa kết nối Internet và các quy

trình kiểm tra gói có trạng thái và kiểm tra gói không có trạng thái, đồng thời phần sau của chương này sẽ thảo luận về

bảo mật trình duyệt. Bây giờ, chúng ta hãy xem xét các yếu tố quan trọng khác trong cấu hình bảo mật Windows.

FYI: Còn Windows Server thì sao?

Trong suốt chương này, các ví dụ sử dụng Windows 7, 8 và 10. Bạn có thể thắc mắc liệu những vấn đề này có áp dụng cho Windows

Server (2008, 2012 và 2016) hay không. Đầu tiên và quan trọng nhất, Windows 10 là hệ điều hành dành cho máy tính để bàn hiện

được Microsoft hỗ trợ; Windows 2016 là phiên bản máy chủ hiện tại. Chúng tôi đưa Windows 7 vào vì nhiều doanh nghiệp vẫn đang

sử dụng nó.

Lý do thứ hai để không thảo luận về Windows Server 2016 là từ góc độ củng cố hệ điều hành, nó gần như giống hệt với Windows 10.

Vì vậy, hầu hết các khuyến nghị trong chương này cũng sẽ áp dụng cho Windows Server (2008, 2012 hoặc 2016). Đó cũng là trường

hợp Microsoft cung cấp các phiên bản máy chủ đã được cấu hình an toàn hơn các phiên bản dành cho máy tính để bàn.

Tài khoản, người dùng, nhóm và mật khẩu


Bất kỳ hệ thống Windows nào cũng có các tài khoản và nhóm người dùng mặc định nhất định. Đây thường có thể là điểm khởi

đầu cho những kẻ xâm nhập muốn bẻ khóa mật khẩu của những tài khoản đó và từ đó giành được quyền truy cập vào máy chủ

hoặc mạng. Chỉ cần đổi tên hoặc vô hiệu hóa một số tài khoản mặc định này có thể cải thiện tính bảo mật của bạn.

Ghi chú

Windows có xu hướng di chuyển mọi thứ trong bảng điều khiển theo từng phiên bản. Phiên bản của bạn (7, 8, 8.1, 10, v.v.) có thể

có nội dung ở một vị trí khác. Nếu bạn chưa làm như vậy, tôi khuyên bạn nên tạm dừng và dành chút thời gian để làm quen với vị

trí của các tiện ích trong phiên bản Windows của bạn.

Trong Windows 7 hoặc Windows 8, bạn tìm thấy tài khoản người dùng bằng cách đi tới Bắt đầu, Cài đặt, Bảng điều khiển,

Người dùng và Nhóm. Trong Windows 10, hãy đi tới Bắt đầu, Cài đặt và Tài khoản. Hình 8-1 hiển thị một màn hình tương

tự như màn hình bạn sẽ thấy.


Machine Translated by Google

204 CHƯƠNG 8 Tăng cường hệ điều hành

HÌNH 8-1 Người dùng và nhóm

Chọn tab Nâng cao, tab này sẽ đưa bạn đến màn hình hiển thị trong Hình 8-2. Nhấp vào nút Nâng cao,
màn hình sẽ mở ra như trong Hình 8-3.

HÌNH 8-2 Quản lý người dùng và mật khẩu từ hộp thoại này
Machine Translated by Google

Cấu hình Windows đúng cách 205

HÌNH 8-3 Thay đổi, vô hiệu hóa hoặc thêm tài khoản trong hộp thoại Nhóm và người dùng cục bộ

Từ đây bạn có thể thay đổi, vô hiệu hóa hoặc thêm tài khoản. Các đoạn văn sau đây trình bày cách sử dụng tiện ích

này để điều chỉnh các tài khoản mặc định khác nhau.

Màn hình Tài khoản Windows 10 được hiển thị trong Hình 8-4. Từ đây, bạn có thể thêm tài khoản, xóa tài khoản hoặc

thay đổi tài khoản.

HÌNH 8-4 Tài khoản trong Windows 10


Machine Translated by Google

206 CHƯƠNG 8 Tăng cường hệ điều hành

Tài khoản quản trị viên

Tài khoản quản trị viên mặc định có đặc quyền quản trị và tin tặc thường tìm cách lấy thông tin đăng nhập cho

tài khoản quản trị viên. Đoán thông tin đăng nhập là một quá trình gồm hai phần, trước tiên là xác định tên

người dùng và sau đó là mật khẩu. Tài khoản mặc định cho phép hacker bỏ qua nửa đầu của quá trình này.

Quản trị viên nên vô hiệu hóa tài khoản này. Nếu bạn bấm đúp vào bất kỳ tài khoản nào (hãy nhớ lại tiện ích Người

dùng và Nhóm được hiển thị trước đó trong Hình 8-3), bạn sẽ thấy một màn hình giống như màn hình được hiển thị

trong Hình 8-5. Từ đây bạn có thể vô hiệu hóa tài khoản quản trị viên mặc định.

Bấm vào đây


vô hiệu hóa

HÌNH 8-5 Vô hiệu hóa tài khoản quản trị viên mặc định

Rõ ràng, việc có một tài khoản có đặc quyền quản trị là cần thiết để duy trì máy chủ của bạn.

Bước tiếp theo là thêm một tài khoản mới, một tài khoản có tên vô hại (ví dụ: temp_clerk, recept-tionist, v.v.)

và cấp đặc quyền quản trị cho tài khoản đó. Làm như vậy khiến nhiệm vụ của hacker trở nên khó khăn hơn, vì

trước tiên anh ta phải xác định tài khoản nào thực sự có đặc quyền quản trị trước khi có thể cố gắng xâm phạm

tài khoản đó.

Một số chuyên gia khuyên bạn chỉ cần đổi tên tài khoản quản trị viên hoặc sử dụng tài khoản quản trị viên có tên

người dùng cho biết mục đích của tài khoản đó. Đó không phải là khuyến nghị của cuốn sách này vì những lý do sau:
Machine Translated by Google

Cấu hình Windows đúng cách 207

■ Vấn đề là hacker không thể dễ dàng biết được tên người dùng nào có quyền quản trị

những đặc quyền hữu ích.

■ Đơn giản chỉ cần đổi tên tài khoản quản trị viên thành một tên khác nhưng vẫn cho biết tên tài khoản đó

quyền hành chính, sẽ không giúp ích gì cho tình trạng này.

Tài khoản khác

Chúng tôi tập trung vào tài khoản quản trị viên vì đây là tài khoản thường bị tin tặc nhắm đến nhất, nhưng Windows cũng

bao gồm các tài khoản người dùng mặc định khác. Áp dụng biện pháp xử lý nghiêm ngặt như nhau đối với tất cả các tài khoản

mặc định là một ý tưởng hay. Bất kỳ tài khoản mặc định nào cũng có thể là cửa ngõ để tin tặc xâm nhập hệ thống. Một số tài

khoản mà bạn nên đặc biệt chú ý bao gồm:

■ IUSR_Tên máy: Khi bạn đang chạy IIS, tài khoản người dùng mặc định sẽ được tạo cho IIS. Của nó

tên là IUSR_ và tên máy của bạn. Đây là tài khoản phổ biến để tin tặc cố gắng xâm phạm. Nên thay đổi cái này theo

cách được đề xuất cho tài khoản quản trị viên.

■ ASP.NET: Nếu máy của bạn đang chạy ASP.NET, một tài khoản mặc định sẽ được tạo cho các ứng dụng web.

Một hacker quen thuộc với .NET có thể nhắm mục tiêu vào tài khoản này.

■ Tài khoản cơ sở dữ liệu: Nhiều hệ thống quản lý cơ sở dữ liệu quan hệ, chẳng hạn như SQL Server,

tạo tài khoản người dùng mặc định. Kẻ xâm nhập, đặc biệt là kẻ muốn lấy dữ liệu của bạn, có thể nhắm mục tiêu

vào các tài khoản này.

FYI: Các lựa chọn thay thế cho việc vô hiệu hóa tài khoản quản trị

Một tùy chọn an toàn khác là bật tài khoản quản trị viên mặc định nhưng thay đổi tài khoản đó từ thành
viên của nhóm quản trị viên thành tài khoản người dùng rất hạn chế. Sau đó, bạn phải đảm bảo rằng không
có quản trị viên nào của bạn sử dụng tài khoản này. Tại thời điểm này, bạn chỉ cần theo dõi nhật ký máy
chủ để tìm những nỗ lực đăng nhập vào tài khoản này. Các lần thử lặp lại trong một khoảng thời gian
ngắn có thể có nghĩa là ai đó đang cố gắng vi phạm tính bảo mật hệ thống của bạn.

Để tài khoản quản trị viên được kích hoạt với quyền truy cập giảm đáng kể và việc giám sát mọi nỗ lực
sử dụng tài khoản đó sẽ cung cấp cho bạn một cái bẫy ảo đối với tin tặc.

Tất nhiên, bạn phải có tài khoản cho tất cả những dịch vụ này và các dịch vụ khác. Gợi ý ở đây là đảm bảo tên của các tài
khoản này không rõ ràng và các tài khoản mặc định không được sử dụng.

Khi thêm bất kỳ tài khoản mới nào, hãy luôn cấp cho người dùng hoặc nhóm tài khoản mới số lượng và loại đặc quyền cần

thiết ít nhất để thực hiện công việc của họ, ngay cả những tài khoản dành cho nhân viên CNTT. Dưới đây là một số ví dụ về

những nơi hạn chế quyền truy cập/đặc quyền của người dùng mà bạn có thể không nghĩ tới:

■ Kỹ thuật viên PC không cần quyền quản trị trên máy chủ cơ sở dữ liệu. Mặc dù cô ấy đang ở trong

bộ phận CNTT, cô ấy không cần truy cập vào mọi thứ trong bộ phận đó.
Machine Translated by Google

208 CHƯƠNG 8 Tăng cường hệ điều hành

■ Người quản lý có thể sử dụng các ứng dụng nằm trên máy chủ web, nhưng chắc chắn họ không có
quyền trên máy chủ đó.

■ Chỉ vì một lập trình viên phát triển các ứng dụng chạy trên máy chủ không có nghĩa là anh ta
nên có toàn quyền trên máy chủ đó.

■ Có lẽ đây có thể là một quan điểm khác để củng cố các quy trình của RBAC (Kiểm soát truy cập
dựa trên vai trò), DAC (Kiểm soát truy cập tùy ý) và MAC (Kiểm soát truy cập bắt buộc).

Đây chỉ là một vài ví dụ về những điều cần cân nhắc khi thiết lập quyền người dùng. Hãy nhớ: Luôn cấp ít

quyền truy cập cần thiết nhất để người đó thực hiện công việc của mình. Khái niệm này thường được gọi là

đặc quyền tối thiểu và là nền tảng của bảo mật.

Thiết lập chính sách bảo mật


Thiết lập các chính sách bảo mật phù hợp là bước tiếp theo trong việc củng cố máy chủ Windows. Điều này

không đề cập đến các chính sách bằng văn bản mà một tổ chức có thể có liên quan đến các tiêu chuẩn và quy

trình bảo mật. Trong trường hợp này, thuật ngữ chính sách bảo mật đề cập đến chính sách của từng máy. Khi

bạn chọn Bắt đầu, Cài đặt, Bảng điều khiển, Công cụ quản trị, bạn cũng sẽ lưu ý Chính sách bảo mật cục bộ.

Bấm đúp vào đây và chọn Chính sách tài khoản sẽ đưa bạn đến màn hình như trong Hình 8-6. Các thư mục con

khác nhau trong hộp thoại hiển thị trong Hình 8-6 được mở rộng. Thông thường khi bạn mở tiện ích này lên thì sẽ không có.

Lưu ý rằng trong Windows 10, bạn có thể truy cập cùng màn hình này bằng cách vào menu Run và gõ gpedit

(đây là tiện ích Local Group Policy Editor).

HÌNH 8-6 Chính sách bảo mật cục bộ

Vấn đề cần quan tâm đầu tiên là thiết lập các chính sách mật khẩu an toàn. Cài đặt mặc định cho mật khẩu

Windows không an toàn. Bảng 8-1 hiển thị các chính sách mật khẩu mặc định. Tuổi mật khẩu tối đa đề cập đến
Machine Translated by Google

Cấu hình Windows đúng cách 209

mật khẩu có hiệu lực trong bao lâu trước khi người dùng buộc phải thay đổi mật khẩu đó. Thực thi lịch sử

mật khẩu đề cập đến số lượng mật khẩu trước đó mà hệ thống ghi nhớ, do đó ngăn người dùng sử dụng lại

mật khẩu. Độ dài mật khẩu tối thiểu xác định số ký tự tối thiểu được phép trong mật khẩu. Độ phức tạp của

mật khẩu có nghĩa là người dùng phải sử dụng mật khẩu kết hợp số, chữ cái và các ký tự khác. Đây là những

thiết lập bảo mật mặc định cho tất cả các phiên bản Windows từ Windows NT 4.0 trở đi. Nếu hệ thống của

bạn được bảo vệ trong môi trường doanh nghiệp, cài đặt tại Local Security sẽ chuyển sang màu xám, cho

biết bạn không có quyền thực hiện thay đổi.

BẢNG 8-1 Chính sách mật khẩu mặc định của Windows

Chính sách Sự giới thiệu

Thực thi Lịch sử mật khẩu Đã nhớ 1 mật khẩu

Tuổi mật khẩu tối đa 42 ngày

Tuổi mật khẩu tối thiểu 0 ngày

Độ dài mật khẩu tối thiểu 0 ký tự

Mật khẩu phải đáp ứng yêu cầu phức tạp Tàn tật

Lưu trữ mật khẩu bằng cách sử dụng mã hóa có thể đảo ngược cho tất cả người dùng trong miền Tàn tật

Chính sách mật khẩu mặc định không đủ an toàn nhưng thay vào đó bạn nên sử dụng chính sách nào?

Các chuyên gia khác nhau trả lời câu hỏi đó một cách khác nhau. Bảng 8-2 trình bày các khuyến nghị của

Microsoft, Cơ quan An ninh Quốc gia và các khuyến nghị cá nhân của tác giả (cùng với lời giải thích khi

chúng khác biệt đáng kể so với các khuyến nghị của Microsoft hoặc NSA).

BẢNG 8-2 Khuyến nghị đặt mật khẩu

Chính sách Microsoft NSA Tác giả

Thực thi lịch sử mật khẩu 3 mật khẩu 5 mật khẩu 42 3 mật khẩu

Tuổi mật khẩu tối đa 42 ngày ngày 2 60 ngày

Tuổi mật khẩu tối thiểu 2 ngày ngày 2 ngày

Độ dài mật khẩu tối 8 ký tự 12 ký tự Tối thiểu 12 ký tự.

thiểu Mật khẩu dài hơn, trên thực


tế là các cụm từ, là tốt nhất.

Mật khẩu phải đáp ứng yêu cầu Không có khuyến nghị (để Đúng Đúng

phức tạp người dùng tùy ý)

Lưu trữ mật khẩu bằng cách Không có khuyến nghị (để Không có khuyến nghị Không có khuyến nghị (để người dùng

sử dụng mã hóa có thể đảo ngược người dùng tùy ý) tùy ý)


cho tất cả người dùng trong miền

Việc phát triển các chính sách mật khẩu phù hợp phụ thuộc phần lớn vào yêu cầu của môi trường mạng của

bạn. Nếu mạng của bạn lưu trữ và xử lý dữ liệu có độ nhạy cao cao và là mục tiêu hấp dẫn của tin tặc, bạn

phải luôn điều chỉnh các chính sách và cài đặt của mình theo hướng bảo mật cao hơn. Tuy nhiên, hãy nhớ

rằng nếu các biện pháp bảo mật quá phức tạp, người dùng của bạn sẽ khó tuân thủ. Ví dụ: mật khẩu rất dài

và phức tạp (chẳng hạn như $%Tbx38T@_FgR$$) làm cho mạng của bạn khá an toàn, nhưng những mật khẩu như vậy
Machine Translated by Google

210 CHƯƠNG 8 Tăng cường hệ điều hành

người dùng hầu như không thể nhớ được. Nhiều người dùng chỉ cần viết mật khẩu vào một tờ ghi chú và giữ nó ở một vị

trí thuận tiện nhưng không an toàn, chẳng hạn như ngăn kéo trên cùng của bàn làm việc, một vấn đề bảo mật nghiêm trọng.

Chính sách khóa tài khoản

Khi bạn mở hộp thoại Cài đặt bảo mật cục bộ, các tùy chọn của bạn không bị giới hạn trong việc đặt chính sách mật khẩu.

Bạn cũng có thể đặt chính sách khóa tài khoản. Các chính sách này xác định số lần người dùng có thể cố gắng đăng nhập

trước khi bị khóa và trong bao lâu để khóa chúng. Các cài đặt mặc định của Windows được hiển thị trong Bảng 8-3.

Các chính sách mặc định này không an toàn. Về cơ bản, chúng cho phép vô số lần đăng nhập, khiến việc sử dụng các công

cụ bẻ mật khẩu trở nên rất dễ dàng và hầu như đảm bảo rằng ai đó cuối cùng sẽ bẻ khóa một hoặc nhiều mật khẩu và giành

quyền truy cập vào hệ thống của bạn. Bảng 8-4 cung cấp các khuyến nghị của Microsoft, Cơ quan An ninh Quốc gia và tác

giả.

BẢNG 8-3 Cài đặt chính sách khóa tài khoản mặc định của Windows

Chính sách Thiết lập mặc định

Thời gian khóa tài khoản Không xác định

Ngưỡng khóa tài khoản 0 lần đăng nhập không hợp lệ

Đặt lại bộ đếm khóa tài khoản sau Không xác định

BẢNG 8-4 Chính sách khóa tài khoản được đề xuất

Chính sách Microsoft NSA Tác giả

Thời gian khóa tài 0, vô thời hạn 15 giờ 48 giờ. Nếu ai đó đang cố gắng bẻ khóa mật khẩu vào cuối
khoản tuần/ngày lễ, bạn muốn tài khoản bị khóa cho đến khi quản
trị viên biết về nỗ lực đó.

Khóa tài khoản 5 lần thử 3 lần thử 3 lần thử


ngưỡng

Reset tài khoản sau 15 phút 30 phút 30 phút

FYI: Thêm hướng dẫn

Hướng dẫn về Bảo mật Windows có sẵn trên các trang web sau. Những nguyên tắc này áp dụng cho tất cả các phiên bản Windows.

■ Cơ quan An ninh Quốc gia: https://www.iad.gov/iad/library/ia-guidance/security-configuration/


chỉ mục.cfm

■ Nguyên tắc của Microsoft: https://technet.microsoft.com/en-us/library/cc184906.aspx

Một số liên kết trong chương này khá dài vì chúng đưa bạn trực tiếp đến mục được đề cập. Bạn luôn có thể truy cập tên

miền gốc (chẳng hạn như www.microsoft.com) và tìm kiếm mục được đề cập.

Tất cả các trang web này cung cấp các quan điểm khác về bảo mật máy khách hoặc máy chủ Windows.
Machine Translated by Google

Cấu hình Windows đúng cách 211

Các vấn đề khác

Một số vấn đề về tài khoản và mật khẩu không thể xử lý được bằng cài đặt máy tính. Những điều này liên quan đến việc thiết lập các

chính sách tổ chức liên quan đến hành vi của người dùng và quản trị viên. Chương 11, “Chính sách bảo mật” thảo luận sâu hơn về các

chính sách tổ chức như vậy. Hiện tại, chỉ cần xem xét danh sách cơ bản về các chính sách bảo mật tổ chức quan trọng nhất này:

■ Người dùng không bao giờ được ghi lại mật khẩu.

■ Người dùng không bao giờ được chia sẻ mật khẩu.

■ Quản trị viên phải sử dụng quy tắc truy cập ít được yêu cầu nhất. Điều đó có nghĩa là hầu hết người dùng không nên có

đặc quyền quản trị ngay cả trên máy tính để bàn của riêng họ.

FYI: Cài đặt đăng ký

Việc chỉnh sửa sổ đăng ký không chính xác có thể khiến một số phần trong hệ điều hành của bạn không thể sử
dụng được. Nó thậm chí có thể khiến máy của bạn không thể khởi động được. Việc cẩn thận khi thực hiện bất
kỳ thay đổi nào đối với sổ đăng ký và ghi lại những thay đổi đó là điều quan trọng. Nếu bạn chưa quen với
thao tác đăng ký, bạn nên sử dụng máy thí nghiệm không chứa bất kỳ dữ liệu hoặc ứng dụng quan trọng nào.
Có thể xảy ra trường hợp cấu hình sai sổ đăng ký nghiêm trọng đến mức phải cài đặt lại toàn bộ hệ điều hành.

Cài đặt đăng ký


Cài đặt đăng ký an toàn rất quan trọng để bảo mật mạng. Thật không may, kinh nghiệm của tôi là lĩnh vực này thường bị bỏ qua bởi các

biện pháp an toàn khác. Một điều cần lưu ý là nếu bạn không biết mình đang làm gì trong sổ đăng ký, bạn có thể gây ra những vấn đề

nghiêm trọng. Vì vậy, nếu bạn không thoải mái lắm với sổ đăng ký, đừng chạm vào nó. Ngay cả khi bạn cảm thấy thoải mái khi thực hiện

các thay đổi sổ đăng ký, hãy luôn sao lưu sổ đăng ký trước bất kỳ thay đổi nào.

Windows Sổ đăng ký là cơ sở dữ liệu được sử dụng để lưu trữ các cài đặt và tùy chọn cho hệ điều hành Microsoft Windows. Cơ sở dữ liệu

này chứa thông tin và cài đặt quan trọng cho tất cả phần cứng, phần mềm, người dùng và tùy chọn trên một máy tính cụ thể. Bất cứ khi

nào người dùng được thêm, phần mềm được cài đặt hoặc bất kỳ thay đổi nào khác được thực hiện đối với hệ thống (bao gồm cả chính sách

bảo mật), thông tin đó sẽ được lưu trữ trong sổ đăng ký.

Thông tin cơ bản về đăng ký

Các tệp vật lý tạo nên sổ đăng ký được lưu trữ khác nhau tùy thuộc vào phiên bản Windows bạn đang sử dụng. Các phiên bản Windows cũ

hơn (tức là Windows 95 và 98) giữ sổ đăng ký trong hai tệp ẩn trong thư mục Windows của bạn, được gọi là USER.DAT và SYSTEM.DAT. Trong

tất cả các phiên bản Windows kể từ XP, các tệp vật lý tạo nên sổ đăng ký được lưu trữ trong %SystemRoot%\System32\Config. Kể từ Windows

8, tệp đã được đặt tên là ntuser.dat. Bất kể bạn đang sử dụng phiên bản Windows nào, bạn không thể chỉnh sửa sổ đăng ký trực tiếp bằng

cách mở và chỉnh sửa các tệp này. Thay vào đó, bạn phải sử dụng công cụ regedit.exe để thực hiện bất kỳ thay đổi nào. Có những công cụ

mới hơn như regedit32. Tuy nhiên, nhiều người dùng nhận thấy rằng regedit cũ hơn có tùy chọn “tìm” thân thiện hơn với người dùng để

tìm kiếm sổ đăng ký. Một trong hai sẽ làm việc.


Machine Translated by Google

212 CHƯƠNG 8 Tăng cường hệ điều hành

Mặc dù sổ đăng ký được gọi là “cơ sở dữ liệu”, nhưng thực tế nó không có cấu trúc cơ sở dữ liệu quan hệ

(như bảng trong MS SQL Server hoặc Oracle). Sổ đăng ký có cấu trúc phân cấp tương tự như cấu trúc thư

mục trên đĩa cứng. Trên thực tế, khi sử dụng regedit, bạn sẽ thấy nó được tổ chức giống như Windows

Explorer. Để xem sổ đăng ký, hãy vào Bắt đầu, Chạy và nhập regedit. Bạn sẽ thấy hộp thoại Trình soạn thảo

sổ đăng ký như trong Hình 8-7. Một số thư mục trong hộp thoại của bạn có thể được mở rộng. Nếu vậy, chỉ

cần thu gọn chúng để sổ đăng ký của bạn trông giống như trong Hình 8-7.

HÌNH 8-7 Tổ ong Windows Register

Hộp thoại Trình soạn thảo sổ đăng ký của bạn có thể sẽ có năm thư mục chính giống như thư mục được hiển

thị trong Hình 8-7. Mỗi nhánh chính của cơ quan đăng ký này được mô tả ngắn gọn trong danh sách sau. Năm

thư mục chính này là các thư mục đăng ký cốt lõi. Hệ thống có thể có các phần bổ sung, nhưng đây là những

thư mục chính chứa thông tin cần thiết để hệ thống của bạn hoạt động.

■ HKEY_CLASSES_ROOT: Nhánh này chứa tất cả các loại liên kết tệp, thông tin OLE và dữ liệu lối tắt
của bạn.

■ HKEY_CURRENT_USER: Nhánh này liên kết đến phần HKEY_USERS phù hợp với người dùng hiện đang đăng

nhập vào PC.

■ HKEY_LOCAL_MACHINE: Nhánh này chứa thông tin dành riêng cho máy tính về

loại phần cứng, phần mềm và các tùy chọn khác trên một PC nhất định.

■ HKEY_USERS: Nhánh này chứa các tùy chọn riêng cho từng người dùng máy tính.

■ HKEY_CURRENT_CONFIG: Nhánh này liên kết tới phần HKEY_LOCAL_

MÁY phù hợp với cấu hình phần cứng hiện tại.
Machine Translated by Google

Cấu hình Windows đúng cách 213

Nếu bạn mở rộng một nhánh, bạn sẽ thấy các thư mục con của nó. Ngược lại, nhiều thư mục trong số này có nhiều thư

mục con hơn, có thể có tới bốn thư mục trở lên trước khi bạn truy cập vào một mục cụ thể. Một mục cụ thể trong Sổ

đăng ký Windows được gọi là khóa. Khóa là một mục chứa các cài đặt cho một số khía cạnh cụ thể trong hệ thống của bạn.

Nếu bạn thay đổi sổ đăng ký, thực tế là bạn đang thay đổi cài đặt của các khóa cụ thể.

Đây chỉ là một tổng quan ngắn gọn về sổ đăng ký. Nếu bạn có ý định thực hiện nhiều công việc hơn với sổ đăng ký hơn

là thiết lập bảo mật thích hợp, bạn có thể sử dụng các nguồn sau:

■ 50 thủ thuật đăng ký Windows tốt nhất: https://www.howtogeek.com/howto/37920/the-50-best-registry-


hacks-làm-windows-tốt hơn/

■ Mẹo đăng ký Windows: http://techtweek.com/windows/all-important-windows-registry-tips-

và chỉnh sửa

■ Trang hỗ trợ Windows Register của Microsoft: https://support.microsoft.com/en-us/help/256986/

windows-registry-thông tin-dành cho người dùng nâng cao

FYI: Cài đặt đăng ký an toàn

Hãy nhớ rằng Windows Sổ đăng ký kiểm soát mọi thứ về Windows. Do đó, để bảo mật Windows thực sự, bạn
phải cấu hình sổ đăng ký một cách an toàn. Thật không may, cài đặt mặc định của sổ đăng ký không an
toàn. Phần này mô tả cách áp dụng cài đặt đăng ký an toàn trên máy của bạn. Chương 12, “Đánh giá bảo
mật hệ thống,” cung cấp thêm thông tin về cài đặt đăng ký bảo mật trong phần đánh giá hệ thống. Ở đó,
bạn sẽ tìm hiểu về các sản phẩm phần mềm có sẵn trực tuyến thông báo cho bạn về bất kỳ cài đặt đăng ký
không an toàn nào trên máy của bạn. Những công cụ này được bán bởi nhà cung cấp bên thứ ba và không
phải là một phần của Windows.

Hãy nhớ rằng cài đặt đăng ký có thể thay đổi trong các phiên bản Windows khác nhau, vì vậy có thể bạn không tìm thấy

một hoặc nhiều cài đặt sau hoặc chúng có thể ở một vị trí hơi khác.

Để tìm và kiểm tra cài đặt đăng ký của bạn để tìm bất kỳ khóa nào trong số này, chỉ cần mở rộng nút thích hợp và tìm

đến khóa cụ thể. Ví dụ: cái đầu tiên trong danh sách của chúng tôi là HKLM\SYSTEM\

CurrentControlSet\Services\LanmanServer. Trước tiên, bạn có thể mở rộng nút LOCAL_MACHINE, sau đó là nút HỆ THỐNG,

sau đó là nút CurrentControlSet, sau đó là nút Dịch vụ. Sau đó, bạn có thể tìm thấy khóa đăng ký cụ thể mà bạn đang

tìm kiếm; trong ví dụ này, chúng tôi đã tìm thấy LanmanServer. Quy trình tương tự có thể được áp dụng để tìm bất kỳ

khóa nào; khóa LanmanServer được chọn ngẫu nhiên cho ví dụ này.

Hạn chế quyền truy cập phiên Null

Phiên Null là một điểm yếu đáng kể có thể bị khai thác thông qua các chia sẻ khác nhau trên máy tính. Phiên null là

cách Windows chỉ định các kết nối ẩn danh. Bất cứ khi nào bạn cho phép kết nối ẩn danh tới bất kỳ máy chủ nào, bạn đều

đang gặp phải những rủi ro bảo mật đáng kể. Sửa đổi quyền truy cập phiên null vào các chia sẻ trên máy tính bằng cách

thêm RestNullSessAccess, một giá trị đăng ký bật hoặc tắt chia sẻ phiên null để xác định xem dịch vụ Máy chủ có hạn

chế quyền truy cập đối với các máy khách đã đăng nhập vào tài khoản hệ thống mà không xác thực tên người dùng và mật

khẩu hay không. Đặt giá trị thành 1 hạn chế


Machine Translated by Google

214 CHƯƠNG 8 Tăng cường hệ điều hành

quyền truy cập phiên null dành cho người dùng chưa được xác thực vào tất cả các đường dẫn và chia sẻ của máy chủ ngoại trừ những đường

dẫn được liệt kê trong các mục NullSessionPipes và NullSessionShares.

Đường dẫn chính: HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer

Hành động: Đảm bảo rằng nó được đặt thành: Giá trị = 1

Hạn chế quyền truy cập phiên Null trên các ống được đặt tên

Quyền truy cập phiên null qua cài đặt đăng ký đường dẫn có tên phải được thay đổi vì lý do tương tự như cài đặt đăng ký

phiên null trước đó. Hạn chế quyền truy cập như vậy giúp ngăn chặn truy cập trái phép qua mạng. Để hạn chế quyền truy cập

phiên null trên các đường ống được đặt tên và thư mục dùng chung, hãy chỉnh sửa sổ đăng ký và xóa các giá trị, như trong

Bảng 8-5.

Đường dẫn chính: HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer

Hành động: Xóa tất cả các giá trị

BẢNG 8-5 Cài đặt đăng ký ngăn xếp TCP/IP

Đường dẫn chính Giá trị đề xuất

Vô hiệu hóa định tuyến nguồn IP 2

Kích hoạtDeadGWDetect 0

Kích hoạtICMPChuyển hướng 0

Kích hoạtPMTUDiscovery 0

Kích hoạt Bộ lọc Bảo mật 1

GiữSốngThời Gian 300.000

NoNamePhát hành theo yêu cầu 1

Thực hiệnRouterDiscovery 0

SynAttackProtect 2

TcpMaxConnectResponseTruyền lại 2

TcpMaxConnectTruyền lại 3

TCPMaxPortsCạn kiệt 5

Hạn chế quyền truy cập ẩn danh

Cài đặt đăng ký truy cập ẩn danh cho phép người dùng ẩn danh liệt kê tên người dùng tên miền và liệt kê tên chia sẻ. Nó

nên được tắt. Các cài đặt có thể có cho phím này là:

■ 0—Cho phép người dùng ẩn danh

■ 1—Hạn chế người dùng ẩn danh

■ 2—Cho phép người dùng có quyền ẩn danh rõ ràng

Đường dẫn chính: HKLM\SYSTEM\CurrentControlSet\Control\Lsa

Hành động: Đặt giá trị = 2


Machine Translated by Google

Cấu hình Windows đúng cách 215

Ghi chú

Tất cả các khóa được tìm thấy trong đường dẫn này: HKLM\SYSTEM\CurrentControlSet\Services\Tcpip.

Cài đặt ngăn xếp TCP/IP

Một số cài đặt đăng ký ảnh hưởng đến cách ngăn xếp TCP/IP xử lý các gói đến. Việc thiết lập những điều này đúng

cách có thể giúp giảm khả năng bị tổn thương trước các cuộc tấn công DoS. Quá trình này, điều chỉnh ngăn xếp,

được mô tả trong Chương 2, “Các loại tấn công”. Vì các cài đặt này đều có liên quan và nằm trong cùng một đường

dẫn khóa nên chúng được hiển thị cùng nhau trong Bảng 8-5.

Như Bảng 8-5 cho thấy, hầu hết các cài đặt này ngăn chặn việc chuyển hướng các gói, thay đổi thời gian chờ

trên các kết nối và nói chung là thay đổi cách Windows xử lý các kết nối TCP/IP. Bạn có thể tìm thêm thông

tin chi tiết về các đề xuất của Microsoft để thiết lập cài đặt đăng ký ngăn xếp TCP/IP tại trang web của

hãng: https://msdn.microsoft.com/en-us/library/ff648853.aspx.

FYI: Chia sẻ mặc định

Hệ điều hành Windows mở các thư mục chia sẻ mặc định trên mỗi lần cài đặt để tài khoản hệ thống sử dụng. Vì chúng là

các chia sẻ mặc định nên chúng giống hệt nhau đối với tất cả các máy Windows, có quyền giống nhau. Những chia sẻ mặc

định này có thể được hacker có tay nghề cao sử dụng làm điểm khởi đầu để xâm nhập vào máy của bạn. Bạn có thể tắt

chia sẻ Quản trị mặc định theo hai cách:

1. Dừng hoặc vô hiệu hóa dịch vụ Máy chủ, dịch vụ này sẽ loại bỏ khả năng chia sẻ thư mục trên máy tính của bạn.

(Tuy nhiên, bạn vẫn có thể truy cập các thư mục dùng chung trên các máy tính khác.)

2. Chỉnh sửa sổ đăng ký.

Để thay đổi cài đặt thư mục chia sẻ mặc định trong sổ đăng ký, hãy truy cập HKEY_Local_Machine\SYSTEM\

CurrentControlSet\Services\LanmanServer\Parameters. Đối với máy chủ, hãy chỉnh sửa AutoShareServer bằng

giá trị bằng 0. Đối với máy trạm, hãy chỉnh sửa khóa AutoShareWks. Nếu vì lý do nào đó, Windows của bạn

Cơ quan đăng ký không có, chỉ cần thêm nó: https://social.technet.microsoft.com/Forums/windows/en-US/

c9d6b1c2-1059-4a8a-a6bd-56cc34104faa/disable-administrator-share?forum=w7itpronetworking.

Để biết thêm thông tin về chia sẻ mặc định hoặc xem tư vấn bảo mật về chúng, hãy tham khảo các trang web sau:

■ www.cert.org/histocal/advisories/CA-2003-08.cfm

■ www.sans.org/top20/
Machine Translated by Google

216 CHƯƠNG 8 Tăng cường hệ điều hành

Truy cập từ xa vào sổ đăng ký

Truy cập từ xa vào sổ đăng ký là một cơ hội tiềm năng khác cho tin tặc. Theo mặc định, các công cụ chỉnh sửa sổ

đăng ký Windows XP hỗ trợ truy cập từ xa nhưng chỉ quản trị viên mới có quyền truy cập từ xa vào sổ đăng ký. May

mắn thay, các phiên bản Windows sau này đã tắt tính năng này theo mặc định. Trên thực tế, một số chuyên gia khuyên

rằng không nên có quyền truy cập từ xa vào sổ đăng ký đối với bất kỳ người nào. Điểm này chắc chắn còn gây tranh

cãi. Nếu quản trị viên của bạn thường xuyên cần thay đổi cài đặt đăng ký từ xa thì việc chặn hoàn toàn quyền truy

cập từ xa vào chúng sẽ làm giảm năng suất của những quản trị viên đó. Tuy nhiên, việc chặn hoàn toàn quyền truy cập

từ xa vào sổ đăng ký chắc chắn sẽ an toàn hơn. Để hạn chế quyền truy cập mạng vào sổ đăng ký:

1. Thêm khóa sau vào sổ đăng ký: HKEY_LOCAL_MACHINE\SYSTEM\

CurrentControlSet\Control\SecurePipeServers\winreg.

2. Chọn winreg, nhấp vào menu Bảo mật, sau đó nhấp vào Quyền.

3. Đặt quyền của Quản trị viên thành Kiểm soát hoàn toàn, đảm bảo không có người dùng hoặc nhóm nào khác

được liệt kê, sau đó nhấp vào OK.

Giá trị đề xuất = 0

Cài đặt đăng ký khác

Việc điều chỉnh các cài đặt đăng ký đã thảo luận trước đó sẽ giúp bạn tránh được một số lỗi bảo mật phổ biến nhất

trong cài đặt Sổ đăng ký Windows mặc định và chắc chắn sẽ tăng tính bảo mật của bất kỳ máy chủ nào. Tuy nhiên, để

bảo mật tối đa, quản trị viên phải dành thời gian nghiên cứu cẩn thận Sổ đăng ký Windows để biết bất kỳ khu vực bổ

sung nào có thể được đảm bảo an toàn hơn. Một số cài đặt bổ sung mà bạn có thể muốn xem xét bao gồm:

■ Hạn chế quyền truy cập ẩn danh vào sổ đăng ký

■ Bảo mật NTLMv2 (ảnh hưởng đến bảo mật mật khẩu gửi đến máy chủ)

■ KeepAlive (ảnh hưởng đến thời gian duy trì kết nối)

■ SynAttackProtect (bảo vệ khỏi một kiểu tấn công SYN rất cụ thể)

Dịch vụ
Dịch vụ là một chương trình chạy mà không có sự can thiệp trực tiếp của người dùng máy tính. Trong môi trường

Unix/Linux, chúng được gọi là daemon. Nhiều mục trên máy tính của bạn được chạy dưới dạng dịch vụ. Dịch vụ thông

tin Internet, Dịch vụ FTP và nhiều dịch vụ hệ thống là những ví dụ điển hình. Bất kỳ dịch vụ nào đang chạy đều là

điểm khởi đầu tiềm năng cho tin tặc. Rõ ràng, bạn phải chạy một số dịch vụ trên máy tính của mình để thực hiện các

chức năng cần thiết. Tuy nhiên, có những dịch vụ mà máy của bạn không sử dụng. Nếu bạn không sử dụng một dịch vụ nào

đó, nó sẽ bị tắt.
Machine Translated by Google

Cấu hình Windows đúng cách 217

FYI: Không biết—Đừng chạm vào

Bạn nên thận trọng khi tắt các dịch vụ để không vô tình tắt dịch vụ mà bạn cần. Luôn kiểm tra tài liệu
hệ điều hành của bạn. Nguyên tắc chung là nếu bạn không chắc chắn thì đừng chạm vào nó.

Tắt một dịch vụ trong Windows

Tắt một dịch vụ trong Windows tương đối dễ dàng. Trong ví dụ của chúng tôi, chúng tôi sẽ tắt dịch
vụ FTP trên máy không yêu cầu FTP.

Đi tới Bắt đầu, chọn Cài đặt và chọn Bảng điều khiển. Bấm đúp vào Công cụ quản trị, rồi bấm đúp vào
Dịch vụ. Bạn sẽ thấy hộp thoại Dịch vụ trông giống như hộp thoại trong Hình 8-8.

HÌNH 8-8 Dịch vụ

Hộp thoại Dịch vụ hiển thị tất cả các dịch vụ được cài đặt trên máy của bạn, cho dù chúng có chạy
hay không. Lưu ý rằng hộp thoại cũng hiển thị thông tin về việc một dịch vụ có đang chạy hay không, liệu
Machine Translated by Google

218 CHƯƠNG 8 Tăng cường hệ điều hành

nó tự động khởi động, v.v. Trong Windows 7 trở lên, bạn có thể xem thêm thông tin bằng cách chọn
một dịch vụ riêng lẻ. Khi bạn bấm đúp vào một dịch vụ riêng lẻ, bạn sẽ thấy một hộp thoại tương
tự như Hình 8-8, hộp thoại này cung cấp cho bạn thông tin chi tiết về dịch vụ và cho phép bạn thay
đổi cài đặt của dịch vụ. Trong Hình 8-9, chúng ta đang kiểm tra dịch vụ FTP trên một máy không yêu
cầu nó.

HÌNH 8-9 Dịch vụ FTP

FYI: Sự phụ thuộc

Chúng tôi sẽ tắt dịch vụ FTP; nhưng trước khi bạn tắt bất kỳ dịch vụ nào, hãy nhấp vào tab Phụ thuộc để xem liệu các dịch vụ khác

có phụ thuộc vào dịch vụ bạn sắp tắt hay không. Nếu các dịch vụ khác phụ thuộc vào dịch vụ đó thì bạn sẽ khiến chúng gặp trục trặc

khi tắt dịch vụ đó.


Machine Translated by Google

Cấu hình Windows đúng cách 219

Trong trường hợp cụ thể này, không có phần phụ thuộc nào khác, vì vậy bạn có thể chuyển đến tab Chung và thực hiện hai việc:

Thay đổi tùy chọn Loại khởi động thành Tắt, sau đó nhấp vào nút Dừng. Khi thực hiện xong, màn hình sẽ hiển thị trạng thái là đã

tắt. Dịch vụ này hiện đã ngừng hoạt động.

Tắt các dịch vụ không cần thiết là một phần thiết yếu và rất cơ bản để củng cố hệ điều hành.
Mọi dịch vụ đang chạy đều có thể là con đường để tin tặc hoặc vi-rút xâm nhập vào máy của bạn, vì vậy quy tắc

dành cho các dịch vụ là: Nếu bạn không cần nó, hãy tắt nó đi. Chương 12 thảo luận về các tiện ích quét hệ

thống để tìm lỗ hổng. Nhiều tiện ích trong số này sẽ chỉ ra các dịch vụ đang chạy và các cổng mở.

Cũng có thể bắt đầu và dừng dịch vụ từ dấu nhắc lệnh. Nhiều quản trị viên thích lời nhắc lệnh vì nó
thường nhanh hơn việc xem qua nhiều lớp giao diện người dùng đồ họa của Windows. Cú pháp khá đơn giản:

tên dịch vụ khởi động mạng

hoặc

tên dịch vụ dừng mạng

Ví dụ:

dừng mạng nhắn tin

tin nhắn khởi động mạng

FYI: Thông tin sai lệch về Net Stop

Khi viết cuốn sách này, tôi thực sự đã tìm thấy nhiều trang web tuyên bố rằng bạn không thể khởi động
hoặc dừng một dịch vụ từ dấu nhắc lệnh. Điều này không chính xác, nhưng bằng cách nào đó đã trở thành
một huyền thoại đô thị đối với một số người dùng Windows. Tài liệu sau đây từ trang web riêng của
Microsoft xác nhận rằng bạn thực sự có thể bắt đầu và dừng dịch vụ từ dấu nhắc lệnh:

https://answers.microsoft.com/en-us/windows/forum/windows_10-other_settings/learning-the-net-start-
command/02dfe674-d1e9-4a6d-9d75-f7896a5462f6

Lọc cổng và tường lửa trong Windows

Chương 4 và 5 thảo luận về Tường lửa của Windows. Bật bộ lọc cổng Windows là một phần cơ bản của quá
trình tăng cường hệ điều hành. Hướng dẫn thực hiện việc này đã được đưa ra trước đây trong Chương
4 và 5 và sẽ được khám phá lại trong các bài tập ở cuối chương này.

Mã hóa hệ thống tập tin


Bắt đầu với Windows 2000, hệ điều hành Windows đã cung cấp Hệ thống tệp mã hóa (EFS), dựa trên mã hóa
khóa chung và tận dụng kiến trúc CryptoAPI trong Windows 2000. Điều này vẫn tồn tại trong Windows 7, 8
và 10; tuy nhiên, với các phiên bản Windows mới hơn,
Machine Translated by Google

220 CHƯƠNG 8 Tăng cường hệ điều hành

EFS chỉ có sẵn trong các phiên bản Windows cao cấp hơn như Windows Professional. Với hệ thống này, mỗi tệp được mã

hóa bằng khóa mã hóa tệp được tạo ngẫu nhiên, độc lập với cặp khóa chung/riêng của người dùng; phương pháp này làm

cho mã hóa có khả năng chống lại nhiều hình thức tấn công dựa trên phân tích mật mã. Vì mục đích của chúng tôi, chi

tiết chính xác về cách thức hoạt động của mã hóa EFS không quan trọng bằng các khía cạnh thực tế của việc sử dụng nó.

Tương tác người dùng

Cấu hình mặc định của EFS cho phép người dùng bắt đầu mã hóa tệp mà không cần nỗ lực của quản trị viên.

EFS tự động tạo cặp khóa chung và chứng chỉ mã hóa tệp để mã hóa tệp vào lần đầu tiên người dùng mã hóa tệp.

Mã hóa và giải mã tệp được hỗ trợ cho mỗi tệp hoặc cho toàn bộ thư mục. Mã hóa thư mục được thực thi một cách minh

bạch. Tất cả các tệp và thư mục được tạo trong thư mục được đánh dấu để mã hóa sẽ tự động được mã hóa.

Mỗi tệp có một khóa mã hóa tệp duy nhất, giúp việc đổi tên an toàn. Nếu bạn di chuyển tệp từ thư mục được mã hóa

sang thư mục không được mã hóa trên cùng một ổ đĩa, tệp vẫn được mã hóa. Tuy nhiên, nếu bạn sao chép tệp không

được mã hóa vào thư mục được mã hóa, trạng thái tệp sẽ thay đổi. Tập tin sẽ được mã hóa.

Các công cụ dòng lệnh và giao diện quản trị được cung cấp cho người dùng nâng cao và tác nhân khôi phục.

FYI: Điều gì sẽ xảy ra nếu người dùng rời đi?

Người dùng có thể mã hóa một tập tin và sau đó không thể giải mã được. Họ có thể không còn việc làm do
rời công ty, bệnh tật hoặc các lý do khác. May mắn thay, EFS cung cấp cho quản trị viên một phương pháp
để họ có thể khôi phục khóa mã hóa được sử dụng để mã hóa tệp và từ đó giải mã chúng. EFS cho phép các tác
nhân khôi phục định cấu hình khóa chung được sử dụng để khôi phục dữ liệu được mã hóa nếu người dùng rời
khỏi công ty. Chỉ có khóa mã hóa tệp mới khả dụng khi sử dụng khóa khôi phục chứ không phải khóa riêng của
người dùng. Điều này đảm bảo rằng không có thông tin cá nhân nào khác được tiết lộ cho tác nhân khôi phục.

Điều tốt nhất về EFS là nó hầu như minh bạch đối với người dùng. Bạn không cần phải giải mã tập tin để mở
và sử dụng nó. EFS tự động phát hiện tệp được mã hóa và định vị khóa mã hóa tệp của người dùng từ kho khóa
của hệ thống. Tuy nhiên, nếu tệp được chuyển từ máy tính ban đầu sang máy tính khác, người dùng cố mở nó
sẽ thấy nó đã được mã hóa. Các bước sau đây sẽ cho phép bạn mã hóa bất kỳ tệp nào bạn muốn:

1. Xác định vị trí tệp hoặc thư mục bạn muốn mã hóa (sử dụng Windows Explorer hoặc My Computer/This
PC). Nhấp chuột phải vào tập tin đó và chọn Thuộc tính. Hộp thoại Thuộc tính, tương tự như hộp
thoại được hiển thị trong Hình 8-10, xuất hiện.
Machine Translated by Google

Cấu hình Windows đúng cách 221

HÌNH 8-10 Thuộc tính tệp

2. Nhấp vào nút Nâng cao để truy cập tùy chọn mà bạn có thể kiểm tra để mã hóa tệp,

như thể hiện trong Hình 8-11.

HÌNH 8-11 Mã hóa một tập tin


Machine Translated by Google

222 CHƯƠNG 8 Tăng cường hệ điều hành

3. Nhấp vào Mã hóa nội dung để bảo mật dữ liệu.

Sau khi bạn thực hiện xong việc này, tập tin hoặc thư mục của bạn hiện đã được mã hóa. Chỉ cần cùng một
người dùng trên cùng một máy mở tệp, nó sẽ được giải mã tự động. Một hacker chuyển tập tin vào hệ thống
của chính mình (hoặc một nhân viên đang cố gắng làm gián điệp công nghiệp, người mang tập tin về nhà trên
đĩa) sẽ thấy nó đã được mã hóa. Bởi vì EFS được tích hợp sẵn trong Windows, không tốn thêm chi phí và
rất dễ sử dụng nên rất khó để tìm ra lý do nào để không sử dụng nó. Nếu bạn muốn biết thêm chi tiết, các
trang web sau sẽ hữu ích cho bạn:

■ Đánh giá ServerWatch về EFS: www.serverwatch.com/tutorials/article.php/2106831

■ Tiện ích lấy khóa mã hóa EFS: www.lostpassword.com/efs.htm

FYI: EFS trong Windows Server

Hệ thống tệp mã hóa được giới thiệu trong Windows 2000. Tuy nhiên, nó vẫn được tiếp tục trong Windows 8,
8.1 và 10 cũng như Windows Server 2008, Server 2012 và Server 2016.

Mẫu bảo mật


Chúng tôi đã thảo luận về một số cách giúp hệ thống Windows an toàn hơn nhưng việc khám phá các dịch vụ, cài

đặt mật khẩu, khóa đăng ký và các công cụ khác có thể là một nhiệm vụ khó khăn đối với quản trị viên mới làm

quen với bảo mật. Việc áp dụng các cài đặt như vậy cho một loạt máy có thể là một công việc tẻ nhạt đối với

ngay cả quản trị viên giàu kinh nghiệm nhất. Cách tốt nhất để đơn giản hóa khía cạnh tăng cường hệ điều hành

này là sử dụng các mẫu bảo mật. Mẫu bảo mật chứa hàng trăm cài đặt có thể có để điều khiển một hoặc nhiều máy

tính. Các mẫu bảo mật có thể kiểm soát các lĩnh vực như quyền người dùng, quyền và chính sách mật khẩu, đồng

thời cho phép quản trị viên triển khai các cài đặt này một cách tập trung thông qua Đối tượng chính sách nhóm (GPO).

Các mẫu bảo mật có thể được tùy chỉnh để bao gồm hầu hết mọi cài đặt bảo mật trên máy tính mục tiêu.

Một số mẫu bảo mật được tích hợp sẵn trong Windows. Các mẫu này được phân loại cho bộ điều khiển miền, máy

chủ và máy trạm. Các mẫu bảo mật này có cài đặt mặc định do Microsoft thiết kế. Tất cả các mẫu này đều nằm

trong thư mục C:\Windows\Security\Templates. Sau đây là danh sách một phần các mẫu bảo mật mà bạn sẽ tìm thấy

trong thư mục này:

■ Hisecdc.inf: Mẫu này được thiết kế để tăng tính bảo mật và liên lạc với miền
bộ điều khiển.

■ Hisecws.inf: Mẫu này được thiết kế để tăng tính bảo mật và liên lạc cho khách hàng

máy tính và máy chủ thành viên.

■ Securedc.inf: Mẫu này được thiết kế để tăng tính bảo mật và liên lạc với các bộ điều khiển miền,

nhưng không đến mức của mẫu bảo mật DC Bảo mật Cao.

■ Securews.inf: Mẫu này được thiết kế để tăng tính bảo mật và liên lạc cho khách hàng

máy tính và máy chủ thành viên.


Machine Translated by Google

Cấu hình Linux đúng cách 223

■ Thiết lập security.inf: Mẫu này được thiết kế để áp dụng lại các cài đặt bảo mật mặc định của một

máy tính mới cài. Nó cũng có thể được sử dụng để trả lại một hệ thống đã bị định cấu hình sai về cấu hình mặc định.

Việc cài đặt các mẫu bảo mật giúp đơn giản hóa việc bảo mật mạng cho quản trị viên. Bạn sẽ có cơ hội xem qua quy trình

cài đặt mẫu bảo mật ở một trong các bài tập cuối chương.

Cấu hình Linux đúng cách


Việc đánh giá chuyên sâu về bảo mật Linux thực sự sẽ là một nhiệm vụ lâu dài. Một lý do là sự đa dạng của các thiết lập

Linux. Người dùng có thể đang sử dụng Debian, Red Hat, Ubuntu hoặc các bản phân phối Linux khác. Một số có thể hoạt động

từ shell, trong khi một số khác hoạt động từ một số giao diện đồ họa người dùng như KDE hoặc GNOME (đối với người dùng

Windows không quen với Linux, bạn có thể muốn tham khảo cuốn sách Chuyển từ Windows sang Linux của tôi). May mắn thay, nhiều

khái niệm bảo mật áp dụng cho Windows cũng có thể áp dụng được cho Linux. Sự khác biệt duy nhất nằm ở cách triển khai, như

được giải thích trong danh sách sau:

■ Chính sách người dùng và tài khoản phải được thiết lập giống nhau trong Linux cũng như trong Windows, chỉ có một vài

khác biệt nhỏ. Những khác biệt này liên quan đến việc sử dụng các tên khác nhau trong Linux hơn là trong Windows. Ví

dụ: Linux không có tài khoản quản trị viên; nó có một tài khoản root.

■ Tất cả các dịch vụ (được gọi là daemon trong Linux) không được sử dụng phải được tắt.

■ Trình duyệt phải được cấu hình an toàn.

■ Bạn phải thường xuyên vá lỗi hệ điều hành.

Ngoài các chiến thuật phổ biến đối với Windows và Linux này, một số cách tiếp cận khác nhau đối với hai hệ điều hành:

■ Không ứng dụng nào được chạy với tư cách người dùng root trừ khi thực sự cần thiết. Hãy nhớ rằng người dùng root

tương đương với tài khoản quản trị viên trong Windows. Cũng nên nhớ rằng tất cả các ứng dụng trong Linux đều chạy

như thể được khởi động bởi một người dùng cụ thể và do đó, việc có một ứng dụng chạy với tư cách người dùng root

sẽ cấp cho ứng dụng đó tất cả các đặc quyền quản trị.

■ Mật khẩu gốc phải phức tạp và phải thay đổi thường xuyên. Điều này cũng giống như với

Mật khẩu quản trị viên Windows.

■ Vô hiệu hóa tất cả quyền truy cập tương đương với bảng điều khiển đối với người dùng thông thường. Điều này có nghĩa là chặn

quyền truy cập vào các chương trình như tắt máy, khởi động lại và tạm dừng đối với người dùng thông thường trên máy chủ của

bạn. Để thực hiện việc này, hãy chạy lệnh sau: [root@kapil /]# rm -f /etc/security/console.apps/<servicename>, trong đó <servicename>

là tên của chương trình mà bạn muốn vô hiệu hóa quyền truy cập tương đương với bảng điều khiển.

■ Ẩn thông tin hệ thống của bạn. Khi bạn đăng nhập vào hộp Linux, theo mặc định, nó sẽ hiển thị tên bản phân phối Linux,

phiên bản, phiên bản kernel và tên máy chủ. Thông tin này có thể là điểm khởi đầu cho những kẻ xâm nhập. Bạn chỉ nên

nhắc người dùng bằng lời nhắc “Đăng nhập:”.


Machine Translated by Google

224 CHƯƠNG 8 Tăng cường hệ điều hành

Để thực hiện việc này, hãy chỉnh sửa tệp /etc/rc.d/rc.local và đặt # trước các dòng sau, như được hiển thị:

# Điều này sẽ ghi đè /etc/issue mỗi lần khởi động. Vì vậy, hãy thực hiện bất kỳ thay đổi nào bạn

# muốn thực hiện /etc/issue tại đây nếu không bạn sẽ mất chúng khi khởi động lại.
#tiếng vang "" > /etc/vấn đề

#echo "$R" >> /etc/issue

#echo "Kernel $(uname -r) trên $a $(uname -m)" >> /etc/issue

#cp -f /etc/issue /etc/issue.net

#echo >> /etc/issue

Xóa các tệp sau: "issue.net" và "issue" trong thư mục "/etc":

[root@kapil /]# rm -f /etc/issue

[root@kapil /]# rm -f /etc/issue.net

Nói chung, các khái niệm bảo mật được áp dụng bất kể hệ điều hành. Tuy nhiên, việc thực sự củng cố bất kỳ hệ điều hành nào

đều đòi hỏi trình độ chuyên môn nhất định với hệ điều hành cụ thể đó.

Các trang web sau cung cấp thông tin hữu ích để giúp bạn bảo mật máy chủ Linux của mình:

■ Hướng dẫn dành cho quản trị viên bảo mật Linux: www.linuxsecurity.com/docs/SecurityAdminGuide/

Bảo mậtAdminGuide.html

■ Linux.com: www.linux.com/

FYI: Xung đột bản vá

Một bản vá có thể xung đột với một số phần mềm hoặc cài đặt trên hệ thống của bạn. Để tránh những xung đột
này, trước tiên bạn nên áp dụng các bản vá cho máy thử nghiệm để đảm bảo không có xung đột nào tồn tại
trước khi áp dụng chúng cho máy sản xuất.

Vá lỗi hệ điều hành


Đôi khi, các lỗ hổng bảo mật được tìm thấy trong hệ điều hành. Khi các nhà cung cấp phần mềm nhận ra các sai sót, họ thường

viết các bản sửa lỗi cho mã của mình, được gọi là bản vá hoặc bản cập nhật. Dù bạn sử dụng hệ điều hành nào, bạn đều phải

áp dụng các bản vá này như một thói quen. Các bản vá Windows có lẽ là phổ biến nhất, nhưng các bản vá có thể được phát

hành cho bất kỳ hệ điều hành nào. Bạn nên vá hệ thống của mình bất cứ khi nào một bản vá quan trọng được phát hành. Bạn có

thể cân nhắc việc lên lịch một thời gian cụ thể chỉ để cập nhật các bản vá. Một số tổ chức thấy rằng việc cập nhật mỗi quý

một lần hoặc thậm chí một lần mỗi tháng là cần thiết.

Đối với Windows, bạn có thể truy cập www.microsoft.com. Ở phía bên trái, bạn sẽ thấy một liên kết có nội dung Cập nhật Windows.

Nếu nhấp vào nó, bạn có thể quét máy của mình để tìm các bản vá bị thiếu và tải chúng xuống từ trang web. Red Hat cung cấp dịch

vụ tương tự cho người dùng Red Hat Linux. Trên trang web

www.redhat.com/security/, người dùng có thể quét các bản cập nhật.


Machine Translated by Google

Cấu hình trình duyệt 225

Cấu hình trình duyệt


Hầu hết các máy tính, bao gồm cả máy trạm của công ty, đều được sử dụng để truy cập Internet. Điều này có nghĩa

là cấu hình trình duyệt phù hợp là hoàn toàn cần thiết để củng cố hệ thống. Internet có lẽ là mối đe dọa lớn nhất

đối với một hệ thống cá nhân hoặc mạng công ty. Sử dụng Internet an toàn là rất quan trọng. Phần này mô tả cách

thiết lập Internet Explorer để sử dụng Internet an toàn.

Bảo mật cài đặt trình duyệt cho Microsoft Internet Explorer
Một số chuyên gia cho rằng Internet Explorer đơn giản không phải là một trình duyệt an toàn. Chúng tôi sẽ không

dành thời gian tham gia vào cuộc tranh luận giữa Internet Explorer, Chrome và Mozilla. Và Microsoft đã giới thiệu

Edge Browser, mặc dù nhiều người dùng vẫn sử dụng Internet Explorer. Vì nhiều người sử dụng Internet Explorer

nên bạn phải hiểu cách làm cho nó an toàn nhất có thể.

1. Mở Microsoft Internet Explorer.

2. Chọn Công cụ trên thanh menu, sau đó chọn Tùy chọn Internet. Một màn hình giống như màn hình hiển thị

trong Hình 8-12 xuất hiện.

HÌNH 8-12 Các tùy chọn của Internet Explorer

Cửa sổ Tùy chọn Internet bao gồm tab Quyền riêng tư và tab Bảo mật. Chúng ta sẽ thảo luận về cả hai tab này và

các cài đặt bạn nên chọn.


Machine Translated by Google

226 CHƯƠNG 8 Tăng cường hệ điều hành

Những thiết lập riêng tư

Với vấn đề phần mềm gián điệp ngày càng gia tăng, cài đặt quyền riêng tư cũng quan trọng đối với việc củng cố hệ điều hành như

cài đặt bảo mật. Nhấp vào nút Nâng cao cho phép bạn thay đổi cách trình duyệt của bạn xử lý cookie. Thật không may, việc lướt

web mà không chấp nhận một số cookie là điều khó khăn. Các cài đặt sau được khuyến nghị:

■ Chặn cookie của bên thứ ba

■ Lời nhắc về cookie của bên thứ nhất

■ Luôn cho phép cookie phiên

Những cài đặt này sẽ giúp bạn tránh được một số vấn đề liên quan đến cookie. Bạn cũng có thể muốn nhấp vào nút Chỉnh sửa và

thiết lập trình duyệt để cho phép cookie từ một số trang web nhất định và không bao giờ cho phép cookie từ những trang khác.

Cài đặt hệ thống bảo vệ

Cài đặt bảo mật phức tạp hơn cài đặt quyền riêng tư và có nhiều tùy chọn bảo mật hơn để chọn. Bạn có thể chỉ cần chọn các mức

mặc định thấp, trung bình, cao trong trình duyệt của mình, nhưng hầu hết quản trị viên quan tâm đến bảo mật đều sử dụng nút Tùy

chỉnh để thiết lập bảo mật cụ thể cho tổ chức của họ. Khi bạn chọn Tùy chỉnh, một hộp thoại giống như hộp thoại trong Hình

8-13 sẽ xuất hiện. Chúng tôi sẽ không thảo luận về từng cài đặt riêng lẻ mà sẽ giải thích nhiều cài đặt quan trọng hơn.

HÌNH 8-13 Cài đặt bảo mật tùy chỉnh của Internet Explorer
Machine Translated by Google

Cấu hình trình duyệt 227

Như bạn có thể thấy, có nhiều cài đặt khác nhau có sẵn để bạn làm việc. Bảng 8-6 tóm tắt những cài
đặt quan trọng nhất và cài đặt được đề xuất cho từng cài đặt.

BẢNG 8-6 Cài đặt bảo mật tùy chỉnh của Internet Explorer

Cài đặt Mục đích Sự giới thiệu

Chạy các thành phần không được ký Cho phép các thành phần phần mềm Ở mức tối thiểu, hãy đặt điều này để nhắc
bằng Authenticode chưa được ký thực thi trên hệ bạn, nhưng hãy cân nhắc việc tắt nó

thống của bạn. hoàn toàn.

Chạy các thành phần được ký Cho phép các thành phần phần Lời nhắc.
bằng Authenticode mềm đã ký thực thi trên hệ

thống của bạn.

Tải xuống ActiveX đã ký Cho phép các thành phần ActiveX đã được Lời nhắc.

ký được tự động tải xuống hệ thống

của bạn.

Tải xuống ActiveX chưa được ký Cho phép các thành phần ActiveX chưa được ký sẽ Lời nhắc. Bạn có thể nghĩ đến việc tắt,

được tự động tải xuống hệ thống của bạn. nhưng nhiều hoạt ảnh Flash không được ký

và nếu bạn chỉ tắt, bạn sẽ không thể nhìn

thấy những hoạt ảnh đó.

Khởi tạo và tập lệnh điều khiển Cho phép các thành phần ActiveX chạy tập Nên tắt, nhưng ít nhất là nhắc nhở.
ActiveX không được đánh dấu là an toàn lệnh.

Tập lệnh điều khiển ActiveX Cho phép các thành phần ActiveX đó chạy tập Lời nhắc.
được đánh dấu an toàn lệnh.

Tải xuống (phông chữ, tệp, v.v.) Tải xuống các tập tin, phông chữ, v.v. Lời nhắc.

mà một trang Web cần.

Quyền Java Cài đặt này chỉ cho phép bạn xác định Độ an toàn cao.

xem ứng dụng Java có thể hoặc không thể

làm gì trên hệ thống của bạn.

Các applet Java có thể là phương tiện

cho mã độc, nhưng tất cả các applet

đều cần thực hiện một số hành động

trên hệ thống của bạn.

Tất cả những người khác Đây là điểm hấp dẫn dành cho những mặt Bạn luôn có thể nhận được lời nhắc nếu
hàng không quan trọng, linh tinh và không muốn tắt hoàn toàn thứ gì đó. Trong
không phù hợp với những nơi khác. Những hầu hết các trường hợp, chỉ cần tắt tất

cài đặt khác nhau này không quan trọng đối cả cài đặt sẽ khiến một số trang web

với sự an toàn như những cài đặt đã không thể xem được, vì vậy, vì mục đích
thảo luận trước đây. thực tế, cài đặt “nhắc trước…” được

ưu tiên hơn.
Machine Translated by Google

228 CHƯƠNG 8 Tăng cường hệ điều hành

Vì web thường là phần yếu nhất trong bảo mật của tổ chức nên việc có cài đặt trình duyệt an toàn là rất quan

trọng đối với bảo mật hệ điều hành và bảo mật mạng nói chung.

Các trình duyệt khác

Ngoài Internet Explorer và Edge, các trình duyệt khác cũng có sẵn, bao gồm Mozilla Firefox, Opera, Safari

(Mac OS X), Chrome và IceWeasel (chỉ dành cho Linux, mặc định là Kali Linux). Mỗi trong số này có các phương

pháp khác nhau để thiết lập bảo mật, nhưng các nguyên tắc giống nhau đúng với Explorer cũng áp dụng cho các

trình duyệt này: Giới hạn cookie, không cho phép các thành phần ActiveX chạy mà bạn không biết và không cho

phép bất kỳ tập lệnh nào thực thi mà không có sự cho phép của bạn. kiến thức. Nếu bạn áp dụng các nguyên tắc

tương tự cho các trình duyệt khác, bạn sẽ có thể đạt được mức độ bảo mật tương tự như những gì bạn có thể

có với Internet Explorer.


Machine Translated by Google

Bản tóm tắt 229

Bản tóm tắt


Tăng cường hệ điều hành là một phần quan trọng của an ninh mạng và nó có nhiều khía cạnh. Nó liên quan đến việc bảo mật hệ điều

hành, áp dụng các bản vá, sử dụng cài đặt bảo mật thích hợp và bảo mật trình duyệt của bạn. Tất cả những yếu tố này phải được

giải quyết để bảo đảm an toàn cho máy.

Cấu hình hệ điều hành cẩn thận có thể khiến nhiều kỹ thuật hack trở nên khó khăn hơn. Nó cũng có thể làm cho hệ thống có

khả năng chống lại các cuộc tấn công DoS tốt hơn. Việc thiết lập các chính sách phù hợp cho người dùng và tài khoản có

thể khiến việc hack các tài khoản đó trở nên khó khăn hơn nhiều. Các chính sách phải đề cập đến các vấn đề như độ dài mật

khẩu phù hợp, loại mật khẩu và độ tuổi/lịch sử mật khẩu.

Với Windows, bạn cũng có thể sử dụng Hệ thống tệp được mã hóa để bảo vệ dữ liệu của mình nếu dữ liệu đó bị di chuyển khỏi

hệ thống của bạn. EFS được giới thiệu lần đầu tiên trong Windows 2000 và tiếp tục cho đến ngày nay. Nó là một công cụ có

giá trị có thể và nên được sử dụng để bảo vệ mọi dữ liệu nhạy cảm.

Với bất kỳ phiên bản Microsoft Windows nào, cài đặt đăng ký thích hợp là chìa khóa để bảo mật. Sổ đăng ký là trái tim và

linh hồn của hệ điều hành Microsoft Windows và việc không giải quyết các cài đặt đăng ký thích hợp sẽ để lại những lỗ hổng

bảo mật.

Cấu hình trình duyệt phù hợp giúp hệ thống ít bị ảnh hưởng bởi phần mềm độc hại hơn. Việc hạn chế cookie có thể giúp đảm

bảo quyền riêng tư được bảo vệ. Chặn trình duyệt thực thi tập lệnh hoặc bất kỳ mã hoạt động nào mà bạn không biết là một

bước quan trọng để bảo vệ hệ thống khỏi phần mềm độc hại.

Kiểm tra kỹ năng của bạn

CÂU HỎI CÓ NHIỀU LỰA CHỌN

1. Việc vô hiệu hóa tài khoản quản trị viên mặc định và thiết lập tài khoản thay thế là gì

hoàn thành?

A. Khiến người khác khó đoán thông tin đăng nhập hơn

B. Giúp quản trị viên có ý thức về bảo mật

C. Cho phép quản lý chặt chẽ hơn quyền truy cập của quản trị viên

D. Làm cho mật khẩu mạnh hơn


Machine Translated by Google

230 CHƯƠNG 8 Tăng cường hệ điều hành

2. Tất cả người dùng nên có mức đặc quyền nào?

A. Quản trị viên

B. Khách

C. Có nhiều đặc quyền nhất có

thể D. Ít nhất có thể

3. NSA khuyến nghị độ dài mật khẩu tối thiểu là bao nhiêu?

A. 6

B. 8

C. 10

D. 12

4. Microsoft khuyến nghị độ tuổi tối đa của mật khẩu là bao nhiêu?

A. 20 ngày

B. 3 tháng

C. 1 năm

D. 42 ngày

5. NSA khuyến nghị ngưỡng khóa tài khoản nào?

A. 5 lần thử

B. 3 lần thử

C. 4 lần thử

D. 2 lần thử

6. Điều nào sau đây mô tả chính xác nhất về sổ đăng ký?

A. Cơ sở dữ liệu quan hệ chứa các cài đặt hệ thống B.

Cơ sở dữ liệu chứa các cài đặt hệ thống C.

Cơ sở dữ liệu nơi phần mềm được đăng ký D. Cơ

sở dữ liệu quan hệ nơi phần mềm được đăng ký

7. Việc thay đổi TCP/Cài đặt trong sổ đăng ký được gọi là gì?

A. Tinh chỉnh ngăn

xếp B. Thay đổi

ngăn xếp C. Nén ngăn xếp

D. Xây dựng ngăn xếp


Machine Translated by Google

Bản tóm tắt 231

8. EFS sử dụng loại mã hóa nào?

A. Khóa đơn B.

Đa bảng chữ cái C.

Mã hóa khóa công khai D.

Thuật toán bí mật độc quyền của Microsoft

9. Điều gì xảy ra nếu bạn sao chép một tập tin không được mã hóa vào một thư mục được mã hóa?

A. Nó vẫn chưa được mã hóa.

B. Thư mục không được mã hóa.

C. Không có gì xảy ra cả.

D. Tệp sẽ được mã hóa.

10. Mẫu nào sau đây được sử dụng để mang lại sự bảo mật cao nhất cho tên miền
bộ điều khiển?

A. Hisecdc.inf

B. Bảo mậtc.inf

C. Hisecws.inf

D. Sectopdc.inf

11. Điều nào sau đây là khuyến nghị bảo mật dành cho Linux không phổ biến đối với Windows?

A. Tắt tất cả các dịch vụ mà bạn không sử dụng (được gọi là daemon trong Linux).

B. Cấu hình trình duyệt một cách an toàn.

C. Thường xuyên vá hệ điều hành.

D. Vô hiệu hóa tất cả quyền truy cập tương đương với bảng điều khiển đối với người dùng thông thường.

12. Quy định về các dịch vụ không được sử dụng trên bất kỳ máy tính nào là gì?

A. Chỉ tắt chúng đi nếu chúng quan trọng.

B. Tắt chúng đi.

C. Theo dõi chúng cẩn thận.

D. Cấu hình chúng để có được đặc quyền tối thiểu.

13. Hệ điều hành nào yêu cầu bản vá định kỳ?

A. Cửa sổ

B. Linux

Gọi

D. Macintosh
Machine Translated by Google

232 CHƯƠNG 8 Tăng cường hệ điều hành

14. Cài đặt bảo mật tối thiểu trong Internet Explorer cho các thành phần Run không được ký bằng là gì
Mã xác thực?

A. Vô hiệu hóa

B. Kích hoạt

C. Cấm

D. Nhắc

15. Cài đặt bảo mật được khuyến nghị trong Internet Explorer cho Khởi tạo và tập lệnh ActiveX là gì
điều khiển không được đánh dấu là an toàn?

A. Vô hiệu hóa

B. Kích hoạt

C. Cấm

D. Nhắc

BÀI TẬP

BÀI TẬP 8.1: Chính sách tài khoản người dùng và mật khẩu

Lưu ý: Bài tập này được thực hiện tốt nhất với máy tính trong phòng thí nghiệm, không phải trên máy thực tế đang được sử dụng. Thực

hiện theo các hướng dẫn được đưa ra trong chương này, hãy hoàn thành các nhiệm vụ sau:

1. Tạo một tài khoản mới với quyền quản trị.

2. Vô hiệu hóa tất cả các tài khoản mặc định, hoặc nếu không thể vô hiệu hóa được thì hãy thay đổi chúng ở mức thấp nhất có thể

quyền.

3. Thực hiện các khuyến nghị của NSA về chính sách mật khẩu và chính sách khóa tài khoản.

BÀI TẬP 8.2: Cài đặt đăng ký an toàn

Lưu ý: Bài tập này nên được thực hiện trên máy Windows trong phòng thí nghiệm, không phải trên máy sử dụng bình thường.

Sử dụng các hướng dẫn được đưa ra trong chương, hãy kiểm tra cài đặt máy của bạn để xem các đề xuất sau có được

triển khai hay không:

■ Hạn chế truy cập phiên null.

■ Hạn chế truy cập ẩn danh.

■ Thay đổi chia sẻ mặc định.

■ Hạn chế quyền truy cập phiên null trên các đường ống được đặt tên.
Machine Translated by Google

Bản tóm tắt 233

BÀI TẬP 8.3: Tinh chỉnh ngăn xếp

Lưu ý: Bài tập này nên được thực hiện trên máy thí nghiệm, không phải máy sử dụng bình thường.

Thực hiện theo các hướng dẫn được đưa ra trong chương, hãy thay đổi cài đặt đăng ký để khiến các cuộc tấn công DoS

trở nên khó khăn hơn.

BÀI TẬP 8.4: Cài đặt mẫu bảo mật

Bài tập này nên được thực hiện trên máy Windows trong phòng thí nghiệm, không phải trên máy sử dụng bình

thường. Bằng cách làm theo các bước được đưa ra ở đây, bạn sẽ có thể áp dụng mẫu bảo mật cho máy Windows 7 hoặc XP.

Bạn có thể sử dụng một trong các mẫu mặc định được đề cập trong chương hoặc mẫu bạn tải xuống từ trang web bạn

chọn.

1. Từ dấu nhắc lệnh hoặc từ Bắt đầu, Chạy, nhập MMC. Một màn hình giống như màn hình hiển thị trong Hình 8-14

xuất hiện.

HÌNH 8-14 Bảng điều khiển MMC

2. Đi tới menu thả xuống Bảng điều khiển và chọn Thêm/xóa bảng điều khiển.

3. Khi bạn nhấp vào phần đính vào Thêm/Xóa, bạn có thể chọn một số bảng điều khiển. Tìm và chọn

Cấu hình và phân tích bảo mật.

4. Sau khi thêm phần này vào bảng điều khiển, bạn có thể nhấp chuột phải vào nó và chọn Mở cơ sở dữ liệu.

Sau đó đặt cho cơ sở dữ liệu bất kỳ tên nào bạn thích. Khi bạn nhấn Enter, hộp thoại của bạn sẽ thay đổi để

hiển thị danh sách tất cả các mẫu. Chọn một trong những bạn muốn.
Machine Translated by Google

234 CHƯƠNG 8 Tăng cường hệ điều hành

BÀI TẬP 8.5: Bảo mật Linux

Sử dụng máy Linux trong phòng thí nghiệm (bất kỳ bản phân phối nào cũng sẽ hoạt động) và dữ liệu được trình bày trong chương

này, hãy thực hiện những điều sau:

1. Đảm bảo rằng tài khoản người dùng được thiết lập an toàn.

2. Tắt các daemon không sử dụng và không cần thiết.

3. Áp dụng các cài đặt dành riêng cho Linux được đưa ra trong chương này.

BÀI TẬP 8.6: Bảo mật Microsoft Internet Explorer

Sử dụng máy tính trong phòng thí nghiệm, bảo mật Microsoft Internet Explorer bằng cách làm theo các bước được đưa ra ở đây:

1. Chặn tất cả các thành phần ActiveX chưa được ký.

2. Giới hạn cookie chỉ ở cookie của bên thứ nhất và cookie phiên.

3. Chặn tất cả tập lệnh.

BÀI TẬP 8.7: Vá Windows

Sử dụng máy tính trong phòng thí nghiệm, tốt nhất là máy tính chưa được vá lỗi trong một thời gian:

1. Truy cập www.microsoft.com.

2. Quét các bản vá.

3. Cập nhật tất cả các bản vá và ghi lại các bản vá bạn cập nhật.

DỰ ÁN

DỰ ÁN 8.1: Cài đặt tài khoản và mật khẩu

Chương này cung cấp các khuyến nghị về tài khoản và mật khẩu của NSA, Microsoft và tác giả. Sử dụng web (bao gồm

nhưng không giới hạn các tài nguyên được xác định trong chương này), tìm các đề xuất từ một số nguồn đáng tin

cậy khác (CERT, SANS, bất kỳ nhà cung cấp chứng nhận bảo mật nào, v.v.). Viết một bài viết ngắn thảo luận về những

khuyến nghị đó, đặc biệt chú ý đến những lĩnh vực chúng khác với những khuyến nghị được đưa ra trong chương này.
Machine Translated by Google

Bản tóm tắt 235

DỰ ÁN 8.2: Cài đặt đăng ký

Lưu ý: Dự án này phù hợp với những sinh viên có hiểu biết sâu sắc về cơ quan đăng ký hoặc có thể là

một dự án nhóm.

Viết về ít nhất ba cài đặt đăng ký bổ sung mà bạn nghĩ nên sửa đổi để tạo ra một hệ điều hành Windows an

toàn hơn. Giải thích đầy đủ lý do của bạn.

DỰ ÁN 8.3: Hệ thống tập tin được mã hóa

Sử dụng web hoặc các tài nguyên khác, tìm hiểu thông tin cụ thể về Hệ thống tệp được mã hóa là một phần

của Windows. Mô tả hệ thống tập tin này và bất kỳ điểm mạnh và điểm yếu nào bạn tìm thấy.
Machine Translated by Google

Chương 9

Bảo vệ chống lại sự tấn công của virus

Chương Mục tiêu


Sau khi đọc chương này và hoàn thành các bài tập, bạn sẽ có thể làm được những việc sau:

■ Giải thích cách thức hoạt động của các cuộc tấn công của virus.

■ Giải thích cách virus lây lan.

■ Phân biệt các loại virus tấn công khác nhau.

■ Sử dụng máy quét virus để phát hiện virus.

■ Xây dựng chiến lược thích hợp để chống lại sự tấn công của virus.

Giới thiệu
Chương 2 đã giới thiệu về các cuộc tấn công của virus và Chương 8, “Tăng cường hệ điều hành” đã cung cấp thêm chi tiết.

Trong chương này, bạn sẽ tìm hiểu thêm về cách thức hoạt động của các cuộc tấn công của vi-rút và tìm hiểu cách phòng vệ trước sự tấn

công của vi-rút.

Một điều đã được chỉ ra là mối nguy hiểm phổ biến nhất trên Internet là virus hoặc sâu máy tính. Điều này là do thực tế là một khi

virus được phát tán, nó sẽ lây lan nhanh chóng và không thể đoán trước. Các cuộc tấn công khác, chẳng hạn như DoS, hack phiên và tràn

bộ đệm, thường nhắm mục tiêu vào một hệ thống hoặc mạng cụ thể. Virus chỉ đơn giản lây lan sang bất kỳ máy tính nào mà nó có thể xâm

nhập. Có một thực tế là bất kỳ hệ thống nào cuối cùng cũng sẽ gặp phải virus. Mạng của bạn bị ảnh hưởng đáng kể như thế nào bởi sự cố

này hoàn toàn phụ thuộc vào bạn và các biện pháp bảo mật mà bạn thực hiện.

Vì vi-rút gây ra mối đe dọa đáng kể nên việc bảo vệ khỏi các cuộc tấn công như vậy là điều hết sức quan trọng đối với bất kỳ quản trị

viên mạng nào. Thật không may, một số quản trị viên cảm thấy rằng chỉ vì họ đã cài đặt trình quét vi-rút nên họ an toàn. Giả định này

là không chính xác. Trong chương này, bạn sẽ tìm hiểu cách hoạt động của các cuộc tấn công do vi-rút và khám phá một số ví dụ thực tế

về các cuộc tấn công của vi-rút. Sau đó, bạn sẽ tìm hiểu thêm về cách hoạt động của phần mềm chống vi-rút và xem xét một số giải pháp

thương mại. Bạn cũng sẽ

236
Machine Translated by Google

Hiểu các cuộc tấn công của virus 237

tìm hiểu về các chính sách phù hợp mà tổ chức của bạn có thể triển khai để giảm nguy cơ hệ thống của bạn bị nhiễm vi-

rút. Cuối cùng, bạn sẽ tìm hiểu về các tùy chọn cấu hình trên các thiết bị khác (tường lửa, bộ định tuyến, v.v.) có

thể giúp giảm nguy cơ nhiễm vi-rút.

Hiểu các cuộc tấn công của virus


Hiểu vi-rút là gì, lây lan như thế nào và các biến thể khác nhau là điều cần thiết để chống lại các mối đe dọa từ vi-

rút. Bạn cũng cần phải hiểu rõ về cách thức hoạt động của trình quét vi-rút để đưa ra quyết định thông minh về việc mua

máy quét vi-rút cho tổ chức của mình. Trong phần này, chúng tôi sẽ khám phá những chủ đề này một cách chi tiết để trang

bị cho bạn những kỹ năng cần thiết nhằm thiết lập một hệ thống phòng thủ vững chắc chống lại các cuộc tấn công của vi-

rút.

Virus là gì?

Hầu hết mọi người đều quen thuộc với vi-rút máy tính nhưng có thể không có định nghĩa rõ ràng về vi-rút máy tính là gì.

Virus máy tính là một chương trình có khả năng tự nhân bản. Thông thường, virus cũng sẽ có một số chức năng tiêu cực

khác như xóa file hay thay đổi cài đặt hệ thống. Tuy nhiên, chính khả năng tự sao chép và lây lan nhanh chóng đã định

nghĩa một loại virus. Thông thường, bản thân sự phát triển này có thể là một vấn đề đối với mạng bị lây nhiễm.

Nó có thể dẫn đến lưu lượng mạng quá mức và ngăn mạng hoạt động bình thường. Hãy nhớ lại trong Chương 2 rằng chúng

ta đã thảo luận về thực tế là mọi công nghệ đều có khả năng hữu hạn để thực hiện công. Càng nhiều virus tràn ngập mạng

với lưu lượng truy cập thì dung lượng còn lại để thực hiện công việc thực tế càng ít.

Một con sâu là gì?

Worm là một loại virus đặc biệt. Một số văn bản đi rất dài để phân biệt sâu và vi-rút, trong khi những văn bản khác coi

sâu chỉ đơn giản là một tập hợp con của vi-rút. Giun là một loại virus có thể lây lan mà không cần sự can thiệp của con

người. Nói cách khác, vi-rút yêu cầu một số hành động của con người để lây nhiễm vào máy (tải xuống tệp, mở tệp đính

kèm, v.v.), nhưng sâu có thể lây lan mà không cần có sự tương tác đó. Trong những năm gần đây, dịch giun đã trở nên

phổ biến hơn so với virus thông thường, không phải giun. Thành thật mà nói, ngày nay hầu hết những gì được gọi là “vi-

rút” thực ra là một loại sâu.

Virus lây lan như thế nào


Cách tốt nhất để chống lại vi-rút là hạn chế sự lây lan của chúng, vì vậy điều quan trọng là bạn phải hiểu cách chúng

lây lan. Một loại virus thường sẽ lây lan theo một trong hai cách. Phương pháp phổ biến nhất và đơn giản nhất là đọc

sổ địa chỉ e-mail của bạn và gửi e-mail cho mọi người trong sổ địa chỉ của bạn. Lập trình đây là một nhiệm vụ tầm

thường, điều này giải thích tại sao nó lại phổ biến đến vậy. Phương pháp thứ hai chỉ đơn giản là quét máy tính của

bạn để tìm kết nối với mạng, sau đó sao chép chính nó sang các máy khác trên mạng mà máy tính của bạn có quyền truy cập.

Đây thực sự là cách lây lan virus hiệu quả nhất, nhưng nó đòi hỏi nhiều kỹ năng lập trình hơn phương pháp kia.
Machine Translated by Google

238 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

Cho đến nay, phương pháp đầu tiên là phương pháp phổ biến nhất để phát tán virus. Microsoft Outlook
có thể là chương trình e-mail thường xuyên bị virus tấn công nhất. Lý do không phải là lỗ hổng bảo mật
trong Outlook mà là do tính dễ dàng khi làm việc với Outlook.

FYI: Dễ sử dụng so với bảo mật

Sẽ luôn có xung đột giữa tính dễ sử dụng và bảo mật. Hệ thống càng dễ sử dụng thì càng kém an toàn.
Điều ngược lại cũng đúng: Bạn tạo ra một hệ thống càng an toàn thì càng khó làm việc. Một số chuyên
gia bảo mật chỉ tập trung vào khía cạnh bảo mật mà không suy nghĩ đầy đủ về các vấn đề về khả năng sử
dụng. Điều này khiến một số chuyên gia bảo mật tránh hoàn toàn các sản phẩm của Microsoft, vì trọng
tâm của Microsoft luôn là khả năng sử dụng chứ không phải bảo mật.

Để trở thành quản trị viên mạng hiệu quả, bạn phải có cái nhìn cân bằng về những cân nhắc này. Máy
tính an toàn nhất trên thế giới là máy tính không được kết nối với bất kỳ mạng nào, không bao giờ cài
đặt bất kỳ phần mềm nào trên đó và đã gỡ bỏ tất cả các ổ đĩa di động (CD-ROM, đĩa mềm, USB). Một chiếc
máy tính như vậy cũng sẽ hoàn toàn vô dụng.

Có một số giả thuyết về lý do tại sao Microsoft Outlook thường xuyên bị virus tấn công.
Một lời giải thích là sự phổ biến của nó trên thị trường. Những người viết virus mong muốn gây ra sự tàn phá. Cách tốt nhất để

làm điều đó là nhắm mục tiêu vào các hệ thống được sử dụng phổ biến nhất.

Một lý do khác khiến Outlook thường xuyên bị nhắm tới là việc viết virus cho nó tương đối dễ dàng.
Trước đây chúng tôi đã đề cập đến thực tế là nhiều ứng dụng e-mail cho phép lập trình viên tạo tiện ích
mở rộng cho ứng dụng. Tất cả các sản phẩm Microsoft Office đều được tạo ra để một lập trình viên hợp
pháp đang viết phần mềm cho doanh nghiệp có thể truy cập vào nhiều đối tượng bên trong của ứng dụng và
từ đó dễ dàng tạo các ứng dụng tích hợp các ứng dụng trong bộ Microsoft Office. Ví dụ: một lập trình
viên có thể viết một ứng dụng truy cập tài liệu Word, nhập bảng tính Excel, sau đó sử dụng Outlook để
tự động gửi tài liệu kết quả qua email cho các bên quan tâm.
Microsoft đã làm rất tốt việc làm cho quá trình này trở nên rất dễ dàng, vì thường chỉ cần lập trình
tối thiểu để hoàn thành các tác vụ này. Khi sử dụng Outlook, chỉ cần ít hơn năm dòng mã để tham chiếu
Outlook và gửi e-mail. Điều này có nghĩa là một chương trình có thể khiến chính Outlook gửi e-mail mà
người dùng không hề biết. Có rất nhiều ví dụ về mã trên Internet chỉ ra chính xác cách thực hiện việc

này, miễn phí để sử dụng. Vì lý do này, không cần phải là một lập trình viên có tay nghề cao mới có thể
truy cập sổ địa chỉ Outlook của bạn và tự động gửi e-mail. Về cơ bản, việc lập trình Outlook dễ dàng là
lý do tại sao có rất nhiều cuộc tấn công của vi-rút nhắm vào Outlook.

Trong khi phần lớn các cuộc tấn công của vi-rút lây lan bằng cách tự gắn chúng vào phần mềm e-mail hiện
có của nạn nhân, một số đợt bùng phát vi-rút gần đây đã sử dụng các phương pháp khác để lây lan. Một
phương pháp đang trở nên phổ biến hơn là virus có công cụ e-mail nội bộ riêng. Một virus có công cụ e-
mail riêng không cần phải “cõng” phần mềm e-mail của máy.
Machine Translated by Google

Hiểu các cuộc tấn công của virus 239

Điều này có nghĩa là, bất kể bạn sử dụng phần mềm e-mail nào, vi-rút này vẫn có thể lây lan từ máy của bạn. Một

phương pháp lây lan virus khác là chỉ cần sao chép chính nó qua mạng. Sự bùng phát virus lây lan qua nhiều con

đường đang trở nên phổ biến hơn.

Một cách khác mà vi-rút có thể lây lan là kiểm tra hệ thống bị ảnh hưởng, tìm kiếm bất kỳ máy tính nào được kết

nối và tự sao chép vào chúng. Kiểu tự lan truyền này không yêu cầu sự tương tác của người dùng, vì vậy chương

trình sử dụng phương pháp này để lây nhiễm vào hệ thống được phân loại là sâu.

Bất kể vi-rút đến trước cửa nhà bạn bằng cách nào, một khi đã xâm nhập vào hệ thống của bạn, nó sẽ cố gắng lây lan và trong

nhiều trường hợp, cũng sẽ cố gắng gây ra một số tổn hại cho hệ thống của bạn. Khi vi-rút xâm nhập vào hệ thống của bạn, nó có

thể làm bất cứ điều gì mà bất kỳ chương trình hợp pháp nào cũng có thể làm được. Điều đó có nghĩa là nó có thể xóa tệp, thay

đổi cài đặt hệ thống hoặc gây ra tác hại khác. Mối đe dọa từ các cuộc tấn công của virus không thể được nói quá mức. Một số

đợt bùng phát virus gần đây thậm chí còn đi xa đến mức vô hiệu hóa phần mềm bảo mật hiện có, chẳng hạn như máy quét chống vi-

rút và tường lửa. Chúng ta hãy dành chút thời gian để xem xét một ví dụ cổ điển về sâu và một số cuộc tấn công của vi-rút phổ

biến trong bài viết này. Việc kiểm tra các đợt bùng phát vi-rút trong thế giới thực sẽ mang lại hiểu biết chắc chắn về cách thức

hoạt động của chúng. Vì mục đích của chúng ta, chúng ta sẽ xem xét các ví dụ về các cuộc tấn công của cả virus và sâu trong phần

này.

Giun Zafi

Đây là một loại sâu cũ nhưng minh họa các vấn đề với sâu. Phiên bản đầu tiên của loại sâu này chỉ được phát hành

bằng tiếng Hungary nên khả năng lây lan của nó có phần hạn chế. Tuy nhiên, theo phiên bản Zafi.d, nó đã lan rộng

bằng tiếng Anh. Phiên bản vi-rút này, được coi là thiệp chúc mừng ngày lễ, đã lan truyền rộng rãi ngay trước

Giáng sinh năm 2004. Việc sử dụng lời chúc ngày lễ làm dòng chủ đề cho e-mail đã làm tăng đáng kể cơ hội được

đọc của nó. Thời điểm chiến lược của nó có thể dẫn đến việc nó lây nhiễm vào nhiều hệ thống hơn những gì nó có

thể làm được. Virus này có công cụ e-mail SMTP riêng và tự gửi nó đến nhiều địa chỉ nhất có thể. Sâu này lấy địa

chỉ e-mail từ một số loại tệp khác nhau mà nó có thể tìm thấy trên máy tính, bao gồm HTML, ASP, tệp văn bản và

các loại khác.

Khi một hệ thống bị nhiễm virus, ngoài việc tự gửi e-mail đến các địa chỉ e-mail, nó còn cố gắng phát hiện các tệp

chương trình chống vi-rút trên máy tính và ghi đè lên chúng bằng một bản sao của chính nó. Việc vô hiệu hóa phần

mềm chống vi-rút này khiến Zafi.d trở nên đặc biệt nguy hiểm. Một số phiên bản của Zafi cũng cố gắng tấn công DoS

trên các trang web sau:

■ www.2f.hu

■ www.parlament.hu

■ www.virushirado.hu
Machine Translated by Google

240 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

Một e-mail sâu Zafi điển hình được hiển thị trong Hình 9-1.

HÌNH 9-1 Sâu Zafi

Rombertik

Rombertik đã tàn phá vào năm 2015. Phần mềm độc hại này sử dụng trình duyệt để đọc thông tin đăng nhập của người dùng vào các trang web.

Nó thường được gửi dưới dạng tệp đính kèm vào e-mail. Có lẽ còn tệ hơn nữa, trong một số trường hợp,

Rombertik sẽ ghi đè lên bản ghi khởi động chính trên ổ cứng, khiến máy không thể khởi động được hoặc bắt

đầu mã hóa các tệp trong thư mục chính của người dùng.

Shamoon

Shamoon là một loại virus máy tính được phát hiện vào năm 2012, được thiết kế để nhắm mục tiêu vào các máy tính

chạy Microsoft Windows trong lĩnh vực năng lượng. Symantec, Kaspersky Lab và Seculert đã công bố phát hiện của mình

vào ngày 16 tháng 8 năm 2012. Về cơ bản, đây là một chương trình đánh cắp dữ liệu dường như nhắm mục tiêu vào

các hệ thống trong các công ty năng lượng. Một biến thể của Shamoon lại xuất hiện vào năm 2017. Điều thú vị về loại

virus đặc biệt này là nó chủ yếu nhắm vào các máy tính tại Saudi Aramco.

Gameover Zeus

Gameover Zeus là một loại virus tạo ra mạng botnet ngang hàng. Về cơ bản, nó thiết lập liên lạc được mã

hóa giữa các máy tính bị nhiễm và máy tính chỉ huy và điều khiển, cho phép kẻ tấn công kiểm soát các máy

tính bị nhiễm khác nhau. Năm 2014, Bộ Tư pháp Hoa Kỳ đã có thể tạm thời tắt liên lạc với các máy tính chỉ

huy và điều khiển; sau đó vào năm 2015, FBI đã công bố phần thưởng trị giá 3 triệu đô la cho thông tin

dẫn đến việc bắt giữ Evgeniy Bogachev vì bị cáo buộc có liên quan đến Gameover ZeuS.

Máy tính chỉ huy và điều khiển là máy tính được sử dụng trong mạng botnet để điều khiển các máy tính khác.

Đây là các nút trung tâm mà từ đó botnet sẽ được quản lý.


Machine Translated by Google

Hiểu các cuộc tấn công của virus 241

Mirai

Virus Mirai, được phát hiện lần đầu tiên vào tháng 9 năm 2016, đã ảnh hưởng đến các thiết bị mạng chạy Linux. Nó sẽ biến

những thiết bị này thành những thây ma được điều khiển từ xa. Nó chủ yếu tập trung vào camera IP, bộ định tuyến và các thiết

bị tương tự. Sau khi bị nhiễm, các thiết bị này sẽ được sử dụng như một phần của cuộc tấn công DDoS.

Linux.Bộ mã hóa.1

Đây là ransomware, được phát hiện lần đầu tiên vào tháng 11 năm 2015. Nó đáng chú ý vì nó đặc biệt nhắm mục tiêu vào các máy

tính Linux. Nó thường lây lan qua một lỗ hổng trong Magento, phần mềm được sử dụng cho thẻ mua sắm trực tuyến trên nhiều trang

thương mại điện tử. Các tập tin đầu tiên được mã hóa bằng AES 128 bit, sau đó khóa AES đó được mã hóa bằng RSA.

Chuột Kedi

Vào tháng 9 năm 2017, Kedi RAT (Trojan truy cập từ xa) đã lây lan qua các email lừa đảo.

Khi ở trên hệ thống bị nhiễm, nó sẽ đánh cắp dữ liệu, sau đó lọc dữ liệu đó bằng cách gửi email qua tài khoản Gmail. Nó đặc

biệt cố gắng xác định dữ liệu cá nhân và/hoặc tài chính trên hệ thống bị nhiễm để bán.

FYI: Tương lai của nhiễm virus

Trong những năm gần đây, nhiều chuyên gia bảo mật máy tính đã than thở về những lỗ hổng bảo mật trong hệ điều hành và

ứng dụng của Microsoft. Một trong những tuyên bố (nhưng không phải là tuyên bố duy nhất) được đưa ra là mức độ phổ

biến của các cuộc tấn công do vi-rút dành riêng cho Outlook là dấu hiệu cho thấy lỗ hổng bảo mật cơ bản trong các sản

phẩm của Microsoft. Với số lượng ngày càng tăng các cuộc tấn công của vi-rút không dành riêng cho bất kỳ hệ thống e-

mail nào, rất có thể chúng ta sẽ thấy nhiều cuộc tấn công vi-rút lây nhiễm vào các sản phẩm không phải của Microsoft.

Trò lừa bịp virus

Trong nhiều năm, một hiện tượng virus khác đã trở nên phổ biến hơn—trò lừa bịp về virus. Thay vì thực sự viết virus, một

người sẽ gửi e-mail đến mọi địa chỉ mà anh ta có. Email tuyên bố là đến từ một trung tâm chống vi-rút nổi tiếng nào đó và

cảnh báo về một loại vi-rút mới đang lưu hành có thể làm hỏng máy tính của người dùng. Thông thường e-mail sẽ hướng dẫn mọi

người xóa một số tập tin khỏi máy tính của họ để loại bỏ vi-rút. Tuy nhiên, tệp này không thực sự là vi-rút mà là một phần

của hệ thống máy tính. Trò lừa bịp virus jdbgmgr.exe đã sử dụng kế hoạch này. Nó khuyến khích người đọc xóa một tập tin mà

hệ thống thực sự cần. Điều đáng ngạc nhiên là một số người đã làm theo lời khuyên này và không chỉ xóa tệp mà còn nhanh chóng

gửi email cho bạn bè và đồng nghiệp của họ để cảnh báo họ xóa tệp khỏi máy của họ.

Trò lừa bịp Jdbgmgr

Trò lừa bịp về virus đặc biệt này có lẽ được biết đến nhiều nhất và được kiểm tra kỹ lưỡng. Bạn sẽ thấy một số đề cập đến

nó trong hầu hết các cuộc thảo luận toàn diện về virus. Trò lừa bịp virus jdbgmgr.exe
Machine Translated by Google

242 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

khuyến khích người đọc xóa một tập tin mà hệ thống thực sự cần. Thông báo điển hình trông như thế này:

Tôi tìm thấy con gấu nhỏ trong máy của mình vì vậy tôi gửi tin nhắn này để bạn tìm thấy nó trong máy của mình.

Thủ tục rất đơn giản:

Mục tiêu của e-mail này là cảnh báo tất cả người dùng Hotmail về một loại vi-rút mới đang lây lan qua MSN

Messenger. Tên của loại virus này là jdbgmgr.exe và nó được gửi tự động bởi Messen-ger cũng như sổ địa chỉ.

Virus này không bị McAfee hay Norton phát hiện và nó hoạt động im lặng trong 14 ngày trước khi làm hỏng hệ thống.

Virus có thể được làm sạch trước khi xóa các tập tin khỏi hệ thống của bạn. Để loại bỏ nó, chỉ cần thực hiện

các bước sau:

1. Đi tới Bắt đầu, nhấp vào Tìm kiếm.

2. Trong tùy chọn Tệp hoặc Thư mục, hãy viết tên jdbgmgr.exe.

3. Khi bạn đã tìm thấy tệp đó, hãy xóa nó.

Jdbgmgr.exe thực sự là Nhà đăng ký trình gỡ lỗi Microsoft cho Java. Việc xóa nó có thể khiến các chương trình dựa

trên Java và ứng dụng web không hoạt động bình thường.

Lừa đảo khai thuế

Trò lừa bịp này lần đầu tiên xuất hiện vào năm 2003. Điểm cốt yếu của e-mail là khiến người nhận nghĩ rằng việc nộp

thuế liên bang ở Hoa Kỳ qua Internet là không an toàn. Thực tế là việc gửi trực tuyến như vậy hoàn toàn an toàn và

thường giúp người nộp thuế được hoàn tiền nhanh hơn nhiều. Nội dung e-mail trông giống như thế này:

CẢNH BÁO

Vẫn chưa ai biết điều đó có đúng hay không, nhưng việc bảo vệ chính mình là điều đáng giá.

Đừng gửi tờ khai thuế của bạn qua Internet (trong thời điểm hiện tại).

Một loại virus mới đã được tung ra trên Internet để lấy cắp tờ khai thuế của bạn. Tác giả đã tạo ra loại vi-rút

này để chặn tất cả các tệp bằng cách sử dụng các tiện ích mở rộng do chương trình Doanh thu Liên bang tạo ra.

Nếu có giảm giá, virus sẽ thay đổi tài khoản hiện tại do nạn nhân chỉ định, đổi thành tài khoản của tác giả.

Sau đó, tệp đã thay đổi sẽ được chuyển đến Cơ sở dữ liệu Doanh thu Liên bang. Nạn nhân nhận được biên lai

trả lại thông thường, vì tờ khai thuế không được chuyển giao. Có một sự gia tăng nhỏ về thời gian vận

chuyển, cần thiết do thông tin tài khoản đã thay đổi, điều này không rõ ràng đối với người chờ khai thuế, do

đó người nhận khoản giảm giá cho rằng đó là do lưu lượng giao thông lớn hoặc có vấn đề với đường dây

điện thoại, v.v. ...tất cả những vấn đề mà chúng ta đã quen thuộc khi sử dụng Internet. Loại virus mới này

vẫn thông báo cho tác giả của nó về những khoản giảm giá mà anh ta đã nắm bắt được, bao gồm cả những giá trị

mà anh ta sẽ bỏ túi.

Gửi e-mail này cho tất cả bạn bè của bạn.


Machine Translated by Google

Hiểu các cuộc tấn công của virus 243

May mắn thay, trò lừa bịp đặc biệt này không gây ra bất kỳ thiệt hại thực sự nào cho máy bị nhiễm. Tuy nhiên, nó đã

ngăn cản nạn nhân sử dụng một dịch vụ có giá trị và hiệu quả, xử lý khai thuế trực tuyến, do đó gây ra nhiều bất tiện

cho nạn nhân. Bạn nên nhớ sự việc này khi chúng ta thảo luận về chiến tranh thông tin ở Chương 14, “An ninh vật lý

và khắc phục thảm họa”. Trò lừa bịp qua e-mail này rõ ràng được thiết kế để làm xói mòn niềm tin vào một dịch vụ của

chính phủ.

Trò lừa bịp W32.Torch

Trò lừa bịp này, giống như hầu hết các trò lừa bịp khác, không gây tổn hại trực tiếp nhưng có thể trở thành một mối phiền

toái lớn—Internet tương đương với một cuộc gọi điện thoại chơi khăm. Không giống như trò lừa bịp jdbmgre.exe, nó không

khuyến khích bạn xóa các tệp khỏi hệ thống của mình. Tuy nhiên, nó gây ra khá nhiều lo lắng cho người nhận. Trong trò lừa

bịp này, một tin nhắn được gửi có nội dung sau:

VIRUS MỚI PHÁ HỦY PHẦN CỨNG

Một loại virus mới được phát hiện gần đây có khả năng đốt cháy CPU của một số máy tính và thậm chí gây hư

hỏng bo mạch chủ. Vâng, đó là sự thật, virus này làm hỏng phần cứng máy tính của bạn. Loại virus này có tên

w32.torch, sử dụng chip winbond w83781d, có trong hầu hết các bo mạch chủ hiện đại, có nhiệm vụ kiểm soát tốc

độ của CPU và quạt hệ thống. Quá trình lây nhiễm diễn ra bằng cách sử dụng Lỗ hổng bẫy mạng Microsoft DCOM

nổi tiếng và khi được cài đặt, vi-rút sẽ lây lan sang các máy tính khác trong mạng cục bộ bằng phương pháp này.

Khi đảo ngược mã vi-rút, chúng tôi không tìm thấy bằng chứng nào về mã ngoài mã gây ra tình trạng kiệt sức của

CPU. Virus tắt tính năng phát hiện nhiệt độ cao trong BIOS (đã bị tắt theo mặc định) và sau đó giảm dần

tốc độ của quạt, khiến hệ thống tăng nhiệt độ bên trong một cách chết người.

Nếu bạn cảm thấy máy tính của mình đang trở nên "im lặng", tốt hơn hết bạn nên kiểm tra vì nó có thể đang

dừng và bạn có thể chỉ còn vài phút để ngắt kết nối nó. Virus chứa dòng chữ “Moscow Dominates - out/27/03”

được hiển thị trên khay của một số máy dựa trên địa chỉ IP của chúng, có lẽ cho thấy nguồn gốc từ Liên Xô.

Không có tải trọng nào được thiết lập để kích hoạt vào ngày này, nhưng đó có thể là dấu hiệu cho thấy điều

gì đó đáng lẽ phải xảy ra vào ngày này. Một số phần mềm chống vi-rút đã phát hiện ra nó, hãy kiểm tra xem phần

mềm của bạn đã được cập nhật chưa.

Cho đến nay vẫn chưa có bất kỳ loại virus nào trực tiếp làm hỏng phần cứng.

Phần mềm tống tiền

Trong thời hiện đại, không thể thảo luận về phần mềm độc hại và không thảo luận về ransomware. Trong khi nhiều người

bắt đầu thảo luận về ransomware lần đầu tiên với sự ra đời của CrytpoLocker vào năm 2103, thì ransomware đã tồn tại

lâu hơn thế rất nhiều. Phần mềm ransomware đầu tiên được biết đến là PC Cyborg Trojan năm 1989, chỉ mã hóa tên tệp

bằng mật mã đối xứng yếu. Đầu năm 2017, ransomware WannaCry đã lan rộng, bắt đầu từ các hệ thống chăm sóc sức khỏe ở

Vương quốc Anh. Nó tấn công các hệ thống Windows chưa được vá. Điều này nhắc lại sự cần thiết phải vá lỗi, được

thảo luận trong Chương 8.

Virus máy tính Bad Rabbit lây lan vào cuối năm 2017. Virus này là ransomware. Nó bắt đầu tấn công ở Nga và Ukraine,

nhưng nhanh chóng lan rộng khắp thế giới.


Machine Translated by Google

244 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

Các loại virus


Có rất nhiều loại virus khác nhau. Trong phần này chúng ta sẽ xem xét ngắn gọn một số loại virus chính. Virus có thể

được phân loại theo phương pháp lây lan hoặc hoạt động của chúng trên máy tính mục tiêu.

■ Macro: Virus macro lây nhiễm vào macro trong các tài liệu văn phòng. Nhiều sản phẩm văn phòng, bao gồm cả

Microsoft Office, cho phép người dùng viết các chương trình nhỏ gọi là macro. Những macro này cũng có

thể được viết dưới dạng virus. Một virus macro được ghi vào macro trong một số ứng dụng kinh doanh.

Ví dụ: Microsoft Office cho phép người dùng viết macro để tự động hóa một số tác vụ. Microsoft Outlook được

thiết kế để lập trình viên có thể viết tập lệnh bằng cách sử dụng một tập hợp con của ngôn ngữ lập trình

Visual Basic, được gọi là Visual Basic for Application (VBA). Trên thực tế, ngôn ngữ kịch bản này được tích

hợp trong tất cả các sản phẩm Microsoft Office. Các lập trình viên cũng có thể sử dụng ngôn ngữ VBScript có

liên quan chặt chẽ. Cả hai ngôn ngữ đều khá dễ học. Nếu tập lệnh như vậy được đính kèm vào e-mail và

người nhận đang sử dụng Outlook thì tập lệnh có thể thực thi. Việc thực thi đó có thể thực hiện bất kỳ tác vụ

nào, bao gồm quét sổ địa chỉ, tìm kiếm địa chỉ, gửi e-mail, xóa e-mail, v.v.

■ Khu vực khởi động: Đúng như tên gọi, vi-rút khu vực khởi động lây nhiễm vào khu vực khởi động của ổ đĩa,

hơn là hệ điều hành. Điều này khiến việc tiêu diệt chúng trở nên khó khăn hơn vì hầu hết phần mềm chống vi-

rút đều hoạt động trong hệ điều hành.

■ Multipartite: Virus multipartite tấn công máy tính theo nhiều cách—ví dụ: lây nhiễm-

vào khu vực khởi động của đĩa cứng và một hoặc nhiều tệp.

■ Cư trú trong bộ nhớ: Virus cư trú trong bộ nhớ sẽ tự cài đặt và sau đó tồn tại trong RAM từ

thời gian máy tính khởi động đến khi tắt máy.

■ Được bọc thép: Virus có bọc thép sử dụng các kỹ thuật khiến nó khó phân tích. Sự nhầm lẫn mã là một trong

những phương pháp như vậy. Mã được viết sao cho nếu virus bị phân tách, mã sẽ không dễ dàng bị theo dõi.

Mã nén là một phương pháp khác để bảo vệ virus.

■ Tàng hình: Có một số loại virus tàng hình. Một loại virus tàng hình cố gắng ẩn mình khỏi hệ thống chống
vi-rút. Một số phương pháp lén lút phổ biến được trình bày ở đây:

■ Kẻ lây nhiễm thưa thớt: Một virus lây nhiễm thưa thớt cố gắng tránh bị phát hiện bằng cách thực hiện

các hoạt động độc hại chỉ lẻ tẻ. Với loại virus lây nhiễm thưa thớt, người dùng sẽ thấy các triệu chứng trong

một thời gian ngắn, sau đó không có triệu chứng nào trong một thời gian. Trong một số trường hợp, kẻ lây

nhiễm thưa thớt nhắm mục tiêu vào một chương trình cụ thể nhưng vi-rút chỉ thực thi sau mỗi lần thứ 10

hoặc lần thứ 20 mà chương trình đích đó thực thi. Hoặc một kẻ lây nhiễm thưa thớt có thể bùng nổ hoạt

động và sau đó nằm im trong một khoảng thời gian. Có một số biến thể về chủ đề này, nhưng nguyên tắc cơ bản là

giống nhau: giảm tần suất tấn công và do đó giảm cơ hội bị phát hiện.

■ Đã mã hóa: Đôi khi vi-rút được mã hóa, ngay cả khi mã hóa yếu, chỉ đủ để ngăn chương trình chống vi-

rút nhận ra vi-rút. Sau đó, đến lúc tiến hành một cuộc tấn công, virus sẽ được giải mã.
Machine Translated by Google

Máy quét vi-rút 245

■ Đa hình: Virus đa hình thỉnh thoảng thay đổi hình dạng của nó để tránh bị phần mềm chống vi-rút phát hiện.

Một dạng cao cấp hơn của loại virus này được gọi là virus biến hình; nó hoàn toàn có thể tự thay đổi.

Các virus phức tạp hơn, tiên tiến hơn được phát triển theo mô-đun. Một mô-đun có thể làm được rất ít việc ngoại trừ việc

tự cài đặt nó vào mục tiêu. Bởi vì nó không có hoạt động độc hại thực sự nên phần mềm chống vi-rút có thể không phát hiện

được. Sau đó, mô-đun tải xuống sẽ tải xuống tải trọng độc hại thực sự. Nếu tải trọng đó được mã hóa thì người tải xuống

cũng có thể chịu trách nhiệm giải mã. Mô-đun trình khởi chạy chịu trách nhiệm kích hoạt hoặc khởi chạy tải trọng độc hại

đã tải xuống.

Máy quét vi-rút

Cách phòng chống virus rõ ràng nhất là trình quét virus. Trình quét vi-rút về cơ bản là phần mềm cố gắng ngăn chặn vi-rút

lây nhiễm vào hệ thống của bạn. Thông thường nó quét e-mail đến và lưu lượng truy cập đến khác. Hầu hết các trình quét

vi-rút cũng có khả năng quét các thiết bị đa phương tiện di động như ổ USB. Nói chung, hầu hết mọi người đều biết về

cách thức hoạt động của máy quét vi-rút. Trong phần này bạn sẽ tìm hiểu chi tiết hơn về cách hoạt động của máy quét.

Nói chung, máy quét virus hoạt động theo hai cách. Phương pháp đầu tiên là chúng chứa danh sách tất cả các tệp vi-rút đã

biết. Nói chung, một trong những dịch vụ mà các nhà cung cấp máy quét vi-rút cung cấp là cập nhật định kỳ tệp này. Danh

sách này thường ở dạng tệp nhỏ, thường được gọi là tệp .dat (viết tắt của dữ liệu). Khi bạn cập nhật định nghĩa vi-rút,

điều thực sự xảy ra là tệp hiện tại của bạn được thay thế bằng tệp mới hơn trên trang web của nhà cung cấp.

Mọi trình quét vi-rút mà tôi từng kiểm tra đều cho phép bạn định cấu hình nó để tải xuống định kỳ các bản cập nhật mới nhất

như vậy. Điều quan trọng là, cho dù bạn chọn trình quét vi-rút nào, bạn cũng phải định cấu hình nó để tự động cập nhật.

Sau đó, chương trình chống vi-rút sẽ quét PC, mạng và e-mail đến của bạn để tìm các tệp vi-rút đã biết. Bất kỳ tệp nào

trên PC của bạn hoặc được đính kèm vào e-mail đều được so sánh với tệp định nghĩa vi-rút để xem liệu có bất kỳ kết quả

trùng khớp nào không. Với e-mail, điều này có thể được thực hiện bằng cách tìm kiếm các dòng chủ đề và nội dung cụ thể.

Các tệp vi-rút đã biết thường có các cụm từ cụ thể trong dòng chủ đề và nội dung thư mà chúng được đính kèm. Tuy nhiên,

virus và sâu có thể có vô số tiêu đề, một số trong đó rất phổ biến, chẳng hạn như re:hello hoặc re:thanks. Chỉ quét danh

sách các loại vi-rút đã biết sẽ dẫn đến nhiều kết quả dương tính giả. Do đó, trình quét vi-rút cũng xem xét các tệp đính

kèm để xem liệu chúng có kích thước và ngày tạo nhất định có phù hợp với một loại vi-rút đã biết hay liệu nó có chứa mã vi-

rút đã biết hay không. Kích thước tệp, ngày tạo và vị trí là những dấu hiệu nhận biết vi-rút. Tùy thuộc vào cài đặt của

trình quét vi-rút, bạn có thể được nhắc thực hiện một số hành động, tệp có thể được chuyển đến thư mục cách ly hoặc tệp

có thể bị xóa hoàn toàn. Kiểu quét vi-rút này chỉ hoạt động nếu tệp .dat dành cho trình quét vi-rút được cập nhật và chỉ

đối với các vi-rút đã biết.

Một cách khác mà trình quét vi-rút có thể hoạt động là giám sát hệ thống của bạn để phát hiện một số loại hành vi điển hình

của vi-rút. Điều này có thể bao gồm các chương trình cố gắng ghi vào khu vực khởi động của ổ cứng, thay đổi tệp hệ thống,

thay đổi sổ đăng ký hệ thống, tự động hóa phần mềm e-mail hoặc tự nhân. Khác
Machine Translated by Google

246 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

Kỹ thuật mà máy quét vi-rút thường sử dụng là tìm kiếm các tệp vẫn còn trong bộ nhớ sau khi chúng thực thi. Đây được

gọi là chương trình Chấm dứt và Ở lại Cư trú (TSR). Một số chương trình hợp pháp thực hiện việc này nhưng thường đó

là dấu hiệu của vi-rút.

Nhiều máy quét vi-rút đã bắt đầu sử dụng các phương pháp bổ sung để phát hiện vi-rút. Các phương pháp như vậy bao

gồm quét các tệp hệ thống và sau đó giám sát bất kỳ chương trình nào cố gắng sửa đổi các tệp đó. Điều này có nghĩa

là trình quét vi-rút trước tiên phải xác định các tệp cụ thể quan trọng đối với hệ thống. Với hệ thống Windows,

chúng bao gồm sổ đăng ký, boot.ini và có thể cả các tệp khác. Sau đó, nếu bất kỳ chương trình nào cố gắng thay đổi

các tệp này, người dùng sẽ được cảnh báo và trước tiên phải cho phép thay đổi trước khi có thể tiếp tục.

Điều quan trọng nữa là phải phân biệt giữa quét vi-rút theo yêu cầu và quét liên tục. Trình quét vi-rút đang hoạt

động chạy ở chế độ nền và liên tục kiểm tra PC xem có dấu hiệu vi-rút nào không.

Máy quét theo yêu cầu chỉ chạy khi bạn khởi chạy chúng. Hầu hết các máy quét chống vi-rút hiện đại đều cung cấp cả hai

tùy chọn.

Kỹ thuật quét virus


Bây giờ bạn đã tìm hiểu các chiến lược chung mà các trình quét vi-rút sử dụng, hãy xem xét chi tiết hơn các kỹ thuật

quét vi-rút cụ thể được các trình quét vi-rút khác nhau sử dụng.

Quét e-mail và tệp đính kèm

Vì phương thức lây lan chính của vi-rút là e-mail nên quét e-mail và tệp đính kèm là chức năng quan trọng nhất của

bất kỳ trình quét vi-rút nào. Một số trình quét vi-rút thực sự kiểm tra e-mail của bạn trên máy chủ e-mail trước khi

tải nó xuống máy của bạn. Các trình quét vi-rút khác hoạt động bằng cách quét e-mail và các tệp đính kèm trên máy

tính của bạn trước khi chuyển nó tới chương trình e-mail của bạn. Trong cả hai trường hợp, e-mail và các tệp đính

kèm của nó phải được quét trước khi bạn có cơ hội mở nó và phát tán vi-rút vào hệ thống của mình. Đây là một sự

khác biệt quan trọng. Nếu vi-rút được đưa vào máy của bạn lần đầu tiên rồi được quét, thì có khả năng, dù rất nhỏ,

vi-rút vẫn có thể lây nhiễm vào máy của bạn.

Hầu hết các máy quét vi-rút mạng thương mại sẽ quét e-mail trên máy chủ trước khi gửi nó đến máy trạm.

Quét tải xuống

Bất cứ khi nào bạn tải xuống bất cứ thứ gì từ Internet, qua liên kết web hoặc qua một số chương trình FTP, đều có

khả năng bạn tải xuống một tệp bị nhiễm virus. Quét tải xuống hoạt động giống như quét e-mail và quét tệp đính kèm,

nhưng thực hiện như vậy đối với các tệp bạn chọn để tải xuống.

Quét tập tin

Quét tải xuống và quét e-mail sẽ chỉ bảo vệ hệ thống của bạn khỏi vi-rút mà bạn có thể tải xuống từ một trang web hoặc vi-rút

đến với bạn qua e-mail. Những phương pháp đó sẽ không hữu ích đối với vi-rút được sao chép qua mạng, lưu giữ trên ổ đĩa chung

hoặc vi-rút đã có trên máy của bạn trước khi bạn cài đặt trình quét vi-rút.
Machine Translated by Google

Máy quét vi-rút 247

Đây là kiểu quét trong đó các tệp trên hệ thống của bạn được kiểm tra để xem liệu chúng có trùng khớp với bất kỳ loại

vi-rút nào đã biết hay không. Kiểu quét này thường được thực hiện theo yêu cầu thay vì liên tục. Bạn nên lên lịch cho

trình quét vi-rút của mình thực hiện quét toàn bộ hệ thống theo định kỳ. Cá nhân tôi khuyên bạn nên quét hàng tuần, tốt

nhất là vào thời điểm không có ai sử dụng máy tính.

Sẽ mất thời gian và nguồn lực để quét tất cả các tệp trên ổ cứng máy tính để phát hiện nhiễm trùng. Kiểu quét này sử dụng

phương pháp tương tự như quét e-mail và quét tải xuống. Nó tìm kiếm các dấu hiệu virus đã biết. Do đó phương pháp này chỉ

giới hạn trong việc tìm kiếm những virus đã được biết đến và sẽ không tìm thấy những virus mới.

Quét theo kinh nghiệm

Đây có lẽ là hình thức quét virus tiên tiến nhất. Kiểu quét này sử dụng các quy tắc để xác định xem tệp hoặc chương

trình có hoạt động giống vi-rút hay không và là một trong những cách tốt nhất để tìm vi-rút không phải là vi-rút đã

biết. Một loại vi-rút mới sẽ không có trong bất kỳ danh sách định nghĩa vi-rút nào, vì vậy bạn phải kiểm tra hành vi

của nó để xác định xem đó có phải là vi-rút hay không. Tuy nhiên, quá trình này không phải là hoàn hảo. Một số trường

hợp nhiễm vi-rút thực tế sẽ bị bỏ qua và một số tệp không phải vi-rút có thể bị nghi ngờ là vi-rút.

Tác dụng phụ đáng tiếc của việc quét heuristic là nó có thể dễ dàng dẫn đến kết quả dương tính giả. Điều này có nghĩa

là nó có thể xác định một tệp là vi-rút, trong khi thực tế không phải vậy. Hầu hết các trình quét vi-rút không chỉ đơn

giản là xóa vi-rút. Họ đặt chúng vào một khu vực cách ly, nơi bạn có thể kiểm tra chúng theo cách thủ công để xác định

xem bạn nên xóa tệp hay khôi phục nó về vị trí ban đầu. Việc kiểm tra các tệp đã cách ly thay vì chỉ xóa tất cả chúng

là điều quan trọng vì một số tệp có thể có kết quả dương tính giả. Theo kinh nghiệm cá nhân của tác giả này, kết quả

dương tính giả tương đối hiếm gặp với hầu hết các trình quét vi-rút hiện đại.

Khi các phương pháp quét heuristic trở nên chính xác hơn, có khả năng sẽ có nhiều máy quét vi-rút hơn sử dụng phương

pháp này và sẽ dựa vào nó nhiều hơn. Hiện tại, nó mang lại nhiều hứa hẹn nhất về khả năng bảo vệ tốt nhất cho hệ thống

của bạn. Các thuật toán như vậy liên tục được cải tiến. Một lĩnh vực nghiên cứu hiện nay là bổ sung khả năng học máy

vào các thuật toán chống vi-rút.

Quét mã hoạt động

Các trang web hiện đại thường xuyên nhúng các mã hoạt động, chẳng hạn như các ứng dụng Java và ActiveX. Những công nghệ này có

thể cung cấp một số hiệu ứng hình ảnh tuyệt đẹp cho bất kỳ trang web nào. Tuy nhiên, chúng cũng có thể là phương tiện cho mã

độc hại. Quét các đối tượng như vậy trước khi chúng được tải xuống máy tính của bạn là một tính năng thiết yếu trong bất kỳ

trình quét vi-rút chất lượng nào. Cũng nhớ lại Chương 8, chúng ta đã thảo luận về việc thay đổi trình duyệt của bạn để nhắc

bạn trước khi thực thi bất kỳ mã hoạt động nào như vậy trên một trang web. Việc kết hợp cấu hình trình duyệt đó với gói phần

mềm chống vi-rút quét mã hoạt động có thể làm giảm đáng kể khả năng bạn bị nhiễm loại vi-rút này.

Quét tin nhắn tức thì

Quét tin nhắn tức thời là một tính năng tương đối mới của máy quét vi-rút. Máy quét vi-rút sử dụng công nghệ quét

liên lạc nhắn tin tức thời này để tìm kiếm dấu hiệu của các tệp vi-rút hoặc ngựa Trojan đã biết. Trong những năm gần

đây việc sử dụng tin nhắn tức thời đã tăng lên đáng kể. Bây giờ nó thường xuyên
Machine Translated by Google

248 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

được sử dụng cho cả mục đích kinh doanh và giải trí. Sự phổ biến ngày càng tăng này khiến việc quét vi-rút để nhắn

tin tức thời trở thành một phần quan trọng trong quá trình quét vi-rút hiệu quả. Nếu trình quét chống vi-rút của bạn

không quét tin nhắn tức thời thì bạn nên tránh nhắn tin tức thời hoặc chọn gói chống vi-rút khác.

Hầu hết các máy quét vi-rút thương mại đều sử dụng phương pháp quét đa phương thức. Họ sử dụng sự kết hợp của

hầu hết, nếu không phải tất cả, các phương pháp mà chúng ta đã thảo luận ở đây. Bất kỳ máy quét nào không sử dụng

hầu hết các phương pháp này sẽ có rất ít giá trị làm hàng rào bảo mật cho hệ thống của bạn.

Phần mềm diệt virus thương mại

Có một số gói chống vi-rút có sẵn cho từng máy tính và để quét vi-rút trên toàn mạng. Chúng tôi sẽ xem xét một số

phần mềm chống vi-rút thường gặp hơn ở đây. Điều quan trọng là bạn phải xem xét các yếu tố sau khi mua giải pháp

quét vi-rút cho tổ chức của mình hoặc đề xuất giải pháp cho khách hàng:

■ Ngân sách: Giá không phải là yếu tố duy nhất, thậm chí là quan trọng nhất, nhưng chắc chắn nó
phải được xem xét.

■ Tính dễ bị tổn thương: Một tổ chức có nhiều người dùng khác nhau thường xuyên nhận e-mail từ bên ngoài tổ

chức hoặc tải xuống từ Internet sẽ cần được bảo vệ chống vi-rút nhiều hơn so với một nhóm nhỏ đồng nhất

chỉ sử dụng Internet không liên tục.

■ Kỹ năng: Cuối cùng, người sử dụng sản phẩm phải có khả năng hiểu cách sử dụng sản phẩm. Là

bạn nhận được một trình quét vi-rút cho một nhóm kỹ sư am hiểu công nghệ hoặc một nhóm người dùng cuối có

vẻ không thành thạo về mặt kỹ thuật?

■ Kỹ thuật: Trình quét virus hoạt động như thế nào? Nó sử dụng phương pháp gì để quét? Bao lâu là

các tập tin .dat được cập nhật? Nhà cung cấp phản ứng nhanh như thế nào trước các mối đe dọa vi-rút mới và phát

hành tệp .dat mới?

Tất cả những yếu tố này phải được xem xét khi lựa chọn giải pháp chống vi-rút. Thông thường, các chuyên gia bảo mật

chỉ giới thiệu một sản phẩm mà họ quen thuộc mà không thực hiện nghiên cứu quan trọng. Phần này giới thiệu nhiều

giải pháp chống vi-rút khác nhau và lợi ích của từng giải pháp.

McAfee

McAfee là một nhà cung cấp phần mềm diệt virus nổi tiếng. Phần mềm chống vi-rút của họ đã được bán trên thị trường

dưới nhiều tên, bao gồm VirusScan, Endpoint Security và Total Protection. Công ty này cung cấp các giải pháp cho

người dùng gia đình và các tổ chức lớn. Tất cả các sản phẩm của McAfee đều có một số tính năng chung, bao gồm quét

e-mail và quét tệp. Họ cũng quét lưu lượng tin nhắn tức thời.
Machine Translated by Google

Máy quét vi-rút 249

McAfee quét e-mail, tập tin và nhắn tin tức thời để tìm các dấu hiệu virus đã biết và sử dụng các phương pháp

heuristic để xác định vị trí sâu mới. Với việc sử dụng sâu ngày càng tăng (ngược lại với các loại virus truyền

thống), đây là một lợi ích quan trọng. McAfee cung cấp khả năng tải xuống và cài đặt tương đối dễ dàng và bạn

có thể tải phiên bản dùng thử từ trang web của công ty. Chúng ta sẽ xem xét các tính năng của phiên bản gia

đình, có chức năng tương tự như phiên bản doanh nghiệp.

Hình 9-2 hiển thị màn hình chính của phần mềm diệt virus McAfee. Bạn có thể thấy rằng McAfee có màn hình quản lý

tích hợp cho nhiều sản phẩm bảo mật, bao gồm các sản phẩm tường lửa và chống vi-rút. Màn hình chính hiển thị

các tùy chọn để quét máy tính của bạn, quét các lỗ hổng, định cấu hình tường lửa, định cấu hình cài đặt của phụ

huynh, v.v.

HÌNH 9-2 Màn hình chính của phần mềm diệt virus McAfee

Chọn quét vi-rút > Tùy chọn để chọn nội dung bạn muốn quét, cách bạn muốn quét và thời điểm bạn muốn quét. Hình

9-3 hiển thị hộp thoại Lên lịch quét của bạn. Bạn có thể chọn quét các tập tin gửi đến, e-mail, tin nhắn tức

thời, v.v. Bạn cũng có thể chọn lên lịch quét vào những thời điểm đã đặt, sau đó chọn xem bạn có muốn quét toàn

bộ máy hay không.

Quan tâm đặc biệt là bản đồ thế giới virus McAfee, được hiển thị trong Hình 9-4. Đây là bản đồ hoạt động của

virus hiện đang diễn ra trên thế giới. Đây có thể là thông tin vô giá đối với chuyên gia bảo mật, đặc biệt nếu

tổ chức của bạn trải rộng về mặt địa lý.


Machine Translated by Google

250 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

HÌNH 9-3 Lên lịch các tùy chọn Quét của bạn

Bản đồ này khá hữu ích. Bạn có thể chọn tất cả vi-rút hoặc chỉ 10 loại vi-rút hàng đầu. Bạn cũng có thể chọn xem theo khu

vực địa lý cụ thể bất kỳ máy tính nào bị nhiễm trên một triệu người dùng hoặc số lượng tệp bị nhiễm trên một triệu người

dùng. Nếu bạn bấm vào bất kỳ khu vực nào trên bản đồ, bạn sẽ phóng to khu vực địa lý đó.

Bạn có thể tiếp tục phóng to cho đến khi xem từng thành phố riêng lẻ, cho phép bạn tìm hiểu rất nhiều thông tin về tình

trạng lây nhiễm vi-rút ở bất kỳ khu vực địa lý nào.

Nếu bạn xem xét bốn tiêu chí mà chúng tôi đã liệt kê trước đó—ngân sách, tính dễ bị tổn thương, kỹ năng và kỹ thuật—

McAfee đánh giá khá tốt:

■ Giá cả rất phải chăng.

■ Có sẵn các phiên bản khác nhau cho các mức độ dễ bị tổn thương khác nhau.

■ Nó tương đối dễ sử dụng, chỉ cần có kỹ năng hạn chế để sử dụng.

■ Về mặt kỹ thuật, đây là một máy quét rất tốt, sử dụng nhiều phương thức để quét vi-rút. Nó cũng có

các tính năng bổ sung thú vị như bản đồ lây nhiễm virus.

Những tính năng này làm cho McAfee trở thành một lựa chọn tốt cho người dùng gia đình cũng như mạng công ty.
Machine Translated by Google

Máy quét vi-rút 251

HÌNH 9-4 Bản đồ thế giới virus McAfee

Norton AntiVirus

Norton AntiVirus cũng là nhà cung cấp phần mềm chống vi-rút được biết đến rộng rãi. Bạn có thể mua giải pháp

Norton cho từng máy tính hoặc cho toàn bộ mạng. Norton cung cấp khả năng quét e-mail và tập tin cũng như quét tin

nhắn tức thời. Nó cũng cung cấp một cách tiếp cận heuristic để phát hiện sâu và quét chữ ký truyền thống. Các

phiên bản gần đây của Norton AntiVirus cũng đã bổ sung thêm tính năng quét chống phần mềm gián điệp và chống phần

mềm quảng cáo, cả hai đều là những tính năng rất hữu ích. Một tính năng thú vị khác của Norton AntiVirus là quét

cài đặt sẵn. Trong quá trình cài đặt, chương trình cài đặt sẽ quét máy để phát hiện mọi trường hợp nhiễm vi-rút

có thể ảnh hưởng đến Norton. Bởi vì việc phát hiện các cuộc tấn công của vi-rút thực sự tìm cách vô hiệu hóa phần

mềm chống vi-rút ngày càng trở nên phổ biến nên tính năng này rất hữu ích.

Mặc dù Norton, giống như hầu hết các nhà cung cấp phần mềm chống vi-rút, cung cấp phiên bản cho từng PC và cho toàn bộ mạng,

nhưng phiên bản riêng lẻ có phiên bản dùng thử miễn phí mà bạn có thể tải xuống và thử nghiệm trong 15 ngày mà không phải trả

phí. Chúng tôi sẽ xem xét ngắn gọn sản phẩm này để minh họa chức năng của các sản phẩm Norton AntiVirus.
Machine Translated by Google

252 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

Khi bạn tải xuống sản phẩm, bạn sẽ có được một tệp thực thi tự giải nén. Chỉ cần nhấp đúp vào đó trong Windows

Explorer hoặc My Computer và nó sẽ tự cài đặt với rất ít sự tương tác từ bạn. Khi bạn khởi chạy Norton, màn hình đầu

tiên như trong Hình 9-5 sẽ cung cấp cho bạn những thông tin có giá trị.

Nó cho phép bạn truy cập cài đặt bảo mật, cài đặt hiệu suất, v.v. Đây là thông tin khá quan trọng.

Nếu định nghĩa vi-rút của bạn chưa được cập nhật gần đây thì đơn giản là bạn không được bảo vệ trước các vi-rút

mới nhất. Biết thời điểm quét toàn bộ hệ thống gần đây nhất được thực hiện sẽ cho bạn biết máy tính của bạn hiện tại

an toàn đến mức nào. Tất nhiên, bạn cũng cần biết loại quét nào được bật để biết Norton đang bảo vệ bạn chống lại

những mối đe dọa nào.

HÌNH 9-5 Màn hình chính của Norton

Nếu bạn chọn Quét vi-rút ở bên trái, bạn sẽ có một số tùy chọn, được hiển thị trong Hình 9-6. Bạn có thể quét đĩa

mềm, phương tiện di động, ổ cứng hoặc các tệp và thư mục cụ thể. Vùng bạn chọn để quét càng lớn thì quá trình quét

sẽ mất nhiều thời gian hơn.

Khi quá trình quét hoàn tất, Norton liệt kê tất cả các tệp nghi ngờ và cung cấp cho bạn tùy chọn cách ly, xóa hoặc bỏ

qua chúng, như trong Hình 9-7. Một khía cạnh hấp dẫn của Norton là nó còn phát hiện được nhiều công cụ hack phổ

biến. Trong Hình 9-7, máy tính này không có gì độc hại. Nếu Norton tìm thấy thứ gì đó độc hại, chẳng hạn như công cụ

hack John the Ripper, một công cụ bẻ khóa mật khẩu, nó sẽ cảnh báo người dùng. Điều này có thể khá hữu ích vì bất kỳ

công cụ hack nào trên máy của bạn mà bạn không cài đặt đều có thể là dấu hiệu cho thấy máy của bạn đã bị hack và

hacker đang tiếp tục sử dụng máy của bạn.

Kẻ xâm nhập thậm chí có thể sử dụng máy của bạn để khởi động các cuộc tấn công vào các máy khác.
Machine Translated by Google

Máy quét vi-rút 253

HÌNH 9-6 Các tùy chọn quét bằng Norton AntiVirus

HÌNH 9-7 Kết quả quét Norton


Machine Translated by Google

254 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

Bạn sẽ phải điều hướng một chút, nhưng Norton cũng cung cấp các báo cáo. Vị trí chính xác phụ thuộc vào sản phẩm và phiên bản

Norton cụ thể mà bạn có. Nó cho phép bạn truy cập vào bộ bách khoa toàn thư về virus được Norton duy trì, cũng như báo cáo về

tất cả các lần quét được thực hiện. Trong môi trường tổ chức, có lẽ bạn nên định kỳ in và lưu trữ báo cáo này. Điều này cung

cấp thông tin có giá trị cho một cuộc kiểm toán. Khi bạn chạy bất kỳ báo cáo nào trong số này, nó sẽ ghi lại các lần quét bạn đã

thực hiện, tìm loại vi-rút và thời điểm bạn thực hiện chúng. Những thông tin này có thể được lưu giữ để trong bất kỳ lần kiểm

tra nào trong tương lai, bạn có thể dễ dàng xác minh các bước bạn đã thực hiện để ngăn ngừa lây nhiễm vi-rút.

Một lần nữa, nếu bạn xem xét bốn tiêu chí mà chúng tôi đã liệt kê trước đó—ngân sách, tính dễ bị tổn thương, kỹ năng và kỹ thuật—Norton cũng

đánh giá khá tốt:

■ Giá cả rất phải chăng. McAfee và Norton đều có giá tương tự nhau.

■ Có sẵn các phiên bản khác nhau cho các mức độ dễ bị tổn thương khác nhau. Phần mềm diệt virus thương mại nhất

các nhà cung cấp cung cấp một loạt các sản phẩm cho các tình huống khác nhau.

■ Giao diện đồ họa của nó giúp việc cấu hình và sử dụng Norton dễ dàng như thực hiện các thao tác tương tự

nhiệm vụ với McAfee.

■ Về mặt kỹ thuật, đây là một máy quét rất tốt, sử dụng nhiều phương thức để quét vi-rút. Thực tế là nó cũng có các công cụ hack, ngoài

virus, là một lợi ích bổ sung.

Giống như McAfee, Norton là sự lựa chọn chắc chắn cho cả người dùng gia đình và doanh nghiệp. Nó cung cấp một công cụ dễ sử dụng và cũng khá

hiệu quả.

Phần mềm diệt virus Avast

Sản phẩm này được cung cấp miễn phí cho mục đích sử dụng gia đình, phi thương mại. Bạn có thể tải xuống sản phẩm từ trang web của nhà cung

cấp: www.avast.com/. Bạn cũng có thể tìm thấy các phiên bản chuyên nghiệp, phiên bản dành cho Unix hoặc Linux và các phiên bản dành riêng cho

máy chủ. Điều đặc biệt quan tâm là sản phẩm này có sẵn bằng nhiều ngôn ngữ bao gồm tiếng Anh, tiếng Hà Lan, tiếng Phần Lan, tiếng Pháp, tiếng

Đức, tiếng Tây Ban Nha, tiếng Ý và tiếng Hungary. Hình 9-8 hiển thị màn hình chính của Avast.

Nếu tải xuống, bạn có thể thấy Avast mở ra kèm theo phần hướng dẫn. Tính năng này, kết hợp với thực tế là phiên bản gia đình là miễn phí,

khiến đây trở thành một công cụ rất hấp dẫn đối với người mới sử dụng tại nhà. Sự hỗ trợ của hệ thống đa ngôn ngữ và đa hệ điều hành khiến nó

trở nên hấp dẫn đối với nhiều chuyên gia. Khi phát hiện thấy vi-rút, nó sẽ phát ra âm thanh cảnh báo và sau đó có giọng nói “Cảnh báo: Có vi-

rút trên máy tính của bạn”.

Tuy nhiên, khi tôi quét PC của mình bằng Avast, nó không phát hiện ra các công cụ hack cũ hơn là những mục cần quan tâm, không giống như

Norton.
Machine Translated by Google

Máy quét vi-rút 255

HÌNH 9-8 Màn hình chính của Avast Antivirus

Hãy sử dụng bốn tiêu chí mà chúng tôi đã liệt kê trước đây—ngân sách, tính dễ bị tổn thương, kỹ năng và kỹ thuật—để đánh giá

Avast:

■ Nó miễn phí nên có giá cả phải chăng hơn Norton hoặc McAfee.

■ Có phiên bản thương mại của Avast dành cho cài đặt doanh nghiệp.

■ Nó cũng có giao diện đồ họa giúp dễ sử dụng và thực tế là nó khởi chạy ban đầu với
một hướng dẫn làm cho nó lý tưởng cho người mới.

■ Nó là một máy quét khá tốt. Tuy nhiên, nó thiếu các tính năng bổ sung như bản đồ vi-rút của McAfee

và khả năng tiếp thu các công cụ hack của Norton.

Đối với cài đặt thương mại, có lẽ bạn nên sử dụng Norton hoặc McAfee. Tuy nhiên, Avast là một lựa chọn tốt

cho người dùng văn phòng nhỏ hoặc gia đình. Thực tế là nó miễn phí có nghĩa là hoàn toàn không có lý do gì

khiến mọi người không nên sử dụng máy quét vi-rút.

AVG

Phần mềm diệt virus AVG đã trở nên khá phổ biến. Một lý do là nó có phiên bản miễn phí cũng như phiên bản

thương mại. Màn hình chính được hiển thị trong Hình 9-9.

AVG là phần mềm diệt virus mạnh mẽ và đầy đủ tính năng. Nó tích hợp với các ứng dụng e-mail như Microsoft Outlook và nó
cũng lọc lưu lượng truy cập web và các lượt tải xuống.
Machine Translated by Google

256 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

HÌNH 9-9 AVG Antivirus

Kaspersky

Kaspersky ngày càng trở nên phổ biến. Nó bao gồm các phiên bản kinh doanh và cá nhân. Giống như hầu hết các

sản phẩm chống vi-rút, nó cũng bao gồm các tính năng bổ sung không liên quan trực tiếp đến việc phát hiện vi-

rút. Ví dụ: Kaspersky bao gồm một kho mật khẩu được mã hóa để giữ mật khẩu của bạn nếu bạn muốn. Bạn có thể

xem ảnh chụp màn hình trong Hình 9-10.

HÌNH 9-10 Kaspersky Internet Security


Machine Translated by Google

Máy quét vi-rút 257

gấu trúc

Panda (www.pandasoftware.com) có sẵn ở cả phiên bản thương mại và phiên bản miễn phí. Phiên bản thương mại cũng đi

kèm với tính năng chống phần mềm gián điệp. Giống như Norton và McAfee, bạn có thể có tường lửa cá nhân đi kèm với

phần mềm chống vi-rút. Sản phẩm này có sẵn bằng tiếng Anh, tiếng Pháp và tiếng Tây Ban Nha.

Những tính năng đa dạng này làm cho sản phẩm này trở thành một giải pháp mạnh mẽ và hiệu quả.

Malwarebytes

Sản phẩm này có sẵn từ https://www.malwarebytes.com/. Có phiên bản miễn phí của sản phẩm và phiên bản trả phí. Giao

diện được hiển thị trong Hình 9-11.

HÌNH 9-11 Malwarebytes

Malwarebytes có danh tiếng mạnh mẽ trong ngành, được đánh giá cao và sử dụng khá đơn giản.

Máy quét virus khác

Ngoài McAfee, Norton, Avast, Panda và Malwarebytes, còn có một số gói chống vi-rút khác có sẵn trên Internet. Một tìm

kiếm đơn giản trên web sẽ tiết lộ rất nhiều sản phẩm chống vi-rút. Là chuyên gia bảo mật hoặc quản trị viên mạng,

điều quan trọng là bạn phải cảm thấy thoải mái với nhiều giải pháp chống vi-rút chứ không chỉ dựa vào giải pháp phổ

biến nhất hoặc được biết đến rộng rãi. Điều quan trọng là bạn phải đưa ra quyết định về việc sử dụng phần mềm chống

vi-rút nào dựa trên thực tế liên quan đến sản phẩm (cách thức hoạt động, tính dễ sử dụng, chi phí, v.v.). Sản phẩm

phổ biến nhất có thể không phải là sản phẩm tốt nhất—hoặc sản phẩm lý tưởng—cho môi trường của bạn.
Machine Translated by Google

258 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

Chính sách và quy trình chống vi-rút

Việc xem xét cách thức các cuộc tấn công của vi-rút lây lan và xem xét các cuộc tấn công cụ thể sẽ đưa ra một bức tranh

rõ ràng về mối nguy hiểm do vi-rút gây ra. Chúng tôi cũng đã xem xét cách hoạt động của trình quét vi-rút, bao gồm cả

việc kiểm tra một số sản phẩm chống vi-rút thương mại. Tuy nhiên, máy quét chống vi-rút không phải là khía cạnh duy

nhất để bảo vệ bạn khỏi vi-rút. Trên thực tế, có những tình huống mà trình quét vi-rút đơn giản là không đủ. Bạn sẽ cần

các chính sách và thủ tục để hoàn thành chiến lược chống vi-rút của mình. Các chính sách và thủ tục chỉ đơn giản là các

quy tắc bằng văn bản quy định một số hành động nhất định mà quản trị viên và người dùng cuối nên thực hiện cũng như

các hoạt động khác mà họ nên tránh. Sau đây là phần kiểm tra ngắn gọn về các chính sách chống vi-rút thích hợp. Các

chính sách sẽ được thảo luận chi tiết hơn ở Chương 11.

■ Luôn sử dụng trình quét virus. McAfee, Norton, AVG và Kaspersky là bốn ứng dụng được sử dụng rộng rãi nhất

máy quét virus đã biết và đã sử dụng. Tuy nhiên, chúng tôi cũng đã xem xét các giải pháp khác. Chỉ tốn khoảng

30 USD một năm để cập nhật trình quét vi-rút của bạn. Nó có thể tốn kém hơn nhiều nếu không làm điều đó.

■ Nếu bạn không chắc chắn về tệp đính kèm, đừng mở nó. Khi bạn yêu cầu cụ thể một tệp từ ai đó thì việc mở tệp

đính kèm từ người đó có thể là an toàn. Tuy nhiên, những sự gắn bó bất ngờ luôn là nguyên nhân gây lo ngại.

■ Cân nhắc trao đổi mật mã với bạn bè và đồng nghiệp. Yêu cầu họ đặt từ mã vào tiêu đề của tin nhắn nếu họ muốn

gửi cho bạn tệp đính kèm. Không có từ mã, không mở bất kỳ tệp đính kèm nào.

■ Đừng tin vào những “cảnh báo bảo mật” mà bạn được gửi. Microsoft không gửi bản vá lỗi này

thái độ. Hãy kiểm tra trang web của nó thường xuyên, cũng như một trong những trang web chống vi-rút đã đề cập

trước đó.

■ Hãy hoài nghi về bất kỳ e-mail nào bạn được gửi. Giữ e-mail trong lưu lượng truy cập chính thức sẽ giúp giảm

thiểu nguy hiểm cho bạn. Không nên gửi truyện cười, phim flash, v.v. trên hệ thống e-mail của công ty.

■ Không tải tập tin từ Internet. Nếu bạn cần tải file xuống, bộ phận CNTT

nên làm điều đó, quét tệp cẩn thận rồi chuyển tiếp cho người dùng. Bây giờ rõ ràng nhiều người sẽ chọn tải tập

tin xuống, vì vậy lời khuyên này là một lý tưởng khó có thể thực hiện được. Nếu bạn cảm thấy buộc phải tải

xuống các tập tin, bạn nên tuân theo hai quy tắc đơn giản:

1. Chỉ tải xuống từ các trang web nổi tiếng, có uy tín.

2. Tải xuống máy ngoài mạng trước. Sau đó bạn có thể quét hệ thống đó để tìm

virus. Trên thực tế, nếu bạn yêu cầu bộ phận CNTT tải xuống thứ gì đó cho bạn thì đây có thể là quy trình

họ sử dụng.

Những chính sách này sẽ không giúp hệ thống chống vi-rút 100% nhưng sẽ giúp ích rất nhiều trong việc bảo vệ hệ thống đó.

Hãy thoải mái mở rộng chúng theo bất kỳ cách nào bạn thấy phù hợp.
Machine Translated by Google

Phải làm gì nếu hệ thống của bạn bị nhiễm vi-rút 259

Các phương pháp bổ sung để bảo vệ hệ thống của bạn


Cài đặt và chạy phần mềm chống vi-rút cũng như có chính sách chống vi-rút vững chắc đều là những bước rất quan trọng

trong việc bảo vệ hệ thống của bạn. Trên thực tế, nhiều tổ chức chỉ sử dụng hai bước này. Tuy nhiên, có những bước quan

trọng khác mà bạn có thể thực hiện để bảo vệ hệ thống của mình trước các cuộc tấn công của vi-rút:

■ Đặt tất cả các trình duyệt chặn mã hoạt động (ActiveX, tập lệnh, v.v.). Hãy lưu ý rằng điều này sẽ hiển thị

một số trang web không thể xem được Sự thỏa hiệp giữa bảo mật và khả năng sử dụng sẽ là đặt tất cả các trình

duyệt cảnh báo người dùng trước khi thực thi bất kỳ mã hoạt động nào.

■ Đặt tất cả tài khoản người dùng để họ không thể cài đặt phần mềm hoặc thay đổi cài đặt bảo mật trình duyệt.

■ Tách biệt các mạng con (đặc biệt là các mạng con có nguy cơ cao như phòng thí nghiệm trong khuôn viên trường đại học) và địa điểm

tường lửa được bảo mật chặt chẽ bằng tính năng quét vi-rút riêng giữa mạng con đó và phần còn lại của mạng.

Rõ ràng những mục này là tính năng bổ sung. Nhiều tổ chức không tách biệt các mạng con cũng như không chặn người dùng

cài đặt phần mềm hoặc thay đổi cài đặt bảo mật trình duyệt. Nhiều tổ chức hài lòng với việc chỉ cần cài đặt máy quét

chống vi-rút và thiết lập một số chính sách. Tuy nhiên, nếu bạn muốn có một chiến lược chống vi-rút thực sự hoàn chỉnh

thì các bước bổ sung này là một phần của chiến lược hoàn chỉnh đó.

Phải làm gì nếu hệ thống của bạn bị nhiễm vi-rút


Một thực tế đáng tiếc là cho dù bạn có thực hiện những bước nào để ngăn ngừa nhiễm vi-rút thì vẫn có khả năng hệ thống

của bạn bị nhiễm vi-rút. Câu hỏi tiếp theo là, bạn làm gì?

Một số khía cạnh trong phản ứng của bạn sẽ phụ thuộc vào mức độ nghiêm trọng của vi-rút và mức độ lây lan của nó, nhưng

nhìn chung bạn cần tập trung vào ba điều:

■ Ngăn chặn sự lây lan của virus.

■ Loại bỏ virus.

■ Tìm hiểu sự lây nhiễm bắt đầu như thế nào.

Các phần sau đây xem xét từng chi tiết và giải thích cách thực hiện chúng.

Ngăn chặn sự lây lan của virus


Trong trường hợp nhiễm vi-rút, ưu tiên hàng đầu là ngăn chặn sự lây lan của vi-rút. Tất nhiên, việc này được thực hiện

như thế nào sẽ phụ thuộc vào mức độ lây lan của virus. Nếu vi-rút chỉ ảnh hưởng đến một máy, bạn chỉ cần ngắt kết nối

máy đó khỏi mạng. Tuy nhiên, bạn khó có thể phát hiện ra vi-rút trước khi nó lây lan ra ngoài một máy. Với thực tế đó,

bạn thường muốn làm theo các bước sau:


Machine Translated by Google

260 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

■ Nếu lây nhiễm trên một đoạn của mạng WAN thì ngay lập tức ngắt kết nối khỏi mạng WAN đó

sự liên quan.

■ Nếu sự lây nhiễm xảy ra trên một mạng con, hãy ngắt kết nối mạng con đó ngay lập tức.

■ Nếu có máy chủ chứa dữ liệu nhạy cảm được kết nối (theo bất kỳ cách nào) với máy bị nhiễm

(hoặc máy), hãy ngắt kết nối các máy chủ đó. Điều này sẽ ngăn ngừa mất dữ liệu nhạy cảm.

■ Nếu có thiết bị dự phòng được kết nối với máy hoặc các máy bị nhiễm, hãy ngắt kết nối chúng.

Điều này sẽ ngăn phương tiện sao lưu của bạn bị lây nhiễm.

Rõ ràng, mục tiêu của bạn là tránh nhiễm vi-rút vào hệ thống của mình. Tuy nhiên, nếu sự kiện đáng tiếc đó xảy ra,

việc làm theo các bước sau có thể giảm thiểu thiệt hại và giúp hệ thống của bạn hoạt động trở lại trong khoảng thời

gian ngắn hơn.

Loại bỏ virus
Khi bạn đã cách ly được máy hoặc các máy bị nhiễm virus, bước tiếp theo là làm sạch chúng. Nếu bạn biết loại vi-

rút cụ thể thì bạn có thể loại bỏ vi-rút đó bằng cách chạy chương trình chống vi-rút hoặc bạn có thể tìm thấy

hướng dẫn loại bỏ vi-rút trên Internet. Trong trường hợp rất khó xảy ra là bạn không thể loại bỏ vi-rút, thì bạn

có thể không còn lựa chọn nào khác ngoài việc định dạng máy (hoặc các máy) và khôi phục chúng từ bản sao lưu. Tuy

nhiên, phải nhấn mạnh rằng tình huống như vậy rất khó xảy ra.

Nếu loại bỏ vi-rút thành công, bạn sẽ muốn quét kỹ máy xem có bất kỳ trường hợp nhiễm vi-rút nào khác trước khi kết

nối lại máy với mạng của mình không. Bạn muốn chắc chắn rằng nó hoàn toàn sạch sẽ trước khi đưa nó trở lại trực

tuyến.

Tìm hiểu sự lây nhiễm bắt đầu như thế nào

Khi bạn đã ngăn chặn và loại bỏ vi-rút, mục tiêu tiếp theo là đảm bảo rằng vi-rút không tái diễn. Điều này được

thực hiện tốt nhất bằng cách tìm hiểu xem vi-rút xâm nhập vào hệ thống của bạn như thế nào ngay từ đầu. Để làm điều

này, bạn cần điều tra tình huống theo ba cách:

■ Nói chuyện với người dùng máy bị nhiễm và xem liệu có ai đã mở bất kỳ tệp đính kèm e-mail nào, tải xuống bất kỳ

thứ gì hoặc cài đặt bất kỳ thứ gì không. Vì đây là ba con đường có khả năng lây nhiễm vi rút cao nhất nên

chúng cần được kiểm tra trước tiên.

■ Đọc bất kỳ tài liệu trực tuyến nào về loại virus cụ thể đó. Nó sẽ cho bạn biết phương pháp thông thường của

Lan truyền.

■ Nếu cả hai cách đó đều không cho bạn biết điều gì đã xảy ra, hãy kiểm tra mọi hoạt động ghi lại máy đó

có thể có.

Điều quan trọng là tìm ra sai sót trong chiến lược bảo mật hiện tại của bạn và khắc phục nó.
Machine Translated by Google

Bản tóm tắt 261

Bản tóm tắt


Các cuộc tấn công của vi-rút và thậm chí cả các trò lừa bịp về vi-rút được cho là mối đe dọa lớn nhất đối với mạng máy tính.

Sự tinh vi của các phương pháp phân phối vi-rút ngày càng gia tăng, với việc sâu ngày càng trở nên phổ biến. Có một số bước

bạn có thể thực hiện để giảm thiểu những nguy hiểm do sự bùng phát virus máy tính gây ra.

Rõ ràng bước đầu tiên là sử dụng trình quét vi-rút. Tuy nhiên, bạn nhất định phải có hiểu biết chắc chắn về cách thức hoạt

động của các trình quét vi-rút để chọn trình quét thích hợp cho tình huống của mình.

Có rất nhiều giải pháp chống virus thương mại và miễn phí. Bất kỳ chuyên gia bảo mật nào cũng nên làm quen với một vài trong

số này. Sau khi cài đặt và định cấu hình giải pháp chống vi-rút, bước tiếp theo là thiết lập các chính sách và quy trình bằng

văn bản. Điều quan trọng là bạn phải nêu chi tiết chính xác cách bạn muốn người dùng cuối sử dụng các công cụ hệ thống. Bất kỳ

tình huống nào bạn không đề cập trong chính sách của mình đều có thể là cơ hội để lây nhiễm vi-rút. Cuối cùng, bạn có thể thực

hiện các bước nghiêm túc hơn bao gồm chặn người dùng cài đặt phần mềm, định cấu hình trình duyệt một cách an toàn và tách các

mạng con để hạn chế sự lây lan của bất kỳ loại vi-rút nào có thể lây nhiễm vào máy của bạn. Việc kết hợp phần mềm chống vi-rút

với cấu hình an toàn cho hệ thống của bạn, việc vá lỗi phần mềm, tường lửa và chính sách bảo mật âm thanh định kỳ sẽ mang lại

khả năng bảo vệ hoàn chỉnh hơn. Mặc dù các chủ đề khác nhau trong cuốn sách này được chia thành các chương nhưng điều quan

trọng là bạn phải nhớ rằng một chiến lược bảo mật hoàn chỉnh phải có tất cả các yếu tố này phối hợp với nhau.

Kiểm tra kỹ năng của bạn

CÂU HỎI CÓ NHIỀU LỰA CHỌN

1. Ngoài bất kỳ tải trọng độc hại nào, cách phổ biến nhất mà vi-rút hoặc sâu gây ra là gì?

gây hại cho một hệ thống?

A. Bằng cách tăng lưu lượng mạng và làm hệ thống quá tải

B. Bằng cách điền quá nhiều hộp thư đến của bạn

C. Bằng cách thực hiện một cuộc tấn công DoS vào máy chủ

D. Bằng cách chứa một con ngựa thành Troy

2. Điều gì phân biệt virus với sâu?

A. Giun lây lan xa hơn virus.

B. Worm có nhiều khả năng gây hại cho hệ thống bị nhiễm virus hơn.

C. Giun sinh sản mà không cần sự can thiệp của con người.

D. Worm xóa các tập tin hệ thống thường xuyên hơn virus.
Machine Translated by Google

262 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

3. Điều nào sau đây là lý do chính khiến Microsoft Outlook thường là mục tiêu của

virus tấn công?

A. Nhiều hacker không thích Microsoft.

B. Outlook sao chép các tập tin virus nhanh hơn.

C. Thật dễ dàng để viết các chương trình truy cập vào cơ chế bên trong của Outlook.

D. Outlook phổ biến hơn các hệ thống e-mail khác.

4. Phương pháp lây lan virus phổ biến nhất là gì?

A. Trên đĩa mềm bị nhiễm virus

B. Trên đĩa CD bị nhiễm virus

C. Thông qua các tệp đính kèm trong tin nhắn tức

thời D. Qua các tệp đính kèm trong e-mail

5. Điều nào sau đây góp phần nhiều nhất vào sự lây lan rộng rãi của sâu Zafi.d?

A. Nó được cho là từ IRS.

B. Nó tự nhận là một tấm thiệp nghỉ lễ và được phát hành ngay trước một ngày lễ lớn.

C. Nó sử dụng tập lệnh đính kèm thay vì mã hoạt động.

D. Nó sử dụng mã hoạt động thay vì tệp đính kèm tập lệnh.

6. Khía cạnh nguy hiểm nhất của Zafi.d là gì?

A. Nó đã xóa sổ đăng ký.

B. Nó cố gắng ghi đè lên các phần của máy quét virus.

C. Nó đã cố gắng ghi đè lên các tập tin hệ thống quan trọng.

D. Nó gửi thông tin về máy tính bị nhiễm virus.

7. Phương pháp lây lan chính của virus Kedi RAT là gì?

A. Nó sử dụng công cụ SMTP của chính nó để gửi e-mail.

B. Nó được “cõng” khỏi MS Outlook.

C. Nó nằm trên đĩa mềm bị nhiễm virus.

D. Nó được gắn vào các ảnh động Flash.


Machine Translated by Google

Bản tóm tắt 263

8. Virus Rombertik đã cố gắng thực hiện hoạt động độc hại nào khác?

A. Nó ghi đè lên bản ghi khởi động chính.

B. Nó cố gắng ghi đè lên các phần của máy quét virus.

C. Nó đã cố gắng ghi đè lên các tập tin hệ thống quan trọng.

D. Nó gửi thông tin về máy tính bị nhiễm virus.

9. Trò lừa bịp virus của người đóng thuế là gì?

A. Một email khẳng định việc nộp thuế trực tuyến bị nhiễm virus và không an toàn

B. Một e-mail cố gắng khiến nạn nhân gửi séc thuế đến một địa chỉ giả mạo C. Một loại vi-

rút đã xóa tất cả các tệp liên quan đến thuế khỏi máy tính mục tiêu

D. Một loại virus đã lây nhiễm Sở Thuế vụ Hoa Kỳ năm 2003

10. Trong bối cảnh virus, file .dat là gì?

A. Một file chứa thông tin hệ thống

B. Một tập tin bị nhiễm virus

C. Một tập tin có dữ liệu bị hỏng

D. Một tập tin có định nghĩa virus

11. Quét heuristic là gì?

A. Quét bằng phương pháp dựa trên quy tắc B.

Quét dựa trên tệp định nghĩa vi-rút C. Chỉ quét

các khu vực quản lý hệ thống (đăng ký, khu vực khởi động, v.v.)

D. Quét theo lịch trình

12. Quét mã hoạt động là gì?

A. Quá trình quét diễn ra mọi lúc (tức là tích cực)

B. Quét các thành phần web đang hoạt động (tập lệnh, ActiveX, v.v.)

C. Tích cực quét mã độc D. Tích cực quét sâu


Machine Translated by Google

264 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

13. Điều nào sau đây là điều ít quan trọng nhất khi mua phần mềm chống vi-rút

phần mềm?

A. Kiểu quét mà phần mềm sử dụng B. Phần mềm cập nhật

nhanh như thế nào để phản ứng với các loại vi-rút mới C. Dễ dàng cấu hình và sử

dụng như thế nào

D. Giá thành của phần mềm

14. Tính năng nào sau đây là tính năng hữu ích của McAfee mà hầu hết các phần mềm diệt virus khác không có

các giải pháp?

A. Nó thực hiện quét trước khi cài đặt.

B. Nó bắt đầu bằng phần hướng dẫn dành cho người dùng mới.

C. Màn hình chính của nó có xếp hạng bảo mật cho hệ thống của bạn.

D. Nó sử dụng chức năng quét theo kinh nghiệm.

15. Tính năng nào sau đây là tính năng hữu ích trong Norton AntiVirus không có ở hầu hết các phần mềm khác

giải pháp chống virus?

A. Nó thực hiện quét trước khi cài đặt.

B. Nó bắt đầu bằng phần hướng dẫn dành cho người dùng mới.

C. Màn hình chính của nó có xếp hạng bảo mật cho hệ thống của bạn.

D. Nó sử dụng chức năng quét theo kinh nghiệm.

16. Tính năng nào sau đây là tính năng hữu ích trong phần mềm diệt virus Avast không có ở hầu hết các phần mềm diệt virus khác

các giải pháp?

A. Nó thực hiện quét trước khi cài đặt.

B. Nó bắt đầu bằng phần hướng dẫn dành cho người dùng mới.

C. Màn hình chính của nó có xếp hạng bảo mật cho hệ thống của bạn.

D. Nó sử dụng chức năng quét theo kinh nghiệm.


Machine Translated by Google

Bản tóm tắt 265

BÀI TẬP

Lưu ý: Những bài tập này sẽ giúp bạn làm việc với các sản phẩm chống vi-rút khác nhau. Điều quan trọng là bạn phải

gỡ cài đặt một sản phẩm trước khi cài đặt và sử dụng sản phẩm khác.

BÀI TẬP 9.1: Sử dụng McAfee

1. Tải xuống phiên bản dùng thử của McAfee.

2. Quét máy của bạn.

3. Lưu ý mức độ bảo mật mà màn hình chính McAfee cung cấp cho PC của bạn và lý do tại sao.

4. Lưu ý những gì trình phát hiện virus tìm thấy.

5. Thử nghiệm các cài đặt và tùy chọn, đặc biệt là lập lịch.

BÀI TẬP 9.2: Sử dụng Norton

Lưu ý: Nếu bạn đã thực hiện tất cả các dự án ở Chương 2 thì bài tập đầu tiên này sẽ rất quen thuộc. Tuy nhiên, ở đây

bạn sẽ được yêu cầu so sánh Norton với các giải pháp chống vi-rút khác.

1. Tải xuống phiên bản dùng thử của Norton AntiVirus.

2. Đặc biệt chú ý đến việc quét trước khi cài đặt.

3. Quét máy của bạn.

4. Lưu ý những gì trình phát hiện virus tìm thấy.

5. Thử nghiệm các cài đặt và tùy chọn, đặc biệt là lập lịch.

BÀI TẬP 9.3: Sử dụng Avast Antivirus

1. Tải xuống phiên bản dùng thử của phần mềm diệt virus Avast.

2. Quét máy của bạn.

3. Kiểm tra hướng dẫn ban đầu. Nó có phù hợp cho người dùng mới làm quen không?

4. Lưu ý những gì trình phát hiện virus tìm thấy.

5. Thử nghiệm các cài đặt và tùy chọn, đặc biệt là lập lịch.
Machine Translated by Google

266 CHƯƠNG 9 Bảo vệ chống lại sự tấn công của virus

BÀI TẬP 9.4: Sử dụng Malwarebytes Antivirus

1. Tải xuống phiên bản dùng thử của phần mềm diệt virus Malwarebytes.

2. Quét máy của bạn.

3. Lưu ý mọi tính năng của Malwarebytes mà các trình quét virus khác không có.

4. Lưu ý những gì trình phát hiện virus tìm thấy.

5. Thử nghiệm các cài đặt và tùy chọn, đặc biệt là lập lịch.

BÀI TẬP 9.5: Sử dụng Panda Antivirus

1. Tải xuống phiên bản dùng thử của phần mềm diệt virus Panda.

2. Quét máy của bạn.

3. Lưu ý bất kỳ tính năng nào của Panda mà các trình quét vi-rút khác không có.

4. Lưu ý những gì trình phát hiện virus tìm thấy.

5. Thử nghiệm các cài đặt và tùy chọn, đặc biệt là lập lịch.

DỰ ÁN

DỰ ÁN 9.1: So sánh các phần mềm Antivirus

So sánh các tính năng của bốn gói chống vi-rút, đặc biệt chú ý đến:

1. Các mục dành riêng cho một giải pháp.

2. Mỗi máy quét sẽ nhận được gì (tức là, nếu tất cả chúng đều được sử dụng để quét cùng một thư mục, thì tất cả chúng có phát hiện được không?

những món đồ giống nhau?).

DỰ ÁN 9.2: Nghiên cứu virus

1. Sử dụng nhiều tài nguyên web khác nhau để tìm loại vi-rút mới hoạt động trong 90 ngày qua.

2. Mô tả cách thức virus lây lan, hoạt động của nó và mức độ lây lan rộng rãi của nó (McAfee

bản đồ virus sẽ giúp bạn điều đó).

3. Mô tả mọi thiệt hại đã biết do virus gây ra.

4. Mô tả các biện pháp được thực hiện để chống lại virus.


Machine Translated by Google

Bản tóm tắt 267

DỰ ÁN 9.3: Chính sách chống virus

Đối với dự án này, bạn cần tham khảo một số tài liệu chính sách chống vi-rút (được liệt kê bên dưới). Bạn sẽ tìm thấy một

số điểm chung và một số điểm chỉ tồn tại trong một số trong số chúng. Xác định những điểm chung của tất cả các nguồn này (từ đó

chỉ ra rằng tất cả các nguồn đều thấy chúng quan trọng) và giải thích lý do tại sao những mục đó lại quan trọng đến vậy.

■ Chính sách chống virus trong phòng thí nghiệm của Viện SANS: https://www.sans.org/security-resources/policies/retired/

pdf/hướng dẫn chống vi-rút

■ http://searchsecurity.techtarget.com/tip/Developing-an-antivirus-policy

■ Chính sách chống vi-rút của Đại học Western Michigan: https://wmich.edu/it/policies/antivirus

You might also like