CHƢƠNG 1 : TỔNG QUAN VỀ MẠNG KHễNG DÂY
2.2.3. Hệ mật mó khúa cụng khai
Để giải quyết vấn đề phõn phối và thoả thuận khúa của mật mó khúa đối xứng, năm 1976 Diffie và Hellman đó đƣa ra khỏi niệm về hệ mật mó khúa cụng khai và một phƣơng phỏp trao đổi cụng khai để tạo ra một khoỏ bớ mật chung mà tớnh an toàn đƣợc bảo đảm bởi độ khú của một bài toỏn toỏn học cụ thể (là bài toỏn tớnh “logarit rời rạc”). Hệ mật mó khúa cụng khai hay cũn đƣợc gọi là hệ mật mó phi đối xứng sử dụng một cặp khúa, khúa mó húa cũn gọi là khúa cụng khai (public key) và khúa giải mó đƣợc gọi là khúa bớ mật hay khúa riờng (private key). Trong hệ mật này, khúa mó húa khỏc với khúa giải mó. Về mặt toỏn học thỡ từ khúa cụng khai rất khú tớnh đƣợc khúa riờng. Biết đƣợc khúa này khụng dễ dàng tỡm đƣợc khúa kia. Khúa giải mó đƣợc giữ bớ mật trong khi khúa mó húa đƣợc cụng bố cụng khai. Một ngƣời bất kỳ cú thể sử dụng khúa cụng khai để mó hoỏ tin tức, nhƣng chỉ cú ngƣời nào cú đỳng khúa giải mó mới cú khả năng xem đƣợc bản rừ.
Ngƣời gửi A sẽ mó hoỏ thụng điệp bằng khúa cụng của ngƣời nhận và ngƣời nhận B sẽ giải mó thụng điệp với khoỏ riờng tƣơng ứng của mỡnh.
Hỡnh 2.7: Mụ hỡnh hệ mật mó khúa cụng khai
Cú nhiều hệ thống khúa cụng khai đƣợc triển khai rộng rói nhƣ hệ RSA, hệ ElGamal sử dụng giao thức trao đổi khoỏ Diffie-Hellman và nổi lờn trong những năm gần đõy là hệ đƣờng cong Elliptic. Trong số cỏc hệ mật mó trờn thỡ hệ RSA là hệ đƣợc cộng đồng chuẩn quốc tế và cụng nghiệp chấp nhận rộng rói trong việc thực thi mật mó khúa cụng khai.
Hệ mật mó RSA, do Rivest, Shamir và Adleman tỡm ra, đó đƣợc cụng bố lần đầu tiờn vào thỏng 8 năm 1977 trờn tạp chớ Scientific American. Hệ mật mó RSA đƣợc sử dụng rộng rói trong thực tiễn đặc biệt cho mục đớch bảo mật và xỏc thực dữ liệu số. Tớnh bảo mật và an toàn của chỳng đƣợc bảo đảm bằng độ phức tạp của một bài toỏn số học nổi tiếng là bài toỏn phõn tớch số nguyờn thành cỏc thừa số nguyờn tố.
Việc phỏt minh ra phƣơng phỏp mó cụng khai tạo ra một cuộc “cỏch mạng” trong cụng nghệ an toàn thụng tin điện tử. Nhƣng thực tiễn triển khai cho thấy tốc độ mó húa khối dữ liệu lớn bằng cỏc thuật toỏn mó húa cụng khai chậm hơn rất nhiều so với hệ mó húa đối xứng. Vớ dụ, để đạt đƣợc độ an toàn nhƣ cỏc hệ mó đối xứng mạnh cựng thời, RSA đũi hỏi thời gian cho việc mó húa một văn bản lõu hơn gấp hàng ngàn lần. Do đú, thay bằng việc mó húa văn bản cú kớch thƣớc lớn bằng lƣợc đồ khúa cụng khai thỡ văn bản này sẽ đƣợc mó húa bằng một hệ mó đối xứng cú tốc độ cao nhƣ DES, IDEA, … sau đú khúa đƣợc sử dụng trong hệ mó đối xứng sẽ đƣợc mó húa sử dụng mật mó khúa cụng khai. Phƣơng phỏp này rất khả thi trong việc mó và giải mó những văn bản cú kớch thƣớc lớn.
Vấn đề cũn tồn đọng của hệ mật mó khúa đối xứng đƣợc giải quyết nhờ hệ mật mó khúa cụng khai. Chớnh ƣu điểm này đó thu hỳt nhiều trớ tuệ vào việc đề xuất, đỏnh giỏ cỏc hệ mật mó cụng khai. Nhƣng do bản thõn cỏc hệ mật mó khúa cụng khai đều dựa vào cỏc giả thiết liờn quan đến cỏc bài toỏn khú nờn đa số cỏc hệ mật mó này đều
cú tốc độ mó dịch khụng nhanh lắm. Chớnh nhƣợc điểm này làm cho cỏc hệ mật mó khúa cụng khai khú đƣợc dựng một cỏch độc lập.
Một vấn đề nữa nảy sinh khi sử dụng cỏc hệ mật mó khúa cụng khai là việc xỏc thực mà trong mụ hỡnh hệ mật mó đối xứng khụng đặt ra. Do cỏc khúa mó cụng khai đƣợc cụng bố một cỏch cụng khai trờn mạng cho nờn việc đảm bảo rằng “khúa đƣợc cụng bố cú đỳng là của đối tƣợng cần liờn lạc hay khụng?” là một kẽ hở cú thể bị lợi dụng. Vấn đề xỏc thực này đƣợc giải quyết cũng chớnh bằng cỏc hệ mật mó khúa cụng khai. Nhiều thủ tục xỏc thực đó đƣợc nghiờn cứu và sử dụng nhƣ Kerberos, X.509… Một ƣu điểm nữa của cỏc hệ mật mó khúa cụng khai là cỏc ứng dụng của nú trong lĩnh vực chữ ký số, cựng với cỏc kết quả về hàm băm, thủ tục ký để bảo đảm tớnh toàn vẹn của một văn bản đƣợc giải quyết.
2.3. Nghiờn cứu một số giải phỏp đảm bảo an ninh an toàn cho mạng WLAN
2.3.1. Phương phỏp bảo mật dựa trờn WEP
Sau 5 năm kể từ khi đƣợc cụng bố rộng rói ra cụng chỳng, chuẩn IEEE 802.11 chỉ cú duy nhất một phƣơng phỏp bảo mật, đú chớnh là WEP. Năm 2000, khi WLAN đƣợc sử dụng nhiều hơn thỡ vấn đề bảo mật đƣợc quan tõm chỳ ý và chẳng bao lõu sau những điểm yếu của WEP đó bị phỏt hiện. Cuối năm 2001, cỏc cụng cụ dựng để tấn cụng WEP đó đƣợc cụng bố trờn Internet.
Đối với nhiều ngƣời, WEP là cỏch lựa chọn duy nhất cho tới khi cỏc phƣơng phỏp bảo mật IEEE 802.11 mới đƣợc ỏp dụng. Hầu hết những cuộc tấn cụng dựa vào việc thu thập đƣợc một lƣợng nhất định những gúi tin. Đối với cỏc hộ gia đỡnh, nơi mà lƣu lƣợng dữ liệu đƣợc truyền đi rất nhỏ, WEP vẫn là một lựa chọn tƣơng đối an toàn. Phần này sẽ tỡm hiểu kỹ cỏch hoạt động của WEP, đõu là điểm yếu của nú và những kẻ tấn cụng phải làm gỡ để vụ hiệu húa WEP.
2.3.1.1. Vấn đề chứng thực
Cú hai vấn đề cần phải quan tõm khi núi đến WEP, đầu tiờn là chứng thực và thứ hai là mó húa.
Với IEEE 802.11 WEP, trong giai đoạn chứng thực, một thiết bị mới phải chứng minh rằng nú đỳng là thành viờn của nhúm, vậy nú chứng minh bằng cỏch nào? Về phớa AP mà núi, nếu một thiết bị cú thể chứng tỏ nú đỳng là đỏng tin cậy thỡ cú thể tin địa chỉ MAC của nú khụng phải là địa chỉ giả mạo và nú cho phộp thiết bị mới này kết nối vào mạng. Tuy nhiờn thật khụng may là chẳng cú dấu hiệu đảm bảo nào đƣợc sử dụng trong quỏ trỡnh chứng thực vỡ thế mà chẳng cú cơ sở để biết liệu gúi tin đến từ thiết bị đỏng tin cậy hay là khụng. Kiểu chứng thực này thực sự khụng đảm bảo tin cậy và do đú nú đó bị loại bỏ khỏi tớnh năng của WLAN, cho dự là nú nằm trong chuẩn IEEE 802.11.
Dự yếu nhƣng một số hệ thống vẫn sử dụng kiểu chứng thực của chuẩn IEEE 802.11 ban đầu. Chỳng ta đó biết rằng IEEE 802.11 sử dụng 3 kiểu gúi tin là gúi tin điều khiển, gúi tin quản lý và gúi tin dữ liệu. Giai đoạn chứng thực sử dụng gúi tin
Hỡnh 2.8: Quỏ trỡnh chứng thực diễn ra trong WEP
Về mặt nguyờn tắc, nếu một AP hoạt động ở chế độ khụng cú bảo mật, nú luụn luụn chấp nhận cỏc yờu cầu chứng thực và đỏp lại với một gúi tin bỏo chứng thực thành cụng. Tuy nhiờn, trong thực tế, nhiều hệ thống cung cấp cỏc phƣơng phỏp riờng của mỡnh, phổ biến nhất là sử dụng danh sỏch địa chỉ MAC. AP cú một danh sỏch cỏc địa chỉ MAC mà nú cho phộp truy nhập vào mạng. Danh sỏch này do ngƣời quản trị tạo ra và lƣu lại trờn AP. Quỏ trỡnh chứng thực dựa vào danh sỏch này, tức là nếu STA cú địa chỉ MAC nằm trong danh sỏch thỡ nú đƣợc phộp truy cập vào mạng, nếu khụng, nú sẽ bị từ chối. Đƣơng nhiờn là khụng thể ngăn chặn đƣợc những địa chỉ MAC giả, nhƣng dự sao thỡ nú cũng cú tỏc dụng nhất định nhằm trỏnh việc vụ tỡnh truy cập nhầm mạng.
Chứng thực WEP với mục đớch là chứng minh với AP rằng STA biết khúa bảo mật. Khi một STA yờu cầu chứng thực, AP gửi tới nú một số ngẫu nhiờn đƣợc gọi là challenge text. Đõy là một số 128 bit bất kỳ (giả ngẫu nhiờn). STA sau đú mó húa số này bằng khúa bảo mật và gửi trả lại cho AP. Do AP đó lƣu lại số ngẫu nhiờn mà nú đó gửi đi, đồng thời nú cũng cú khúa bảo mật mà STA cú, từ đú nú cú thể giải mó số mà STA gửi đến, so sỏnh hai kết quả, nếu 2 kết quả trựng nhau thỡ STA đú là thiết bị biết khúa mật mó và đỏng tin cậy. Ở đõy cú một vấn đề là STA chẳng cú cỏch nào biết đƣợc liệu AP cú biết khúa bảo mật hay khụng. Nếu một kẻ nào đú đang theo dừi, thỡ vụ tỡnh ta đó cho hắn ta một cơ hội bẻ khúa vỡ hắn đó cú thể cú trong tay cả số ngẫu
nhiờn và số đó đƣợc mó húa bằng khúa bảo mật, dựa vào đú cú thể tỡm ra khúa. Đú cũng là lý do tại sao hiệp hội Wifi Alliance loại bỏ kiểu trao đổi này.
Dƣới đõy là định dạng của gúi tin chứng thực, cho dự nhiều gúi tin đƣợc trao đổi nhƣng nú cú chung một dạng:
Algorithm Num Transaction Seq. Status Code Challenge Text
Hỡnh 2.9: Định dạng của gúi tin chứng thực
Algorithm Num: chỉ kiểu chứng thực đƣợc sử dụng:
o 0 – Khụng cú bảo mật.
o 1 – Cú sử dụng khúa bảo mật (WEP).
Transaction Seq.: chỉ ra ta đang ở phần nào của quỏ trỡnh chứng thực. Gúi tin thứ nhất ứng với giỏ trị 1, gúi tin thứ hai ứng với giỏ trị 2 và gúi tin thứ 3 (chỉ dựng với WEP) cú giỏ trị là 3.
Status Code: đƣợc gửi cuối cựng để thụng bỏo yờu cầu chứng thực cú thành cụng hay khụng.
Challenge Text: là số ngẫu nhiờn nhƣ đó đƣợc núi ở trờn.
2.3.1.2. Vấn đề mó húa
Ngoài việc chứng thực, mó húa là một phần khụng thể thiếu đƣợc khi núi đến WEP. Để bảo vệ những thụng tin cần thiết, trỏnh nguy cơ bị lộ thụng tin thỡ mó húa chớnh là giải phỏp đƣợc tớnh đến.
Khi WEP đƣợc kớch hoạt, dữ liệu đƣợc truyền đi dƣới dạng mó húa nờn những kẻ tấn cụng cú lấy đƣợc gúi tin cũng khụng giải mó đƣợc. Để giải mó gúi tin, ta phải biết khúa. Chuẩn IEEE 802.11 ban đầu đó đƣa ra 2 quỏ trỡnh: trƣớc hết là phải chứng thực sau đú mới mó húa. Nhƣ đó núi ở phần trƣớc, phƣơng phỏp chứng thực ở đõy gần nhƣ khụng cú ý nghĩa, nú đụi khi cũn nguy hơn là khụng sử dụng. Vỡ thế, hầu hết cỏc hệ thống WLAN bỏ qua giai đoạn chứng thực và chuyển luụn sang mó húa sau khi đó tạo đƣợc kết nối.
Cỏc hệ thống bảo mật cú thể dựa vào việc mó húa theo chuỗi hoặc mó húa khối. WEP sử dụng thuật toỏn mó húa chuỗi gọi là RC4 để mó húa cỏc gúi dữ liệu. RC4 là tờn viết tắt của Rivest Cipher 4 do Ron Rivest thiết kế vào năm 1987. Ở mức độ cao nhất, RC4 giống nhƣ là một hộp đen, nú lấy một byte từ chuỗi dữ liệu và tạo một byte khỏc tƣơng ứng ở đầu ra. Việc giải mó là quỏ trỡnh ngƣợc lại và vẫn sử dụng khúa nhƣ quỏ trỡnh mó húa.
Hỡnh 2.10: Mó húa chuỗi
Một trong những ƣu điểm của RC4 là nú cực kỳ dễ thực hiện và khụng sử dụng bất kỳ cỏc phộp toỏn phức tạp hay tốn thời gian tớnh toỏn nào giống nhƣ phộp nhõn. Núi chung, đõy cũng là một thỏch thức đối với những nhà thiết kế thuật toỏn, làm sao
Cú một vấn đề trong việc sử dụng giỏ trị khúa cố định. Cho dự khúa đú cú đƣợc thay đổi đi chăng nữa, nú vẫn gặp phải vấn đề đối với cỏc gúi tin khi đi qua hệ thống mó húa, đú là tất cả cỏc gúi tin đƣợc mó húa với cựng một khúa. Giả sử ta dựng thuật toỏn RC4 với khúa đó cho và với dữ liệu là “asfecewa” và giả sử ta thu đƣợc đoạn mó “&(#cheiv”. Nú trụng cú vẻ ngẫu nhiờn, tuy nhiờn, do khúa khụng thay đổi nờn cứ lần nào ta cho dữ liệu vào là “asfecewa” thỡ cũng đƣợc kết quả tƣơng tự nhƣ trờn. Một mặt nào đú nú cú thể chấp nhận đƣợc, nhƣng mặt khỏc nú lại là một mối nguy hiểm, tạo điều kiện cho kẻ khỏc cơ hội giải mó. Nếu nhƣ biết đƣợc cỏc đoạn dữ liệu mó húa giống nhau tại những vị trớ cho trƣớc cú thể đoỏn đƣợc là dữ liệu ban đầu cú sự lặp lại.
Để giải quyết tỡnh huống này, vector khởi tạo IV đƣợc sử dụng, nú là một khỏi niệm khỏ đơn giản. Thay vỡ chỉ sử dụng khúa cố định để mó húa, ta cú thể kết hợp khúa này với 24 bit để làm sao cho mỗi gúi tin mó húa sẽ khỏc nhau cho dự nội dung của chỳng cú giống nhau. Số 24 bit này chớnh là vector khởi tạo IV, nú biến khúa 104 bit thành khúa 128 bit. Gọi là mó húa 128 bit nghe cú vẻ khụng đƣợc đỳng cho lắm vỡ IV đƣợc gửi đi cựng với gúi tin đƣợc mó húa nhƣng chớnh nú lại khụng đƣợc mó.
Hỡnh 2.11: Sự kết hợp của IV với khúa
Do giỏ trị của IV luụn thay đổi nờn khi kết hợp với khúa để mó húa đó tạo ra cỏc gúi tin đƣợc mó hoàn toàn khỏc nhau cho dự dữ liệu đƣợc mó giống nhau. Để đảm bảo an toàn, khụng bao giờ đƣợc sử dụng 2 lần cựng một IV với cựng một khúa. Do IV khụng đƣợc mó húa và dễ dàng đọc đƣợc từ gúi tin gửi đi nờn việc lƣu lại để so sỏnh với cỏc giỏ trị sau là việc đơn giản.
Một điều khụng may là IV trong IEEE 802.11 WEP chỉ cú 24 bit mà thụi. Nú nghe cú vẻ khỏ lớn nhƣng tớnh toỏn một lỳc ta sẽ thấy nú quả thực khụng phải nhƣ vậy. Một số 24 bit sẽ cú giỏ trị từ 0 đến 16777216, tức là vào khoảng gần 17 triệu giỏ trị IV khỏc nhau. Nếu một AP hoạt động liờn tục với tốc độ 11 Mbps cú thể truyền và nhận 700 gúi cú kớch thƣớc trung bỡnh trong một giõy. Nếu mỗi gúi ứng với một IV khỏc
nhau thỡ khụng đầy 7 tiếng sau nú đó cạn kiệt. Do rất ớt ngƣời thay đổi khúa mỗi ngày nờn việc sử dụng lại IV chắc chắn sẽ xảy ra.
Những vấn đề với IV chỉ ra rằng thực sự là khú thiết kế cỏc giao thức bảo mật dựa trờn việc mó húa chuỗi bởi vỡ trạng thỏi của quỏ trỡnh mó húa khụng đƣợc khởi động lại trong toàn bộ chuỗi đú. Một phiờn bản khỏc của WEP là TKIP cũng dựa trờn RC4 nhƣng khắc phục đƣợc việc tỏi sử dụng IV sẽ đƣợc đề cập đến ở phần sau.
2.3.1.3. Cơ chế hoạt động của WEP
Nếu trong một mạng cú kết nối WLAN thỡ dữ liệu bao giờ cũng phải đi qua tầng dịch vụ mạng IEEE 802.11 MAC. Hay núi một cỏch khỏc, gúi dữ liệu tới WLAN cựng với những thụng tin cần thiết để gửi gúi tin đến đớch, gúi dữ liệu này đƣợc gọi là một MSDU. Nếu khụng gặp lỗi nào, MSDU này sẽ đƣợc gửi đến tầng dịch vụ MAC của thiết bị đớch và sẽ đƣợc hệ điều hành hay trỡnh điều khiển đƣa đến đỳng ứng dụng đang chạy. Tuy nhiờn, trƣớc khi đƣợc chuyển thành dạng súng điện từ, MSDU cú thể đƣợc chia thành những phần nhỏ hơn, gọi là cỏc phõn mảnh (fragment). Mỗi một fragment đƣợc mó húa bởi WEP. Một MAC header đƣợc gắn vào phần đầu và từ kiểm tra đƣợc gắn vào phần cuối.
Nhƣ vậy, từ một MSDU ban đầu sẽ đƣợc phõn chia ra thành cỏc phần dữ liệu nhỏ hơn (fragment), đồng thời cỏc byte thụng tin khỏc cũng đƣợc thờm vào chứ khụng chỉ cú mỗi phần dữ liệu đƣợc mó húa. Mỗi phần nhỏ đú đƣợc gọi là một MPDU.
Quỏ trỡnh này coi dữ liệu nhƣ một khối gồm cỏc byte, độ lớn tựy theo MSDU ban đầu cũng nhƣ việc chọn lựa độ lớn của fragment, nú thƣờng cú giỏ trị từ 10 đến 1500 byte. Bƣớc đầu tiờn trong quỏ trỡnh mó húa là thờm giỏ trị kiểm tra tớnh toàn vẹn ICV.
Mục đớch của việc sử dụng ICV là để phỏt hiện sự thay đổi nội dung gúi tin