Đây là tổng hợp các câu hỏi của các đề thi các năm môn An toàn an ninh mạng, có đáp án và giải thích rõ ràng. Mình có đình kèm theo tổng hợp các đề thi của nhiều năm. Đây là tổng hợp các câu hỏi của các đề thi các năm môn An toàn an ninh mạng, có đáp án và giải thích rõ ràng. Mình có đình kèm theo tổng hợp các đề thi của nhiều năm.
Trang 1DeThiSo1_k50MTT
1 Hệ thống xác thực Kerberos (1 điểm)
Một người dùng trên client C thuộc phân hệ Kerberos A muốn truy nhập vào một server dịch vụ Vrem thuộc phân hệ Kerberos B (rem là viết tắt của từ remote)
a (0,5 điểm) Hãy mô tả cấu trúc của thẻ cấp thẻ mà server cấp thẻ của phân hệ A gửi cho người dùng trên client C để truy cập vào server cấp thẻ của phân hệ B Giải thích rõ các ký hiệu được
sử dụng
b (0,5 điểm)Hãy mô tả cấu trúc của dấu xác thực mà người dùng trên client C gửi cho server cấp thẻ của phân hệ B để xin cấp thẻ truy nhập vào server dịch vụ Vrem Giải thích rõ các ký hiệu được sử dụng
2 Dịch vụ xác thực X.509 (1 điểm)
Xét thủ tục xác thực ba chiều sau đây:
A -> B : A{rA, IDB}
B -> A : B{rB, IDA, rA}
A -> B : A{rB}
Trong đó,
IDA là định danh của A
IDB là định danh của B
rAlà một giá trị ngẫu nhiên do A sinh ra, được đảm bảo là duy nhất trong khoảng thời gian từ t1là thời điểm rAđược sinh ra đến t2là thời điểm rAhết hạn, A lưu lại các thời điểm t1và t2cùng với giá trị rAtrong bộ nhớ cho đến thời điểm hết hạn t2thì xóa đi tất cả những thông tin
đó
rBlà một giá trị ngẫu nhiên do B sinh ra, được đảm bảo là duy nhất trong khoảng thời gian từ t3
là thời điểm rB được sinh ra đến t4 là thời điểm rB hết hạn, B lưu lại các thời điểm t3 và t4 cùng với giá trị rBtrong bộ nhớ cho đến thời điểm hết hạn t4 thì xóa đi tất cả những thông tin đó Giải thích bằng cách nào thủ tục trên phát hiện được hình thức tấn công lặp lại
DeThiSo1_k53MTT
3 Phân phối khóa và xác thực người dùng (2 điểm)
Trang 2Một hệ thống phân tán bao gồm các server dịch vụ và nhiều người dùng trên các trạm làm việc client khác nhau Người dùng muốn truy nhập vào server dịch vụ cần được xác thực dựa trên mật khẩu Chức năng xác thực người dùng và kiểm tra quyền truy nhập không được giao cho từng server dịch vụ riêng rẽ thực hiện mà được quản lý tập trung thông qua một server xác thực (AS)
và một server cấp thẻ (TGS) Server xác thực biết mật khẩu của tất cả người dùng Server cấp thẻ biết quyền truy nhập của mỗi người dùng đối với từng server dịch vụ Mô hình xác thực của hệ thống là như sau :
(i) Mỗi lần người dùng đăng nhập vào hệ thống
(1) C AS : IDC ║ IDtgs
(2) AS C : EKC[Thẻtgs]
(ii) Mỗi lần người dùng yêu cầu một server dịch vụ
(3) C TGS : IDC ║ IDV ║ Thẻtgs
(4) TGS C : ThẻV
(iii) Mỗi lần người dùng truy nhập vào server dịch vụ đã yêu cầu
(5) C V : IDC ║ ThẻV
Thẻtgs = EKtgs[IDC ║ ADC ║ IDtgs ║ TS1 ║ Hạn1]
ThẻV = EKV[IDC ║ ADC ║ IDV ║ TS2 ║ Hạn2]
Trong đó, C là trạm làm việc được người dùng sử dụng, IDC là định danh của người dùng trên máy C, IDtgs là định danh server cấp thẻ, V là server dịch vụ người dùng muốn truy nhập, IDV
là định danh server dịch vụ, Thẻtgs là thẻ cấp thẻ cho phép người dùng truy nhập vào server cấp thẻ TGS, ThẻV là thẻ dịch vụ cho phép người dùng truy nhập vào server dịch vụ V, ADC là địa chỉ mạng của máy C, K C là khóa tương ứng với mật khẩu của người dùng trên máy C, Ktgs là khóa bí mật dùng chung giữa AS và TGS, K V là khóa bí mật dùng chung giữa TGS và V, TS1 và
TS2 là các nhãn thời gian cho biết thời điểm Thẻtgs và ThẻV được tạo ra, Hạn1 và Hạn2 là các
thời hạn cho biết các thẻ tương ứng có giá trị trong bao lâu
a (1 điểm)
Mô tả hai tình huống theo đó một địch thủ không có mật khẩu hay khóa K C của người
dùng IDC vẫn giả mạo thành công người dùng này để được server cấp thẻ cấp cho ThẻV
Trang 3b (0,5 điểm)
Trong mỗi tình huống nêu trên, sau khi đã lấy được ThẻV , địch thủ làm thế nào để được
server dịch vụ coi là người dùng hợp lệ và được phép truy nhập vào server dịch vụ?
a (0,5 điểm)
Giải thích hình thức tấn công mật khẩu đối với hệ thống đã cho
4 An toàn mức giao vận (3 điểm)
Trong một ứng dụng Web, hai bên client và server sử dụng giao thức bắt tay trong chuỗi giao thức SSL để xác thực lẫn nhau và thỏa thuận các tham số an ninh (giải thuật và khóa) Giả sử phương pháp trao đổi khóa được client và server thống nhất sử dụng là Diffie-Hellman trong đó server có cặp khóa riêng và khóa công khai Diffie-Hellman cố định (khóa công khai được chứng thực), còn client sinh ra cặp khóa riêng và khóa công khai Diffie-Hellman một cách tức thời (khóa công khai không được chứng thực) nhưng có một cặp khóa riêng và khóa công khai RSA
từ trước với khóa công khai đã được chứng thực
a (1,5 điểm)
Vẽ sơ đồ trao đổi thông báo 4 giai đoạn giữa client và server trong giao thức bắt tay SSL nêu trên theo cách an toàn nhất có thể
b (1,5 điểm)
Với mỗi thông báo tùy chọn (tức những thông báo không phải đối với bất kỳ phương
pháp trao đổi khóa nào cũng được gửi) và thông báo client_key_exchange, hãy chỉ ra nó
có những tham số cụ thể gì
5.An toàn thư điện tử (2,5 điểm)
Chương trình PGP của một người dùng A lưu giữ vòng khóa công khai có các trường Public Key, User ID, Owner Trust, và Signatures như sau:
Public Key PUA PUB PUC PUD PUE PUF PUG PUH
Owner
Trust
Tột bậc Hoàn
toàn
Một phần
Hoàn toàn
Một phần
Một phần
Không tin cậy
Tin cậy
Tính hợp lệ của khóa công khai (Key Legitimacy) được PGP tính theo các quy tắc sau:
Khóa công khai của bản thân người dùng A là hợp lệ
Trang 4 Nếu một khóa công khai có ít nhất một chữ ký có độ tin cậy (Signature Trust) là tột bậc thì
nó hợp lệ
Nếu không, tính hợp lệ của khóa công khai được tính bằng tổng trọng số độ tin cậy của các
chữ ký Trọng số 1 được gán cho các chữ ký có độ tin cậy hoàn toàn Trọng số 1/2 được gán cho các chữ ký có độ tin cậy một phần Nếu tổng trọng số đạt tới hoặc vượt ngưỡng là 1 thì khóa công khai được xác định là hợp lệ
Trong tất cả những trường hợp còn lại, khóa công khai được coi là không hợp lệ
Vẽ mô hình tin cậy PGP tương ứng
DeThiSo2_k49MTT
6.Các ứng dụng xác thực (2 điểm)
Xét dịch vụ xác thực X.509
c (1 điểm)
Cho một mô hình phân cấp các CA với các chứng thực lẫn nhau được mô tả như hình vẽ dưới đây
P
W
U
Z
P<<Q>>
Q<<P>>
Q<<S>>
S<<Q>>
P<<R>>
X<<R>>
R<<P>>
Q<<T>>
T<<Q>>
R<<U>>
U<<R>>
X<<Z>>
Z<<X>>
W<<Y>> Y<<W>> W<<X>>
X<<W>>
Trang 5Một người dùng A có chứng thực do S cấp Một người dùng B có chứng thực do U cấp Hãy mô tả bằng cách nào A xác minh được chứng thực của B
d (1 điểm)
Giả sử một trọng tài cần phân xử một tranh chấp giữa một người mua và một nhà cung cấp Nhà cung cấp đưa ra các bằng chứng cần thiết bao gồm đơn hàng được ký bởi người mua, chứng thực khóa công khai tương ứng của người mua và danh sách các chứng thực
bị thu hồi, tất cả đều được ký bởi một cơ quan chứng thực đáng tin cậy Trong khi đó, người bán nhất mực chối không phải là người tạo ra đơn hàng Giải thích trọng tài căn cứ như thế nào vào ngày trên các bằng chứng để đưa ra phân xử xem đơn hàng có hợp lệ hay không
7.An toàn thư điện tử (2 điểm)
Một chương trình thư điện tử cung cấp ba loại hình dịch vụ: dịch vụ xác thực, dịch vụ nén, và dịch vụ tương thích thư điện tử (dịch vụ bảo mật và dịch vụ phân ghép không được xét tới ở
đây) Khi muốn gửi một thư điện tử m cho bên nhận B, bên gửi A thực hiện quy trình sau:
1 A chọn ngẫu nhiên một khóa bí mật S
2 A mã hóa S với khóa công khai PU b của bên nhận B, thu được E[PU b , S]
3 A ký E[PU b , S] với khóa riêng PR a của A, thu được E[PR a , E[PU b , S]]
4 A sử dụng S để tính MAC cho m, thu được C[S, m]
5 A nén C[S, m] ║ E[PR a , E[PU b , S]] ║ m, sau đó thực hiện phép chuyển đổi thuận cơ số
64 rồi gửi toàn bộ thông báo thu được cho B
a (1 điểm)
Mô tả quy trình thực hiện của bên B khi nhận được thông báo từ bên A
b (0,5 điểm)
Dịch vụ xác thực của chương trình thư điện tử nêu trên không được hoàn thiện bằng dịch
vụ xác thực của PGP Hãy giải thích vì sao
c (0,5 điểm)
Giả sử S có độ dài 256 bit, hàm MAC cho đầu ra có độ dài 128 bit, thư điện tử m có độ dài 852
byte Dịch vụ nén khi sử dụng cho tỷ lệ nén là 2,0 Hãy tính độ dài của toàn bộ thông báo A gửi cho B trên mạng
DeThiSo1TC
8.(4 điểm)
Trang 6Alice và Bob muốn sử dụng hệ trao đổi khóa Diffie-Hellman Hai người thống nhất chọn các
tham số chung q = 13 và = 2 Alice chọn khóa riêng X A = 6, trong khi Bob chọn khóa riêng X B
= 7
e (2 điểm)
Các khóa công khai Y A tính được bởi Alice và Y B tính được bởi Bob là bao nhiêu? Sau khi
tính xong, Alice gửi Y A cho Bob, Bob gửi Y B cho Alice Khóa bí mật chung tính được bởi
cả hai người là bao nhiêu?
f (2 điểm)
Alice và Bob không biết có một người thứ ba là Eve xen vào đường truyền giữa hai người Eve
có thể đọc được các thông báo trao đổi giữa Alice và Bob Cô ta cũng có thể gửi thông báo cho Bob nhưng Bob nghĩ là Alice gửi, hoặc ngược lại gửi thông báo cho Alice nhưng Alice nghĩ là
Bob gửi Giả sử Eve chọn khóa riêng X E = 5 Giải thích bằng cách nào Eve có thể thực hiện hình thức tấn công "kẻ thâm nhập ở giữa" lên hệ trao đổi khóa Diffie-Hellman giữa Alice và Bob Hình thức tấn công "kẻ thâm nhập ở giữa" được coi là thành công khi mọi thông báo bản mã Alice và Bob gửi cho nhau đều có thể bị Eve giải mã để biết được nội dung nguyên bản trong khi Alice và Bob không hay biết gì cả
DeThiSo2
9.(2,5 điểm)
Cho một phương thức mã hóa khối đối xứng thực hiện việc mã hóa theo sơ đồ sau (giả sử thông
báo gồm có N khối p 1 , p 2 ,…, p N) :
g (1,5 điểm)
Vẽ sơ đồ giải mã suy ra từ sơ đồ mã hóa đã cho
Mã hóa
p1
C1
C2
CN
K
IV
CN-1
pN-1
Trang 7h (1 điểm)
Chứng mình rằng nếu một khối bản mã bị lỗi thì khi giải mã thông báo tất cả các khối nguyên bản thu được tiếp theo cũng đều bị lỗi
10.(1,5 điểm)
Trên một mạng công cộng, mỗi người mã hóa tất cả các thông báo gửi cho những người khác
bằng hệ mã hóa khóa công khai RSA Alice và Bob có cùng thành phần n của khóa công khai (n A
= n B ), nhưng có các thành phần e khác nhau (e A e B) Chứng minh rằng Alice có thể giải mã tất
cả các thông báo gửi tới Bob
DeThiSo2_2006
11.(2 điểm)Xét môđun n trong giải thuật RSA Như đã biết, thành phần này là một giá trị công
khai Tính xác suất để một số chọn ngẫu nhiên theo phân bố đồng xác suất trong khoảng từ 1 đến
n – 1 không nguyên tố cùng nhau với n Nếu tìm được một số như vậy thì hiểm họa gì sẽ xảy ra ?
Giải thích
12.(2 điểm)
Xét một hệ xác thực như sau Alice lấy một giá trị ngẫu nhiên K làm khóa phiên, rồi gửi định danh IDA của cô ta cùng với khóa phiên K cho Bob, tất cả những thông tin này được mã hóa sử dụng khóa công khai KUB của Bob Bob gửi lại cho Alice định danh IDB của anh ta cùng với
khóa K cho Alice, tất cả được mã hóa sử dụng khóa công khai của Alice
Alice Bob : EKUB [IDA || K]
Bob Alice : EKUA [IDB || K]
Một địch thủ tên Eve có khả năng chặn được các thông báo Alice và Bob gửi cho nhau cũng như gửi được thông báo cho Alice và Bob
i (1 điểm)
Theo giao thức trên đây, Eve có thể giả mạo Alice, tức là có thể làm cho Bob tin rằng Eve chính là Alice được không ? Giải thích
j (1 điểm)
Eve có thể giả mạo Bob, tức là có thể làm cho Alice tin rằng Eve chính là Bob được không ? Giải thích
13.(3 điểm)
Trang 8Xét một hệ xác thực dựa trên mật mã đối xứng sử dụng một server xác thực S Hai bên A và B không có khóa bí mật chung cho trước Nếu muốn truyền thông tin mã hóa cho nhau thì A và B cần xác thực lẫn nhau thông qua S và xin S phân phối khóa bí mật chung Server S biết khóa bí
mật KA của A và khóa bí mật KB của B A và B không cho ai biết các khóa bí mật KA và KB
tương ứng ngoài S Giao thức xác thực hai chiều và phân phối khóa tiến hành theo các bước sau : (1) A B : T || IDA || IDB || EKA [RA || T || IDA || IDB]
(2) B S : T || IDA || IDB || EKA [RA || T || IDA || IDB] || EKB [RB || T || IDA || IDB]
(3) S B : T || E KA [RA || K] || E KB [RB || K]
(4) B A : ???
Trong đó,
T là nhãn thời gian của A tại thời điểm A thực hiện bước (1) của giao thức
IDA là định danh của A
IDB là định danh của B
RA là một số ngẫu nhiên tạo ra bởi A tại thời điểm A thực hiện bước (1)
RB là một số ngẫu nhiên tạo ra bởi B tại thời điểm B thực hiện bước (2)
K là một khóa bí mật chọn bởi S tại thời điểm S thực hiện bước (3)
Giao thức cho phép A và B cùng nhận được khóa bí mật chung K Hơn nữa A và B đều biết chắc chắn rằng chỉ A và B biết được K
k (1 điểm)
Viết thông báo B gửi cho A ở bước (4) của giao thức
l (1 điểm)
Giải thích tại sao A và B biết được chắc chắn chỉ họ mới biết giá trị của K
m (1 điểm)
Giải thích vai trò của T, RA và RB
DeThiSo2_2007
14.Mã hóa khối đối xứng (3 điểm)
Xét một phương thức mã hóa đối xứng áp dụng cho các thông báo gồm nhiều khối Nó thực hiện
mã hóa thông báo theo sơ đồ giải mã CBC và giải mã theo sơ đồ mã hóa CBC
n (1,5 điểm)
Trang 9Phương thức đã nêu có cho phép mã hóa thông báo và giải mã để thu được nguyên bản ban đầu không? Vẽ sơ đồ mã hóa và sơ đồ giải mã của nó
o (1,5 điểm)
Hãy chỉ ra những nhược điểm của phương thức trong chức năng đảm bảo sự an toàn của các thông báo
15.Mã hóa khối đối xứng và mã hóa khóa công khai (3 điểm)
Alice muốn gửi thông báo đến Bob một cách an toàn thông qua một mạng truyền thông không an
toàn Alice có một cặp khóa công khai và khóa riêng RSA là KU a và KR a Bob cũng có khóa
công khai RSA là KU b và khóa riêng tương ứng là KR b Alice biết khóa công khai của Bob Bob cũng biết khóa công khai của Alice
Để gửi một thông báo m đến Bob, Alice tiến hành như sau:
1 Chọn ngẫu nhiên một khóa phiên K, rồi tính các giá trị c = E_RSA KUb (K), c' =
E_AES-CBCK (m), và t = E_RSA KRa (c ║ c'), trong đó E_RSA là phép mã hóa theo
giải thuật RSA, E_AES_CBC là phép mã hóa theo phương thức CBC sử dụng giải thuật AES
2 Gửi thông báo c ║ c' ║ t đến Bob
Khi nhận được thông báo c ║ c' ║ t, Bob tiến hành như sau:
1 Kiểm tra xem t có phải là một chữ ký RSA hợp lệ của Alice trên c ║ c' hay không
Nếu không hợp lệ thì không làm gì tiếp theo
2 Tính K' = D_RSA KRb (c) và m' = D_AES-CBC K' (c'), trong đó D_RSA là phép giải mã
theo giải thuật RSA, D_AES-CBC là phép giải mã theo phương thức CBC sử dụng giải thuật AES
3 Ghi nhận thông báo m' là do Alice gửi
p (1 điểm)
Giao thức nêu trên có đảm bảo tính bảo mật của các thông báo do Alice gửi cho Bob không? Giải thích
q (1 điểm)
Giao thức nêu trên có đảm bảo nguồn gốc và tính toàn vẹn của các thông báo Bob nhận được hay không? Giải thích
r (1 điểm)
Giả sử Bob là nhân viên môi giới chứng khoán của Alice Bob tự động chuyển các thông báo do Alice gửi đến một trung tâm giao dịch chứng khoán, sao cho nếu Alice sử dụng giao thức đã nêu gửi một thông báo là "Bán 500 cổ phiếu của MB" thì giao dịch sẽ ngay
Trang 10lập tức được tự động thực hiện trên tài khoản của Alice Hãy đưa ra một lý do cho thấy sự không an toàn của giao thức trong bối cảnh một ứng dụng như vậy
16.Xác thực và chữ ký số (2 điểm)
Hãy thiết kế một giao thức xác thực cho phép Alice và Bob thiết lập một khóa bí mật dùng chung không cần tới sự tham gia của một bên thứ ba Giao thức chỉ được sử dụng hai thông báo, một thông báo theo chiều từ Alice đến Bob và một thông báo theo chiều ngược lại Cả hai thông báo này đều phải đảm bảo tính xác thực Giả thiết Alice và Bob biết trước khóa công khai của nhau
17.An toàn thư điện tử (2 điểm)
Một người dùng sử dụng chương trình PGP để gửi thư điện tử một cách an toàn Anh ta có n
khóa công khai Khóa phiên trong chương trình PGP có độ dài 128 bit
s (1 điểm)
Hãy tính xác suất để người dùng đã nêu có hai khóa công khai có số định danh (id) trùng nhau
t (1 điểm)
Hãy tính số kỳ vọng các khóa phiên tạo ra trước khi phát hiện khóa phiên vừa sinh đã được tạo ra trước đó
DeThiSo2_K13MTT
18 Các ứng dụng xác thực (1 điểm)
Một người dùng trên client C thuộc phân hệ Kerberos A muốn truy nhập vào một server dịch vụ
Vrem thuộc phân hệ Kerberos B (rem là viết tắt của từ remote)
u (0,5 điểm)
Hãy mô tả cấu trúc của thẻ cấp thẻ mà server cấp thẻ của phân hệ A gửi cho người dùng trên client C để truy cập vào server cấp thẻ của phân hệ B Giải thích rõ các ký hiệu được
sử dụng
v (0,5 điểm)
Hãy mô tả cấu trúc của dấu xác thực mà người dùng trên client C gửi cho server cấp thẻ của phân hệ B để xin cấp thẻ truy nhập vào server dịch vụ Vrem Giải thích rõ các ký hiệu được sử dụng
19,An ninh thư điện tử (1 điểm)
Chương trình PGP của một người dùng (gọi là You) lưu giữ vòng khóa công khai được tổ chức theo mô hình sau: