Giáo trình môn An toàn và bảo mật thông tin | Học viện Công nghệ Bưu chính Viễn thông

Giáo trình môn An toàn và bảo mật thông tin của Học viện Công nghệ Bưu chính Viễn thông với những kiến thức và thông tin bổ ích giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả cao cũng như có thể vận dụng tốt những kiến thức mình đã học vào thực tiễn cuộc sống. Mời bạn đọc đón xem!

Thông tin:
157 trang 10 tháng trước

Bình luận

Vui lòng đăng nhập hoặc đăng ký để gửi bình luận.

Giáo trình môn An toàn và bảo mật thông tin | Học viện Công nghệ Bưu chính Viễn thông

Giáo trình môn An toàn và bảo mật thông tin của Học viện Công nghệ Bưu chính Viễn thông với những kiến thức và thông tin bổ ích giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả cao cũng như có thể vận dụng tốt những kiến thức mình đã học vào thực tiễn cuộc sống. Mời bạn đọc đón xem!

127 64 lượt tải Tải xuống
lOMoARcPSD|37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com)
lOMoARcPSD| 37054152
MỤC LỤC
DANH MC CÁC HÌNH ............................................................................................................... 4
DANH MC CÁC THUT NG TING ANH VÀ VIT TT ................................................. 7
M ĐẦU .........................................................................................................................................
8
CHƯƠNG 1. TỔNG QUAN V AN TOÀN BO MT H THNG THÔNG TIN ............... 10
1.1. Khái quát v an toàn thông tin ........................................................................................... 10
1.1.1. An toàn thông tin là gì? ............................................................................................... 10
1.1.2. S cn thiết ca an toàn thông tin ............................................................................... 11
1.1.3. Các thành phn ca an toàn thông tin ......................................................................... 13
1.2. Khái quát v an toàn h thng thông tin ............................................................................. 15
1.2.1. Các thành phn ca h thng thông tin ....................................................................... 15
1.2.2. An toàn h thng thông tin là gì? ................................................................................ 16
1.3. Các yêu cầu ảm bo an toàn h thng thông tin ............................................................... 16
1.3.1. Tính bí mt .................................................................................................................. 16
1.3.2. Toàn vn ...................................................................................................................... 17
1.3.3. Sn dùng ......................................................................................................................
17
1.4. By vùng trong h tng CNTT và các mối e dọa ............................................................. 18
1.4.1. Bảy vùng trong cơ sở h tng CNTT .......................................................................... 18
1.4.2. Các mối e dọa và nguy cơ ......................................................................................... 19
1.5. Mô hình tổng quát ảm bo an toàn h thng thông tin ..................................................... 20
1.5.1. Gii thiu .....................................................................................................................
20
1.5.2. Mt s mô hình ảm bo an toàn h thng thông tin .................................................. 21
1.6. Câu hi ôn tp .................................................................................................................... 22
CHƯƠNG 2. CÁC DNG TN CÔNG VÀ PHN MỀM ĐỘC HI ....................................... 23
2.1. Khái quát v mối e dọa, iểm yếu, l hng và tn công .................................................. 23
2.1.1. Khái nim mối e dọa, iểm yếu, l hng và tn công ............................................... 23
2.1.2. Các dng mối e dọa thường gp ................................................................................ 24
2.1.3. Các loi tn công ......................................................................................................... 25
2.2. Các công c h tr tn công ............................................................................................... 25
2.2.1. Công c rà quét l hổng, iểm yếu h thng ............................................................... 26
2.2.2. Công c quét cng dch v .......................................................................................... 27
2.2.3. Công c nghe lén ......................................................................................................... 27
2.2.4. Công c ghi phím gõ ................................................................................................... 28
2.3. Các dng tấn công thường gp ........................................................................................... 29
2.3.1. Tn công vào mt khu ............................................................................................... 29
2.3.2. Tn công bằng mã ộc ................................................................................................ 30
2.3.3. Tn công t chi dch v ............................................................................................. 44
2.3.4. Tn công t chi dch v phân tán .............................................................................. 47
2.3.5. Tn công gi mạo ịa ch ............................................................................................ 49
lOMoARcPSD| 37054152
2.3.6. Tn công nghe lén ....................................................................................................... 50
2.3.7. Tn công kiểu người ứng gia .................................................................................. 51
2.3.8. Tn công bng bom thư và thư rác .............................................................................. 52
2.3.9. Tn công s dng các k thut xã hi ......................................................................... 52
2.3.10. Tn công pharming.................................................................................................... 55
2.3.11. Tn công APT ........................................................................................................... 56
2.4. Các dng phn mềm ộc hi .............................................................................................. 57
2.4.1. Phân loi ...................................................................................................................... 58
2.4.2. Mô t các dng phn mềm ộc hi .............................................................................. 59
2.4.3. Phòng chng phn mềm ộc hi ................................................................................. 64
2.5. Câu hi ôn tp .................................................................................................................... 66
CHƯƠNG 3. ĐẢM BO AN TOÀN THÔNG TIN DA TRÊN HÓA ............................. 67
3.1. Khái quát v mã hóa thông tin ng dng....................................................................... 67
3.1.1. Các khái nim .............................................................................................................. 67
3.1.2. Các thành phn ca mt h hóa ............................................................................. 69
3.1.3. Lch s mã hóa ............................................................................................................ 70
3.1.4. Mã hóa dòngmã hóa khi ...................................................................................... 71
3.1.5. ng dng ca mã hóa.................................................................................................. 72
3.2. Các phương pháp mã hóa ................................................................................................... 72
3.2.1. Phương pháp thay thế .................................................................................................. 72
3.2.2. Phương pháp hoán vị ................................................................................................... 73
3.2.3. Phương pháp XOR ...................................................................................................... 73
3.2.4. Phương pháp Vernam .................................................................................................. 74
3.2.5. Phương pháp sách hoặc khóa chy .............................................................................. 74
3.2.6. Phương pháp hàm băm ................................................................................................ 74
3.3. Các gii thut mã hóa ......................................................................................................... 75
3.3.1. Các gii thuật mã hóa khóa ối xng .......................................................................... 75
3.3.2. Các gii thut mã hóa khóa bất ối xng .................................................................... 83
3.3.3. Các hàm băm ............................................................................................................... 86
3.4. Ch s, chng ch s và PKI ......................................................................................... 91
3.4.1. Ch s .................................................................................................................... 91
3.4.2. Chng ch s ................................................................................................................
95
3.4.3. PKI .............................................................................................................................. 97
3.5. Qun lý khóa và phân phi khóa ........................................................................................ 98
3.5.1. Gii thiu .....................................................................................................................
98
3.5.2. Phân phi khóa bí mt ............................................................................................... 100
3.5.3. Phân phi khóa công khai ......................................................................................... 103
3.6. Mt s giao thức ảm bo ATTT da trên mã hóa .......................................................... 105
3.6.1. SSL/TLS ....................................................................................................................
105
3.6.2. SET ............................................................................................................................
108
3.6.3. PGP............................................................................................................................ 109
lOMoARcPSD|37054152
3.7. Câu hi ôn tp .................................................................................................................. 112
CHƯƠNG 4. CÁC KỸ THUT VÀ CÔNG NGH ĐẢM BO AN TOÀN THÔNG TIN ... 114
4.1. Khái quát v các k thut và công ngh m bo ATTT ................................................. 114
4.2. Kim soát truy cp ............................................................................................................ 115
4.2.1. Khái nim kim soát truy cp .................................................................................... 115
4.2.2. Các bin pháp kim soát truy cp.............................................................................. 116
4.2.3. Mt s công ngh kim soát truy cp ........................................................................ 121
4.3. Tường la ......................................................................................................................... 126
4.3.1. Gii thiệu tường la .................................................................................................. 126
4.3.2. Các loại tường la ..................................................................................................... 128
4.3.3. Các k thut kim soát truy cp ................................................................................ 129
4.3.4. Các hn chế ca tường la ........................................................................................ 130
4.4. Các h thng phát hin và ngăn chặn xâm nhp .............................................................. 130
4.4.1. Gii thiu ...................................................................................................................
130 4.4.2. Phân loi
.................................................................................................................... 131
4.4.3. Các k thut phát hin xâm nhp .............................................................................. 132
4.5. Câu hi ôn tp .................................................................................................................. 134
CHƯƠNG 5. QUẢN LÝ, CHÍNH SÁCH VÀ PHÁP LUT AN TOÀN THÔNG TIN .......... 136
5.1. Qun an toàn thông tin ................................................................................................. 136
5.1.1. Khái quát v qun lý an toàn thông tin...................................................................... 136
5.1.2. Đánh giá rủi ro an toàn thông tin .............................................................................. 137
5.1.3. Phân tích chi tiết ri ro an toàn thông tin .................................................................. 139
5.1.4. Thc thi qun lý an toàn thông tin ............................................................................ 142
5.2. Các chun qun lý an toàn thông tin ................................................................................ 144
5.2.1. Gii thiu ...................................................................................................................
144
5.2.2. Chu trình Plan-Do-Check-Act ................................................................................... 145
5.3. Pháp lut và chính sách an toàn thông tin ........................................................................ 146
5.3.1. Gii thiu v pháp lut và chính sách an toàn thông tin ........................................... 146
5.3.2. Lut quc tế v an toàn thông tin .............................................................................. 147
5.3.3. Lut Vit Nam v an toàn thông tin .......................................................................... 148
5.4. Vấn ề ạo ức an toàn thông tin ..................................................................................... 149
5.4.1. S cn thiết của ạo c an toàn thông tin ............................................................... 149
5.4.2. Mt s b quy tc ng x trong CNTT và ATTT ..................................................... 149
5.4.3. Mt s vấn ề khác.................................................................................................... 150
5.5. Câu hi ôn tp .................................................................................................................. 151
TÀI LIU THAM KHO ........................................................................................................... 152
DANH MỤC CÁC HÌNH
Hình 1.1. Các thuc tính cn bo v ca tài sn thông tin: Bí mt (C), Toàn vn (I) và Sn dùng
(A) .................................................................................................. Error! Bookmark not defined.
lOMoARcPSD|37054152
Hình 1.2. Thng kê và d báo s lượng các thiết b IoT kết ni Internet t 2015 ến 2025 ........... 10
Hình 1.3. S lượng s c mt ATTT báo cáo bởi các quan chính phủ Hoa K giai oạn 2006-
2018 [3] .......................................................................................................................................... 11
Hình 1.4. Các thành phn chính ca An toàn thông tin ................................................................. 12
Hình 1.5. Chu trình qun lý an toàn thông tin................................................................................ 12
Hình 1.6. Chính sách an toàn thông tin .......................................................................................... 13
Hình 1.7. Mô hình h thng thông tin của cơ quan, tổ chc .......................................................... 14
Hình 1.8. Các thành phn ca h thng thông tin và an toàn h thng thông tin .......................... 15
Hình 1.9. Một văn bản ược óng dấu Confidential (Mt) ............................................................... 15
Hình 1.10. Đảm bo tính bí mt bằng ường hm VPN, hoc mã hóa ............................................ 15
Hình 1.11. Minh ha tính sẵn dùng: (a) không ảm bảo và (b) ảm bo tính sn dùng .................... 16
Hình 1.12. By vùng trong h tng CNTT theo mc kết ni mng ............................................... 17
Hình 1.13. Đảm bo ATTT cn cân bng gia mc An toàn, Chi phí và tính Hu dng ............. 19
Hình 1.14. Mô hình ảm bo an toàn thông tin vi by lp ............................................................ 19
Hình 1.15. Mô hình ảm bo an toàn thông tin vi ba lp chính .................................................... 20
Hình 2.1. Phân b l hng bo mt trong các thành phn ca h thng ........................................ 22
Hình 2.2. Phân b l hng bo mt theo mức ộ nghiêm trng ...................................................... 22
Hình 2.3. Báo cáo kết qu quét ca Microsoft Baseline Security Analyzer .................................. 24
Hình 2.4. Kết qu quét website s dng Acunetix Web Vulnerability Scanner ............................ 25
Hình 2.5. Giao din ca công c Zenmap ...................................................................................... 26
Hình 2.6. S dụng Wireshark ể bt gói tin có cha thông tin nhy cm ....................................... 26
Hình 2.7. Mô un Keylogger phần cứng và cài ặt trên máy tính ể bàn ........................................... 27
Hình 2.8. Các vùng b nh cấp cho chương trình ......................................................................... 30
Hình 2.9. Một chương trình minh họa cp phát b nh trong ngăn xếp ........................................ 30
Hình 2.10. Các thành phần ược lưu trong vùng bộ nh trong ngăn xếp ........................................ 31
Hình 2.11. Cp phát b nh cho các biến nh trong vùng b nh trong ngăn xếp ........................ 31
Hình 2.12. Một chương trình minh họa gây tràn b nh ệm trong ngăn xếp ................................ 31
Hình 2.13. Minh ha hiện tượng tràn b nh ệm trong ngăn xếp .................................................. 32
Hình 2.14. Mt shellcode viết bng hp ng và chuyn thành chui tn công ............................. 33
Hình 2.15. Chèn và thc hin shellcode khai thác li tràn b m.................................................. 33
Hình 2.16. Chèn shellcode vi phần ệm bng lnh NOP (N) ........................................................ 33
Hình 2.17. Bản lây nhim sâu Slammer (mu xanh) theo trang www.caida.org vào ngày
25/1/2003 lúc 6h00 (gi UTC) vi 74.855 máy ch b nhim ...................................................... 34
Hình 2.18. Cung cp d liu quá lớn ể gây li cho ng dng........................................................ 36
Hình 2.19. Form ăng nhập (log on) và oạn mã x lý xác thực người dùng ................................... 38
Hình 2.20. Form tìm kiếm sn phẩm và oạn mã x lý tìm sn phm ............................................ 39
Hình 2.21. (a) Th tc bắt tay 3 bước ca TCP và (b) Tn công SYN Flood ............................... 43
Hình 2.22. Mô hình tn công Smurf .............................................................................................. 44
Hình 2.23. Kiến trúc tn công DDoS trc tiếp ............................................................................... 46
Hình 2.24. Kiến trúc tn công DDoS gián tiếp hay phn x .......................................................... 46
Hình 2.25. Minh ha tn công gi mạo ịa ch IP ........................................................................... 48
Hình 2.26. Mt mô hình tn công nghe lén ................................................................................... 49
Hình 2.27. Mô hình chung ca tn công kiu người ứng gia ...................................................... 49
Hình 2.28. Mt kch bn tn công kiểu người ứng gia ................................................................ 50
Hình 2.29. Mt phishing email gi cho khách hàng ca mạng ấu giá eBay .................................. 53
Hình 2.30. Mt phishing email gi cho khách hàng ca ngân hàng Royal Bank .......................... 53
lOMoARcPSD|37054152
Hình 2.31. Tn công pharming "cướp" trình duyt ........................................................................ 54
Hình 2.32. Tn công pharming thông qua tn công vào máy ch DNS ........................................ 55
Hình 2.33. Các dng phn mềm ộc hi .......................................................................................... 57
Hình 2.34. Chèn và gi thc hin mã vi rút ................................................................................... 59
Hình 2.35. Mt email do vi rút gửi ến người dùng ........................................................................ 60
Hình 2.36. Mt mô hình lây lan ca sâu mng .............................................................................. 61
Hình 2.37. Mô hình mô hình giao tiếp gia các thành phn trong botnet ..................................... 62
Hình 2.38. Mô hình tin tc s dụng các máy tính Zombie/Bot ể gửi thư rác ................................ 63
Hình 2.39. Màn hình chính ca Microsoft Windows Defender ..................................................... 64
Hình 3.1. Các khâu Mã hóa và Gii mã ca mt h mã hóa .......................................................... 67
Hình 3.2. Mã hóa khóa ối xng s dng chung 1 khóa bí mt ...................................................... 67
Hình 3.3. Mã hóa khóa bất ối xng s dng mt cp khóa ........................................................... 68
Hình 3.4. Minh họa ầu vào (Input) và ầu ra (Digest) của hàm băm .............................................. 68
Hình 3.5. Các thành phn ca mt h mã hóa ơn giản ................................................................... 69
Hình 3.6. Mô hình phương pháp mã hóa dòng .............................................................................. 70
Hình 3.7. Mô hình phương pháp mã hóa khối ............................................................................... 70
Hình 3.8. Mã hóa bng h mã hóa Caesar cipher .......................................................................... 71
Hình 3.9. Phương pháp thay thế vi 4 b ch .......................................................................... 72
Hình 3.10. Phương pháp hoán vị thc hiện ổi ch các bit ............................................................. 72
Hình 3.11. Phương pháp hoán vị thc hiện ổi ch các ký t ......................................................... 72
Hình 3.12. Ví d mã hóa bằng phương pháp XOR ........................................................................ 72
Hình 3.13. Mã hóa bằng phương pháp Vernam ............................................................................. 73
Hình 3.14. Các khâu mã hóa và gii mã ca DES ......................................................................... 75
Hình 3.15. Th tc sinh các khóa ph t khóa chính ca DES ..................................................... 76
Hình 3.16. Các bước x lý chuyn khi rõ 64 bit thành khi mã 64 bit ca DES ......................... 77
Hình 3.17. Các bước x lý ca hàm Feistel (F) ............................................................................. 77
Hình 3.18. Mã hóa và gii mã vi gii thut 3-DES ...................................................................... 79
Hình 3.19. Các bước x lý mã hóa d liu ca AES ..................................................................... 80
Hình 3.20. Th tc sinh khóa Rijndael .......................................................................................... 81
Hình 3.21. Hàm SubBytes s dng Rijndael S-box ....................................................................... 83
Hình 3.22. Hàm ShiftRows ............................................................................................................ 83
Hình 3.23. Hàm MixColumns ........................................................................................................ 83
Hình 3.24. Hàm AddRoundKey ..................................................................................................... 84
Hình 3.25. Quá trình mã hóa và gii mã trong AES ...................................................................... 84
Hình 3.26. Mô hình nén thông tin của hàm băm............................................................................ 87
Hình 3.27. Phân loại các hàm băm theo khóa sử dng .................................................................. 88
Hình 3.28. Mô hình tng quát x lý d liu của hàm băm ............................................................ 89
Hình 3.29. Mô hình chi tiết x lý d liu của hàm băm ................................................................ 89
Hình 3.30. Lưu ồ x lý mt thao tác ca MD5 .............................................................................. 91
Hình 3.31. Lưu ồ mt vòng x lý ca SHA1 ................................................................................. 92
Hình 3.32. Quá trình to ch ký s và kim tra ch ký s............................................................. 93
Hình 3.33. Giao din kim tra thông tin mt chng ch s ............................................................ 96
Hình 3.34. Ni dung chi tiết ca mt chng ch s ....................................................................... 97
Hình 3.35. Lưu ồ cp và s dng chng ch s trong PKI ............................................................. 99
Hình 3.36. Phân phối khóa iểm iểm .......................................................................................... 102
Hình 3.37. Mô hình hoạt ộng ca trung tâm phân phi khóa KDC .......................................... 103
lOMoARcPSD|37054152
Hình 3.38. Mô hình hoạt ộng ca trung tâm dch chuyn khóa KTC ....................................... 104
Hình 3.39. SSL/TLS trong b giao thc TCP/IP ......................................................................... 107
Hình 3.40. Các giao thc con ca SSL/TLS ................................................................................ 107
Hình 3.41. Mô hình truyn thông gia Web Server và Browser da trên SSL/TLS ................... 108
Hình 3.42. Khi to phiên làm vic trong SSL/TLS.................................................................... 109
Hình 3.43. Quá trình x lý d liu bi SSL Record ti bên gi .................................................. 110
Hình 3.44. Một mô hình tương tác giữa các thc th tham gia SET ........................................... 111
Hình 3.45. Mô hình PGP ch m bo tính xác thực thông iệp ..................................................... 112
Hình 3.46. Mô hình PGP ch m bo tính bí mật thông iệp ......................................................... 113
Hình 3.47. Mô hình PGP ảm bo tính bí mt và xác thực thông iệp ........................................... 114
Hình 4.1. Các k thut và công ngh bo mật trong các lĩnh vực ca ATTT .............................. 116
Hình 4.2. Mô hình ma trn kim soát truy cp ............................................................................ 119
Hình 4.3. Mô hình danh sách kim soát truy cp ......................................................................... 120
Hình 4.4. Mô hình kim soát truy cp Bell-LaPadula ................................................................. 122
Hình 4.5. Một mô hình RBAC ơn giản ........................................................................................ 123
Hình 4.6. Mt s lut của tường la lc gói tin ........................................................................... 124
Hình 4.7. Giao din kim tra thông tin ca mt chng ch s khóa công khai ............................ 126
Hình 4.8. Th thông minh tiếp xúc (a) và th không tiếp xúc (b) ................................................ 126
Hình 4.9. Mt s th bài (Token) ca hãng RSA Security .......................................................... 127
Hình 4.10. Ví iện t (mt dng th bài) ca cng thanh toán trc tuyến Paypal ......................... 127
Hình 4.11. H thng ApplePay tích hợp vào iện thoại di ộng ..................................................... 127
Hình 4.12. (a) Khóa vân tay, (b) Khe xác thc vân tay trên laptop và (c) Xác thc vân tay trên iện
thoi thông minh Samsung .......................................................................................................... 128
Hình 4.13. Quét võng mc nhn dng tròng mt ......................................................................... 128
Hình 4.14. Một tường la phn cng chuyên dng ca Cisco ..................................................... 129
Hình 4.15. Tường la bo v mạng gia ình hoặc văn phòng nhỏ ................................................ 130
Hình 4.16. Tường la bo v các máy ch dch v ..................................................................... 130
Hình 4.17. H thống tường la bo v các máy ch dch v và máy trm .................................. 130
Hình 4.18. Mô hình tường la lc gói (a), Cng ng dng (b) và Cng chuyn mch (c) ........ 131
Hình 4.19. Tường la có trng thái chn gói tin không thuc kết nối ang hoạt ộng ................... 132
Hình 4.20. V trí các h thống IDS và IPS trong sơ ồ mng ........................................................ 133
Hình 4.21. Các NIDS ược b trí giám sát phát hin xâm nhp ti cng vào cho tng phân oạn
mng ............................................................................................................................................. 134
Hình 4.22. S dng kết hợp NIDS và HIDS ể giám sát lưu lượng mng và các host ................. 135
Hình 4.23. Lưu ồ giám sát phát hin tn công, xâm nhp da trên ch ................................. 136
Hình 4.24. Giá tr entropy ca IP ngun ca các gói tin t lưu lượng hp pháp (phn giá tr cao,
u) và entropy ca IP ngun ca các gói tin t lưu lượng tn công DDoS (phn giá tr thp) ... 137
Hình 5.1. Quan h gia các khâu trong qun lý an toàn thông tin ............................................... 140
Hình 5.2. Mô hình ánh giá rủi ro an toàn thông tin...................................................................... 140
Hình 5.3. Chu trình Plan-Do-Check-Act ca ISO/IEC 27001:2005 ............................................ 148
DANH MỤC CÁC THUẬT NGỮ TIẾNG ANH VÀ VIẾT TẮT
Từ
viết tắt
Thuật ngữ tiếng Anh/Giải thích
Thuật ngữ tiếng Việt/Giải thích
lOMoARcPSD| 37054152
AES
Advanced Encryption Standard
Chuẩn mã hóa tiên tiến
ATTT
Information Security
An toàn thông tin
CNTT
Information Technology
Công nghệ thông tin
CRC
Cyclic redundancy checks
Kiểm tra dư thừa vòng
DAC
Discretionary Access Control
Kiểm soát truy cập tuỳ chọn
DES
Data Encryption Standard
Chuẩn mã hóa dữ liệu
DNS
Domain Name System
Hệ thống tên miền
FTP
File Transfer Protocol
Giao thức truyền file
HTTT
Information System
Hệ thống thông tin
IDEA
International Data Encryption Algorithm
Giải thuật mã hóa dữ liệu quốc tế
IPSec
Internet Protocol Security
An toàn giao thức Internet
LAN
Local Area Network
Mạng cục bộ
MAC
Mandatory Access Control
Kiểm soát truy cập bắt buộc
MAC
Message Authentication Code
Mã xác thực thông iệp (sử dụng hàm băm
có khóa)
MD
Message Digest
Chuỗi ại diện thông iệp
MDC
Modification Detection Code
Mã phát hiện sử ổi (sử dụng hàm băm
không khóa)
NSA
National Security Agency
Cơ quan mật vụ liên bang Mỹ
PGP
Pretty Good Privacy
Chuẩn bảo mật PGP
PKI
Public Key Infrastructure
Hạ tầng khóa công khai
RBAC
Role-Based Access Control
Kiểm soát truy cập dựa trên vai trò
RSA
RSA Public Key Croptosystem
Hệ mật khóa công khai RSA
SET
Secure Electronic Transactions
Các giao dịch iện tử an toàn
SHA
Secure Hash Algorithm
Giải thuật băm an toàn
SMTP
Simple Mail Transfer Protocol
Giao thức truyền thư iện tử ơn giản
SSH
Secure Shell
Vỏ an toàn
SSL/TLS
Secure Socket Layer / Transport Layer
Security
Bộ giao thức bảo mật SSL / TLS
SSO
Single Sign On
Đăng nhập một lần
WAN
Wide Area Network
Mạng diện rộng
WLAN
Wireless Local Area Network
Mạng cục bộ không dây
lOMoARcPSD| 37054152
MỞ ĐẦU
An toàn thông tin (Information security) là một lĩnh vực tương i mới và ưc quan tâm
trong vài thp k gần ây và phát trin mnh trong khong hơn một thp k qua nh s phát
trin mnh m ca mng Internet các dch v mng trên nn Internet. Tuy nhiên, do
Internet ngày càng m rng gn như không còn khái niệm biên gii quc gia trong
không gian mng, các s c mt an toàn thông tin liên tc xy ra c bit các dng tn
công, xâm nhp các h thng máy tính mng xut hin ngày càng ph biến mức
phá hoi ngày càng nghiêm trng. Vấn m bo an toàn cho thông tin, các h thng
mng tr nên cp thiết mi quan m ca mi quốc gia, quan, tổ chc mỗi người
dùng.
An toàn thông tin ược ịnh nghĩa vic bo v chng truy nhp, s dng, tiết l, sửa i,
hoc phá hy thông tin mt cách trái phép. Dưới mt góc nhìn khác, An toàn thông tin
vic bo v các thuc tính mt, tính toàn vn tính sn dùng ca các tài sản thông tin
trong quá trình chúng ược lưu trữ, x lý, hoc truyn ti. An toàn thông tin có th ược chia
thành ba thành phn chính: An toàn máy tính và d liu, An ninh mng và Qun lý an toàn
thông tin.
Môn hc An toàn và bo mt h thng thông tin là môn học cơ sở chuyên ngành trong
chương trình ào tạo ại hc ngành Công ngh thông tin ca Hc vin Công ngh Bưu chính
Vin thông. Mc tiêu ca môn hc là cung cp cho sinh viên các khái nim và nguyên tắc
bản v m bo an toàn thông tin, an toàn máy tính an toàn h thng thông tin; các
khái nim v nguy gây mt an toàn, các iểm yếu và các l hng bo mt tn ti trong h
thng; các dng tn công, xâm nhập thường gp vào h thng máy tính và mng; các dng
phn mềm c hi; các gii pháp, k thut công c phòng chống, m bo an toàn thông
tin, h thng mng; vấn qun an toàn thông tin, chính sách, pháp luật ạo c an
toàn thông tin.
Vi phm vi môn học cơ sở v an toànbo mt thông tin và h thng, tác gi c
gng trình y nhng vấn sở nht phc v mc tiêu môn hc. Ni dung ca tài liu
bài ging ược biên son thành 5 chương vi tóm tt nội dung như sau:
Chương 1- Tổng quan về an toàn bảo mật hệ thống thông tin gii thiu các khái
nim v an toàn thông tin, an toàn h thng thông tin và các yêu cầu ảm bo an toàn thông
tin, an toàn h thng thông tin. Chương cũng ề cập các nguy cơ, rủi ro trong các vùng ca
h tng công ngh thông tin theo mc kết ni mng. Phn cui của chương giới thiu
hình tổng quát ảm bo an toàn h thng thông tin.
Chương 2- Các dạng tấn công phần mềm ộc hại gii thiu khái quát v mối e dọa,
iểm yếu, l hng tn ti trong h thng tn công. Phn tiếp theo phân tích chi tiết các
dng tấn công in hình vào các h thng máy tính mng, bao gm tn công vào mt
khu, tn công nghe lén, người ng gia, tn công DoS, DDoS, tn công s dng các k
thut xã hội,… Nửa cui của chương ề cập ến các dng phn mềm ộc hi, gồm cơ chếy
nhim, tác hi và phòng chng.
Chương 3 Đảm bảo an toàn thông tin dựa trên hóa gii thiu các khái nim
bn v mt mã, hhóa, các phương pháp mã hóa. Phần tiếp theo của chương trình bày
lOMoARcPSD| 37054152
mt s gii thuật cơ bản của mã hóa khóa ối xng (DES, 3-DES và AES), mã hóa khóa bất
i xứng (RSA), các hàm băm (MD5 và SHA1), chữ ký s, chng ch s và PKI. Phn cui
của chương cp vn qun phân phi khóa, mt s giao thức m bo an toàn
thông tin da trên mã hóa.
Chương 4- Các kỹ thuật và công nghệ ảm bảo an toàn thông tin gii thiu khái quát v
các k thut công ngh m bo an toàn thông tin, vấn kim soát truy cp, các chế
(mô hình) kim soát truy cp mt s công ngh kim soát truy cp ược s dng trên
thc tế. Phn tiếp theo của chương giới thiu v tường la mt trong các k thuật ược s
dng rt ph biến trong m bo an toàn cho h thng máy tính mng. Phn cui của
chương giới thiu v các h thng phát hin và ngăn chặn xâm nhp.
Chương 5 – Quản lý, chính sách pháp luật an toàn thông tin gii thiu mt s khái
niệm cơ bản trong qun lý an toàn thông tin, vấn ề ánh giá ri ro an toàn thông tin và thc
thi qun an toàn thông tin. Ni dung tiếp theo ược cp các chun qun an toàn
thông tin, trong ó giới thiu mt s chun ca b chun ISO/IEC 27000. Phn cui của
chương giới thiu khái quát v các vấn ề chính sách, pháp luật và ạo ức an toàn thông tin.
Tài liệu ược biên son da trên kinh nghim ging dy môn hc An toàn và bo mt h
thng thông tin trong nhiều năm của tác gi ti Hc vin Công ngh Bưu chính Vin thông,
kết hp tiếp thu các óng góp của ng nghip phn hi t sinh viên. Tài liu th ược
s dng làm tài liu hc tp cho sinh viên h i hc ngành Công ngh thông tin. Trong quá
trình biên son hiu chnh, mc tác gi ã rất c gng song không th tránh khi
nhng thiếu sót. Tác gi rt mong mun nhn ược ý kiến phn hi và các góp ý cho các
thiếu sót, cũng như ý kiến v vic cp nht, hoàn thin hơn nữa ni dung ca tài liu.
Hà Nội, Tháng 12 năm 2021
Tác gi
TS. Hoàng Xuân Du
CHƯƠNG 1. TỔNG QUAN VỀ AN TOÀN BẢO MẬT HỆ
THỐNG THÔNG TIN
Chương 1 giới thiệu các khái niệm về an toàn thông tin, an toàn hệ thống thông tin và
các yêu cầu ảm bảo an toàn thông tin an toàn hệ thống thông tin. Chương này cũng
cập các rủi ro nguy trong các vùng của hạ tầng công nghệ thông tin theo mức kết
nối mạng. Phần cuối của chương giới thiệu mô hình tổng quát ảm an toàn hệ thống thông
tin.
1.1. Khái quát về an toàn thông tin
1.1.1. An toàn thông tin là gì?
An toàn thông tin (Information security) vic bo v chng truy nhp, s dng, tiết
l, sửa ổi, hoc phá hy thông tin mt cách trái phép, Vin SAN, Hoa K
(https://www.sans.org/information-security/).
lOMoARcPSD|37054152
Theo cun Principles of Information Security, An toàn thông tin vic bo v các
thuc tính mật, tính toàn vẹn tính sẵn ng ca các tài sn thông tin trong quá trình
chúng ược lưu trữ, x lý, hoc truyn ti. Hình 1.1 minh ha ba thuc tính cn bo v nói
trên ca các tài sn thông tin, bao gm d liu dch v trong tam giác CIA
(Confidentiality - Integrity - Availability).
Hình 1.1. Các thuộc tính cần bảo vệ của tài sản thông tin: Bí mật (C),
Toàn vẹn (I) và Sẵn dùng (A)
An toàn thông tin gồm hai lĩnh vực chính An toàn công nghệ thông tin (Information
technology security, hay IT security) Đảm bảo thông tin (Information assurance). An
toàn công ngh thông tin, hay còn gi là An toàn máy tính (Computer security) là vic m
bo an toàn cho các h thng công ngh thông tin, bao gm các h thng máy tính mng,
chng li các cuc tn công phá hoi. Đảm bo thông tin việc m bo thông tin không
b mt khi xy ra các s cố, như thiên tai, hỏng hóc, trm cp, phá hoại,… Đảm bo thông
tin thường ược thc hin s dng các k thut sao lưu ngoại vi (offsite backup), trong ó dữ
liu thông tin t h thng gc ược sao lưu ra các thiết b lưu trữ vt lý t mt v trí khác.
Một số khái niệm khác trong an toàn thông tin:
Truy cập (Access) vic mt ch thể, người dùng hoc một ối tượng kh năng s
dng, x lý, sửa i, hoc y ảnh hưởng ến mt ch thể, người dùng hoc một i tượng
khác. Trong khi người dùng hp pháp có quyn truy cp hợp pháp ến mt h thng thì tin
tc truy cp bt hợp pháp ến h thng.
Tài sản (Asset) là tài nguyên ca các t chức, cá nhân ược bo v. Tài sn có thtài
sản lô gíc, như một trang web, thông tin, hoc d liu. Tài sn có th là tài sn vt lý, như
hệ thng máy tính, thiết b mng, hoc các tài sn khác.
Tấn công (Attack) là nh ng có ch ý hoc không có ch ý có kh năng gây hại, hoc
làm tha hip các thông tin, h thng các tài sản ược bo v. Tn công th ch ng
hoc th ng, trc tiếp hoc gián tiếp.
1.1.2. Sự cần thiết của an toàn thông tin
Trong những m gần ây, cùng với s phát trin mnh m ca các thiết b di ộng, c
bit là các thiết b IoT, s lượng người dùng mng Internet và s lượng thiết b kết ni vào
mạng Internet tăng trưởng nhanh chóng. Theo thng kê d báo ca trang Statista [3] cho
trên Hình 1.2, s lượng các thiết b kết ni Internet khong 15 t trong m 2015,
tăng lên hơn 26 t vào năm 2019 và dự báo s rất tăng mạnh lên trên 75 t vào năm 2025.
lOMoARcPSD|37054152
Các thiết b IoT kết ni thông minh nn tng cho phát trin nhiu ng dng quan trọng
trong các lĩnh vực của i sng hội, như thành ph thông minh, cng ng thông minh,
ngôi nhà thông minh, các ng dụng giám sát và chăm sóc sức khỏe,…
Hình 1.2. Thng kê và d báo s lượng các thiết b IoT kết ni Internet t 2015 ến 2025
Cùng vi nhng li ích to ln các thiết b kết ni Internet mang li, các s c mt
an toàn thông tin i vi các h thống máy tính, iện thoại di ng thông minh, các thiết b IoT
người dùng cũng tăng vọt. Cũng theo số liu thng ca trang Statista [4] cho trên
Hình 1.3, s lượng các s c mất an toàn thông tin ược thông báo bởi các quan chính
ph Hoa K giai oạn 2006-2015 tăng rất mnh, t 5.503 v vào năm 2006 lên ến 77.183 v
vào năm 2015. Tuy nhiên, trong các năm 2016-2018, s lượng các s c mt an toàn thông
tin ã giảm áng kể ch còn 31.107 v o năm 2018.
lOMoARcPSD|37054152
Hình 1.3. S lượng s c mt ATTT báo cáo bởi các cơ quan chính phủ Hoa K giai
oạn 2006-2018 [3]
Việt Nam, trong báo cáo Tổng kết an ninh mạng năm 2019 dự báo xu hướng
2020 [5], Tập oàn công nghệ Bkav cho biết 20.892 t ồng (tương ương khoảng 902 triu
USD) tng thit hại ước tính do vi rút máy tính các dạng c khác gây ra i với
người dùng Việt Nam trong năm 2019, vượt xa mc 14.900 t ng thit hi do vi rút y
tính các dạng ộc khác trong năm 2018. Dự báo trong năm 2020 các năm tiếp theo,
s lượng s c thit hi do mt an toàn thông tin y ra còn th ln hơn nữa, do s
lượng thiết b kết nối tăng trưởng nhanh chóng nguy cơ từ s bùng phát mnh ca c
phn mềm ộc hại (mã ộc tn công APT s tinh vi hơn, mã ộc không file (Fileless) s là xu
hướng chính, các loại mã ộc botnet, các loại mã ộc mã hóa tng tiền (ransomware), mã ộc
ào tiền ảo…) và các k thut tn công, phá hoi ngày càng tinh vi.
T các s liu nêu trên có th khẳng nh, việc m bo an toàn cho thông tin, máy tính,
h thng mng và các thiết b kết ni khác là rt cn thiết bi 2 lý do: (1) s lượng các thiết
b kết nối Internet tăng nhanh chóng, c bit các thiết b thông minh, IoT (2) s
bùng phát ca các dng phn mềm c hi, các dng tn công mng trên din rộng các
nguy y mất an toàn thông tin. Việc m bo an toàn thông tin không ch cn thiết i
vi các nhân, t chức, quan, doanh nghip còn vấn cp thiết i vi an ninh
quốc gia. Hơn nữa, vic xây dng các gii pháp an toàn thông tin ch thc s hiu qu khi
ược thc hin bài bản, ng bộ, m bo cân bng gia tính an toàn, nh hu dng ca h
thống và chi phí ầu tư cho các biện pháp ảm bo an toàn.
1.1.3. Các thành phần của an toàn thông tin
An toàn thông tin th ược chia thành ba thành phn chính: an toàn máy tính dữ
liệu (Computer & data security), an ninh mạng (Network security) và quản an toàn thông
tin (Management of information security). Ba thành phn ca an toàn thông tin có quan h
mt thiết giao thoa với nhau, trong ó phần chung ca c ba thành phn trên chính sách
an toàn thông tin (Policy) như minh họa trên Hình 1.4.
lOMoARcPSD|37054152
Hình 1.4. Các thành phn chính ca An toàn thông tin
1.1.3.2. An toàn máy tính và dữ liệu
An toàn y tính và d liu là việc m bo an toàn cho h thng phn cng, phn mm
và d liu trên máy tính; m bo cho máy nh có th vận hành an toàn, áp ứng c yêu cu
của người s dng. An toàn máy tính và d liu bao gm các ni dung:
- Đảm bo an toàn h iều hành, ng dng, dch v;
- Vấn ề kim soát truy cp;
- Vấn ề mã hóa và bo mt d liu;
- Vấn ề phòng chng phn mềm ộc hi;
- Việc sao lưu tạo d phòng d liệu, ảm bo d liu lưu trong y tính không b mt
mát khi xy ra s c.
1.1.3.3. An ninh mạng
An ninh mng việc m bo an toàn cho h thng mng các thông tin truyn ti
trên mng, chng li các tn công, m nhp trái phép. Các k thut công c thường
ược s dng trong an ninh mng bao gm:
- Các tường la, proxy cho lc gói tin và kim soát truy cp;
- Mng riêng o và các k thut bo mt thông tin truyền như SSL/TLS, PGP;
- Các k thut h thng phát hiện, ngăn chặn tn công, m nhp; - Vấn giám
sát mng.
1.1.3.4. Quản lý an toàn thông tin
Qun an toàn thông tin vic qun giám sát vic thc thi các biện pháp m
bo an toàn thông tin, giúp nâng cao hiu qu ca chúng. Mt trong các ni dung ct i
ca qun an toàn thông tin vic qun các rủi ro (Risk management), trong ó việc
nhn dạng và ánh giá rủi ro (Risk assessment) óng vai trò then cht. Các ni dung khác ca
qun lý an toàn thông tin, bao gm các chun an toàn thông tin, chính sách an toàn thông
tin và vấn ề ào tạo, nâng cao ý thc an toàn thông tin của người dùng.
Hình 1.5. Chu trình qun lý an toàn thông tin
Vic thc thi qun lý an toàn thông tin cần ược thc hin theo chu trình lp li, t khâu
Lp kế hoch (Plan), Thc thi kế hoch (Implement), Giám sát kết qu thc hin (Monitor)
lOMoARcPSD|37054152
và Hiu chnh kim soát (Control) như minh họa trên Hình 1.5, do các iều kiện bên trong
và bên ngoài thay i theo thi gian.
1.1.3.5. Chính sách an toàn thông tin
Hình 1.6. Chính sách an toàn thông tin
Chính sách an toàn thông tin (Information security policy) là các ni quy, quy ịnh ca
t chc, nhm m bo các biện pháp m bo an toàn thông tin ược thc thi tuân th.
Chính sách an toàn thông tin, như minh họa trên Hình 1.6 gm 3 thành phn:
- Chính sách an toàn mc vt lý (Physical security policy);
- Chính sách an toàn mc t chc (Organizational security policy);
- Chính sách an toàn mc logic (Logical security policy).
Mt d v chính sách an toàn thông tin: tăng cường an toàn cho h thng công ngh
thông tin, mt t chc có th áp dng chính sách xác thc ‘mạnh’ sử dụng các ặc iểm sinh
trắc (Biometrics), như xác thực s dng vân tay thay cho mt khu truyn thng cho h
thng ca ra vào trung tâm d liu, hoc ăng nhập vào h thng máy tính.
1.2. Khái quát về an toàn hệ thống thông tin
1.2.1. Các thành phần của hệ thống thông tin
Hệ thống thông tin (Information system), theo cun sách Fundamentals of Information
Systems Security [2] là mt h thng tích hp các thành phn nhm phc v vic thu thập,
lưu trữ, x thông tin chuyn giao thông tin, tri thc các sn phm s. Trong nn
kinh tế s, h thống thông tin óng vai trò rất quan trng trong hoạt ộng ca các t chức, cơ
quan doanh nghiệp (gi chung t chc). th nói, hu hết các t chức u s dng
các h thng thông tin với các quy khác nhau qun các hot ng ca mình. Hình
1.7 minh ha mô hình mt h thống thông tin iển hình. Trong hình y, mi h thng
thông tin gm ba thành phn chính: (i) Đầu o là thành phn thu thp thông tin, (ii) X
thành phn x thông tin (iii) Đầu ra thành phn kết xut thông tin. H thống
thông tin ược s dụng ơng tác với khách hàng, vi nhà cung cp, với quan chính
quyền, vi c ông với i th cnh tranh. th nêu ra mt s h thống thông tin iển
nh, như các hệ lp kế hoch ngun lc doanh nghip, các máy tìm kiếm và các h thống
thông tin ịa lý.
lOMoARcPSD|37054152
Hình 1.7. Mô hình h thng thông tin của cơ quan, tổ chc
Trong lp các h thng thông tin, h thng thông tin da trên máy tính (Computerbased
information system), hay s dng công ngh y tính thc thi các nhim v lp h
thống thông tin ược s dng rng rãi nht. H thng thông tin da trên máy nh thường
gm các thành phn chính: phn cng (Hardware) thu thập, u trữ, x biu din
d liu; phn mm (Software) chy trên phn cứng x d liu; s d liệu
(Databases) lưu trữ d liu; mng (Networks) h thng truyn dn thông tin/d liu;
các th tc (Procedures) tp hp các lnh kết hp các b phn nêu trên x d
liệu, ưa ra kết qu mong mun.
1.2.2. An toàn hệ thống thông tin là gì?
An toàn hệ thống thông tin (Information systems security) việc m bo các thuc tính
an ninh, an toàn ca h thng thông tin, bao gm tính mật, tính toàn vẹn tính sẵn
dùng. Hình 1.8 minh ha các thành phn ca H thng thông tin da trên máy tính và An
toàn h thng thông tin.
lOMoARcPSD|37054152
Hình 1.8. Các thành phn ca h thng thông tin và an toàn h thng thông tin
1.3. Các yêu cầu ảm bảo an toàn hệ thống thông tin
Như ã trình y trong Mục 1.1.1, việc m bo an toàn thông tin, hoc h thng thông
tin là việc m bo ba thuc tính quan trng ca thông tin, hoc h thng, bao gm tính
mật, tính Toàn vẹn và tính Sẵn dùng. Đây cũng là ba yêu cầu ảm bo an toàn thông tin và
h thng thông tin.
1.3.1. Tính bí mật
Tính mật m bo rng ch người dùng thm quyn mới ược truy nhp thông tin,
h thng. Các thông tin bí mt có th bao gm: (i) d liu riêng ca cá nhân, (ii) các thông
tin thuc quyn s hu trí tu ca các doanh nghiệp hay các quan, tổ chc (iii) các
thông tin liên quan ến an ninh ca các quc gia các chính ph. Hình 1.9 minh ha
một văn bản ược óng dấu Confidential (Mt), theo ó chỉ những người thm quyn (có
th không gồm người to, hoc son thảo văn bản ó) mới ược ọc và ph biến văn bản.
Thông tin mật lưu tr hoc trong quá trình truyn ti cần ược bo v bng c bin
pháp phù hp, tránh b l lt hoc b ánh cắp. Các bin pháp có th s dụng ể m bo tính
bí mt ca thông tin như bảo v vt lý, hoc s dng mt mã. Hình 1.10 minh ha việc ảm
bo tính bí mt bng cách s dng ường hm VPN, hoc mã hóa truyn ti thông tin.
Hình 1.9. Một văn bản ược óng dấu Confidential (Mt)
Hình 1.10. Đảm bo tính bí mt bằng ường hm VPN, hoc mã hóa
1.3.2. Toàn vẹn
lOMoARcPSD|37054152
Tính toàn vn m bo rng thông tin d liu ch có th ược sửa i bi nhng người
dùng thm quyn. Tính toàn vẹn liên quan ến tính hp l (validity) chính xác
(accuracy) ca d liu. Trong nhiu t chc, thông tin và d liu có giá tr rt ln, như bản
quyn phn mm, bn quyn âm nhc, bn quyn phát minh, sáng chế. Mi thay i không
có thm quyn có th ảnh hưởng rt nhiều ến giá tr ca thông tin. Thông tin hoc d liu
là toàn vn nếu nó thỏa mãn ba iều kin: (i) không b thay ổi, (ii) hp l và (iii) chính xác.
1.3.3. Sẵn dùng
Tính sn dùng, sn sàng, hoc kh dụng m bo rng thông tin, hoc h thng có th
truy nhp bởi người ng hp pháp bt c khi nào hyêu cu. Tính sn dùng có th ược
o bằng các yếu t:
- Thi gian cung cp dch v (Uptime);
- Thi gian ngng cung cp dch v (Downtime);
- T l phc v: A = (Uptime) / (Uptime + Downtime);
- Thi gian trung bình gia các s c; - Thi gian trung bình ngừng ể sa cha; - Thi
gian khôi phc sau s c.
Hình 1.11 minh ha nh sn sàng ca mt h thống trong 2 trưng hp: (a) h thng
không m bo tính sn sàng khi có mt s thành phn gp s c (biu din bng biu tượng
có dấu X) do ó không có khả năng phục v tt c các yêu cu của người dùng (người dùng
truy cập ược dch v biu din bằng mũi tên thẳng người dùng không truy cập ưc
dch v biu din bằng mũi tên i ra ”),(b) h thng m bo tính sn sàng khi tt c
các thành phn ca nó hoạt ộng bình thường. Các biện pháp m bo hoặc tăng cường tính
sn sàng cho h thng th k ến như: xây dựng h thng cung cp dch v da trên chui
cân bng ti, hoc nn tảng iện toán ám mây.
Hình 1.11. Minh ha tính sẵn dùng: (a) không ảm bảo và (b) ảm bo tính sn dùng
1.4. Bảy vùng trong hạ tầng CNTT và các mối e dọa
1.4.1. Bảy vùng trong cơ sở hạ tầng CNTT
H tng công ngh thông tin (IT Infrastructure) của các cơ quan, tổ chc, doanh nghip
th quy ln hay nh khác nhau, nhưng thường gm by ng theo mc kết ni
mạng như minh họa trên Hình 1.12.
lOMoARcPSD|37054152
Hình 1.12. By vùng trong h tng CNTT theo mc kết ni mng
Theo ó, các vùng cụ th gm:
- Vùng người dùng (User domain) gồm người dùng h thng, bao gm nhân viên
khách viếng thăm ược cp tài khon truy cp vào h thng;
- Vùng máy trm (Workstation domain) gm các máy tính các thiết b tính toán
ược kết ni mng LAN/WLAN;
- Vùng mng LAN (LAN domain) gm h thng kết ni mng LAN/WLAN c
máy ch ni b;
- Vùng LAN-to-WAN (LAN-to-WAN domain) gm h thng kết ni mng
LAN/WLAN ến mng WAN;
- Vùng mng WAN (WAN domain) là vùng mng din rng, hay mng Internet toàn
cu;
- Vùng truy cp t xa (Remote Access domain) gm các công c h tr người dùng
kết ni t xa ến h thng CNTT ca cơ quan, tổ chc thông qua mng Internet; và
- Vùng h thng/ng dng (Systems/Application domain) gm h thng máy ch cung
cp các dch v mạng, như máy chủ web, DNS, email và dch v iện toán ám mây.
Do mi vùng nêu trên có ặc iểm khác nhau nên chúng các mi e dọa và nguy mất
an toàn thông tin khác nhau. Mc tiếp theo trình bày các mối e dọa và nguy cơ i vi tng
vùng.
1.4.2. Các mối e dọa và nguy cơ
Vùng người dùng
th nói vùng người dùng là vùng có nhiu mi e dọa và nguy nhất do người dùng
có bn chất khó oán ịnh và khó kim soát hành vi. Các vấn ề thường gặp như thiếu ý thc,
coi nh vấn an ninh an toàn, vi phạm các chính sách an ninh an toàn; ưa CD/DVD/USB
vi các file cá nhân vào h thng; ti nh, âm nhc, video trái phép; phá hoi d liu, ng
lOMoARcPSD| 37054152
dng và h thng; các nhân viên bt mãn có th tn công h thng t bên trong, hoc nhân
viên có th tng tin hoc chiếm oạt thông tin nhy cm, thông tin quan trng.
Vùng máy trạm
Vùng máy trạm cũng nhiều mối e dọa nguy do vùng y trạm tiếp xúc trc
tiếp với vùng người dùng. Các nguy thường gp gm: truy nhp trái phép vào máy trm,
h thng, ng dng và d liu; các l hng an ninh trong h iều hành, trong các phn mm
ng dng máy trm; các him ha t vi rút, mã c và các phn mềm ộc hi. Ngoài ra, vùng
máy trạm cũng chịu các nguy cơ do hành vi bị cm t người dùng, như ưa CD/DVD/USB
với các file cá nhân vào h thng; ti nh, âm nhc, video trái phép.
Vùng mạng LAN
Các nguy cơ có thể có ối vi vùng mng LAN bao gm: truy nhp trái phép vào mng
LAN vt , truy nhp trái phép o h thng, ng dng d liu; các l hng an ninh
trong h iều hành các phn mm ng dng máy chủ; nguy từ ngưi dùng gi mo
trong mng WLAN; tính mt d liu trong mng WLAN có th b e dọa do sóng mang
thông tin ca WLAN truyn trong không gian th b nghe trm. Ngoài ra, các hướng
dn cu hình chun cho y ch LAN nếu không ược tuân th nghiêm ngt s dẫn ến
nhng l hng an ninh mà tin tc có th khai thác.
Vùng mạng LAN-to-WAN
Vùng mng LAN-to-WAN là vùng chuyn tiếp t mng ni b ra mng din rng, nên
nguy lớn nht là tin tc t mng WAN th thăm dò và quét trái phép các cng dch
vụ, nguy truy nhập trái phép. Ngoài ra, một nguy cơ khác cần phi xem xét l hng
an ninh trong các b nh tuyến, tường la và các thiết b mng khác.
Vùng mạng WAN
Vùng mng WAN, hay mng Internet vùng mng m, trong ó hu hết d liu ược
truyền i dạng rõ, nên các nguy lớn nht d b nghe trm và d b tn công phá
hoi, tn công t chi dch v (DoS) t chi dch v phân tán (DDoS). K tn công
th t do, d dàng gửi email có ính kèm vi rút, sâu và các phn mềm ộc hi.
Vùng truy nhập từ xa
Trong vùng truy nhp t xa, các nguy iển hình bao gm: tn công kiu vét cn vào
tên người dùng mt khu, tn công vào h thống ăng nhập và kim soát truy cp; truy
nhp trái phép vào h thng CNTT, ng dng và d liu; các thông tin bí mt th b ánh
cắp t xa; và vấn ề rò r d liu do vi phm các tiêu chun phân loi d liu.
Vùng hệ thống và ứng dụng
Trong vùng h thng và ng dụng, các nguy cơ có th bao gm: truy nhp trái phép ến
trung m d liu, phòng máy hoc t cáp; các khó khăn trong quản lý các máy ch vi yêu
cu tính sn dùng cao; các l hng trong qun lý các phn mm ng dng ca h iều hành
máy ch; các vấn an ninh trong các môi trường o của iện toán ám mây; vấn hng
hóc hoc mt d liu.
1.5. Mô hình tổng qt ảm bảo an toàn hệ thống thông tin
1.5.1. Giới thiệu
lOMoARcPSD|37054152
hình tng quát m bo an toàn h thng thông tin Phòng vệ theo chiều sâu
(Defence in Depth). Theo hình y, ta cn to ra nhiu lp bo v, kết hợp tính năng,
tác dng ca mi lớp ể m bo an toàn tối a cho thông tin, hệ thng và mng. Mt lp, mt
công c phòng v riêng r hiện ại, nhưng vẫn không th m bo an toàn. Do vy,
vic to ra nhiu lp bo v có kh năng bổ sung cho nhau là cách làm hiu qu.
Một iểm khác cần lưu ý khi thiết kế và trin khai h thống ảm bo an toàn thông tin là
cn cân bng gia Hữu dụng, Chi phí An toàn, như minh họa trên Hình 1.13Error! R
eference source not found.. H thống m bo an toàn thông tin ch thc s phù hp
hiu qu khi h thống ược bo v t mc an toàn phù hp vn có kh năng cung cấp
các tính năng hu dng cho người dùng, vi chi phí cho m bo an toàn phù hp vi tài
sản ược bo v.
Hình 1.13. Đảm bo ATTT cn cân bng gia mc An toàn, Chi phí và tính Hu dng
1.5.2. Một số mô hình ảm bảo an toàn hệ thống thông tin
Hình 1.14 minh họa mô hình ảm bo an toàn thông tin vi by lp bo v, bao gm lp
chính sách, th tc, ý thc (Policies, procedures, awareness); lp vt (Physical); lp
ngoi vi (Perimeter); lp mng ni b (Internal network); lp host (Host); lp ng dng
(Application) và lp d liệu (Data). Trong mô hình này, truy nhập ược ến ối tượng ích là
dữ liu, tin tc cn phải vượt qua c 7 lp bo v.
Hình
1.14. Mô hình ảm bo an toàn thông tin vi by lp
C th hơn, Hình 1.15 minh ha mô hình phòng v gm 3 lp: lp an ninh t chc, lp
an ninh mng và lp an ninh h thng. Mi lp trên li gm mt s lớp con như sau:
- Lớp an ninh cơ quan/tổ chc (Plant Security), gm 2 lp con:
+ Lp bo v vt lý (Physical Security) có nhim v kim soát các truy nhp vt
ến các trang thiết b h thng và mng.
lOMoARcPSD|37054152
+ Lp chính sách & th tc (Policies & procedures) bao gm các quy trình qun
ATTT, các hướng dn vn hành, qun lý hoạt ộng liên tc và phc hi sau s c.
- Lp an ninh mng (Network Security), gm 2 lp con:
+ Lp bo v vùng hn chế truy nhp (Security cells and DMZ) cung cp các bin
pháp bo v cho từng phân oạn mng.
+ Lớp các ng la, mng riêng ảo (Firewalls and VPN) ược triển khai như iểm truy
nhp duy nhất ến một phân oạn mng.
- Lp an ninh h thng (System Integrity), gm 4 lp con:
+ Lớp tăng cường an ninh h thống (System hardening) m bo việc cài t cu
hình các thành phn trong h thống ảm bo các yêu cu an toàn.
+ Lp qun tr tài khon người dùng (User Account Management) thc hin kim
soát truy cp da trên quyn truy nhập và các c quyn của người dùng.
+ Lp qun lý các bn vá (Patch Management) có nhim v nh k cài ặt các bn
an ninh và các bn cp nht cho h thng.
+ Lp phát hiện và ngăn chặn phn mềm ộc hi (Malware detection and prevention)
có nhim v bo v h thng, chng vi rút và các phn mm ộc hi khác.
Hình 1.15. Mô hình ảm bo an toàn thông tin vi ba lp chính
1.6. Câu hỏi ôn tập
1) An toàn thông tin (Information Security) là gì?
2) Ti sao cn phải ảm bo an toàn cho thông tin?
3) An toàn thông tin gm nhng thành phần cơ bản nào?
4) Đảm bảo thông tin thường ược thc hin bng cách nào?
5) An toàn h thng thông tin là gì?
6) Nêu các yêu cầu ảm bo an toàn thông tin và h thng thông tin.
7) Nêu các mối e dọa và nguy trong vùng ngưi dùng và vùng máy trm trong h tng
CNTT. Tại sao nói vùng người dùng là vùng có nhiều nguy cơ và rủi ro nht?
lOMoARcPSD| 37054152
8) Nêu các mối e dọa nguy trong vùng mng LAN, LAN-to-WAN vùng mng
WAN trong h tng CNTT. Ti sao vùng mng WAN có nguy cơ bị tn công phá hoi
cao?
9) Mô hình tng quát m bo an toàn h thng thông tin là gì?
10) Mô t mt mô hình tổng quát ảm bo an toàn h thng thông tin.
CHƯƠNG 2. CÁC DẠNG TẤN CÔNG VÀ PHẦN MỀM ĐỘC HẠI
Chương 2 giới thiệu khái quát về mối e dọa, iểm yếu, lỗ hổng tồn tại trong hệ thống và
khái niệm tấn công. Phần tiếp theo phân tích chi tiết các dạng tấn công iển hình vào các
hệ thống máy tính mạng, bao gồm tấn công vào mật khẩu, tấn công nghe lén, người ứng
giữa, tấn công DoS, DDoS, tấn công sử dụng các kỹ thuật xã hội,… Nửa cuối của chương
cập ến các dạng phần mềm ộc hại, gồm chế lây nhiễm, tác hại giải pháp phòng
chống.
2.1. Khái quát về mối e dọa, iểm yếu, lỗ hổng và tấn công
2.1.1. Khái niệm mối e dọa, iểm yếu, lỗ hổng và tấn công
Mối e dọa (Threat) là bt k một hành ộng nào có th y hư hại ến các tài nguyên h
thng. Các tài nguyên h thng bao gm phn cng, phn mm, cơ sở d liu, các file, d
liu, hoc h tng mng vật lý,…
Các iểm yếu hệ thống (System weaknesses) các li hay các khiếm khuyết tn ti
trong h thng. Nguyên nhân ca s tn tại các iểm yếu có th do li thiết kế, lỗi cài ặt, li
lp trình, hoc li qun tr, cu hình hoạt ộng. Các iểm yếu có th tn ti trong c các
un phần cứng và các mô un phần mm. Mt s iểm yếu ược phát hiện và ã ược khc phc.
Tuy nhiên, có mt s iểm yếu ược phát hiện nhưng chưa ược khc phc, hoặc các iểm yếu
chưa ược phát hin, hoc ch tn ti trong một iều kiện ặc biệt nào ó.
Lỗ hổng bảo mật (Security vulnerability) là một iểm yếu tn ti trong mt h thng cho
phép tin tc khai thác y tn hại ến các thuc tính an ninh ca h thống ó, bao gm tính
toàn vn, tính mt, tính sn dùng. Nói chung, l hng bo mt tn ti trong tt c các
thành phn ca h thng, bao gm phn cng, h iều hành các phn mm ng dng.
Theo s liu thng kê t Cơ sở d liu l hng quc gia Hoa K [6], trong năm 2014, phân
b l hng bo mật ược phát hin trên các thành phn ca h thng ln lượt phn cng
4%, h iều hành 13% và phn mm ng dng 83%, như minh ha trên Hình 2.1. N
vậy, có th thy các l hng bo mt ch yếu xut hin trong h thng phn mm và phn
ln tn ti trong các phn mm ng dng.
Ph thuc vào kh ng bị khai thác, các l hng bo mt mức nghiêm trng
(severity) khác nhau. Theo Microsoft, có 4 mức nghiêm trng ca các l hng bo mt:
nguy hiểm (Critical), quan trọng (Important), trung bình (Moderate) thấp (Low). Tuy
nhiên, mt s t chc khác ch phân loi các l hng bo mt theo 3 mức nghiêm trng:
cao (High), trung bình (Medium) và thấp (Low). Cũng theo số liu thng kê m 2014 t
[6] cho trên Hình 2.2, các l hng có mức ộ nghiêm trng cao chiếm 24%, các l hng có
mức nghiêm trng trung bình chiếm 68% và các l hng có mức nghiêm trng thp ch
lOMoARcPSD|37054152
chiếm 8%. Như vậy, ta th thấy, a số các l hng bo mt mức nghiêm trng t
trung bình tr lên và cần ược xem xét khc phc càng sm càng tt.
Hình 2.1. Phân b l hng bo mt trong các thành phn ca h thng
Hình 2.2. Phân b l hng bo mt theo mức ộ nghiêm trng
Tấn công (Attack)mt, hoc mt chuỗi các hành ng vi phm các chính sách an ninh
an toàn của quan, tổ chc, y tn hại ến các thuc tính mt, toàn vn sn dùng
ca thông tin, h thng mng. Mt cuc tn công vào h thng y tính hoc các tài
nguyên mng thường ược thc hin bng cách khai thác các l hng tn ti trong h thng.
Như vậy, tn công ch th tr thành hin thc nếu s tn tại ng thi ca mối e dọa
và l hng, hay có th nói:
Tn công = Mối e dọa + L hng
Như vậy, mối e dọa l hng bo mt quan h hu với nhau: Các mối e dọa
thường khai thác mt hoc mt s l hng bo mật ã biết thc hin các cuc tn công phá
hoại. Điều này có nghĩa là nếu tn ti mt l hng trong h thng, s có kh năng mt mối
e dọa tr thành hin thc. Nói chung, không th triệt tiêu ược hết các mối e dọa do ó là yếu
t khách quan, nhưng thể gim thiu các l hổng, qua ó giảm thiu kh năng bị khai
thác ể thc hin tn công.
2.1.2. Các dạng mối e dọa thường gặp
Trên thc tế, không phi tt c các mối e dọa ều là ác tính hay ộc hi (malicious). Mt
s mối e dọa là ch ng, c ý, nhưng một s khác ch là ngu nhiên, hoc vô tình.
Các mối e dọa thường gặp ối vi thông tin, h thng và mng:
lOMoARcPSD| 37054152
- Phn mềm ộc hi
- K tn công bên trong
- K tn công bên ngoài
- Hư hỏng phn cng hoc phn mm
- Mt trm các thiết b
- Tai ha thiên nhiên
- Gián iệp công nghip - Khng b phá hoi.
2.1.3. Các loại tấn công
Có th chia tn công theo mục ích thc hin thành 4 loi chính như sau:
- Gi mo (Fabrications): Tn công gi mạo thông tin thường ược s dụng ánh lừa
người dùng thông thường;
- Chn bt (Interceptions): Tn công chn bắt thường liên quan ến vic nghe lén trên
ường truyn và chuyển hướng thông tin ể s dng trái phép;
- Gây ngt quãng (Interruptions): Tn công gây ngt quãng làm ngt, hoc chm kênh
truyn thông, hoc làm quá ti h thống, ngăn cản vic truy nhp dch v ca người
dùng hp pháp;
- Sửa ổi (Modifications): Tn công sửa ổi liên quan ến vic sửa ổi thông tin trên ường
truyn hoc sửa ổi d liu file.
Theo hình thc thc hin, có th chia các loi tn công thành 2 kiu chính như sau:
- Tn công ch ng (Active attacks): Tn công ch ng một t nhp, xâm nhp
(intrusion) v mt vt vào h thng, hoc mng. Các tn công ch ng thc hin
sửa i d liệu trên ường truyn, sửa i d liu trong file, hoc giành quyn truy nhp
trái phép vào máy tính hoc h thng mng.
- Tn công th ng (Passive attacks): Tn công th ộng thường không gây ra thay i
trên h thng. Các tn công th ộng iển hình là nghe trm và giám sát lưu lượng trên
ường truyn.
Trên thc tế, tn công th ộng thường giai oạn ầu ca tn công ch ng, trong ó tin
tặc s dng các k thut tn công th ộng thu thp các thông tin v h thng, mạng,
trên sở thông tin ược s la chn k thut tn công ch ng xác sut thành công
cao nht.
2.2. Các công cụ hỗ trợ tấn công
Các công c h tr tn công (Attacking assistant tools) là các công c phn cng, phn
mm, hoc các k thut h tr k tn công, tin tc (attacker) thu thp các thông tin v các
h thng y tính, hoc mng. Trên sở các thông tin thu ược, tin tc s la chn công
c, k thut tn công xác sut thành công cao nht. Các công c h tr tn công bao
gm 4 nhóm chính: công c quét iểm yếu, l hng bo mt, công c quét cng dch v,
công c nghe lén và công c ghi phím gõ.
2.2.1. Công cụ rà quét lỗ hổng, iểm yếu hệ thống
lOMoARcPSD|37054152
Các công c rà quét các iểm yếu h thng và l hng bo mt có th ược người qun tr
s dụng ch ng quét các h thng, nhm tìm ra các iểm yếu l hng bo mt tn
ti trong h thng. Trên sở kết qu quét, phân tích xut áp dng các bin pháp
khc phc phù hp. Mt khác, các công c y cũng thể ược k tn công s dụng
quét h thng da trên kết qu quét iểm yếu, l hng quyết nh dng tn công
kh năng thành công cao nhất. Các công c bao gm, các công c rà quét l hng bo mt
h thng, và các công c rà quét l hng ng dng web, hay các trang web.
2.2.1.1. Công cụ rà quét lỗ hổng bảo mật hệ thống
Các công c quét l hng bo mt h thng cho phép quét h thng, tìm các iểm
yếu và các l hng bo mật. Đồng thời, chúng cũng cung cấp phn phân tích chi tiết từng
iểm yếu, l hng, m theo hướng dn khc phc, sa cha. Các công c ược s dng
rng rãi là Microsoft Baseline Security Analyzer (Hình 2.3) cho rà quét các h thng chy
h iều hành Microsoft Windows và Nessus Vulnerability Scanner cho rà quét các h thng
chy nhiu loi h iều hành khác nhau.
Hình 2.3. Báo cáo kết qu quét ca Microsoft Baseline Security Analyzer
2.2.1.2. Công cụ rà quét lỗ hổng ứng dụng web
Các công c quét l hng ng dng web cho phép rà quét, phân tích các trang web,
tìm các li và l hng bo mật. Chúng ng h tr phân tích tình trng các lỗi tìm ược, như
các lỗi XSS, li chèn SQL, li CSRF, li bo mật phiên,… Các công cụ ược s dng
ph biến bao gm Acunetix Web Vulnerability Scanner (Hình 2.4), IBM AppScan, Beyond
Security AVDS và SQLmap.
lOMoARcPSD|37054152
Hình 2.4. Kết qu quét website s dng Acunetix Web Vulnerability Scanner
2.2.2. Công cụ quét cổng dịch vụ
Các công c quét cng dch v (Port scanner) cho phép quét các cng, tìm các cng ang
mở, ang hoạt ộng, ồng thi tìm các thông tin v ng dng, dch v và h iều hành ang hoạt
ng trên h thng. Da trên thông tin quét cng dch v, th xác nh ược dch v, ng
dụng nào ang chạy trên h thng:
- Cng 80/443 m có nghĩa là dịch v web ang hoạt ộng;
- Cng 25 m nghĩa dịch v gi/nhận email SMTP ang hoạt ng; - Cng 1433
m nghĩa y ch Microsoft SQL Server ang hoạt ng; - Cng 53 m nghĩa
là dịch v tên miền DNS ang hoạt ộng,...
Các công c quét cng dch v ược s dng ph biến bao gm: Nmap, Zenmap,
Portsweep, Advanced Port Scanner, Angry IP Scanner, SuperScan và NetScanTools. Hình
2.5 giao din ca công c quét cng dch v Nmap/ Zenmap mt trong các công c
quét cng dch v ược s dng rng rãi. Nmap cung cp tp lnh quét rt mnh. Tuy
nhiên, Nmap tương ối khó dùng do ch h tr giao din dòng lnh.
2.2.3. Công cụ nghe lén
Công c nghe n (Sniffer) cho phép bắt các gói tin khi chúng ược truyn trên mng.
Công c nghe lén có th là mô un phần cng, phn mm hoc kết hp. Các thông tin nhy
cảm như thông tin tài khon, th tín dng, hoc mt khu nếu không ược mã hóa thì có th
b k tấn công nghe lén khi ược truyn t máy trạm ến y ch b lm dng. Mt s
công c phn mm cho phép bt gói tin truyn trên mng:
- Tcpdump
- Wireshark (minh ha trên Hình 2.6)
- Pcap / Wincap / Libcap (Packet capture) - IP Tools (http://www.softpedia.com).
lOMoARcPSD|37054152
Hình 2.5. Giao din ca công c Zenmap
Hình 2.6. S dụng Wireshark ể bt gói tin có cha thông tin nhy cm
2.2.4. Công cụ ghi phím gõ
Công c ghi phím gõ (Keylogger) mt dng công c giám sát bng phn cng hoc
phn mm có kh năng ghi lại mọi phím người dùng gõ và lưu vào một file. File ã ghi sau
ó có thể ược gi cho k tấn công theo a ch ch ịnh trước hoc sao chép trc tiếp. Ngoài
k tấn công, người quản lý cũng có thể cài t Keylogger vào y tính ca nhân viên theo
dõi hoạt ng ca các nhân viên. Việc cài t Keylogger th ược thc hiện tương ối ơn
lOMoARcPSD|37054152
giản: Hình 2.7 minh ha một Keylogger dưới dng mt khp ni phn cng kết ni cng
bàn phím với u ni bàn phím, h tr c giao din cng bàn phím PS/2 USB. Vi
Keylogger phn mm, k tn công th ch hp Keylogger vào mt phn mềm thông
thường và lừa người dùng cài ặt vào máy tính ca mình.
Hình 2.7. Mô un Keylogger phn cng và cài ặt trên máy tính ể bàn
2.3. Các dạng tấn công thường gặp
Các dng tấn công thưng gp các dng tấn công iển hình, xảy ra thường xuyên nhm
vào các h thng máy tính, h thng mạng và người dùng. Các dng tn công thường gp
bao gm:
- Tn công vào mt khu
- Tn công bằng mã ộc
- Tn công t chi dch v
- Tn công t chi dch v phân tán
- Tn công gi mạo ịa ch
- Tn công nghe lén
- Tn công kiu người ứng gia
- Tn công bằng bom thư và thư rác
- Tn công s dng các k thut xã hi - Tn công pharming - Tn công APT.
Phn tiếp theo ca mc này trình bày chi tiết v các dng tấn công thường gp nêu trên
và các bin pháp phòng chống tương ứng.
2.3.1. Tấn công vào mật khẩu
2.3.1.1. Giới thiệu
Tn công vào mt khu (Password attack) là dng tn công nhằm ánh cắp mt khu và
thông tin tài khon của người dùng lm dụng. Tên người dùng mt khu không ược
hóa th b ánh cắp trên ường truyn t y khách ến máy ch, hoc các thông tin
này có th b ánh cp thông qua các dng tn công XSS, hoc lừa o, by người dùng cung
cấp thông tin. Đâymột trong các dng tn công ph biến nht do hu hết các ng dng
s chế xác thực người dùng dựa trên tên người dùng, hoc email mt khu. Nếu k
tấn công có tên người dùng và mt khu thì hn có th ăng nhập vào tài khon và thc hiện
các thao tác như người dùng bình thường.
2.3.1.2. Mô tả
Có th chia tn công vào mt khu thành 2 dng:
lOMoARcPSD| 37054152
- Tn công da trên t iển (Dictionary attacks): Dng tn công này khai thác vấn
người dùng xu hướng chn mt khu các t ơn giản cho d nh. K tn công
th các t có tn sut s dng cao làm mt khu trong t iển, nh vậy tăng khả năng
thành công.
- Tn công vét cn (Brute force attacks): Dng vét cn s dng t hp các t
th t ng. Phương pháp y thường ược s dng vi các mt khu ã ược hóa.
K tn công sinh t hp t, sau ó hóa với cùng thut toán h thng s
dng, tiếp theo so sánh chui mã hóa t t hp ký t vi chui mt khu mã hóa thu
thập ược. Nếu hai bn mã trùng nhau thì t hp ký t là mt khu.
2.3.1.3. Phòng chống
Để m bo an toàn cho mt khu, cn thc hin kết hp các bin pháp sau:
- Chn mt khẩu mnh: Mt khu mạnh cho người dùng thông thường cần có ộ dài
lớn hơn hoặc bng 8 t, gm t hp ca 4 loi ký t: ch cái hoa, ch cái thường,
ch s t c bit (?#$...). Mt khẩu cho người qun tr h thng cn dài
lớn hơn hoặc bng 10 t cũng với các loi t như mật khu cho người dùng
thông thường.
- Định k thay i mt khu. Thi hạn i mt khu y thuc o chính sách an ninh
của cơ quan, tổ chc, có th là 3 tháng, hoc 6 tháng.
- Mt khẩu không nên lưu dạng (plaintext). Nên u mt khu dạng ã hóa
s dụng hàm băm một chiu.
- Hn chế trao ổi tên ngưi dùng và mt khu trên kênh truyền không ược mã hóa.
- Nên hn chế s lần ăng nhập li, chng hn nếu người dùng c gắng ăng nhập vi
thông tin sai 3 ln liên tc s b khóa tài khon trong mt khong thi gian.
2.3.2. Tấn công bằng mã ộc
2.3.2.1. Giới thiệu
Tn công bằng c (Malicious code attacks) dng tn công s dụng các c
(Malicious code) làm công c tn công h thng nn nhân. Tn công bằng c có th
chia thành 2 loi:
- Khai thác các l hng v lp trình, l hng cu hình h thống ể chèn và thc hin
c trên h thng nn nhân. Loi tn công này li gm 2 dng:
+ Tn công khai thác li tràn b m (Buffer Overflow)
+ Tn công khai thác li không kiểm tra ầu vào, gm tn công chèn SQL (SQL
Injection) và tn công s dng mã script, kiu XSS, CSRF.
- Lừa người s dng tải, cài ặt và thc hin các phn mm ộc hại, như:
+ Các phn mm quảng cáo (Adware), gián iệp (Spyware) + Vi
rút
+ Zombie/Bot
+ Trojan
lOMoARcPSD|37054152
Dng tn công lừa người s dng tải, cài ặt và thc hin các phn mềm ộc hi s ược ề
cp Mc 2.4. Mc này ch yếu ề cp v tn công khai thác li tràn b m, tn công khai
thác li không kiểm tra ầu vào, trong ó tập trung phân tích dng tn công chèn mã SQL.
2.3.2.2. Tấn công khai thác lỗi tràn bộ ệm
a. Gii thiu và nguyên nhân
Li tràn b m (Buffer overflow) là mt trong các lỗi thường gp trong các h iều hành
và ặc bit nhiu các phn mm ng dng [6]. Li tràn b m xy ra khi mt ng dng c
gng ghi d liệu vượt khi phm vi ca b nh m, gii hn cui hoc c gii hạn u
ca b m. Li tràn b m th khiến ng dng ngng hoạt ng, gây mt d liu hoc
thm chí giúp k tn công chèn, thc hiện ộc kim soát h thng. Li tràn b m
chiếm mt t l ln trong s các li y l hng bo mt [6]. Tuy nhiên, trên thc tế không
phi tt c các li tràn b ệm ều có th b khai thác bi k tn công.
Li tràn b m xut hin trong khâu lp trình phn mm (coding) trong quy trình phát
trin phn mm. Nguyên nhân ca li tràn b m là người lp trình không kim tra, hoc
kiểm tra không ầy ủ các d liệu u vào np vào b nh m. Khi d liu có kích thước quá
ln hoặc có nh dng sai ược ghi vào b nh m, nó s y tràn và có th ghi è lên các tham
số thc hiện chương trình, có thể khiến chương trình bị li và ngng hoạt ng. Mt nguyên
nhân b sung khác là vic s dng các ngôn ng với các thư viện không an toàn, như hợp
ng, C và C++. b. chếy tràn và khai thác
* Cơ chếy tràn
Trên hu hết các nn tng, khi mt ng dụng ược np vào b nh, h iều hành cp phát
các vùng nh tải và u dữ liu của chương trình. Hình 2.8 minh ha các vùng b nh
cấp cho chương trình, bao gồm vùng lưu mã thực hin (Executable code), vùng lưu dữ liu
toàn cc (Data), vùng b nh cấp phát ộng (Heap) và vùng b nh ngăn xếp (Stack). Vùng
b nh ngăn xếp là vùng nh lưu các tham số gi hàm, th tục, phương thc (gọi chung là
hàm hay chương trình con) d liu cc b ca chúng. Vùng nh cp phát ng vùng
nh chung lưu dữ liu cho ng dng, ược cp phát hay gii phóng trong quá trình hoạt ộng
ca ng dng.
Chúng ta s dng vùng b nh ngăn xếp giải thích chế y tràn khai thác li
tràn b m. B nh ngăn xếp ược cấp phát cho chương trình dùng lưu các biến cc b
của hàm, trong ó c biến nh ược gi b m, các tham s nh thc ca m, các
tham s qun ngăn xếp, và a ch tr v (Return address). Địa ch tr v a ch ca lnh
nm kế tiếp li gi hàm chương trình gọi ược t ộng lưu vào ngăn xếp khi hàm ược gi.
Khi vic thc hin m kết thúc, h thng nạp a ch tr v ã lưu trong ngăn xếp o con
tr lnh (còn gi b ếm chương trình) kích hoạt vic quay tr li thc hin lnh kế tiếp
li gi hàm chương trình gọi.
lOMoARcPSD|37054152
Hình 2.8. Các vùng b nh cấp cho chương trình
// nh nghĩa mt hàm
void function(int a, int b, int
c){ char buffer1[8]; char
buffer2[12];
}
// chương trình chính int
main(){ function(1,2,3); //
gi hàm }
Hình 2.9. Một chương trình minh họa cp phát b nh trong ngăn xếp
Hình 2.9 một oạn chương trình gồm mt hàm con (function()) và mt m chính
(main()) minh ha cho vic gi làm cp phát b nh trong vùng nh ngăn xếp. Hàm
function()3 tham s hình thc kiu nguyên và kê khai 2 biến cc b buffer1buffer2
kiu xâu t. Hàm chính main() ch cha li gọi ến hàm function() vi 3 tham s thc.
Hình 2.10 biu din vic cp pháp b nh cho các thành phần trong ngăn xếp: các tham s
gọi hàm ược lưu vào Function Parameters, ịa ch tr v ược lưu vào ô Return Address, giá
tr con tr khung ngăn xếp ược u vào ô Save Frame Pointer và các biến cc b trong hàm
ược lưu vào Local Variables. Hình 2.11 minh ha chi tiết vic cp phát b nh cho các
biến trong ngăn xếp: ngoài ô a ch tr v (ret) con tr khung (sfp) ược cp c nh
gia, các tham s gọi hàm ược cp các ô nh bên phi (phía áy ngăn xếp bottom of stack)
và các biến cc b ược cp các ô nh bên trái (phía ỉnh ngăn xếp top of stack).
lOMoARcPSD|37054152
Hình 2.10. Các thành phần ược lưu trong vùng bộ nh trong ngăn xếp
Hình 2.11. Cp phát b nh cho các biến nh trong vùng b nh trong ngăn xếp
// nh nghĩa mt hàm void
function(char *str){
char buffer[16];
strcpy(buffer, str);
}
// chương trình chính
int main(){ char
large_string[256]; int
i;
for (i = 0; i < 255; i++){
large_string[i] = ‘A’;
}
function(large_string);
}
Hình 2.12. Một chương trình minh họa gây tràn b nh ệm trong ngăn xếp
Hình 2.12 là một oạn chương trình minh họa gây tràn b nh ệm trong ngăn xếp. Đoạn
chương trình y gồm m con function() m chính main(), trong ó m function()
nhn mt con tr xâu ký t str m ầu vào. Hàm này khai báo 1 biến buffer kiu xâu ký t
với ộ dài 16 byte. Hàm này s dụng hàm thư viện strcpy() sao chép xâu ký t t con tr
str sang biến cc b buffer. Hàm chính main()khai mt xâu ký t large_string với dài
256 byte và s dng mt vòng lặp ể iền yu large_string bng t ‘A’. Sau ó main()
gi hàm function() vi tham s u vào là large_string.
lOMoARcPSD|37054152
th thy oạn chương trình biểu din trên Hình 2.12 khi ược thc hin s y tràn
trong biến nh buffer ca m function() do tham s truyn vào large_string có kích thước
256 byte lớn hơn nhiều so vi buffer có kích thước 16 byte và hàm strcpy() không h thc
hin vic kim tra kích thước d liu vào khi sao chép vào biến buffer. Như minh ha trên
Hình 2.13, ch 16 byte ầu tiên ca large_string ược lưu vào buffer, phn còn lại ược ghi è
lên các ô nh khác trong ngăn xếp, bao gm sfp, ret và c con tr xâu u vào str. Ô nh
chưa ịa ch tr v ret b ghi è và giá trị a ch tr v mới là ‘AAAA’ (0x41414141). Khi kết
thúc thc hiện m con function(), chương trình tiếp tc thc hin lnh tại a ch
0x41414141. Đây không phải a ch ca lệnh chương trình phải thc hiện theo lôgic ã
nh ra t trước.
Hình 2.13. Minh ha hiện tượng tràn b nh ệm trong ngăn xếp
Như vậy, li tràn b m xy ra khi d liu np vào biến nh (gi chung b m)
kích thước lớn hơn so với kh năng lưu trữ ca b m và chương trình thiếu các c kiểm
tra kích thước nh dng d liu np vào. Phn d liu tràn s ược ghi è lên các ô nh
lin k trong ngăn xếp, như các biến cc b khác, con tr khung, a ch tr v, các biến
tham s u vào,....
* Khai thác li tràn b m
Khi mt ng dng cha l hng tràn b m, tin tc th khai thác bng cách gi
ộc i dng d liệu ến ng dng nhằm ghi è, thay thế a ch tr v vi mục ích tái ịnh
hướng chương trình ến thc hiện oạn mã ộc mà tin tc gửi ến. Đoạn mã c tin tc xây dng
mã máy có th thc hiện ược thường ưc gi là shellcode. Như vậy, th khai thác
li tràn b m, tin tặc thường phi thc hin vic g ri (debug) chương trình (hoc
thông tin t ngun khác) nm chắc chế y lỗi phương pháp qun lý, cp phát
vùng nh ngăn xếp ca ng dng.
shellcode có th ược viết bng hp ng, C, hoc các ngôn ng lp trình khác, sau ó
ược chuyn thành mã máy, ri chuyển ịnh dng thành mt chui d liu và cui cùng ược
gửi ến ng dng. Hình 2.14 minh ha một oạn shellcode viết bng hp ng ưc
chuyển ổi thành mt chuỗi dưi dng hexa làm d liệu ầu vào gây tràn b m và gi thc
hin shell sh trong các h thng Linux hoc Unix thông qua lnh /bin/sh.
Hình 2.15. minh ha vic chèn shellcode, ghi è lên ô nhớ cha a ch tr v ret, tái nh
hướng vic tr v t chương trình con, chuyển ến thc hin shellcode ược chèn vào.
Trên thc tế, tăng khả năng oạn shellcode ược thc hiện, người ta thưng chèn mt
s lnh NOP (N) vào phần u shellcode phòng kh năng a ch ret mi không tr chính
xác ến ịa ch bắt ầu shellcode, như minh họa trên Hình 2.16. Lnh NOP (No OPeration) là
lnh không thc hin tác v nào c, ch tiêu tn mt s chu k ca b vi x lý.
lOMoARcPSD|37054152
Hình 2.14. Mt shellcode viết bng hp ngchuyn thành chui tn công
Hình 2.15. Chèn và thc hin shellcode khai thác li tràn b m
Hình 2.16. Chèn shellcode vi phần ệm bng lnh NOP (N)
* Ví d v khai thác li tràn b m
Sâu SQL Slammer (mt s tài liu gọi sâu Sapphire) ược phát hin ngày 25/1/2003
lúc 5h30 (UTC) sâu tốc lây lan nhanh nht lúc by gi: y nhim ra khong
75.000 y ch ch trong khoảng 30 phút, như minh họa trên nh 2.17. Sâu Slammer khai
thác li tràn b m trong thành phn Microsoft SQL Server Resolution Service ca h qun
tr cơ sở d liu Microsoft SQL Server 2000.
lOMoARcPSD|37054152
Hình 2.17. Bản ồ lây nhim sâu Slammer (mu xanh) theo trang www.caida.org vào ngày
25/1/2003 lúc 6h00 (gi UTC) vi 74.855 máy ch b nhim
Sâu s dng giao thc UDP với kích thước gói tin 376 byte và vòng lp chính ca sâu
ch gm 22 lnh hp ng. Chu trình hoạt ộng ca sâu SQL Slammer gm:
- Sinh t ộng ịa ch IP;
- Quét tìm các máy có li vi IP t sinh trên cng dch v 1434;
- Nếu tìm ược, gi mt bn sao của sâu ến máy có li;
- Mã ca sâu gây tràn b m, thc thi mã ca sâu và quá trình lp li.
SQL Slammer sâu “lành tính” nó không can thiệp vào h thng file, không thc
hin vic phá hoại hay ánh cắp thông tin h thng b lây nhim. Tuy nhiên, sâu to ra lưu
lượng mng khng l trong quá trình lây nhim, gây tê liệt ường truyn mng Internet trên
nhiu vùng ca thế gii. Do ca SQL Slammer ch ược lưu trong bộ nh y tràn
không ược lưu vào hệ thng file, nên ch cn khởi ng li y là th tm thời xóa
ược sâu khi h thng. Tuy nhiên, h thng cha l hng có th by nhim li nếu nó
gn mt y khác b nhim sâu. Các bin pháp phòng chng trit khác cp nht bn
vá cho b phn mm Microsoft SQL Server 2000. Thông tin chi tiết v sâu SQL Slammer
th m các trang: https://technet.microsoft.com/library/security/ms02-039, hoc
https://www.caida.org/publications/papers/2003/sapphire/sapphire.html. c. Phòng chng
Để phòng chng li tràn b m mt cách hiu qu, cn kết hp nhiu bin pháp. Các
bin pháp có th thc hin bao gm:
- Kim tra th công ngun hay s dng các công c phân tích mã t ộng tìm và
khc phục các iểm có kh năng xảy ra li tràn b ệm, ặc biệt lưu ý ến các hàm x
xâu ký t.
- S dng chế không cho phép thc hin trong d liu DEP (Data Excution
Prevention). chế DEP ược h tr bi hu hết các h iều hành (t Windows XP
các h iều hành h Linux, Unix,…) không cho phép thực hiện mã chương trình
cha trong vùng nh dành cho d liệu. Như vậy, nếu k tn công khai thác li tràn
b ệm, chèn ược mã ộc vào b ệm trong ngăn xếp, mã ộc cũng không th thc hin.
- Ngẫu nhiên hóa sơ ồ a ch cp phát các ô nh trong ngăn xếp khi thc hin chương
trình, nhằm y khó khăn cho việc g ri phát hin v trí các ô nh quan trọng
như ô nhớ chứa ịa ch tr v.
lOMoARcPSD|37054152
- S dụng các chế bo v ngăn xếp, theo ó thêm một s ngu nhiên (canary) phía
trước ịa ch tr v và kim tra s ngẫu nhiên này trước khi tr v chương trình gọi ể
xác ịnh kh năng bị thay ổi ịa ch tr v.
- S dng các ngôn ngữ, thư viện và công c lp trình an toàn. Trong các trường hp
có th, s dng các ngôn ng không gây tràn, như Java, các ngôn ng lp trình trên
Microsoft .Net. Vi các ngôn ng th gây tràn như C, C++, nên sử dng các thư
vin an toàn (Safe C/C++ Libraries) thay thế các thư viện chun có th y tràn.
2.3.2.3. Tấn công khai thác lỗi không kiểm tra ầu vào
a. Gii thiu
Li không kiểm tra u vào (Unvalidated input) mt trong các dng l hng bo mt
ph biến, trong ó ng dng không kim tra, hoc kim tra không ầy các d liu u vào,
nh ó tin tặc th khai thác lỗi tn công ng dng h thng. D liu u vào (Input
data) cho ng dng rất a dạng, th ến t nhiu ngun vi nhiu nh dng khác nhau. Các
dng d liệu ầu vào iển hình cho ng dng:
- Các trường d liu văn bản (text);
- Các lệnh ược truyền qua ịa ch URL ể kích hoạt chương trình;
- Các file âm thanh, hình nh, hoặc họa do người dùng, hoc các tiến trình khác cung
cp;
- Các ối s u vào trong dòng lnh;
- Các d liu t mng hoc t các ngun không tin cy.
Trên thc tế, tin tc có th s dụng phương pháp thủ công, hoc t ng kim tra các
d liệu u vào và th tt c các kh năng có thể khai thác li không kiểm tra ầu vào. Theo
thng kê ca trang web OWASP (http://www.owasp.org), mt trang web chuyên v thông
kê các li bo mt ng dng web, li không kiểm tra u vào luôn chiếm v trí nhóm dẫn ầu
các li bo mt các trang web trong khong 5 năm trở lại ây. b. Tn công khai thác
hai dng chính tn công khai thác li không kim tra u vào: (1) cung cp d liu
quá ln hoặc sai ịnh dạng ểy li cho ng dng, và (2) chèn mã khai thác vào d liu ầu
vào thc hin trên h thng ca nn nhân, nhằm ánh cắp d liu nhy cm hoc thc hin
các hành vi phá hoi. Hình 2.18 minh ha tn công khai thác li không kim tra u vào
dng (1) thông qua vic nhp d liu quá ln, gây li thc hin cho trang web.
lOMoARcPSD|37054152
Hình 2.18. Cung cp d liu quá ln ể gây li cho ng dng
Chúng ta minh ha tn công khai thác li không kim tra u vào dng (2) bng vic
chèn tn công SQL vào d liệu ầu vào, ược thc hin trên h qun tr sở d liu
nhằm ánh cắp, hoc phá hy d liệu trong cơ s d liu. Gi thiết mt trang web tìm kiếm
sn phm s dng câu lệnh SQL sau ể tìm kiếm các sn phm:
"SELECT * FROM tbl_products WHERE product_name like '%" + keyword + "%'"
trong ó tbl_products là bảng lưu thông tin các sản phm, product_name là trường tên sn
phm và keyword là t khóa cung cp t ngưi dùng form tìm kiếm. Nếu người dùng
nhp t khóa là "iPhone 7", khi ó câu lệnh SQL tr thành:
"SELECT * FROM tbl_products WHERE product_name like '%iPhone X%'"
Nếu trong bng sn phm thỏa mãn iều kin tìm kiếm, câu lnh SQL s tr v tp
bn ghi. Nếu không có sn phm nào thỏa mãn iều kin m kiếm, câu lnh SQL s tr v
tp bn ghi rng. Nếu người dùng nhp t khóa "iPhone X';DELETE FROM tbl_products;-
-", khi ó câu lệnh SQL tr thành:
"SELECT * FROM tbl_products WHERE product_name like '%iPhone X';DELETE
FROM tbl_products;--%'"
Như vậy, câu lệnh SQL ược thc hiện trên cơ sở d liu gm 2 câu lnh: câu lnh chọn
SELECT ban u câu lnh xóa DELETE do tin tc chèn thêm. Câu lnh DELETE FROM
tbl_productssẽ xóa tt c các bn ghi trong bng tbl_products. S tin tc th thc
hiện iều này là do hu hết các h qun tr sở d liu cho phép thc hin nhiu câu lnh
SQL theo mẻ (batch), trong ó các câu lệnh ược ngăn cách bởi du (;). Ngoài ra, dấu “--
cui d liu nhập ể loi b hiu lc ca phn lnh còn lại do -” là ký hiệu bắt ầu phn chú
thích ca dòng lnh. Ngoài DELETE, tin tc th chèn thêm các lệnh SQL khác, như
INSERT, UPDATE thc hin vic chèn thêm bn ghi hoc sửa i d liệu theo ý tn
công ca mình.
c. Phòng chng
lOMoARcPSD| 37054152
Bin pháp ch yếu phòng chng tn công khai thác li không kiểm tra ầu vào là lc d
liệu ầu vào. Tt cc d liệu ầu vào, c bit d liu nhp t người dùng và t các ngun
không tin cy cần ược kim tra k lưỡng. Các bin pháp c th bao gm:
- Kiểm tra kích thước vành dng d liệu ầu vào;
- Kim tra s hp lý ca ni dung d liu;
- To các b lọc ể lc b các ký t c bit và các t khóa ca các ngôn ng trong các
trường hp cn thiết mà k tn công có th s dng:
+ Các ký t c bit: *, ', =, --
+ Các t khóa ngôn ng: chng hn vi dng tn công chèn mã SQL, cn lc các t
khóa như SELECT, INSERT, UPDATE, DELETE, DROP.... 2.3.2.4. Tấn công chèn
SQL
a. Khái quát
Tn công chèn mã SQL (SQL Injection) là mt k thut cho phép k tn công chèn mã
SQL vào d liu gửi ến máy ch cui cùng ược thc hin trên máy ch sở d liu.
Tùy vào mức tinh vi, tn công chèn SQL th cho phép k tn công (1) vượt qua
các khâu xác thực người dùng, (2) chèn, sửa i, hoc xóa d liu, (3) ánh cp các thông tin
trong cơ sở d liu (4) chiếm quyền iều khin h thng máy ch sở d liu. Tn công
chèn mã SQL dng tấn công thường gp các ng dng web, các trang web có kết nối
ến cơ sở d liu.
2 nguyên nhân ca l hng trong ng dng nói chung ng dng web nói riêng
cho phép thc hin tn công chèn mã SQL:
- D liệu u vào t người dùng hoc t các ngun khác không ược kim tra hoc kim
tra không k lưỡng;
- S dng các câu lnh SQL ng trong ng dụng, trong ó có thao tác nối d liu người
dùng vi mã lnh SQL gc.
Phn tiếp theo mc y là mô t chi tiết v 4 hành ộng k tn công có th thc hin trên
h thng nn nhân thông qua khai thác li chèn SQL. b. Vượt qua các khâu xác thực
người dùng
Xem xét một form ăng nhập (Log in) oạn x xác thực người dùng u trong
bảng cơ sở d liu tbl_accounts(username, password) cho như trên Hình 2.19.
Nếu người dùng nhập 'admin' vào trường username 'abc123' vào trường password
ca form, x hoạt ộng úng: Nếu tn ti người dùng vi username password k
trên, h thng s cho phép ăng nhập vi thông báo ăng nhập thành công; Nếu không tn
tại người dùng vi usernamepassword ã cung cấp, h thng s t chối ăng nhập và tr
li thông báo li. Tuy nhiên, nếu người dùng nhp aaaa' OR 1=1-- vào trường username
mt chui bt k, chng hạn 'aaaa' vào trường password ca form, x hoạt ng
sai và chui cha câu truy vn SQL tr thành:
SELECT * FROM tbl_accounts WHERE username='aaaa' OR 1=1--' AND
password='aaaa'
lOMoARcPSD|37054152
<! Form ăng nhp -->
<form method="post" action="/log_in.asp">
Tên ăng nhp: <input type=text name="username"><br \>
Mt khu: <input type=password name="password"><br \>
<input type=submit name="login" value="Log In">
</form>
<%
' Mã ASP x lý ăng nhp trong file log_in.asp:
' gi thiết ã kết ni vi CSDL SQL qua i tưng conn và
bng tbl_accounts lưu thông tin ngưi dùng
Dim username, password, sqlString, rsLogin
' ly d liu t form
username = Request.Form("username")
password = Request.Form("password")
' to và thc hin câu truy vn sql
sqlString = "SELECT * FROM tbl_accounts WHERE
username='" & username & "' AND password = '" & password
& "'" set rsLogin = conn.execute(sqlString) if (NOT
rsLogin.eof()) then
' cho phép ăng nhp, bt u phiên làm vic else
' t chi ăng nhp, báo li end
if
%>
Hình 2.19. Form ăng nhập (log on) và oạn mã x lý xác thực người dùng
Câu truy vn s tr v mi bn ghi trong bng do thành phn OR 1=1 làm cho iều kin
trong mệnh ề WHERE tr lên luôn úng và phần kim tra mt khẩu ã bị loi b bi ký hiu
(--). Phn lnh sau ký hiu (--) ược coi là ghi chú và không ược thc hin. Nếu trong bng
tbl_accounts có cha ít nht mt bn ghi, k tn công s luôn ăng nhập thành công vào h
thng.
c. Chèn, sửa ổi, hoc xóa d liu
Xem xét mt form tìm kiếm sn phẩm và oạn mã x lý tìm sn phẩm lưu trong bảng
sở d liu tbl_products(product_id, product_name, product_desc, product_cost) cho như
trên Hình 2.20.
<! Form tìm kiếm sn phm -->
<form method="post" action="/search.asp">
lOMoARcPSD|37054152
Nhp tên sn phm: <input type=text name="keyword">
<input type=submit name="search" value="Search">
</form>
<%
' Mã ASP x lý tìm sn phm trong file search.asp:
' gi thiết ã kết ni vi CSDL SQL server qua connection
' conn và bng tbl_products lưu thông tin sn phm
Dim keyword, sqlString, rsSearch
' ly d liu t form
keyword = Request.Form("keyword") ' to
thc hin câu truy vn SQL sqlString =
"SELECT * FROM tbl_products WHERE
product_name like '%" & keyword & "%'" set
rsSearch = conn.execute(sqlString) if (NOT
rsSearch.eof()) then ' hin th danh sách
các sn phm else
' thông báo không tìm thy sn phm
end if
%>
Hình 2.20. Form tìm kiếm sn phm và oạn mã x lý tìm sn phm
Nếu người dùng nhp chui "Samsung Galaxy S8" vào trường keyword ca form,
x hoạt ộng úng: Nếu m thy các sn phm tên cha t khóa, h thng s hin th
danh sách các sn phm tìm thy; Nếu không tìm thy sn phm nào có tên cha t khóa,
h thng thông o không tìm thy sn phm. Tuy nhiên, nếu người dùng nhp chui
"Samsung Galaxy S8';DELETE FROM tbl_products;--" vào trường keyword ca form,
x lý s hoạt ộng sai và chui cha câu truy vn SQL tr thành:
SELECT * FROM tbl_products WHERE keyword like '%Samsung Galaxy
S8';DELETE FROM tbl_products;--%'
Chui lnh SQL mi gm 2 lnh SQL: câu lnh SELECT tìm kiếm các sn phm
tên cha t khóa "Samsung Galaxy S8" trong bng tbl_products và câu lnh DELETE xóa
tt c các sn phm trong bng tbl_products. S kẻ tn công th làm ược iều y là
do h qun tr sở d liu MS-SQL server nói riêng hu hết các h qun tr s d
liu nói chung cho phép thc hin nhiu lnh SQL theo dùng dấu ; ngăn cách các
lnh. Ký hiu -- dùng ể hy tác dng ca phn lnh còn li nếu có.
Bng th thuật tương tự, k tn công th thay lnh DELETE bng lnh UPDATE
hoặc INSERT ể chnh sa, hoc chèn thêm d liu. Chng hn, k tn công chèn thêm lệnh
UPDATE cp nht mt khu của người qun tr bng cách nhp chui sau làm t khóa
tìm kiếm (gi thiết bng tbl_administrators chứa thông tin người qun tr):
Galaxy S8';UPDATE tbl_administrators SET password=abc123 WHERE username =
lOMoARcPSD| 37054152
'admin';--
Hoc k tn công có th chèn thêm bn ghi vào bng tbl_administrators bng cách nhp
chui sau làm t khóa tìm kiếm:
Galaxy S8';INSERT INTO tbl_administrators (username, password) VALUES
('attacker', 'abc12345');--
d. Đánh cắp các thông tin trong cơ sở d liu
L hng chèn SQL th giúp k tấn ng ánh cắp d liệu trong cơ sở d liu thông
qua mt s bước như sau:
- Tìm l hng chèn mã SQL và thăm dò các thông tin về h qun tr cơ sở d liu:
+ Nhp mt s d liu mẫu ể kim tra mt trang web có cha l hng chèn mã SQL,
như các dấu nháy ơn, dấu --,…
+ Tìm phiên bn máy ch cơ sở d liu: nhp các câu lnh li và kim tra thông báo
li, hoc s dng @@version (vi MS-SQL Server), hoc version() (vi MySQL)
trong câu lnh ghép vi UNION SELECT.
- Tìm thông tin v s lượng kiu d liệu các trường ca câu truy vn hin ti ca
trang web.
+ S dng mệnh ề ORDER BY <s th t của trường>
+ S dng UNION SELECT 1, 2, 3, …
- Trích xut thông tin v các bảng, các trường của sở d liu thông qua các bng
h thng (metadata).
- S dng lệnh UNION SELECT ể ghép các thông tin ịnh trích xut vào câu truy vn
hin ti ca ng dng.
e. Chiếm quyền iều khin h thng máy ch cơ sở d liu
Kh năng y ch cơ sở d liu b chiếm quyền iều khin xy ra khi trang web tn tại
ng thi 2 l hng: (1) l hng cho phép tn công chèn SQL (2) l hng thiết lp
quyn truy nhp cơ sở d liu s dụng người dùng có quyn qun tr truy nhp và thao
tác d liu ca website. Khai thác 2 l hng này, k tn công có th gi thc hin các lnh
h thng ca y ch sở d liu cho phép can thiệp sâu vào sở d liu, h qun tr
sở d liu c h iều hành trên máy ch. Chng hn, h qun tr sở d liu MS-
SQL Server cung cp th tc sp_send_dbmail cho phép gi email t máy ch s d liu
th tc xp_cmdshell cho phép chy các lệnh chương trình cài t trên h iều hành
Microsoft Windows. Sau ây một s d chy các lnh Microsoft Windows thông qua
th tc xp_cmdshell:
EXEC xp_cmdshell 'dir *.exe' : lit kê nội dung thư mục hin thi
EXEC xp_cmdshell 'shutdown /s /t 00' : tt máy ch nn chy h qun tr CSDL
EXEC xp_cmdshell 'net stop W3SVC' : dng hoạt ộng máy ch web
EXEC xp_cmdshell 'net stop MSSQLSERVER' : dng hoạt ộng máy ch CSDL
Ngoài ra, k tn công có th thc hin các thao tác nguy hiểm ến sở d liu nếu
quyn của người qun tr cơ sở d liu hoc qun tr h thng, như:
lOMoARcPSD| 37054152
Xóa c bng (gm c cu trúc): DROP TABLE <tên bng>
Xóa c cơ sở d liu: DROP DATABASE <tên CSDL>
To 1 tài khon mi truy nhp CSDL: sp_addlogin <username> <password>
Đổi mt khu tài khon truy nhp CSDL: sp_password <password> f.
Phòng chng
Do tính cht nguy him ca tn công chèn mã SQL, nhiu giải pháp ã ược ề xut nhm
hn chế tác hại ngăn chặn triệt dng tn công y. Nhìn chung, cn áp dng kết hp
các bin pháp phòng chng tấn công chèn SQL m bo an toàn cho h thng. Các
bin pháp, k thut c th có th áp dng gm:
- Các bin pháp phòng chng da trên kim tra và lc d liệu ầu vào:
+ Kim tra tt c các d liệu ầu vào, c bit d liu nhp t người dùng t các
ngun không tin cy;
+ Kim tra kích thước và ịnh dng d liệu ầu vào;
+ To các b lọc lc b các t c biệt (như *, ‘, =, --) và các t khóa ca ngôn
ng SQL (SELECT, INSERT, UPDATE, DELETE, DROP,....) k tn công
có th s dng:
- S dng th tục cơ s d liu (stored procedures) và cơ chế tham s hóa d liu:
+ Đưa tất c các câu truy vn (SELECT) cp nht, sa, xóa d liu (INSERT,
UPDATE, DELETE) vào các th tc. D liu truyn vào th tc thông qua các
tham s, giúp tách d liu khi mã lnh SQL, nh ó hạn ngăn chn hiu qu tn
công chèn mã SQL;
+ Hn chế thc hin các câu lệnh SQL ộng trong th tc;
+ S dụng chế tham s hóa d liu h tr bi nhiu ngôn ng lp trình web như
ASP.NET, PHP và JSP.
- Các bin pháp phòng chng da trên thiết lp quyn truy nhập người dùng cơ sở d
liu:
+ Không s dụng người dùng có quyn qun tr h thng hoc qun tr cơ sở d liệu
làm ngưi dùng truy nhp d liu. dụ: không dùng ngưi dùng sa (Microsoft
SQL) hoc root (MySQL) m người dùng truy nhp d liu. Ch dùng các người
dùng này cho mục ích quản tr.
+ Chia nhóm người dùng, ch cp quyn vừa ủ truy nhp các bng biu, thc hin
câu truy vn và chy các th tc.
+ Tt nht, không cp quyn thc hin các câu truy vn, cp nht, sa, xóa trc tiếp
trên các bng d liu. Th tc hóa tt c các câu lnh và ch cp quyn thc hin
th tc.
+ Cm hoc vô hiu a (disable) vic thc hin các th tc h thng (các th tc
sở d liu có sn) cho phép can thip vào h qun tr sở d liu và h iều hành
nn.
lOMoARcPSD|37054152
- S dng các công c quét l hổng chèn SQL, như SQLMap, hoặc Acunetix
Vulnerability Scanner ch ng quét, m các l hng chèn SQL bin
pháp khc phc phù hp.
2.3.3. Tấn công từ chối dịch vụ
2.3.3.1. Giới thiệu
Tn công t chi dch v (Denial of Service - DoS) dng tn công nhằm ngăn chặn
người dùng hp pháp truy nhp các tài nguyên mng. Tn công DoS có th ược chia thành
2 loi: (1) tn công logic (Logic attacks) (2) tn công y ngp lt (Flooding attacks).
Tn công logic là dng tn công khai thác các li phn mm làm dch v ngng hoạt ộng,
hoc m gim hiệu năng hệ thng. Tn công DoS s dụng sâu Slammer cp Mc
2.3.2.2 dng tn công khai thác li tràn b m trong phn mềm. Ngược li, trong tn
công gây ngp lt, k tn công gi một lượng ln yêu cu y cn kit tài nguyên h thng
hoặc băng thông ường truyn mng.
nhiu k thut tấn công DoS ã ược phát hin trên thc tế. Các k thut tn công DoS
thường gp bao gm: SYN Flood, Smurf, Teardrop, Ping of Death, Land Attacks, ICMP
Flood, HTTP Flood, UDP Flood,… Trong phạm vi ca môn hc y, chúng ta ch cập
ến 2 k thut ph biến nht là SYN Flood và Smurf. 2.3.3.2. Tấn công SYN flood
a. Gii thiu
Tn công SYN Flood là k thut tấn công DoS khai thác iểm yếu trong th tc bt tay
3 bước (3-way handshake) khi hai bên tham gia truyn thông thiết lp kết ni TCP ể bắt ầu
phiên trao ổi d liu. SYN là bit c iều khin ca giao thc TCP dùng ể ng b s trình t
gói tin. Th tc bt tay khi một người dùng hp pháp thiết lp mt kết ni TCP ến máy
chủ, như minh họa trên hình Hình 2.21 (a) gm 3 bước như sau:
- Người dùng thông qua máy khách gi yêu cu m kết ni (SYN hay SYN-REQ) ến
máy ch;
- Máy ch nhận ược lưu yêu cầu kết ni vào Bng kết ni (Backlog) gi li xác
nhn kết ni SYN-ACK cho máy khách;
- Khi nhận ược SYN-ACK t y ch, y khách gi li xác nhn kết ni ACK ến
máy ch. Khi máy ch nhận ược xác nhn kết ni ACK t máy khách, nó xác nhn
kết ni m thành công, máy ch và máy khách bắt ầu phiên truyn thông TCP. Bn
ghi m kết nối ược xóa khi Bng kết ni.
b. Kch bn tn công
Kch bn tấn công SYN Flood, như minh họa trên Hình 2.21 (b) gồm các bước sau:
- K tn công gi một lượng ln yêu cu m kết ni (SYN-REQ) ến máy nn nhân;
- Nhận ược yêu cu m kết ni, y nạn nhân u yêu cầu kết ni vào Bng kết ni
trong b nh;
- Máy nạn nhân sau ó gửi xác nhn kết ni (SYN-ACK) ến k tn công;
- Do k tn công không gi li xác nhn kết ni ACK, nên máy nn nhân vn phi u
tất c các yêu cu kết nối chưa ược xác nhn trong Bng kết ni. Khi Bng kết ni
b iền ầy thì các yêu cu m kết ni của người dùng hp pháp s b t chi;
- Máy nn nhân chth xóa mt yêu cu kết nối ang mở khi nó hết hn (timedout).
lOMoARcPSD|37054152
Hình 2.21. (a) Th tc bắt tay 3 bước ca TCP và (b) Tn công SYN Flood
Do k tấn công thường s dụng ịa ch IP gi mo, hoặc ịa ch không có thc làm a ch
ngun (Source IP) trong gói tin IP yêu cu m kết ni, nên xác nhn kết ni SYNACK ca
máy nn nhân không th ến ích. Đồng thi, k tn công c tình to mt lượng rt ln yêu
cu m kết ni d dang chúng iền y bng kết ni. Hu qu máy nn nhân không th
chp nhn yêu cu m kết ni ca những người dùng khác. Tn công SYN Flood làm cn
kit tài nguyên b nh (c th là b nh Bng kết ni) ca máy nn nhân, có th làm máy
nn nhân ngng hoạt ộng và gây nghẽn ường truyn mng. c. Phòng chng
Nhiu bin pháp phòng chng tn công SYN Flood ược xuất, nhưng chưa gii pháp
nào kh năng ngăn chặn triệt dng tn công y. Do vy, phòng chng tn công SYN
Flood hiu qu, cn kết hp các bin pháp sau:
- S dng k thut lọc ịa ch gi mo (Spoofed IP Filtering): K thuật này òi hỏi chnh
sa giao thc TCP/IP không cho phép k tn công gi mạo ịa ch;
- Tăng kích thước Bng kết ni: Tăng kích thước Bng kết ni cho phép tăng khả năng
chấp nhn các yêu cu m kết ni;
lOMoARcPSD|37054152
44
Downloaded by Jiisaa Miliana (milihisa22@gmail.com)
Gim thi gian ch (SYN-RECEIVED Timer): Các yêu cu m kết nối chưa ược
xác nhn s b xóa sớm hơn khi thi gian ch ngắn hơn;
- SYN cache: Mt yêu cu m kết ni ch ược cp phát không gian nh y khi
ược xác nhn;
- S dụng tường la (Firewall) và Proxy: ng la proxy có kh năng nhận dng
các a ch IP nguồn a ch không thực, ng thi chúng kh năng tiếp nhn
yêu cu m kết ni, ch ến khi có xác nhn mi chuyn cho máy ch ích.
2.3.3.3. Tấn công Smurf
a. Gii thiu
Tn công Smurf là dng tn công DoS s dng giao thức iều khin truyn (ICMP)
kiu phát quảng nh hướng y ngp lụt ường truyn mng ca máy nn nhân. Trên
mi phân vùng mạng IP thường 1 a ch quảng bá, theo ó khi một gói tin gi tới a
ch này, nó s ược router ca mng chuyển ến tt c các máy trong mng ó.
Hình 2.22. Mô hình tn công Smurf
b. Kch bn tn công
Hình 2.22 minh ha hình tấn công DoS Smurf. Theo ó, kịch bn tn công Smurf
gồm các bước:
- K tn công gi một ng ln gói tin cha yêu cu ICMP (Ping) với a ch IP nguồn
a ch ca máy nạn nhân ến một a ch qung (IP Broadcast address) ca mt
mng;
- Router ca mng nhận ược yêu cu ICMP gửi ến a ch qung s t ng chuyn
yêu cầu này ến tt c các máy trong mng;
- Các máy trong mng nhận ược yêu cu ICMP s gi tr lời (reply) ến máy có a ch
IP a ngun trong yêu cu ICMP (là máy nn nhân). Nếu s lượng y trong
mng rt ln thì máy nn nhân s b ngp lụt ường truyn, hoc ngng hot ng.
c. Phòng chng
Có th s dng các bin pháp sau ể phòng chng tn công Smurf:
lOMoARcPSD|37054152
45
Downloaded by Jiisaa Miliana (milihisa22@gmail.com)
- Cu hình các y trong mng router không tr li các yêu cu ICMP, hoc các
yêu cu phát qung bá;
- Cu hình các router không chuyn tiếp yêu cu ICMP gửi ến các ịa ch qung bá;
- S dụng tường lửa ể lc các gói tin với ịa ch gi mạo ịa ch trong mng.
Vic cu hình các router không chuyn tiếp yêu cu ICMP, hoc các máy trong mng
không tr li các yêu cu ICMP th y khó khăn cho các ng dng da trên phát qung
và giao thức ICMP, như ng dng giám sát trng thái hoạt ng ca các máy trong mng
da trên ICMP/Ping.
2.3.4. Tấn công từ chối dịch vụ phân tán
2.3.4.1. Giới thiệu
Tn công DDoS (Distributed Denial of Service) là mt loi tn công DoS ặc bit, liên
quan ến vic gây ngp lt các máy nn nhân vi một lượng rt ln các yêu cu kết ni gi
mạo. Điểm khác bit chính gia DDoSDoS là phm vi (scope) tn công: trong khi s
lượng y tham gia tấn công DoS thường tương i nh, ch gm mt s ít máy ti mt,
hoc mt s ít ịa iểm, thì s ng máy tham gia tấn công DDoS thường rt ln, có th n
ến hàng ngàn, hoc ng trăm ngàn y, các y tham gia tấn công DDoS th ến
t rt nhiu v trí ịa lý khác nhau trên toàn cu. Do vy, vic phòng chng tn công DDoS
gp nhiều khó khăn hơn so với vic phòng chng tn công DoS.
th chia tn công DDoS thành 2 dng chính theo mô hình kiến trúc: tn công DDoS
trc tiếp (Direct DDoS) tn công DDoS gián tiếp, hay phn x (Indirect/Reflective
DDoS). Trong tn công DDoS trc tiếp, các yêu cu tấn công ược các máy tn công gi
trc tiếp ến máy nn nhân. Ngược li, trong tn công DDoS gián tiếp, các yêu cu tấn công
ược gửi ến các máy phn x (Reflectors) và sau ó gián tiếp chuyển ến máy nn nhân.
2.3.4.2. Tấn công DDoS trực tiếp
Hình 2.23 minh ha kiến trúc iển hình ca dng tn công DDoS trc tiếp. Tn công
DDoS trc tiếp ược thc hin theo nhiều giai on theo kch bản như sau:
- K tn công (Attacker) chiếm quyền iều khin hàng ngàn, thm chí hàng chc ngàn
máy tính trên mạng Internet, sau ó mật i các chương trình tấn công t ng
(Automated agents) lên các máy này. Các automated agents còn ược gi là các Bot
hoc Zombie (Máy tính ma);
- Các máy b chiếm quyền iều khin hình thành mng máy tính ma, gi là botnet hay
zombie network. Các botnet, hay zombie network không b gii hn bi chng loi
thiết b và tô pô mng vt lý;
- K tn công có th giao tiếp vi các máy botnet, zombie thông qua mt mạng lưới
các máy trung gian (handler) gm nhiu tầng. Phương thức giao tiếp có thIRC
(Internet Relay Chat), P2P (Peer to Peer), HTTP,…
Tiếp theo, k tn công ra lệnh cho các automated agents ng lot to các yêu cu
gi mo gửi ến các máy nn nhân to thành cuc tn công DDoS;
- Lượng yêu cu gi mo th rt lớn và ến t rt nhiu ngun, v trí a lý khác nhau
nên rất khó ối phó và ln vết ể tìm ra k tn công thc s.
lOMoARcPSD|37054152
46
Downloaded by Jiisaa Miliana (milihisa22@gmail.com)
Hình 2.23. Kiến trúc tn công DDoS trc tiếp
Hình 2.24. Kiến trúc tn công DDoS gián tiếp hay phn x
2.3.4.3. Tấn công DDoS gián tiếp
Hình 2.24 minh ha kiến trúc tn công DDoS gián tiếp, hay phn x. Tn công DDoS
gián tiếp cũng ược thc hin theo nhiều giai oạn theo kch bản như sau:
- K tn công chiếm quyền iều khin ca một ng ln máy tính trên mng Internet,
cài t phn mm tn công t ng bot/zombie (còn gi slave), hình thành nên mng
botnet;
lOMoARcPSD| 37054152
-
47
Downloaded by Jiisaa Miliana (milihisa22@gmail.com)
Theo lnh ca k tấn công iều khin các Slave/Zombie gi một ng ln yêu cu
gi mo với a ch nguồn a ch máy nạn nhân ến mt s ln các y khác
(Reflectors) trên mng Internet;
- Các Reflectors gi các phn hồi (Reply) ến máy nạn nhân do a ch ca y nn
nhân ược ặt vào ịa ch ngun ca yêu cu gi mo;
- Khi các Reflectors s ng ln, s phn hi s rt ln y ngp lụt ưng
truyn mng hoc m cn kit tài nguyên ca y nn nhân, dẫn ến ngt quãng
hoc ngng dch v cung cấp cho người dùng. Các Reflectors b li dụng tham gia
tấn công thường các h thng máy ch công sut ln trên mng Internet
không chu s iều khin ca k tn công.
2.3.4.4. Phòng chống tấn công DDoS
Nhìn chung, phòng chng tn công DDoS hiu qu, cn kết hp nhiu bin pháp
s phi hp ca nhiu bên do tn công DDoS có tính phân tán cao và h thng mng máy
tính ma (botnet) ược nh thành iều khin theo nhiu tng, lp. Mt s bin pháp có th
xem xét áp dng:
- S dng các phn mm quét vi rút các phn mềm c hi khác nhm loi b
các loi bot, zombie, slaves khi các h thng máy tính;
- S dng các h thng lọc ặt trên các router, tường la ca các nhà cung cp dch v
Internet (ISP) ể lc các yêu cầu iều khin (C&C Command and Control) gi t k
tấn công ến các bot;
- S dng các h thng giám sát, phát hin bất thường, nhm phát hin sm các du
hiu ca tn công DDoS.
- S dụng tường lửa ể chn (block) tm thi các cng dch v b tn công.
2.3.5. Tấn công giả mạo ịa chỉ
2.3.5.1. Giới thiệu
Dng tn công gi mạo ịa ch thường gp nht là tn công gi mạo a ch IP, trong ó k
tn công s dụng a ch IP gi m a ch ngun (Source IP) ca các gói tin IP, thường
ánh lừa y nn nhân nhm vượt qua các hàng rào kim soát an ninh thông thường. Chng
hn, nếu k tn công gi a ch IP là a ch cc b ca mng LAN, hn có th có nhiều
hội xâm nhp vào các y khác trong mng LAN ó do chính sách kim soát an ninh vi
các máy trong cùng mạng LAN thường ược gim nh.
2.3.5.2. Kịch bản
Hình 2.25 minh ha mt cuc tn công gi mạo ịa ch IP vào mt máy nn nhân trong
mng cc bộ. Các bước thc hiện như sau:
- Gi s y ca k tấn công có ịa ch IP là 192.168.0.25 và hn mun gi gói tin tấn
công ến máy nạn nhân có ịa ch IP là 100.0.0.75;
lOMoARcPSD|37054152
- K tn công to gi yêu cu gi mo với a ch IP ngun ca các gói tin IP ca
yêu cầu 100.0.0.80 ến máy nạn nhân. Địa ch 100.0.0.80 a ch ng mng LAN
vi máy nn nhân 100.0.0.75;
Nếu tường la mng LAN không lọc ược các gói tin với a ch ngun gi mo, yêu
cu gi mo ca k tn công có th ến ưc và gây tác hi cho máy nn nhân.
Hình 2.25. Minh ha tn công gi mạo ịa ch IP
2.3.5.3. Phòng chống
Bin pháp phòng chng tn công gi mạo a ch IP hiu qu nht s dng k thut
lọc trên tường la, hoc các router vi nguyên tc lc: các gói tin t mạng ngoài i vào
mạng LAN a ch ngun a ch ni b ca mạng LAN ó thì chúng các gói tin
gi mo và phi b chn.
2.3.6. Tấn công nghe lén
Tn công nghe lén (Sniffing/Eavesdropping), như minh họa trên Hình 2.26 là dng tn
công s dng thiết b phn cng hoc phn mm, lng nghe trên card mng, hub, switch,
router, hoc môi trường truyn dn bt các gói tin dùng cho phân tích, hoc lm dng v
sau. Đây kiểu tn công th ng nhm thu thp các thông tin nhy cm, hoặc giám sát
lưu lượng mng. Các thông tin nhy cảm như tên người dùng, mt khu, thông tin thanh
toán nếu không ưc hóa th b nghe lén lm dng. Các thông tin truyn trong
mng WiFi, hoc các mạng không y cũng thể b nghe lén d dàng do môi trường
truyn dn vô tuyến và nếu không s dụng các cơ chế bo mật ủ mnh.
lOMoARcPSD|37054152
Hình 2.26. Mt mô hình tn công nghe lén
Để phòng chng tn công nghe lén, có th áp dng các bin pháp sau:
- Có cơ chế bo vc thiết b mng và h thng truyn dn mc vt lý;
- S dng các biện pháp,chế xác thực người dùng ủ mnh;
- S dng các bin pháp bo mt thông tin truyn da trên các k thut mã hóa.
2.3.7. Tấn công kiểu người ứng giữa
2.3.7.1. Giới thiệu
Tn công kiu người ng gia (Man in the middle) dng tn công dng quá trình
chuyển gói tin i qua nhiều trm (hop) thuc các mng khác nhau, trong ó kẻ tn công chn
bắt các thông iệp gia 2 bên tham gia truyn thông chuyển thông iệp li cho bên kia.
Mục ích chính của dng tấn công y ánh cp thông tin. Hình 2.27 minh ha hình
tn công kiểu người ng gia trong mt phiên truyn file dng (plaintext) s dng
giao thc FTP gia máy khách (Client) và máy ch (Server).
Hình 2.27. Mô hình chung ca tn công kiểu người ứng gia
2.3.7.2. Kịch bản
Hình 2.28 minh ha mt kch bn tn công kiểu ngườing gia, trong ó hai bên A
B (Công ty A và Công ty B) trao ổi các thông iệp bí mt và k tn công C (Hacker) bt
th sửa i, lm dụng các thông iệp truyn giữa A B. Các c tn công c th như
sau:
lOMoARcPSD|37054152
Hình 2.28. Mt kch bn tn công kiểu người ứng gia
A gi các thông iệp ể thiết lp mt phiên làm vic bo mt vi B;
- C bắt ược các thông iệp A gi. C gi làm B và trao i các khóa ca mình vi A. Sau
ó C giả làm A ể thiết lp mt phiên làm vic với B (có trao ổi khóa vi B);
- B gi các thông iệp cho C mà vẫn ng nang liên lạc vi A. C nhn các thông
iệp B gi, gii mã bng khóa ca mình (và có th sửa ổi), sau ó chuyển tiếp thông
iệp cho A. A nhận các thông iệp mà không biết là chúng ã bị C lm dng.
2.3.7.3. Phòng chống
Mt trong các bin pháp hiu qu phòng chng tn công kiểu người ng gia hai
bên tham gia truyn thông phải chế xác thc thông tin nhn dng ca nhau c
thc tính toàn vn của các thông iệp trao ổi. Chng hn, các bên có th s dng chng ch
s khóa công khai (Public key certificate) ể xác thc thông tin nhn dng ca nhau và s
dng ch ký s m bo tính toàn vn của các thông iệp trao ổi.
2.3.8. Tấn công bằng bom thư và thư rác
Tn công bằng bom thư (Mail bombing attack) mt dng tn công DoS khi k tn
công gi một lưng rt lớn email ến hộp thư của nạn nhân. Khi ó hộp thư cả y ch
nn nhân th b lit không th hoạt ộng bình thường. Tn công bng bom thư
thể ược thc hin bng mt s th thut:
- Gửi bom thư bằng cách s dng k thut xã hội, ánh lừa người dùng phát tán email;
- Khai thác li trong h thng gi nhn email SMTP;
- Li dng các máy ch email không ược cu hình tốt ể gi email (relay) cho chúng.
Tn công bng thư rác (Email spamming attack) dng tn công gửi các thư không
mong mun, như thư quảng cáo, thư chứa các phn mềm c hi. Theo mt s thng kê,
khong 70-80% lượng email gi trên mạng Internet thư rác. Kẻ tấn công thường s dng
các máy tính b iều khin (bot/zombie) gi email cho chúng. Spam email y lãng phí
tài nguyên tính toán và thi gian của ngưi dùng.
lOMoARcPSD| 37054152
th hn chế, hoc gim thiu tác hi ca hình thc tn công bằng bom thư thư
rác s dng các bin pháp sau:
- Cu hình máy ch email SMTP h tr các gii pháp bo mật email, như xác thực
người gi, hoc xác thc máy ch gửi email (SPF, DKIM, S/MINE…);
- S dng các b lọc thư rác tập trung trên máy ch email cũng như phân tán trên các
máy khách email.
2.3.9. Tấn công sử dụng các kỹ thuật xã hội
2.3.9.1. Giới thiệu
Tn công s dng các k thut xã hi (Social engineering attack) là dng tn công phi
k thut nhằm vào người dùng. Dng tấn công này khai thác các iểm yếu c hu ca người
dùng, như tính cả tin, ngây thơ, lòng tham. Dạng thường gp ca kiu tn công
này là thuyết phục người dùng tiết l thông tin truy nhp hoc các thông tin có giá tr cho
k tn công. Mt s k thut mà k tấn công thường áp dng gm:
- K tn công th gi danh m người v tcao hơn so với nạn nhân ược
s tin tưởng, t ó thuyết phc hoặc ánh lừa nn nhân cung cp thông tin;
- K tn công th mo nhận người ưc y quyn của người thm quyền yêu
cu các nhân viên tiết l thông tin v cá nhân/t chc;
- K tn công th lp trang web gi ánh lừa người dùng cung cp các thông tin
cá nhân, thông tin tài khon, th tín dụng,…
2.3.9.2. Trò lừa ảo Nigeria 4-1-9
Trò lừa o Nigeria 4-1-9 mt trong các dng tn công s dng các k thut hi
ni tiếng nhất, trong ó ã hàng chục nghìn người M, Canada Châu Âu ã sập by
ca k lừa o. K lừa o li dng s ngây thơlòng tham ca mt s người vi kch bn
tóm tắt như sau:
- K lừa o gửi thư tay, hoặc email ến nhiều người nhn, t v vic 1 khon
tin ln (t tha kế, hoc li tc,..) cn chuyển ra nước ngoài, nh người nhn giúp
hoàn thành giao dch. Khon tin có th lên ến hàng chc, hoặc trăm triệu USD.
K lừa ảo ha s tr cho người tham gia mt phn s tin (lên ến 2030%);
- Nếu ngưi nhn có phn hồi và ng ý tham gia, k lừa o s gi tiếp thư, hoặc email
khác, yêu cu chuyn cho hn 1 khon phí giao dch (t vài ngàn ến hàng chc ngàn
USD);
- Nếu người nhn gi tin phí giao dch theo yêu cu thì người ó s mt tin, do giao
dch mà k lừa ảo ha hn là gi mo.
Nhiu biến th ca trò lừa o Nigeria 4-1-9 ã xuất hin trong những m gần ây trên
thế giới cũng như Vit Nam, chng hạn như thông báo lừa trúng thưởng các tài sn
giá tr lớn chiếm oạt khon "phí tr thưởng", lừa ầu vào tài khoản o vi ha hn lãi
suất cao,…
2.3.9.3. Phishing
lOMoARcPSD| 37054152
Phishing là mt dạng ặc bit phát trin rt mnh ca tn công s dng các k thut xã
hội, trong ó kẻ tn ng bẫy người dùng ly thông tin nhân, thông tin tài khon, th
tín dụng,… Kẻ tn công th gi mo trang web ca các t chc tài chính, ngân hàng,
sau ó chúng gửi email cho người dùng ( a ch email thu thp trên mng), yêu cu xác thc
thông tin. nh 2.29 và Hình 2.30 minh ha 2 phishing email gi cho khách hàng ca
mạng u giá trc tuyến eBay ngân hàng Royal Bank yêu cầu người dùng cp nhật thông
tin thanh toán ã hết hn, hoc xác nhn thông tin tài khon không s dng. Nếu người dùng
làm theo hướng dn thì s vô tình cung cp các thông tin cá nhân, thông tin tài khon, th
tín dng cho k tn công.
lOMoARcPSD|37054152
Hình 2.29. Mt phishing email gi cho khách hàng ca mạng ấu giá eBay
Hình 2.30. Mt phishing email gi cho khách hàng ca ngân hàng Royal Bank
2.3.9.4. Phòng chống
Do tn công s dng các k thut hi nhắm ến người dùng nên bin pháp phòng
chng hiu qu giáo dục, ào tạo nâng cao ý thc cảnh giác cho người dùng. Mt s
khuyến ngh giúp ngưi dùng phòng tránh dng tn công y:
- Cnh giác vi các li mi, hoặc thông báo trúng thưởng bng email, tin nhắn iện
thoi, hoc qung cáo trên các trang web, din àn không do, nguồn gc
trúng thưởng rõ ràng;
- Cnh giác vi các yêu cu cung cp thông tin, xác nhn tài khon, thông tin thanh
toán, thông tin th tín dng,..;
- Kim tra k a ch (URL) các trang web, m bo truy nhập úng trang web của
quan, tổ chc.
lOMoARcPSD|37054152
2.3.10. Tấn công pharming
Pharming kiu tn công vào trình duyt ca người dùng, trong ó người dùng a
ch 1 website, trình duyt li yêu cu và ti 1 website khác, thường là website ộc hi. Có 2
dng tn công pharming: (1) k tấn công thường s dng sâu, vi rút hoc các phn mềm ộc
hi cài vào h thống iều khin trình duyt của người dùng (2) k tn công th tn
công vào h thng tên miền (DNS) thay i kết qu truy vn: thay a ch IP ca website
hp pháp thành IP của website ộc hi.
Hình 2.31 minh ha ca s trình duyt của người dùng b tn công pharming dng
(1), hay còn gi tấn công cướp trình duyệt (Browser hijacking), trong ó người dùng nhập
a ch trang google.com thì trình duyt li np trang adventureinsecurity.com. Trong trường
hp y, trình duyt ca nạn nhân ã bị cài ặt trình cm (plug-in, hoc add-on) c hi có kh
năng iều khin trình duyt.
Hình 2.31. Tấn công pharming "cướp" trình duyt
Hình 2.32 minh họa các bước ca tn công pharming dạng (2), trong ó kẻ tn công xâm
nhp vào y ch DNS chnh sửa ịa ch IP ca website hợp pháp thành a ch IP ca máy
ch ca chúng. Kết qu trình duyệt người dùng b chuyển hướng yêu cu np website
ca k tn công. Các bước c th ca tn công pharming dạng này như sau:
(1) K tn công (Attacker) xâm nhp vào máy ch DNS của người ng thc hin chnh
sửa ịa ch IP ca website hp pháp thành IP ca máy ch web ca chúng;
(2) Người dùng (User) s dng trình duyệt gi yêu cu truy cp website hp pháp,
chng hn trang (Website - www.nicebank.com);
(3) Trình duyt của người dùng gi yêu cu phân giải a ch IP ca trang website hp
pháp lên máy ch DNS (DNS Server);
(4) y ch DNS thc hin yêu cu phân giải ịa ch IP và tr v kết qu. Tuy nhiên, do
máy ch DNS ã b kiểm soát nên a ch IP tr v a ch IP ca y ch web
ca k tn công;
lOMoARcPSD|37054152
(5) Trình duyt của người dùng gi yêu cu, ti np trang web gi mo t máy ch
web ca k tn công (Fake website www.n1cebank.com).
Hình 2.32. Tn công pharming thông qua tn công vào máy ch DNS
2.3.11. Tấn công APT
Tấn công APT (Advanced Persistent Threat), hay còn ược gi là tn công có ch ích là
hình thức tn công tp trung, ch ích, ược thiết kế riêng cho tng mc tiêu, từng ối tượng
c th nhm mục ích tìm kiếm các thông tin giá tr và gi ra bên ngoài [12]. Hai thuc tính
quan trng ca tn công APT tiên tiến, hay cao cp (Advanced) và Kiên trì, dai dng
(Persistent). Thuộc tính “tiên tiến” nghĩa là các kỹ thut tiên tiến ược s dụng tn công
vào h thng mc tiêu mt cách i bn. Bên cạnh ó các cuộc tấn ng APT thường kết
hp nhiu k thut khác nhau mt cách khoa học. Tính “tiên tiến” còn thể hin kh năng
ẩn mình, thay i liên tc khiến cho vic phát hin tn công APT tr nên rất khó khăn. Phần
ln các cuc tấn công ược ghi nhn trên thế giới u có những ặc im cách thc tn công,
khai thác khác nhau.
Thuộc tính “kiên trì” nghĩa mục tiêu ược xác nh rt c th thc hin tn công,
n mình và khai thác theo từng giai oạn. Nhiu k thuật, phương pháp tấn công khác nhau
vào mục tiêu ược s dụng cho ến khi thành công. Bên cạnh ó sự kiên trì ca k tn công
còn th hin ch, chúng th s dng ng tháng, thm chí hàng năm ch thu thp
thông tin ca nn nhân làm tiền cho cuc tn công. dụ, tn công vào người dùng
chúng kiên trì tìm hiu thông tin v người ng ó như sở thích, tính cách hay cách t tên
file, mi quan h ca nn nhân trên thế gii o. Đồng thi, tn công APT dai dng ch
khi chúng ã xâm nhập ược vào h thng ã ánh cắp ược d liu gi ra ngoài, chúng
không bao gi dng việc ánh cắp d liu mục ích ca chúng cài cắm c vào h
thống ể ly ưc càng nhiu d liu càng tt. Mt cuc tấn công APT iển hình thường ược
thc hiện theo các giai oạn sau:
lOMoARcPSD| 37054152
- Truy cập ban u: Mc tiêu của giai oạn y y nhiễm c vào h thng mc
tiêu thông qua by người dùng tải cài ặt c, hoc tn công khai thác các l
hng ca h iều hành hoc các ng dng;
- Thâm nhp lần ầu và triển khai mã ộc: Sau khi có quyn truy cp, k tn công cài ặt
mã ộc thường trú lâu dài trong h thng mc tiêu và duy trì kết ni vi h thống iều
khin ca k tn công. Các k thut tiến tiến như hóa, xáo trộn mã, a hình ược
s dụng giúp mã ộc có th tn tài lâu dài trong h thng mc tiêu;
- M rng truy cp và di chuyn ngang: Các xâm nhập sâu hơn vào các hệ thng ược
thc hiện th ánh cắp nhiu d liu nhy cảm hơn. Các cửa hu các ường
hầm cũng có thể ược cài ặt thun tin cho vic vn chuyn d liu ánh cắp ược sau
này;
- Giai oạn tn công: K tn công thc hiện quá trình giám sát các ối tượng, hoc h
thng nhm trích xut vn chuyn d liu nhy cảm ến nơi an toàn trong hệ thng.
Các d liu trích xuất ược thường ược n hóa trước khi ược vn chuyn ra
ngoài;
- Gây thit hi: Thc hin vic vn chuyn d liệu ánh cắp ược ra ngoài. K tn công
có th thc hin mt s dng tấn công khác, ntấn công DDoS vào h thng mục
tiêu ánh lạc ớng người qun tr xóa các du vết vic sao chép truyn d
liu ra ngoài;
- Tn công tiếp theo: Thông thường cuc tn công APT không kết thúc sau khi ã lấy
ược d liu mong mun. K tn công vn giám sát h thng thông qua các ca hậu
ã mở hoặc các mã ộc thường trú nhm ch cơ hội xâm nhập sâu hơn, hoc thc hin
các cuc tấn công trong tương lai.
Do tn công APT dng tn công phc tp, kết hp ca vic s dụng c cao cp
vi các k thut tn công tinh vi nên cn có mt chiến lược thích hợp ể phòng chng dng
tn công y. Chiến lược tng quát là kết hp nhiu bin pháp, hoc lp phòng v, kết hp
vi việc ào tạo nâng cao ý thc người dùng v an toàn thông tin. Trong ó, các lp phòng
v cn thiết bao gm: tường la, kim soát truy cp, các h thng phát hin và diệt mã ộc,
các h thng giám sát phát hin m nhptích hp kh năng phân tích tương quan các
dạng nguy cơ, kết hp vi h thng qun và chính sách an toàn thông tin ầy ược
giám sát thc hin nghiêm ngt.
2.4. Các dạng phần mềm ộc hại
Các phn mềm ộc hi, còn gi là phn mềm mã c (Malware hay Malicious software),
hay ngn gọn là mã ộc các chương trình, phn mềm ược viết ra nhm các mục ích xấu,
như ánh cắp thông tin nhy cm, hoc phá hoi các h thng. Khi mi ược phát hin vào
những năm 1970-1980, các phn mềm c hại còn tương ối ít chng loại và ưc gi chung
vi rút (virus). Tuy nhiên, theo thời gian vi rút ã phát triển rt mnh thành nhiu dạng
khác nhau, c bit vi s bùng n ca mng Internet toàn cu và thut ng “phần mềm ộc
hại” hay “mã ộc” (malware) ược s dng ch các dng c thay thế cho thut ng “vi
rút”.
lOMoARcPSD|37054152
2.4.1. Phân loại
Các phn mm c hi (Malware hay Malicious software) các chương trình, phần mềm
ược viết ra nhm các mục ích xấu, như ánh cắp thông tin nhy cm, hoc phá hoi các h
thng.
nhiu phương pháp phân loi các phn mềm c hại, trong ó một phương pháp ược
tha nhn rng rãi là chia các phn mềm c hi thành 2 nhóm chính như biểu din trên
Hình 2.33. Theo ó, các phần mềm c hại ược chia thành 2 nhóm chính da trên phương
pháp lây nhiễm như sau:
- Các phn mềm c hi cần chương trình chủ, vt ch (host) sinh y nhim.
Các phn mềm c hi thuc nhóm y gm Logic bomb (Bom logic), Back door
(Ca hu), Trojan horse (Con nga thành Tơ roa), Virus (Vi rút), Rootkit, Adware
(Phn mm qung cáo) và Spyware (Phn mềm gián iệp).
- Các phn mm c hi không cần chương trình chủ, vt ch y nhim. Các phn
mềm ộc hi thuc nhóm này gm Worm (Sâu) và Zombie hay Bot (Phn mm máy
tính ma).
Hình 2.33. Các dng phn mềm ộc hi
Trong s các phn mm c hi, các phn mềm c hi kh năng tự lây nhim (self-
infection), hay t nhân bn (self-replicate) gm Vi rút, Sâu và Phn mm y tính ma. Các
dng còn li không có kh năng tựy nhim. Vic phân loi các phn mềm ộc hi k trên
mang tính chất tương ối do hin nay, các dng phn mềm ộc hi các biến th ca chúng
phát trin rt nhanh và nhiu dạng mã ộc mới ược phát hin trong thi gian gần ây. Chẳng
hn, các dạng c hóa d liu nhm tng tin (Ransomeware), ộc ào tin ảo
c chuyên dng cho tấn công APT ang phát trin rt mnh. Ngoài ra, mt s phn
mềm c hại có các ặc tính kết hp ca nhiu dng phn mềm ộc hi k trên, chng hn mt
phn mềm c hại các c tính ca c vi rút, sâu phn mềm gián iệp. Mc tiếp theo
trình bày chi tiết tng dng phn mm c hại ã nêu trên Hình 2.33.
2.4.2. Mô tả các dạng phần mềm ộc hại
lOMoARcPSD| 37054152
2.4.2.1. Logic bomb
Logic bomb (Bom gíc) các oạn c thường ược “nhúng” o các chương trình
bình thường thường hn gi “phát nổ” trong một s iều kin c th. Điều kiện bom
“phát nổ” có thể là s xut hin hoc biến mt ca các file c th, mt thi iểm c th, hoc
mt ngày trong tuần. Khi “phát nổ” bom logic có thể xoá d liu, file, tt c h thng...
Thc tế ã ghi nhận qu bom logic do Tim Lloyd cài lại ã “phát nổ” ti công ty Omega
Engineering vào ngày 30/7/1996, 20 ngày sau khi Tim Lloyd b sa thi. Bom gíc y ã
xoá sạch các bn thiết kế và các chương trình, gây thiệt hi 10 triu USD cho công ty. Bn
thân Tim Lloyd b pht 2 triu USD và 41 tháng tù.
2.4.2.2. Trojan Horse
Trojan horse ly tên theo tích Con ngựa thành roa”, chương trình chứa c,
thường gi danh những chương trình có ích, nhằm lừa người dùng kích hot chúng. Trojan
horse thường ược s dụng ể thc thi gián tiếp các tác v, mà tác gi ca chúng không th
thc hin trc tiếp do không quyn truy nhp. Chng hn, trong mt h thng nhiều
người dùng, một người dùng (k tn công) có th to ra một trojan ội lt một chương trình
hữu ích t thư mục chung. Khi trojan y ưc thc thi bi mt người dùng khác, s
thay ổi quyn truy nhp các file và thư mục của người dùng ó, cho phép tt c người dùng
(trong ó có kẻ tn công) truy nhp vào các file ca người dùng ó.
2.4.2.3. Back door
Back door (Ca hậu) thường ược các lp trình viên tạo ra, dùng g ri kim th
chương trình trong quá trình phát triển. Ca hậu thường cho phép truy nhp trc tiếp vào
h thng không qua các th tc kiểm tra an ninh thông thường. Khi ca hậu ược lp
trình viên tạo ra truy nhp bt hp pháp vào h thng, nó tr thành mt mối e dọa ến an
ninh h thng. Ca hu thường ưc thiết kế cài t khéo léo ch ược kích hot trong
mt ng cảnh nào ó, do vậy nó rt khó b phát hin.
Thc tế ã phát hiện nhiu ca hậu ược bí mật cài ặt trên các h thng máy tính, như mã
c ca hậu ược mật cài t trong BIOS ca mt lot máy tính ca hãng Lenovo, Trung
quốc. Do ộc ược tích hp vào BIOS của máy nên người dùng không th loi b ược
chúng bng cách cài t li h iều hành, hoc s dng c công c rà quét phn mềm c hại.
Mã ộc này t ộng ược kích hot khi h thng khởi ộng và âm thm thu thp d liệu người
dùng và gi v máy ch t ti Trung quc. 2.4.2.4. Vi rút
a. Gii thiu
Vi rút (Virus) là một chương trình có th “nhiễm” vào các chương trình khác, bằng cách
sửa ổi các chương trình này. Nếu các chương trình ã bị sửai cha vi rút ược kích hot thì
vi rút s tiếp tục “lây nhiễm” sang các chương trình khác. Tương tự như vi rút sinh hc, vi
rút máy tính cũng có kh năng tự nhân bn, t lây nhiễm sang các chương trình khác mà nó
tiếp xúc. Có nhiều con ường y nhim vi rút, như sao chép file, gi các ng dng dch
v qua mng, email...
Vi rút th thc hiện ược mi vic một chương trình thông thường th thc
hiện. Khi ã lây nhiễm vào một chương trình, vi rút t ộng ược thc hiện khi chương trình
lOMoARcPSD|37054152
này chy. Hình 2.34 minh ha vic chèn mã vi rút vào cui một chương trình và chnh sa
chương trình khi chương trình ược kích hoạt, vi rút luôn ược thc hin trước, sau ó
mới thc hiện mã chương trình.
Hình 2.34. Chèn và gi thc hin mã vi rút
b. Các loi vi rút
Dạng vi rút ầu tiên ược phát hin vi rút lây nhiễm vào các file chương trình. Theo
thi gian, có nhiu loi vi rút xut hin khai thác nhiều phương thức lây nhim khác nhau
và ưc tích hp các k thut n tinh vi mình nhm ln tránh bquét. Hin nay, các loại
vi rút thường gp bao gm boot vi rút, file vi rút, macro vi rút và email vi rút.
Boot vi rút dng vi rút y nhim o cung khởi ng (boot sector) của ĩa hoặc phn
h thng của ĩa như cung khởi ng ch ca ĩa cng (master boot record). Do boot vi rút y
nhim vào cung khởi ộng nên nó luôn ược np vào b nh mi khi h thng máy khởi ng.
Boot vi rút th y hng phn khởi ng của ĩa, thậm chí th làm cho ĩa không thể
truy nhập ược.
File vi rútdng vi rút ph biến nhất, ối tượng lây nhim ca chúng là các file chương
trình và các file dữ liu. Mỗi khi chương trình ược kích hot hoc file d liu ược np vào
b nhớ, vi rút ược kích hot. Mọi chương trình tiếp theo ưc kích hot u b lây nhim vi
rút y. File vi rút th m hỏng chương trình, hỏng hoc phá hy các file d liệu, ánh
cắp các d liu nhy cảm,…
Macro vi rút mt loại file vi rút c bit do chúng ch y nhim vào các tài liu ca
b phn mm Microsoft Office. Macro vi rút hoạt ộng ược nh tính năng cho phép tạo
thc hiện các oạn mã macro trong các tài liu ca b ng dng Microsoft Office, gm ng
dng son tho Word, bảng tính Excel, trình email Outlook,…. Các oạn mã macro thường
ược dùng t ng hóa 1 s việc và ược viết bng ngôn ng Visual Basic for Applications
(VBA). Macro vi rút thường y nhim vào các file nh dng chun (các template như
normal.dot và normal.dotx) và từ ó lây nhiễm vào tt c các file tài liu ược mở. Macro vi
rút cũng thể ược t ng kích hot nh c autoexecuted macros, như AutoExecute,
Automacro Command macro. Theo thống kê, macro vi rút chiếm khong 2/3 tổng lượng
lOMoARcPSD|37054152
vi rút ã ược phát hiện. Lượng tài liu b lây nhim macro vi rút ã giảm áng kể t khi
Microsoft Office 2010 có thiết lp ngầm ịnh không cho phép t ng chy các macro.
Email vi rút lây nhim bng cách t ng gi mt bn copy của nó như 1 file ính kèm ến
tt c các a ch email trong s a ch của ngưi dùng trên máy b lây nhim. Nếu người
dùng m email hoặc file ính kèm, vi rút ược kích hot. Email vi rút th y nhim rt
nhanh chóng, lan tràn trên khp thế gii trong mt thi gian ngn. Hình 2.35 là mt email
do vi rút gửi ến người dùng, theo ó email có ính kèm một file gi dng mt giy biên nhn
cha mã vi rút lừa người dùng m và kích hot.
Hình 2.35. Mt email do vi rút gửi ến người dùng
2.4.2.5. Sâu
Sâu (Worm) mt loi phn mềm c hi kh năng tự y nhim t máy y sang
máy khác mà không cn chương trình chủ, vt ch, hoc s tr giúp của người dùng. Khi
sâu lây nhim vào mt máy, nó s dng máy này làm “bàn ạp” ể tiếp tc rà quét, tn công
các máy khác. Mt trong các dng sâu ph biến là sâu mạng (network worm) s dng kết
ni mạng y lan t y y sang máy khác. Hình 2.36 minh ha mt hình y lan
ca sâu mng: Bắt u t máy F, sâu quét các máy B và E trên cng 25 (SMTP) ể y nhim.
Khi sâu y nhim thành công lên y B, li tiếp tc quét các y A, C D trên
cổng 25 tìm ích lây nhiễm tiếp theo. Mc dù s dụng phương thc lây lan khác vi rút, khi
sâu hoạt ộng, nó tương tự vi rút.
Hin nay, sâu th lây lan s dng nhiều phương pháp khác nhau. Mt s sâu ch s
dng một phương pháp y lan, nhưng một s sâu khác kh năng lây lan theo nhiều
phương pháp. Các phương pháp lây lan chính của sâu gm:
lOMoARcPSD|37054152
Hình 2.36. Mt mô hình lây lan ca sâu mng
- Lây lan qua thư iện t: Sâu s dụng email ể gi bn sao của mình ến các máy khác.
- Lây lan thông qua kh năng thực thi t xa: u gi thc thi mt bn sao ca
trên mt máy khác thông qua vic khai thác các l hng an ninh ca h iều hành, các
dch v, hoc phn mm ng dng.
- Lây lan thông qua kh năng log-in ( ăng nhập) t xa: Sâu ăng nhập vào h thng
xa như một người dùng và s dng lệnh sao chép bn thân t y y sang y
khác.
Sâu Code Red ược phát hin vào tháng 7/2001 lây nhim thông qua vic khai thác li
tràn b m khi x các file .ida trong y ch web Microsoft IIS (Internet Information
Service). Code Red quét các a ch IP ngẫu nhiên tìm các h thng li y nhim
vào 360.000 máy ch trong vòng 14 giờ. Sau ó, sâu Nimda ược phát hin vào tháng 9/2001
là sâu có kh năng lây lan theo nhiều con ường:
- Qua email ty client sang client.
- Qua các thư mục chia s trên mng.
- T máy ch web sang trình duyt.
- T máy khách ến máy ch nh khai thác các li máy ch.
Ch 22 phút sau khi ra i, Nimda tr thành sâu tốc lan truyn nhanh nht trên
Internet vào thời iểm ó.
2.4.2.6. Zombie/Bot
Zombie/Bot (còn gi là Automated agent t ây thống nht gi là Bot) là mt chương
trình ược thiết kế giành quyn kim soát mt máy tính, hoc thiết b tính toán có kết ni
Internet và s dng máy tính b kim soát tn công các h thng khác, hoc gửi thư rác.
Tương tự như sâu, bot khả năng tự y nhim sang các h thng khác không cần
chương trình chủ, vt ch, hoc h tr t ngưi dùng. Mt tp hp các máy tính bot dưới
s kim soát ca mt, hoc mt nhóm k tấn công ược gi mng máy tính ma, hay botnet.
K tn công kiểm soát iều khin các bot trong botnet thông qua mt h thng các máy
lOMoARcPSD|37054152
ch lệnh iều khin trung gian (Command and control C&C) s dng các giao thc
truyn thông thông dng như HTTP, hoặc IRC. Hình 2.37 minh ha mô hình giao tiếp gia
các thành phn trong botnet: k tn công/ch ca botnet (botmaster) gi lnh cho các bot
thông qua các máy ch C&C.
Hình 2.37. Mô hình mô hình giao tiếp gia các thành phn trong botnet
Khác vi các phn mềm c hi khác, các bot kh năng tự ti cp nht nâng
cp phiên bn t các máy ch C&C nhm tăng khả năng sống sót. Các bot ịnh k truy cập
ến các máy ch C&C ti lnh và mã cp nht. Các bot thường ược iều phi và s dụng ể
thc hin các cuc tn công DDoS các y ch, các website ca các công ty, hoc các t
chc chính phủ, như ã minh hoạ trên Hình 2.23 Hình 2.24 trong mc 2.3.4. Các y
tính bot/zombie ng có thể ược s dụng gửi thư rác tạo ra khon tin không nh cho các
nhóm tin tc/k tấn công, như minh họa trên Hình 2.38.
2.4.2.7. Rootkit
Rootkit là mt dng phn mềm c hi gm mt tp các công c có mục ích giành quyn
truy nhp vào h thống máy tính người dùng không thm quyn không th truy nhp.
Rootkit thường che giu mình bằng cách ội lt mt phn mm khác. Rootkit có th ược cài
t t ng, hoc tin tặc cài t rootkit khi chiếm ược quyn qun tr h thng. Do rootkit
quyn truy nhp h thng mc qun tr n toàn quyn truy nhp vào các thành
phn trong h thng và rt khó b phát hin.
lOMoARcPSD|37054152
Hình 2.38. Mô hình tin tc s dụng các máy tính Zombie/Bot ể gửi thư rác
2.4.2.8. Adware và Spyware
Adware (tên y advertising-supported software) các phn mm t ng hin th
các bng qung cáo trong thi gian người dùng ti hoc s dng các phn mm. Adware
thường ược óng i chung với các phn mm khác có th dưới dạng như mt phn ca mt
phn mm hoc mt dch v min phí. Adware trong mt s trường hp có th ược coi
mt phn mềm ộc hi nếu chúng ược t ộng cài ặt và kích hot mà không ược s ng ý của
người dùng.
Spyware mt dng phn mm c hi ược cài t t ng nhm giám sát, thu thp
ánh cắp các thông tin nhy cm trên h thng nn nhân. 4 loại spyware thường gp,
gm system monitor (giám sát h thng), trojan, adware, and tracking cookies (các cookie
theo dõi). Spyware có th ược cài ặt vào h thng nn nhân thông qua nhiu phương pháp,
như tích hợp, óng i vào các phần mm khác, by nn nhân t ti cài t, hoc tin tc
th s dụng vi rút, sâu tải cài ặt. Spyware thường ược trang b kh năng n mình
nên rt khó có th phát hin bằng các phương pháp thông thường.
2.4.3. Phòng chống phần mềm ộc hi
2.4.3.1. Nguyên tắc chung
Có th thy các phn mềm ộc hi là một trong các nguy cơ gây mất an toàn ln nht
thường trc nhất i vi thông tin, h thống và người dùng do s bùng n v s lượng, mc
tinh vi ngày càng cao và kh năng phá hoại ngày càng ln ca chúng. Nguyên tc chung
trong phòng chng phn mềm c hi vn phòng vệ theo chiều sâu, trong ó nhiu nhóm
biện pháp ảm bo an toàn cần ược áp dụng ể phòng ngừa và ngăn chặn vic lây nhim các
phn mềm c hi vào h thng. th lit các bin pháp phòng chng các phn mm
c hi theo th t ưu tiên từ cao ến thp như sau:
(1) S dng các bin pháp kim soát truy cp cung cp bởi tường la và h iều hành
hn chế giao din tiếp xúc ca h thng vi mng ngoài. Chng hạn, tường la
th chn các kết ni trái phép t Internet ến h thống máy tính khai thác các l
hng, hoc ti các phn mềm ộc hi;
(2) S dng công c quét dit tr các phn mềm c hi. Vi mi h thng y
tính, nht các máy trm y tính nhân, cần cài t một bộ công cụ (và ch
nên mt ti mi thời iểm) quét phn mềm c hi kh năng bảo v h thng theo
thi gian thc. B công c này cần ược cp nhật thường xuyên m bo kh năng
phát hiện và dit trc phn mềm ộc hi mi nht;
(3) Đào tạo nâng cao ý thc cnh giác của ngưi dùng v c, phn mềm ộc hại,
các chương trình ng dng trên y tính, trên mng Internet không rõ ngun gc.
Vic nâng cao ý thc người dùng óng vai trò quan trọng trong vic phòng nga vic
lây lan ca các dng phn mềm ộc hi;
(4) S dng các phn mm có bn quyn. S dng các phn mm có bn quyn là cách
hiu qu hn chế các loi phn mềm c hi, ntrojan, adware và spyware thường
lOMoARcPSD|37054152
ược tích hp vào các công c phá khoá (cracker) h iều hành và các phn mm ng
dng;
(5) Thường xuyên cp nht h iều hành c phn mm ng dng. Vic cp nht
thường xuyên, nht các bn an ninh nhm gim thiu các l hng bo mật ã
biết trên h thng nh vy gim thiu kh năng bị khai thác bi các dng phn
mềm ộc hi;
(6) Phân quyền người dùng phù hp giúp hn chế kh năng tự ộng cài ặt các dng phn
mềm ộc hi lên h thng. Không s dụng ngưi dùng có quyn qun tr (root, hoặc
administrator) thc thi các ng dụng. Người dùng thông thường ch nên ưc cp
quyn truy cp vừa ủ thc thi nhim v.
2.4.3.2. Các công cụ rà quét phần mềm ộc hại
Các công c quét vi rút các phn mềm c hi (Antivirus software) các phn
mm kh năng quét, bảo v h thng khi vi rút các phn mềm c hi khác theo
thi gian thc. Hu hết các công c y ều cho phép thc hin 2 chế quét: (i) quét nh k
tng phn, hoc toàn b h thng các file (ii) bo v h thng theo thi gian thc
(Realtime protection). Chúng cho phép giám sát tt c các thao tác c/ghi h thng file
phát hin các phn mềm c hại. Đa số công cquét vi rút và các phn mm c hi hoạt
ng da trên một cơ sở d liu các mu, hoc ch ca các phn mm c hại ã biết. Do
vậy, ể m bo hiu qu rà quét, cơ sở d liu này phải ược cp nhật thường xuyên. Mt s
b công c cho phép quét theo hành vi hoc heuristics.
Hình
2.39. Màn hình chính ca Microsoft Windows Defender
Có th lit kê mt s công c rà quét vi rút và các phn mềm ộc hi thông dụng, như:
- Microsoft Security Essentials (Microsoft Windows 7 tr lên)
- Microsoft Windows Defender (Microsoft Windows 8 tr lên) Hình 2.39
- Semantec Norton Antivirus
- Kaspersky Antivirus
lOMoARcPSD| 37054152
- BitDefender Antivirus
- AVG Antivirus
- McAfee VirusScan
- Trend Micro Antivirus
- F-secure Antivirus - BKAV Antivirus.
2.5. Câu hỏi ôn tập
1) Điểm yếu h thng là gì? Lit kê các nguyên nhân ca s tn tại các iểm yếu trong h
thng.
2) L hng bo mt là gì? Các l hng bo mật thường tn ti nhiu nht trong thành phn
nào ca h thng?
3) Nêu các dng l hng bo mật thường gp trong h iều hành c phn mm ng
dng.
4) Mối e dọa (threat) là gì? Nêu quan h gia l hng và mối e dọa.
5) Tn công là gì? Có th gim thiu kh năng bị tn công bng cách nào?
6) Mô t 4 loi tn công chính và 2 kiu tn công ch ng và th ng.
7) Nêu mục ích và các dạng tn công vào mt khu.
8) Tn công chèn SQL gì? Nêu các nguyên nhân ca l hng chèn SQL. Tn
công chèn SQL kh năng cho phép tin tặc thc hiện hành ng trên h thng
nn nhân?
9) Nêu các bin pháp phòng chng tn công chèn mã SQL.
10) V sơ ồ, mô t cơ chế tn công SYN Flood và các bin pháp phòng chng.
11) V sơ ồ, mô t cơ chế tn công Smurf và các bin pháp phòng chng.
12) V sơ ồ và mô t kch bn tn công DDoS trc tiếp và tn công DDoS gián tiếp.
13) Mô t cơ chế và các bin pháp phòng chng tấn công người ứng gia.
14) Đối tượng ca tn công s dng các k thut higì?t kch bn ca Trò la
o Nigeria 4-1-9.
15) Tn công pharming là gì? Mô t các dng tn công pharming.
16) Tn công APT là gì? Mô t các thuc tính chính ca tn công APT.
17) Phn mềm ộc hi là gì? Phân loi các phn mm ộc hi.
18) Vi rút là gì? Nêu các phương pháp lây nhiễm và các loi vi rút.
19) Trojan là gì? Mô t cơ chế hoạt ộng ca trojan.
20) Sâu máy tính gì? Nêu iểm khác biệt cơ bản của sâu và vi rút. Nêu các phương pháp
lây lan ca sâu.
21) Zombie/Bot là gì? Mô t cơ chế hoạt ộng ca Zombie/Bot.
22) Nêu nguyên tc chung trong phòng chng phn mềm c hi. Ti sao ch nên cài t
chy mt b phn mm quét phn mềm c hoạt ng chế bảo v theo thi gian thực”
hi ti mi thời iểm?
lOMoARcPSD|37054152
CHƯƠNG 3. ĐẢM BẢO AN TOÀN THÔNG TIN DỰA
TRÊN MÃ HÓA
Chương 3 giới thiệu các khái niệm cơ bản về mật mã, hệ mã hóa, các phương pháp mã
hóa. Phần tiếp theo của chương trình bày một số giải thuật bản của hóa khóa ối
xứng (DES, 3-DES AES), hóa khóa bất ối xứng (RSA), các hàm băm (MD5 SHA1),
chữ số, chứng chỉ sPKI. Phần cuối của chương cập vấn quản lý phân phối
khóa, và một số giao thức ảm bảo an toàn thông tin dựa trên mã hóa.
3.1. Khái quát về mã hóa thông tin và ứng dụng
3.1.1. Các khái niệm
Mật mã
Theo t iển Webster's Revised Unabridged Dictionary: “cryptography is the act or art
of writing secret characters”, hay mật mã là một hành ộng hoặc nghệ thuật viết các ký tự
mật. Còn theo t iển Free Online Dictionary of Computing: “cryptography is encoding data
so that it can only be decoded by specific individuals”,nghĩamật việc hóa
dữ liệu mà nó chỉ có thể ược giải mã bởi một số người chỉ ịnh. Bản rõ, Bản mã, Mã hóa và
Giải mã
Bn rõ (Plaintext), hay thông tin chưa mã hóa (Unencrypted information) là thông tin
dng có th hiểu ược.
Bn mã (Ciphertext), hay thông tin ã ược hóa (Encrypted information) là thông tin
dạng ã bị xáo trn.
Mã hóa (Encryption) là hành ộng xáo trn (scrambling) bản rõ ể chuyn thành bn mã.
Giải mã (Decryption) là hành ộng gii xáo trn (unscrambling) bản mã ể chuyn thành
bn rõ.
Hình 3.1 t 2 khâu chính ca mt h hóa, trong ó khâu Mã hóa chuyn Bn
thành Bn s dụng khoá hK1 ược thc hin phía người gi khâu Gii
chuyn Bn thành Bn s dng khoá giải K2 ược thc hin phía ngưi nhn.
Các khoá K1 và K2 có th ging nhau hoc khác nhau. Nếu K1 khác K2 thì chúng có quan
h v mt toán hc vi nhau.
Giải thuật mã hóa & giải mã, Bộ mã hóa, Khóa/Chìa, Không gian khóa
Gii thut mã hóa (Encryption algorithm) là gii thuật dùng ể mã hóa thông tin và gii
thut gii mã (Decryption algorithm) dùng ể gii mã thông tin.
Mt bhóa (Cipher) gm mt gii thuật hóa và mt gii thuật ể gii mã thông
tin.
Khóa/Chìa (Key) là mt chuỗi ược s dng trong gii thut mã hóa và gii mã.
Không gian khóa (Keyspace) là tng s khóa th có ca mt h hóa. Ví d, nếu
s dụng khóa kích thước 64 bit thì không gian khóa là 2
64
.
lOMoARcPSD|37054152
Hình 3.1. Các khâu Mã hóa và Gii mã ca mt h mã hóa
Mã hóa khóa ối xứng, Mã hóa khóa bất ối xứng, Hàm băm, Thám mã
Mã hóa khóa i xng (Symmetric key cryptography) là dạng mã hóa trong ó một khóa
ược s dng cho c khâu hóa khâu gii mã. Do khóa s dng chung cn phải ược
gi mật nên a khóa i xứng còn ưc gi hóa khóa mt (Secret key
cryptography). Hình 3.2 minh ha hoạt ng ca mt h hóa khóai xứng, trong ó một
khóa bí mt duy nhất ược s dng cho c hai khâu mã hóa và gii mã một thông iệp.
Hình 3.2. Mã hóa khóa i xng s dng chung 1 khóa bí mt
Mã hóa khóa bất i xng (Asymmetric key cryptography) là dạng hóa trong ó mt
cặp khóa ược s dng: khóa công khai (public key) dùng hóa, khóa riêng (private
key) dùng ể gii mã. Ch có khóa riêng cn phi gimt, còn khóa công khai có th ph
biến rng rãi. Do khóa mã hóa có th công khai nên ôi khi mã hóa khóa bất i xứng còn
ược gi là mã hóa khóa công khai (Public key cryptography). Hình 3.3 minh ha hoạt ộng
ca mt h hóa khóa bất i xứng, trong ó một khóa công khai ược s dng cho khâu
mã hóa và khóa riêng cho khâu giải mã thông iệp.
Hàm băm (Hash function) là một ánh x chuyn các d liệu có kích thước thayi v d
liệu có kích thước c nh. Hình 3.4 minh ha ầu vào (Input) và ầu ra (Digest) ca hàm m.
Trong c loại hàm băm, hàm băm 1 chiu (One-way hash function) m băm, trong ó
việc thc hin hóa tương ối ơn giản, còn vic giải thường có ộ phc tp rt ln, hoc
không kh thi v mt tính toán.
lOMoARcPSD|37054152
Hình 3.3. Mã hóa khóa bất ối xng s dng mt cp khóa
Hình 3.4. Minh họa ầu vào (Input) và ầu ra (Digest) của hàm băm
Thám hay phá (Cryptanalysis) quá trình giải thông iệp ã bị hóa
không cần trước thông tin v gii thut hóa khóa mã. Thám ra i, phát trin
song hành vi mt công việc òi hỏi khối lượng tính toán rt lớn, cũng như kinh
nghim, tri thức chuyên gia. Nhìn chung, thám mã liên quan ến vic phân tích toán hc các
gii thut mt mã, khai thác các iểm yếu trong gii thut cài t các h mã hóa nhm khôi
phục thông iệp gc và/hoc khóa mã.
3.1.2. Các thành phần của một hệ mã hóa
Mt h hóa hay h mt (Cryptosystem) mt bản cài t ca các k thut mt
mã và các thành phần có liên quan ể cung cp dch v bo mt thông tin. Hình 3.5 nêu các
thành phn ca mt h hóa ơn giản dùng m bo tính mt ca thông tin t người
gi truyền ến người nhn không b mt bên th ba nghe lén. Các thành phn ca mt
h mã hóa ơn giản gm bn rõ, gii thut mã hóa, bn mã, gii thut gii mã, khóa mã hóa
và khóa gii mã. Mt thành phn quan trng khác ca mt h mã hóa là không gian khóa -
tp hp tt c các khóa th có. d, nếu chọn kích thước khóa 64 bit thì không
lOMoARcPSD|37054152
gian khóa s là 2
64
. Nhìn chung, h mã hóa có ộ an toàn càng cao nếu không gian khóa la
chn càng ln.
Hình 3.5. Các thành phn ca mt h mã hóa ơn giản
3.1.3. Lịch sử mã hóa
Có th nói mã hóa hay mật mã là con ẻ ca toán hc nên s phát trin ca mật mã i lin
vi s phát trin ca toán hc. Tuy nhiên, do nhiu gii thut mt mã òi hỏi khi lượng tính
toán ln nên mt ch thc s phát trin mnh cùng vi s ra i phát trin của y
tính iện tử. Sau ây là một s mc trong s phát trin ca mt mã và ng dng mt mã:
- Các k thuật mã hoá thô sơ ã ược người c Ai cp s dụng cách ây 4000 năm.
- Người c Hy lp, Ấn cũng ã sử dụng mã hoá cách ây hàng ngàn năm.
- Các k thut hoá ch thc s phát trin mnh t thế k 1800 nh công c toán
hc, và phát triển vượt bc trong thế k 20 nh s phát trin ca y tính ngành
công ngh thông tin.
- Trong chiến tranh thế gii th I và II, các k thuật hóa ược s dng rng rãi trong
liên lc quân s s dng sóng vô tuyến. Quân ội các nước ã sử dng các công c phá
mã, thám mã giải mã các thông iệp của quân ịch.
- Năm 1976 chuẩn mã hóa DES (Data Encryption Standard) ược quan mật v M
(NSA National Security Agency) tha nhn và s dng rng rãi.
- Năm 1976, hai nhà khoa học Whitman Diffie Martin Hellman ã ưa ra khái nim
hóa khóa bất i xng (Asymmetric key cryptography), hay hóa khóa công
khai (Public key cryptography) ưa ến những thayi ln trong k thut mật mã. Theo
ó, các hệ hóa khóa công khai bắt ầu ược s dng rng rãi nh kh năng hỗ tr
trao i khóa d dàng hơn và do các hệhóa khóa mt gp khó khăn trong quản
lý và trao ổi khóa, ặc bit khi s lượng người dùng ln.
- Năm 1977, ba nhà khoa học Ronald Rivest, Adi Shamir, Leonard Adleman gii
thiu gii thut mã hóa khóa công khai RSA. T ó, RSA tr thành gii thut mã hóa
khóa công khai ược s dng rng rãi nht do RSA có th vừa ược s dng mã hóa
thông tin và s dng trong ch ký s.
- Năm 1991, phiên bản ầu tiên của PGP (Pretty Good Privacy) ra ời.
lOMoARcPSD|37054152
- Năm 2000, chuẩn hóa AES (Advanced Encryption Standard) ược tha nhn
ng dng rng rãi.
3.1.4. Mã hóa dòng và mã hóa khi
3.1.4.1. Mã hóa dòng
Mã hóa dòng hay mã hóa lung (Stream cipher) là kiu mã hóa mà tng bit, hoc ký t
ca bn ược kết hp vi tng bit, hoc t ơng ng ca ka to thành bn mã.
Hình 3.6 biu din quá trình mã hóa và giảitrong mã hóa dòng. Theo ó, bên gi các
bit P
i
ca bn rõ ược liên tục ưa vào kết hp vi bit tương ng K
i
của khóa to thành bit
C
i
; bên nhn, bit C
i
ược kết hp vi bit khóa C
i
khôi phc bit P
i
. Mt b sinh
lung khóa ược s dụng liên tc sinh các bit khóa K
i
t khóa gc K. Các gii thut
hóa ng tiêu biu như A5, hoặc RC4 ược s dng rng i trong truyn thông, vin thông.
Hình 3.6. Mô hình phương pháp mã hóa dòng
3.1.4.2. Mã hóa khối
Hình 3.7. Mô hình phương pháp mã hóa khi
hóa khi (Block cipher) kiu hóa d liệu ược chia ra thành tng khi
kích thước c ịnh hóa gii mã. Hình 3.7 biu din quá trình hóa gii
trong mã hóa khối. Theo ó, ở bên gi bản rõ ược chia thành các khối có kích thước c ịnh,
sau ó từng khối ược hóa chuyn thành khi mã. Các khối mã ược ghép li thành bn
mã. bên nhn, bn mã lại ưc chia thành các khi và tng lại ược gii chuyn thành
khi rõ. Cui cùng ghép các khối bn hoàn chnh. Các gii thut hóa khi
tiêu biu như DES, 3-DES, IDEA, AES ược s dng rt rng rãi trong mã hóa d liu với
kích thước khi 64, hoc 128 bit.
3.1.5. Ứng dụng của mã hóa
lOMoARcPSD|37054152
Mã hoá thông tin th ược s dụng m bo an toàn thông tin vi các thuc tính:
mt (confidentiality), toàn vn (integrity), c thc (authentication), không th chi b
(non-repudiation). C th, các k thuật mã hóa ược ng dng rng rãi trong các h thng,
công c và dch v bo mật như:
- Dch v xác thực (Kerberos, SSO, RADIUS,…)
- Kim soát truy cp
- Các công c cho ảm bo an toàn cho truyn thông không dây
- Các nn tng bo mật như PKI, PGP
- Các giao thc bo mật như SSL/TLS, SSH, SET, IPSec
- Các h thng bo mt kênh truyn, như VPN
- Các công nghng dng da trên mật mã, như công nghệ khi chui
(Blockchain), tin k thut s (Bitcoin, Ethereum,...).
3.2. Các phương pháp mã hóa
Phương pháp hóa phương pháp o trn d liệu to bn t bn rõ. Các
phương pháp hóa cổ iển thường phi gi mật phương pháp xáo trộn d liu. Ngưc
lại, các phương pháp hóa hiện ại thường không gi mật phương pháp xáo trn d
liệu, nhưng giữ bí mt khóa mã. Mc y mô t mt s phương pháp mã hóa cổ iển và hiện
ại ã ang ược s dng, bao gm phương pháp thay thế, phương pháp hoán vị, phương
pháp XOR, phương pháp Vernam, phương pháp sách hoặc khóa chy phương pháp hàm
băm. Phần tiếp theo ca mc này trình bày chi tiết các phương pháp mã hóa k trên.
3.2.1. Phương pháp thay thế
Phương pháp thay thế (Substitution) là phương pháp thay thế mt giá try bng mt
giá tr khác, như thay mt ký t bng mt ký t khác, hoc thay mt bit bng mt bit khác.
Hình 3.8 biu din b ch gc, b ch d hóa s dng h hóa ni tiếng
thi La Caesar cipher. Nguyên tc ca Caesar cipher dch 3 ch trong b t
tiếng Anh sang bên phi (AD, BE, CF,….). Bản “LOVE” ược hóa thành
“ORYH”.
Hình
3.8. Mã hóa bng h mã hóa Caesar cipher
Để tăng ộ an toàn của phương pháp thay thế, người ta có th s dng nhiu b ch mã,
như minh họa trên Hình 3.9 vi 4 b ch mã (Substitution cipher), vi nguyên tc thay thế:
ký t s 1 bn rõ thay thế s dng b chs 1, ký t s 2 s dng b ch mã s 2,…,
ký tự s 5 s dng b ch mã s 1,t s 6 s dng b ch mã s 2,… Nếu các b ch
mã ược sắp ặt ngu nhiên thì mt t xut hin các v trí khác nhau trong bn rõ s ược
chuyển i thành các t khác nhau trong bản mã. Điều y giúp tăng an toàn do làm
tăng ộ khó trong việc phân tích oán bản rõ t bn mã.
lOMoARcPSD|37054152
Hình 3.9. Phương pháp thay thế vi 4 b ch mã
3.2.2. Phương pháp hoán vị
Phương pháp hoán vị, hoặc ổi ch (permutation) thc hin sp xếp li các giá tr trong
mt khi bn to bn mã. Thao tác hoán v có th thc hin vi tng bit hoc tng byte
(ký t). Hình 3.10 minh ha ví d mã hóa bng phương pháp hoán vị thc hin i ch các
bit, trong ó việc i ch ược thc hin theo khóa trong khi 8 bit, tính t bên phi. Hình 3.11
minh ha ví d mã hóa bng phương pháp hoán vị thc hin i ch các ký tự, trong ó việc
i ch ược thc hin theo khóa trong khi 8 t, tính t bên phi. Vi bản
“SACKGAULSPARENOONE” ta 3 khối, 2 khối ầu 8 t, còn khi cui ch 2
ký t “NE” nên phải chèn thêm du trắng cho khi 8 ký t.
Hình 3.10. Phương pháp hoán vị thc hin i ch các bit
Hình 3.11. Phương pháp hoán vị thc hin i ch các ký t
3.2.3. Phương pháp XOR
Hình 3.12. Ví d mã hóa bằng phương pháp XOR
Phương pháp hóa XOR sử dụng phép toán logic XOR to bn mã, trong ó tng
bit ca bản ược XOR vi bit ơng ng ca khóa. Để gii mã, ta thc hin XOR tng
bit ca bn vi bit tương ng ca khóa. Hình 3.12 minh ha quá trình hóa bản
“CAT” với khóa “VVV”. Theo ó, các tự ca bản khóa ược chuyn thành mã ASCII
biu diễn i dng nh phân. Sau ó, thc hin phép toán XOR trên các bit tương ng
ca bn rõ và khóa to bn mã.
lOMoARcPSD|37054152
3.2.4. Phương pháp Vernam
Phương pháp Vernam sử dng mt tp t ni vào các t ca bản to bn
mã. Tp ký t này ược gi one-time pad và mi ký t trong tp ch dùng 1 ln trong mt
tiến trình mã hóa. Vi b ch tiếng Anh có 26 ch, hóa bằng phương pháp Vernam ược
thc hiện như sau:
- Các ký t ca bn và các ký t ca tp ni thêm (one-time pad) ược chuyn thành
s trong khong 1-26;
- Cng giá tr ca ký t trong bn rõ vi giá tr tương ứng trong tp ni thêm;
- Nếu giá tr cng lớn hơn 26 thì em trừ cho 26 ( ây chính phép modulo chia ly
phần dư).
- Chuyn giá tr s thành ký t mã.
Hình 3.13 minh ha mã hóa bản rõ “SACKGAULSPARENOONE” bằng phương pháp
Vernam vi tp nối thêm “FPQRNSBIEHTZLACDGJ”.
Hình 3.13. Mã hóa bằng phương pháp Vernam
3.2.5. Phương pháp sách hoặc khóa chạy
Phương pháp sách, hoặc khóa chy thc hin vic mã hóa và gii mã s dng các khóa
cha trong các cun sách. Hin nay phương pháp y thường ược dùng trong các b
phim trinh thám do tính cht k ca nó. d như, với bản “259,19,8; 22,3,8; 375,7,4;
394,17,2” và cuốn sách ược dùng chứa khóa là “A Fire Up on the Deep”, ta có thể gii mã
như sau:
- Trang 259, dòng 19, t th 8 là sack - Trang 22, dòng 3, t th 8 là island
- Trang 375, dòng 7, t th 4 là sharp
- Trang 394, dòng 17, t th 2 là path
Bản rõ tương ứng ca bản mã “259,19,8;22,3,8;375,7,4;394,17,2” là “sack island sharp
path”.
3.2.6. Phương pháp hàm băm
Các hàm băm (Hash functions) là các giải thuật ể to các bn tóm tt (digest) ca thông
iệp, thường ược s dụng ể nhn dạng và ảm bo tính toàn vn của thông iệp.
Độ dài của thông iệp u vào bt kỳ, nhưng ầu ra hàm băm thường dài c nh. Chi
tiết v các hàm băm ược mc 3.3.3. Các hàm băm thông dụng gm:
- Các hàm băm MD2, MD4, MD5 với ộ dài chuỗi ầu ra là 128 bit;
- Hàm băm MD6 cho chuỗi ầu ra có ộ dài trong khoảng 0 ến 512 bit;
lOMoARcPSD| 37054152
- Các hàm băm SHA0, SHA1 với ộ dài chuỗi ầu ra là 160 bit;
- Các hàm m SHA2, gm SHA256, SHA384, SHA512 cho phép mt s la chn
chuỗi ầu ra tương ứng 256, 384 và 512 bit;
- Hàm băm SHA3 cho chuỗi ầu ra có dài trong khoảng 0 ến 512 bit;
- Hàm băm CRC32 với chuỗi ầu ra 32 bit s dng trong kiểm tra dư tha mch vòng.
3.3. Các giải thuật mã hóa
Các gii thut hóa là các gii thuật cho phép m bo tính mt của thông tin u
tr, hoặc thông iệp truyền ưa bng cách chuyển ổi thông iệp bn thành bn bên
người gi và khôi phc bản rõ ban ầu t bn bên ngưi nhn. Mc này tp trung trình
bày hai nhóm gii thuật mã hóa ược s dng ph biến, bao gm:
- Các gii thuật hóa khóa i xng vi c i din DES, 3-DES AES, -
Các gii thut mã hóa khóa bất ối xng với ại din tiêu biu là RSA.
3.3.1. Các giải thuật mã hóa khóa ối xứng
3.3.1.1. Khái quát
hóa khóa i xứng hay thường gi hóa khóa mt s dng mt khóa mt
duy nht cho c quá trình mã hóa và gii mã. Khóa bí mật ược s dng trong quá trình
hóa giải còn ược gi khóa chung, hay khóa chia sẻ (Shared key). Khóa bí mt
dùng chung cần ược bên gi bên nhn chia s một cách an toàn trước khi th thc
hin vic mã hóa và giải mã các thông iệp. Hình 3.2, mc 3.1 ã mô tả hoạt ộng ca mt h
mã hóa bất i xứng, trong ó một khóa bí mt chia s ược s dng cho c quá trình mã hóa
và gii mã.
Các h hóa khóa i xng thường s dng khóa với kích thước tương i ngn. Mt
s kích thước khóa ược s dng ph biến là 64, 128, 192 256 bit. Do s phát trin nhanh
v tốc tính toán ca máy tính, nên các khóa kích thước nh n 128 bit ược xem
không an toàn và hu hết các h mã hóa khóa i xứng ảm bo an toàn hin ti s dụng khóa
có kích thước t 128 bit tr lên. Ưu iểm ni bt ca các h mã hóa khóa ối xứng là có ộ an
toàn cao tốc thc thi nhanh. Tuy nhiên, nhược iểm ln nht ca các h hóa khóa
i xng là vic qun lý và phân phi khóa rất khó khăn, c biệt là trong các môi trường m
như mạng Internet do các bên tham gia phiên truyn thông cn thc hin việc trao i các
khóa mt mt cách an toàn trước khi th s dụng chúng hóa và giải các thông
iệp trao ổi.
Mt s h mã hóa khóa i xng tiêu biu, gm DES (Data Encryption Standard), 3DES
(Triple-DES), AES (Advanced Encryption Standard), IDEA (International Data
Encryption Algorithm), Blowfish, Twofish, RC4 RC5. Phn tiếp theo ca mc này
mô t các gii thut hóa DES, 3-DES AES do chúng các gii thuật ã ang ược
s dng rng rãi nht trên thc tế. 3.3.1.2. Giải thuật mã hóa DES
a. Gii thiu
DES (Data Encryption Standard) ược phát trin ti IBM vi tên gi Lucifer vào u
những năm 1970 ược chp nhn chun hóa M vào m 1977. DES ược s dng
lOMoARcPSD|37054152
rng rãi trong những năm 1970 1980. DES dng hóa khi vi khi d liu vào
kích thước 64 bit khóa 64 bit, trong ó thực s dng 56 bit (còn gọi kích thước hiu
dng ca khóa) và 8 bit dùng cho kim tra chn l.
Một ưu iểm ca DES là s dng chung mt gii thut cho c khâu mã hóa và khâu gii
, như minh họa trên Hình 3.14, trong ó P khi bn rõ 64 bit, K là khóa vi kích thưc
hiu dng 56 bit, C là khi bn mã 64 bit, DES biu din khâu mã hóa và DES
-1
biu din
khâu gii mã. Hiện nay DES ược coi không an toàn do không gian khóa nh, d
b vét cn và tốc ộnh toán ca các h thng máy tính ngày càng nhanh trong những năm
gần ây.
Hình 3.14. Các khâu mã hóa và gii mã ca DES
b. Th tc sinh khoá ph
DES s dng mt th tc sinh 16 khóa ph t khóa chính ể s dng trong 16 vòng lp
hàm Feistel. Hình 3.15 minh ha th tc sinh 16 khóa ph t khóa chính ca DES. Các
bước x lý chính ca th tc sinh khóa ph như sau:
- 56 bit khóa ược chn t khóa gc 64 bit bi PC1 (Permuted Choice 1). 8 bit còn lại
ược hy hoặc dùng ể kim tra chn l;
- 56 bit ược chia thành 2 phn 28 bit, mi phần ược x lý riêng;
- Mi phần ược quay trái 1 hoc 2 bit;
- Hai phần ược ghép lại và 48 bit ưc chn làm khóa ph 1 (Subkey 1) bi PC2; - Lp
lại bước trên ể to 15 khóa ph còn li.
c. Mã hoá khi bn rõ
Vi mi khi d liệu u vào 64 bit, DES thc hiện 3 bước x như minh họa trên Hình
3.16 chuyn nó thành khối mã 64 bit tương ứng. Các bước c th gm:
- Bước 1: Hoán v khi to (IP Initial Permutation);
- Bước 2: 16 vòng lp chính thc hin xáo trn d liu s dng hàm Feistel (F). Sau
mi vòng lp, các kết qu trung gian ược kết hp li s dng phép (XOR); - Bước
3: Hoán v kết thúc (FP Final Permutation).
lOMoARcPSD|37054152
Hình 3.15. Th tc sinh các khóa ph t khóa chính ca DES
lOMoARcPSD|37054152
Hình 3.16. Các bước x lý chuyn khi rõ 64 bit thành khi mã 64 bit ca DES
Hàm Feistel (F) ht nhân trong các vòng lp x d liu của DES. Trước hết,
khi 64 bit ược chia thành 2 khi 32 bit và ược xlần lượt. Hàm Feistel ược thc
hin trên mt khi d liu 32 bit gồm 4 bước x như minh họa trên Hình 3.17. C
th, các bước x lý ca DES trên mi khi 32 bit (Half Block 32 bits) như sau:
- E (Expansion): thc hin m rng 32 bit khối ầu vào thành 48 bit bng cách nhân ôi
một na s bit.
- : Trn khi 48 bit kết qu bước E vi khóa ph 48 bit. Có 16 khóa ph (Subkey)
ược to t khóa chính ể s dng cho 16 vòng lp.
- Si (Substitution): Khi d liệu 48 bit ược chia thành 8 khi 6 bit và ược chuyn cho
các b thay thế (S1-S8). Mi b thay thế Si s dng phép chuyển ổi phi tuyến tính ể
chuyển 6 bit ầu vào thành 4 bit u ra theo bng tham chiếu. Các b thay thếthành
phn nhân an ninh (Security core) ca DES.
- P (Permutation): khi 32 bit u ra t các b thay thế ược sp xếp bng phép hoán v
c ịnh (Fixed permutation) cho ra ầu ra 32 bit.
Hình
3.17. Các bước x lý ca hàm Feistel (F)
d. Gii mã khi bn
Như ã cp, gii thut DES có th s dng cho c khâu mã hóa và gii mã. Trong khâu
giải các bước x tương tự khâu hóa. Tuy nhiên, các khóa ph s dng cho các
vòng lặp ược s dng theo trt t ngược li: khóa ph s 16, 15,…, 2, 1 ược s dng cho
các vòng lp s 1, 2,…, 15, 16 tương ứng.
3.3.1.3. 3-DES
3-DES hay Triple DES tên y ủ Triple Data Encryption Algorithm (TDEA) ược
phát trin t gii thut DES bng cách áp dng DES 3 ln cho mi khi d liệu ầu vào 64
bit. 3-DES s dng mt b gồm 3 khóa DES: K1, K2, K3, trong ó mỗi khóa kích thưc
hiu dng là 56 bit. 3-DES cho phép la chn các b khóa:
- La chn 1: c 3 khóa c lp, vi tổng kích thước b khóa là 168 bit;
lOMoARcPSD| 37054152
- La chọn 2: K1 và K2 c lp, K3 = K1, vi tổng kích thước b khóa là 112 bit;
lOMoARcPSD|37054152
-
La chn 3: 3 khóa ging nhau, K1 = K2 = K3, vi tổng kích thước b khóa là 56
bit.
Hình 3.18 biu din quá trình hóa gii vi gii thut 3-DES, trong ó khâu
hóa ược hiu E khâu giải ược hiu D. Theo ó, bên gi bn rõ
(Plaintext) ược hóa bng khóa K1, gii bng khóa K2 hóa bng khóa K3
cho ra bn mã (Ciphertext). bên nhn, quá trình gii bắt u bng vic gii bằng
khóa K3, sau ó mã hóa bằng khóa K2 và cui cùng gii mã bng khóa K1 khôi phc bản
rõ. Ưu iểm ca 3-DES nâng cao ược an toàn nh tăng kích thước khóa. Tuy nhiên,
nhược iểm chính ca 3-DES tốc thc thi chm do phi thc hin DES lp 3 ln cho
mi khâu mã hóa và gii mã.
Hình 3.18. Mã hóa và gii mã vi gii thut 3-DES
3.3.1.4. Giải thuật mã hóa AES
a. Gii thiu
AES (Advanced Encryption Standard) mt chun hóa d liệu ược Vin Tiêu
chun Công ngh M (NIST) công nhận năm 2001. AES ược xây dng da trên
Rijndael cipher phát trin công b m 1998 bi 2 nhà mt học người B Joan
Daemen và Vincent Rijmen. AES là dng mã hóa khi, vi khi d liu vào có kích thước
128 bit khóa mt vi kích thưc th 128, 192, hoc 256 bit. AES ược thiết
kế da trên mng hoán v-thay thế (Substitution-permutation network) th cho
tốc thc thi cao khi cài t bng c phn mm phn cng. Đặc bit, gii thuật AES ã
ược tích hp vào các b vi x gần ây của hãng Intel dưới dng tp lnh AES-NI, giúp
tăng áng kể tốc ộ thc thi các thao tác mã hóa và gii mã da trên AES.
AES vn hành da trên mt ma trận vuông 4x4, ưc gi state (trng thái). Ma trn
này gm 16 phn t, mi phn t 1 byte d liệu. State ược khi tr khi 128 bit bn
rõ và qua quá trình biến i s cha khi 128 bit bn ầu ra. Như ã cp, AES h tr
3 kích thước khóa kích thước ca khóa quyết nh s vòng lp chuyển ổi cn thc hiện
chuyn bn rõ thành bản mã như sau:
- 10 vòng lp vi khóa 128 bit;
lOMoARcPSD|37054152
-
12 vòng lp vi khóa 192 bit; -
14 vòng lp vi khóa 256 bit.
b. Quá trình mã hóa
Gii thut AES cho mã hóa d liệu, như minh họa trên Hình 3.19, gồm các bước x
chính như sau:
- M rng khóa (Key Expansion): các khóa ng (Round key) dùng trong các vòng
lặp ược sinh ra t khóa chính AES s dng th tc sinh khóa Rijndael.
Hình 3.19. Các bước x lý mã hóa d liu ca AES
- Vòng khi to (Initial Round): Thc hiện m AddRoundKey, trong ó mỗi byte
trong state ược kết hp vi khóa vòng s dng phép XOR.
- Các vòng lp chính (Rounds): 4 hàm biến i d liệu ược thc hin trong mi
vòng, gm:
+ SubBytes: hàm thay thế phi tuyến tính, trong ó mỗi byte trong state ược thay thế
bng mt byte khác s dng bng tham chiếu S-box;
+ ShiftRows: m i chỗ, trong ó mỗi dòng trong state ược dch mt s bước theo
chu k;
lOMoARcPSD|37054152
-
+ MixColumns: trn các ct trong state, kết hp 4 bytes trong mi ct.
+ AddRoundKey.
Vòng cui (Final Round): Tương tự các vòng lặp chính, nhưng chỉ thc hin 3 hàm
biến ổi d liu, gm:
+ SubBytes;
+ ShiftRows;
+ AddRoundKey.
c. M rng khóa
Hình 3.20. Th tc sinh khóa Rijndael
Khâu m rng khóa AES s dng th tc sinh khóa Rijndael sinh các khóa vòng
(Round key) cho các vòng lp x lý như biểu din trên Hình 3.20. Th tc Rijndael nhn
u vào là khóa chính AES (cipher key) và xut ra mt khóa vòng (Subkey/Round key) sau
mi vòng lp. Mt vòng lp ca th tc Rijndael gm các khâu:
- Rotword: quay trái 8 bit tng t 32 bit t khóa gc;
- SubBytes: thc hin phép thay thế s dng bng tham chiếu S-box.
- Rcon: tính toán giá tr Rcon(i) = x
(i-1
) mod x
8
+ x
4
+ x
3
+ x + 1
- ShiftRow: thc hiện i ch tương tựm ShiftRows ca AES.
d. Các hàm x lý chính
Hàm SubBytes: Mi byte trong ma trn state ược thay thế bi 1 byte trong Rijndael S-
box, hay b
ij
= S(a
ij
) như minh họa trên nh 3.21. S-box là mt bng tham chiếu phi tuyến
lOMoARcPSD| 37054152
-
tính, ược to ra bng phép nhân nghịch ảo mt s cho trước trong trường GF(2
8
). Nếu như
trong khâu mã hóa S-box ược s dng thì bng S-box ảo ược s dng trong khâu gii mã.
Hàm ShiftRows: Các dòng ca ma trn state ược dch theo chu k sang trái theo nguyên
tc: hàng s 0 gi nguyên, hàng s 1 dch 1 byte sang trái, hàng s 2 dch 2 byte và hàng
s 3 dịch 3 byte, như minh họa trên Hình 3.22.
lOMoARcPSD|37054152
Hàm MixColumns: Mi ct ca ma trn state ược nhân vi một a thức c(x), như minh
ha trên Hình 3.23. Đa thc c(x) = 3x
3
+ x
2
+ x +2.
Hàm AddRoundKey: Mi byte ca ma trn state ược kết hp vi mt byte tương ng
ca khóa vòng s dng phép (XOR), như minh họa trên Hình 3.24.
Hình 3.21. Hàm SubBytes s dng Rijndael S-box
Hình 3.22. Hàm ShiftRows
Hình 3.23. Hàm MixColumns
lOMoARcPSD|37054152
Hình 3.24. Hàm AddRoundKey
e. Quá trình gii mã
Hình 3.25. Quá trình mã hóa và gii mã trong AES
Khâu giải trong AES cũng gồm các bước x ơng tự như khâu hóa. Hình
3.25 biu din quá trình mã hóa và gii mã trong AES. Theo ó, ngoài bước M rng khóa,
quá trình gii gm Vòng khi to (AddRoundKey), Các vòng lp chính (Decryption
round) và Vòng cui (Last round) chuyn khi thành khối rõ. Điểm khác bit chính
ca khâu gii so vi khâu hóa các hàm ảo ược s dụng, như các hàm ảo
InvSubBytes, InvShiftRows InvMixColumns tương ng thay cho các hàm SubBytes,
ShiftRows và MixColumns.
3.3.2. Các giải thuật mã hóa khóa bất ối xứng
3.3.2.1. Khái quát
hóa khóa bất i xng, ôi khi ưc gi hóa khóa công khai s dng mt cp
khóa cho quá trình hóa gii mã. Trong cp khóa, khóa công khai ược s dng cho
mã hóa khóa riêng ược s dng cho gii mã. Ch khóa riêng cn gi mt, còn khóa
công khai có th ph biến rộng rãi, nhưng phải m bo tính toàn vn và xác thc ch th
ca khóa. Hình 3.3, mc 3.1 ã mô tả hoạt ng ca mt h mã hóa khóa bất ối xứng, trong
ó một cp khóa, gồm khóa công khai và khóa riêng tương ứng ược s dng cho quá trình
mã hóa và gii mã.
Đặc iểm ni bt ca các h hóa khóa bất i xng kích thước khóa ln, lên ến
hàng ngàn bit. Do vy, các h mã hóa dạng này thường tốc thc thi chậm hơn nhiều
ln so vi các h hóa khóa i xng với an toàn tương ương. Mặc vy, các h
lOMoARcPSD| 37054152
hóa khóa bất ối xng kh năng ạt ộ an toàn cao ưu iểm ni bt nht vic qun
và phân phi khóa ơn giản hơn do khóa công khai có thể phân phi rng rãi.
Các gii thut hóa khóa bất i xứng iển hình bao gm: RSA, Rabin, ElGamal,
McEliece và Knapsack. Trong mc tiếp theo chúng ta tìm hiu v gii thut mã hóa RSA
mt trong các gii thuật hóa khóa i xứng ược s dng rng rãi nht trên thc tế.
3.3.2.2. Giải thuật mã hóa RSA
a. Gii thiu
Gii thuật hóa RSA ược 3 nhà khoa học người M R. Rivest, A. Shamir L.
Adleman phát minh m 1977, và n giải thut RSA ly theo ch cái ầu ca tên 3 ng tác
giả. Độ an toàn ca RSA da trên tính khó ca vic phân tích s nguyên rt ln, với ộ ln
c hàng trăm chữ s thp phân. Gii thut RSA s dng mt cp khóa, trong ó khóa công
khai dùng hóa khóa riêng dùng gii mã. Ch khóa riêng RSA cn gi mt.
Khóa công khai có th công b rng rãi. Hin nay, các khóa RSA có kích thước nh hơn
1024 bit ược coi là không an toàn do tốc ộ các h thống máy tính tăng nhanh. Để m bo
an toàn, khuyến ngh s dng khóa 2048 bit trong giai oạn 20102020. Trong tương lai, cần
s dụng khóa RSA có kích thước lớn hơn, chẳng hn 3072 bit. b. Sinh khóa
RSA cung cp mt th tc sinh cp khóa (khóa công khai khóa riêng) tương i ơn
giản. C th, th tc sinh khóa gồm các bước như sau:
- To 2 s nguyên t pq;
- Tính modulo n = p × q
- Tính (n) = (p-1) × (q-1)
- Chn s e sao cho 1 < e < (n) và gcd(e, (n)) = 1, trong ó hàm gcd() tính ưc s
chung ln nht ca 2 s nguyên. Do gcd(e, (n)) = 1 nên e (n) là 2 s nguyên
t cùng nhau.
- Chn s d sao cho d e
-1
mod (n),
hoc (d × e) mod (n) = 1
hay d là modulo nghịch ảo ca e.
- Ta (n, e) khóa công khai, (n, d) khóa riêng n còn ược gi modulo. c.
Mã hóa và gii
- Mã hóa
+ Thông iệp bn rõ m ã ược chuyn thành s, vi m < n. Nếu thông iệp bn rõ m
kích thước lớn thì ược chia thành các khi m
i
, vi m
i
< n. + Bn mã c = m
e
mod n
- Gii mã
+ Bn mã c, vi c < n
+ Bn rõ m = c
d
mod n
d. Ví d
- Sinh khóa:
lOMoARcPSD| 37054152
+ Chn 2 s nguyên t p = 3 và q = 11
+ Tính n = p × q = 3 × 11 = 33
+ Tính (n) = (p-1) × (q-1) = 2 × 10 = 20
+ Chn s e sao cho 1 < e < 20, e (n) là s nguyên t cùng nhau ( (n) không
chia hết cho e). Chn e = 7
+ Tính (d x e) mod (n) (d × 7) mod 20 = 1
d = (20 × k +1)/7 d = 3 (k=1)
+ Ta có: khóa công khai (33, 7) khóa riêng (33, 3) -
Mã hóa:
+ Vi bn rõ m = 6,
+ c = m
e
mod n = 6
7
mod 33 = 279936 mod 33 = 30
+ Vy bn c = 30 -
Gii mã:
+ Vi bn mã c = 30
+ m = c
d
mod n = 30
3
mod 33 = 27000 mod 33 = 6 +
Vy bn rõ m = 6.
e. Mt s yêu cu vi quá trình sinh khóa
Dưới ây liệt các yêu cầu t ra vi các tham s sinh khóa khóa m bo s an
toàn cho cp khóa RSA. Các yêu cu c th gm:
- Yêu cu vi các tham s sinh khóa pq:
+ Các s nguyên t p q phải ược chn sao cho vic phân tích n (n = p × q)
không kh thi v mt tính toán. p q nên cùng ộ ln (tính bng bit) và phi
là các s ln. Nếu n kích thước 2048 bit thì pq nên có kích thước khong
1024 bit.
+ Hiu s p q không nên quá nh, do nếu p q quá nh, tc p q p 𝑛. Như
vy, có th chn các s nguyên t gần 𝑛thử. Khi có ược p, có th tính q
tìm ra d khóa mt t khóa công khai e (n) = (p - 1)(q - 1). Nếu p q
ược chn ngu nhiên p q ln, kh năng hai số này b phân tích t n giảm
i.
- Vấn s dng s mũ mã hóa (e) nh: Khi s dng s mũ mã hóa (e) nh, chng hn
e = 3 có th tăng tốc ộ mã hóa. K tn công có th nghe lén và lấy ược bn mã, t ó
phân tích bản khôi phc bn rõ. Do s hóa nhỏ nên chi phí cho phân
tích, hoc vét cn không quá ln. Do vy, nên s dng s hóa e ln
thêm chui ngu nhiên vào khối trước khi hóa gim kh ng bị vét cn
hoc phân tích bn mã.
lOMoARcPSD|37054152
- Vấn s dng s giải (d) nh: Khi s dng s giải (d) nh, th
tăng tốc ộ gii mã. Nếu d nh và gcd(p-1, q-1) cũng nhỏ thì dth tính ược tương
i d dàng t khóa công khai (n, e). Do vy, ể m bo an toàn, nên s dng s
giải mã d ln.
3.3.3. Các hàm băm
Theo ịnh nghĩa trong mục 3.1.1, m băm mt ánh x chuyển i d liệu u vào
kích thước thayi sang d liệu ầu ra có kích thước c nh. Hu hết các hàm băm ều h tr
dài thông iệp u vào rt ln, ến 2
64
bit, hoc thm cến 2
128
bit, nên th coi dài
thông iệp u vào của hàm băm là bất kỳ. Do chuỗi băm ầu ra thường có kích thước c nh
và nh hơn nhiều ln so với thông iệp ầu vào, nó thường ược gi là chuỗi ại diện, hay bản
tóm lược (digest) của thông iệp. Mc y gii thiu các tính chất bản của hàm m,
phân loại các hàm băm, mô hình xử lý d liu và mô t mt s hàm băm thông dụng gm
MD5 và SHA1. 3.3.3.1. Khái quát về hàm băm
a. Gii thiu
Hàm băm (hash function) là một hàm toán hc h có ti thiu 2 thuc tính:
- Nén (Compression): h là mt ánh x t chuỗi ầu vào x có chiu dài bt k sang mt
chuỗi ầu ra h(x) có chiu dài c nh n bit;
- D tính toán (Ease of computation): cho trước hàm h u vào x, vic tính toán h(x)
là d dàng.
Hình 3.26 minh ha mô hình nén thông tin của hàm băm, theo ó thông iệp (Message)
u vào vi chiều dài tùy ý i qua nhiều vòng x của hàm băm to chui rút gn, hay
chuỗi ại din (Digest) có kích thước c nh u ra.
Hình 3.26. Mô hình nén thông tin của hàm băm
b. Phân loi
th phân loại các hàm băm theo khóa sử dng hoc theo chc năng. Theo khóa sử
dụng, các hàm băm gồm 2 loại: hàm băm không khóa và hàm băm có khóa, như biểu din
lOMoARcPSD|37054152
trên Hình 3.27. Trong khi hàm băm không khóa nhận u vào ch thông iệp (dng h(x),
với hàm băm h thông iệp x), hàm băm khóa nhận u vào gồm thông iệp khóa
mt (theo dng h(x, K), với hàm băm h thông iệp xKkhóa bí mt). Trong các hàm
băm không khóa, các phát hiện sa i (MDC Modification Detection Code) ược s
dng rng rãi nht, bên cnh mt s hàm băm không khóa khác. Tương tự, trong các hàm
băm khóa, các xác thực thông iệp (MAC - Message Authentication Code) ưc s
dng rng rãi nht, bên cnh mt s m băm có khóa khác.
Hình 3.27. Phân loại các hàm băm theo khóa sử dng
Theo chức năng, có thể chia các hàm băm thành 2 loại chính:
- phát hin sửa i (MDC - Modification Detection Code): MDC thường ược s
dụng ể to chuỗi ại diện cho thông iệp và dùng kết hp vi các k thut khác (như
chữ ký s) m bo tính toàn vn của thông iệp. MDC thuc loi hàm băm không
khóa. MDC gồm 2 loi nh:
+ Hàm băm một chiu (OWHF - One-way hash functions): Với hàm m một chiu,
vic tính giá tr băm là dễ dàng, nhưng việc khôi phục thông iệp t giá tr m là
rất khó khăn;
+ Hàm băm chống ụng ộ (CRHF - Collision resistant hash functions): Vi hàm băm
chống ụng ộ, s là rất khó ể tìm ược 2 thông iệp khác nhau nhưng có cùng giá tr
băm.
- xác thc thông iệp (MAC - Message Authentication Code): MAC cũng ược
dùng ể m bo tính toàn vn của thông iệp mà không cn mt k thut b sung nào
khác. MAC là loại hàm băm có khóa như ã ề cp trên, với u vào là thông iệp
mt khóa bí mt.
c. Mô hình x lý d liu
Hình 3.28 biu din hình tng quát x lý d liu của các hàm băm. Theo ó, thông
iệp ầu vào với ộ dài y ý i qua m nén lặp nhiều vòng ể to chuỗi u ra có kích thước c
nh. Chuỗi này i qua một khâu chuyển ổi ịnh dng tùy chọn ể to ra chui băm kết qu.
Hình 3.29 mô t chi tiết quá trình x lý d liu của các hàm băm. Theo ó, quá trình x
gồm 3 bước chính: (1) tin x lý, (2) x lp (3) chuyển ổi nh dng. Trong bước
tin x lý, thông iệp u vào x trước hết ược nối uôi thêm một s bit kích thước khối,
sau ó chia thành các khối có kích thước c ịnh. Kết qu của bước nàyt khi d liệu có
lOMoARcPSD|37054152
cùng kích thước có dng x = x
1
x
2
…x
t
làm ầu vào cho bước 2. Trong bước 2, tng khi d
liu x
i
ược x thông qua hàm nén f tạo u ra là H
i
. Kết qu ca c 2 chuỗi u ra
H
t
H
t
ược chuyển ổi ịnh dng bi hàm g to chui giá tr băm hết qu h(x).
Hình 3.28. Mô hình tng quát xd liu của hàm băm
Hình 3.29. Mô hình chi tiết x lý d liu của hàm băm
3.3.3.2. Một số hàm băm thông dụng
Các hàm m thông dụng gii thiu trong mục này ều các hàm băm không khóa, gm
các h hàm băm chính như sau:
- H hàm băm MD (Message Digest) gồm các hàm băm MD2, MD4, MD5 và MD6.
lOMoARcPSD|37054152
- H hàm băm SHA (Secure Hash Algorithm) gồm các m m SHA0, SHA1, SHA2
và SHA3.
- Mt s hàm băm khác, gm CRC (Cyclic redundancy checks), Checksums,...
Các mc con tiếp theo ca mc y gii thiệu 2 m băm ã ang ược s dng rng
rãi nhất là hàm băm MD5 và SHA1. a. Hàm băm MD5
* Gii thiu
MD5 (Message Digest) là hàm băm không khóa ược Ronald Rivest thiết kế năm 1991
thay thế MD4. Chui giá tr m ầu ra ca MD5 là 128 bit (16 byte) và thường ược biu
din thành 32 s hexa. MD5 ưc s dng khá rng rãi trong nhiu ng dng, như tạo chui
m bo tính toàn vẹn thông iệp, to chui kim tra li, hoc kim tra tính toàn vn d liu
(Checksum) hóa mt khu trong các h iều hành các ng dng. MD5 hiện nay
ược khuyến ngh không nên s dụng do nó không còn ủ an toàn. Nhiều iểm yếu của MD5
ã bị khai thác, như iển hình MD5 b khai thác bởi mã ộc Flame vào năm 2012.
* Quá trình x lý thông iệp
Quá trình x lý thông iệp ca MD5 gm 2 khâu là tiền xử lýcác vòng lặp xử lý. C
th, chi tiết v các khâu này như sau:
- Tin x lý: Thông iệp ưc chia thành các khi 512 bit (16 t 32 bit). Nếu kích thước
thông iệp không là bi s ca 512 thì ni thêm s bit còn thiếu.
- Các vòng lp x lý: Phn x chính ca MD5 làm vic trên state 128 bit, chia
thành 4 t 32 bit (A, B, C, D):
+ Các t A, B, C, D ược khi tr bng mt hng c nh;
+ Tng phn 32 bit ca khối u vào 512 bit ược ưa dần vào thay i state; + Quá
trình x lý gm 4 vòng, mi vòng gồm 16 thao tác tương tự nhau.
+ Mi thao tác gm: X lý bi hàm F (4 dng hàm khác nhau cho mi vòng), Cng
modulo và Quay trái. Hình 3.30 biu diễn lưu x lý ca mt thao tác ca MD5,
trong ó A, B, C, D là các từ 32 bit ca state, Mi: khi 32 bit thông iệp ầu vào, Ki
32 bit hng khác nhau cho mi thao tác, <<<s là thao tác dch trái s bit, biu
din phép cng modulo 32 bit và F là hàm phi tuyến tính.
Hàm F gm 4 dạng ược dùng cho 4 vòng lp. C th, F các dạng như sau: F(B,
C, D) = (B C) ( B D)
G(B, C, D) = (B D) (C D)
H(B, C, D) = B C D
I(B, C, D) = C (B D) trong ó, các ký hiệu , , , biu din các phép toán
lô gíc XOR, AND, OR và NOT tương ứng.
lOMoARcPSD|37054152
Hình 3.30. Lưu ồ x lý mt thao tác ca MD5
b. Hàm băm SHA1
* Gii thiu
SHA1 (Secure Hash Function) ược quan mật v M thiết kế m 1995 thay thế
cho m băm SHA0. Chuỗi giá tr băm u ra của SHA1 kích thưc 160 bit thường
ược biu din thành 40 s hexa. Tương tự MD5, SHA1 ưc s dng rộng rãi m bo tính
xác thc và toàn vẹn thông iệp.
* Quá trình x lý thông iệp
SHA1 s dng th tc x lý thông iệp tương tự MD5, cũng gồm 2 khâu là tiền xử lý
các vòng lặp xử lý. C th, chi tiết v các khâu này như sau:
- Tin x lý: Thông iệp ược chia thành các khi 512 bit (16 t 32 bit). Nếu kích thước
thông iệp không là bi s ca 512 thì ni thêm s bit còn thiếu.
- Các vòng lp x lý: Phn x chính ca SHA1 m vic trên state 160 bit, chia
thành 5 t 32 bit (A, B, C, D, E):
+ Các t A, B, C, D, E ược khi tr bng mt hng c nh;
+ Tng phn 32 bit ca khối ầu vào 512 bit ược ưa dần vào ể thay ổi state;
+ Quá trình x gm 80 vòng, mi vòng gm các thao tác: add, and, or, xor, rotate,
mod.
+ Mi vòng x gm: X bi m phi tuyến tính F (có nhiu dng hàm khác
nhau), Cng modulo và Quay trái. Hình 3.31 biu diễn lưu ồ mt vòng x lý ca
SHA1, trong ó A, B, C, D, E là các t 32 bit ca state, W
t
: khi 32 bit thông iệp
u vào, K
t
32 bit hng khác nhau cho mi vòng, <<<n thao tác dch trái n
bit, biu din phép cng modulo 32 bit và F là hàm phi tuyến tính.
Hàm phi tuyến tính F ph thuc vào sng lp t như sau:
lOMoARcPSD|37054152
trong
ó, các hiệu , , , tương ng biu din các phép toán gíc XOR, AND, OR
NOT.
Hình 3.31. Lưu ồ mt vòng x lý ca SHA1
3.4. Chữ ký số, chứng chỉ số và PKI
3.4.1. Chữ ký số
3.4.1.1. Một số khái niệm
Chữ số (Digital signature) là mt chui d liu liên kết vi một thông iệp (message)
thc th tạo ra thông iệp. Ch s thường ược s dụng m bo tính toàn vn của
thông iệp.
Giải thuật tạo chữ s (Digital signature generation algorithm) một phương pháp
sinh ch ký s;
Giải thuật kiểm tra chữ ký số (Digital signature verification algorithm) là một phương
pháp xác minh tính xác thc ca ch ký số, có nghĩa là nó thực s ược to ra bi 1 bên
ch nh;
Một hệ chữ số (Digital signature scheme) bao gm gii thut to ch s gii
thut kim tra ch ký s.
Quá trình tạo chữ ký s (Digital signature signing process) bao gm:
- Gii thut to ch ký s, và
- Phương pháp chuyển d liệu thông iệp thành dng có th ký ược.
Quá trình kiểm tra chữ ký số (Digital signature verification process) bao gm:
- Gii thut kim tra ch ký s, và
- Phương pháp khôi phục d liu t thông iệp.
lOMoARcPSD|37054152
3.4.1.2. Quá trình ký và kiểm tra
Hình 3.32. Quá trình to ch ký s và kim tra ch ký s
Hình 3.32 biu din quá trình to ch s kim tra ch s cho một thông iệp
(Message). Trong khi qtrình to ch ký s cho thông iệp ược thc hin bên người gi
(Sender) thì quá trình kim tra ch s của thông iệp ưc thc hin bên người nhận
(Receiver). Để có th to và kim tra ch ký s cho thông iệp, người gi phi s hu cặp
khóa công khai (Public key) và khóa riêng (Private key). Khóa riêng dùng ể to chs
và khóa công khai dùng ể kim tra ch ký s.
Các bước ca quá trình to ch ký s cho thông iệp (bên người gi - Sender):
- Tính toán chuỗi ại din (message digest/hash value) của thông iệp s dng mt gii
thuật băm (Hashing algorithm);
- Chuỗi i diện ược s dng khóa riêng (Private key) của người gi mt gii
thut to ch (Signature/Encryption algorithm). Kết qu ch ký s (Digital
signature) của thông ip hay còn gi chuỗi i diện ược hóa (Encrypted
message digest);
- Thông iệp ban ầu (message) ược ghép vi ch s (Digital signature) to thành
thông iệp ã ược ký (Signed message);
- Thông iệp ã ược ký (Signed message) ược gửi cho người nhn.
Các bước ca quá trình kim tra ch ký s của thông iệp (bên người nhn - Receiver):
- Tách ch ký s và thông iệp gc khỏi thông iệp ã ký ể x lý riêng;
- Tính toán chuỗi ại din MD1 (message digest) của thông iệp gc s dng gii thuật
băm (là giải thut s dng trong quá trình ký);
lOMoARcPSD| 37054152
- S dng khóa công khai (Public key) của người gửi gii chs khôi phc
chuỗi ại diện thông iệp MD2. Trên thc tế, người gửi thường chuyn chng ch s
khóa công khai của mình cho người nhận và ngưi nhn thc hin vic kim tra
chng ch s của người gi tách ly khóa công khai nếu vic kim tra thành công.
- So sánh hai chuỗi i din MD1 và MD2:
+ Nếu MD1 = MD2 : chkiểm tra thành công. Thông iệp ảm bo tính toàn vn
và thc s xut phát t người gửi (do khóa công khai ược chng thc).
+ Nếu MD1 <> MD2 : ch không hp lệ. Thông iệp th ã bị sửa i hoc không
thc s xut phát t người gi.
3.4.1.3. Các giải thuật chữ ký số
Mc này trình y 2 gii thut ch s thông dụng RSA DSA. RSA ược s
dng rng rãi do RSA có th ược s dụng ể hóa thông iệp và to ch ký s cho thông
iệp. DSA là thut toán chchuẩn ược Vin NIST (Hoa K) phát trin. a. Gii thut ch
ký s RSA
Gii thuật RSA cp mc 3.3.2.2 có th ược s dng vi hai mục ích mã hóa - giải
thông iệp to ch s - kim tra ch s cho thông iệp. Điểm khác bit gia
vic s dng RSA cho hóa ch s bên s hu các cp khóa vic s dng
các khóa trong quá trình mã hóa và gii mã. C th:
- RSA s dng cho mã hóa thông iệp:
+ Người nhn phi s hu cp khóa công khai (Public key) và khóa riêng (Private
key). Người nhn chuyn khóa công khai của mình cho người gi;
+ Người gửi hóa thông iệp s dng khóa công khai của người nhn chuyn
bản mã cho người nhn;
+ Người nhn giải thông iệp s dng khóa riêng của mình khôi phc bn
của thông iệp.
- RSA s dng cho to ch ký s thông iệp:
+ Người gi phi s hu cp khóa công khai (Public key) khóa riêng (Private
key). Người gi chuyn khóa công khai ca mình cho người nhn;
+ Người gi s dụng khóa riêng to ch s cho thông iệp (bn cht là s dụng
khóa riêng ể mã hóa chuỗi ại diện cho thông iệp);
+ Ngưi nhn s dng khóa công khai của ngưi gi kim tra ch ký s ca thông
iệp (bn cht s dng khóa công khai gii khôi phc chuỗi i diện cho
thông iệp).
Quá trình kim tra ch s s dng gii thuật RSA tương tự như quá trình
và kim tra chs tổng quát ã trình y mc 3.4.1.2 và Hình 3.32, trong ó quá trình
ký s dng gii thut mã hóa RSA vi khóa riêng của ngưi gi và quá trình kim tra s
dng gii thut gii RSA vi khóa công khai của người gi. b. Gii thut ch s
DSA
lOMoARcPSD| 37054152
DSA (Digital Signature Algorithm) là thut toán ch ký s ược phát trin t gii thut
ElGamal Signature Algorithm và ược công nhn là chun ch ký s s dng trong c cơ
quan chính ph bi Vin NIST (Hoa Kỳ) vào năm 1991. DSA gồm 3 gm 3 khâu: (1) sinh
cặp khóa, (2) quá trình ký thông iệp và (3) quá trình kim tra ch ký ca thông iệp.
* Sinh khóa cho một ngưi dùng:
- Chn s ngu nhiên x sao cho 0 < x < q;
- Tính y = g
x
mod p;
- Khóa công khai là (q, p, g, y); - Khóa riêng là x.
* Quá trình ký thông iệp:
- H là hàm băm sử dụng và m là thông iệp gc;
- Tính H(m) t thông iệp gc;
- To s ngu nhiên k cho mi thông iệp, 0 < k < q;
- Tính r = (g
k
mod p) mod q;
- Nếu r = 0, chn mt k mi và tính li r;
- Tính s = k
-1
(H(m) + xr) mod q;
- Nếu s = 0, chn mt k mi và tính li r và s; - Ch ký là cp (r, s).
* Quá trình kim tra ch
- Loi b ch ký nếu r và s không tha mãn 0 < r , s < q;
- Tính H(m) t thông iệp nhận ược;
- Tính w = s
-1
mod q;
- Tính u1 = H(m) * w mod q;
- Tính u2 = r * w mod q;
- Tính v = ((g
u1
* y
u2
) mod p) mod q; - Ch ký là xác thc nếu v = r.
Theo mt s nghiên cu, gii thut ch s DSA gii thut ch s RSA
an toàn tương tương. Ưu iểm ca gii thut ch s DSA so vi gii thut ch s
RSA là quá trình sinh cặp khóa và quá trình nhanh hơn. Tuy nhiên, quá trình kim tra
ch ký s bi DSA thc hin chm hơn RSA. Trên thc tế, gii thut ch ký s RSA ược
s dng rộng rãi hơn do RSA thể s dng cho c mục ích hóa/giải ký/kim
tra ch ký, trong khi DSA ch có th s dụng ký/kim tra ch ký.
3.4.2. Chứng chỉ số
3.4.2.1. Giới thiệu
Chng ch s (Digital certificate), còn gi chng ch khóa công khai (Public key
certificate), hay chng ch nhn dng (Identity certificate) mt tài liệu iện t s dng
mt ch ký s liên kết mt khóa công khai và thông tin nhn dng ca mt thc th. Ba
thành phần cơ bản nht ca mt chng ch s gm:
lOMoARcPSD|37054152
- Ch s: ch ca mt bên th 3 tin cy cung cp chng ch số, thường gi
là CA Certificate Authority;
- Khóa công khai: là khóa công khai trong cp khóa công khai và khóa riêng ca thc
th;
- Thông tin nhn dạng: tên, a ch, n min hoc các thông tin nh danh ca thc
th.
Chng ch sth ược s dụng xác minh ch th thc s ca mt khóa công khai.
Hình 3.33 giao din kim tra thông tin mt chng ch s do bên th 3 là một ơn v ca
công ty Verisign cp cho tên min www.vietcombank.com.vn ca ngân hàng TMCP Ngoại
thương Việt Nam.
Hình 3.33. Giao din kim tra thông tin mt chng ch s
3.4.2.2. Nội dung chứng chỉ số
Như biểu din trên Hình 3.34, ni dung ca mt chng ch s gm nhiều trường thông
tin. Các trường thông tin c th theo chun chng ch s X.509 gm:
- Serial Number: S nhn dng ca chng ch s;
- Subject: Thông tin nhn dng mt cá nhân hoc mt t chc;
- Signature Algorithm: Gii thut to ch ký;
lOMoARcPSD|37054152
-
Signature Hash Algorithm: Gii thut to chuỗi băm cho tạo ch ký;
- Signature: Ch ký của người/t chc cp chng ch;
- Issuer: Người/t chc có thm quyn/tin cy cp chng ch;
- Valid-From: Ngày bắt ầu có hiu lc ca chng ch;
- Valid-To: Ngày hết hn s dng chng ch;
- Key-Usage: Mục ịch s dng khóa (ch ký số, mã hóa,…);
- Public Key: Khóa công khai ca ch th;
- Thumbprint Algorithm: Gii thut m sử dụng to chuỗi m cho khóa ng
khai;
- Thumbprint: Chui băm tạo t khóa công khai; Các mc thông tin của trường
Subject gm:
- CN (Common Name): Tên chung, nhưng một tên miền ược gán chng ch;
- OU (Organisation Unit): Tên b phn/phòng ban;
- O (Organisation): T chức/Cơ quan/công ty;
- L (Location): Địa iểm/Qun huyn; - S (State/Province): Bang/Tnh/Thành ph; -
C (Country): Đất nưc.
Hình 3.34. Ni dung chi tiết ca mt chng ch s
3.4.2.3. Ứng dụng của chứng chỉ số
lOMoARcPSD|37054152
-
Chng ch s ược s dng rng rãi trong bo mt thông tin truyn xác thc thông
tin nhn dng ca các bên tham gia giao dịch iện tử, trao i khóa trong nhiu ng dng
khác nhau. C th:
S dng chng ch s trong m bo an toàn giao dch trên nn web: vi chng ch
s, mt website th ược cấu hình hoạt ng theo chế “an toàn” (HTTPS), trong
ó toàn b thông tin trao ổi gia máy ch và máy khách ược m bo tính bí mt (s
dụng hóa khóa i xng), tính toàn vn xác thc (s dụng hàm m có khóa
MAC). Ngoài ra, các y ch máy khách th xác thc thông tin nhn dng
ca nhau s dng chng ch s.
- Chng ch s ng thể ược s dụng bo mt thông tin truyn trong nhiu ng
dụng khác, như email, truyền file,…
- S dng chng ch s th ngăn chặn hiu qu dng tấn công người ng gia do
các bên tham gia giao dch th xác thc thông tin nhn dng ca nhau. Nếu các
bên s dng thêm ch s thì th ngăn chặn vic sa ổi các thông iệp trao ổi
trên ường truyn.
- Chng ch s có th ược s dụng trong trao ổi khóa.
3.4.3. PKI
H tng khóa công khai (Public-key infrastructure - PKI) mt tp các phn cng,
phn mm, nhân lc, chính sách và các th tục to, qun lý, phân phi, s dụng, lưu tr
và thu hi các chng ch s. Mt PKI gm các thành phn sau:
- Certificate Authority (CA): Cơ quan cấp và kim tra chng ch s;
- Registration Authority (RA): B phn tiếp nhn, kim tra thông tin nhn dng ca
người dùng theo yêu cu ca CA;
- Validation Authority (VA): Cơ quan xác nhận thông tin nhn dng của người dùng
thay mt CA;
- Central Directory (CD): nơi lưu danh mục lp ch s các khóa; - Certificate
Management System: H thng qun lý chng ch; - Certificate Policy: Chính sách
v chng ch.
Hình 3.35 biu diễn lưu ồ cp và s dng chng ch s trong PKI gm 2 khâu chính:
lOMoARcPSD|37054152
-
Hình 3.35. Lưu ồ cp và s dng chng ch s trong PKI
Đăng ký, xét duyt và cp chng ch s:
+ Ngưi dùng có yêu cu cp chng ch s to mt cp khóa, gm 1 khóa công khai
và 1 khóa riêng;
+ Người dùng to yêu cu cp chng ch s (Certificate request), trong ó tích hợp
khóa công khai và thông tin nh danh ca mình. Yêu cu cp chng ch s thường
ược lưu dưới dạng 1 file văn bản theo ịnh dng ca chun X.509;
+ Người dùng gi yêu cu cp chng ch s ến B phn tiếp nhn (RA). RA kim
tra các thông tin trong yêu cu cp chng ch s, nếu hp l thì chuyn yêu cầu
ến Cơ quan cấp chng ch (CA);
+ CA s thc hin vic xác minh các thông tin nhn dng ca ch th nếu xác
minh thành công thì cp chng ch s cho người yêu cu. Chng ch s ược CA
ký bng khóa riêng của mình ể m bo tính xác thc và toàn vn và thường ược
lưu dưới dạng 1 file văn bản theo ịnh dng ca chun X.509;
+ Sau khi phát hành chng ch s cho người dùng, CA chuyn thông tin v chng
ch s ã cấp cho thành phần VA ể xác nhn thông tin nhn dng theo yêu cu;
+ Người dùng cài t chng ch s vào h thng th bắt u s dng trong các
ng dng ca mình.
- S dng và kim tra chng ch s:
+ Người dùng tạo ơn hàng, vào ơn hàng bằng khóa riêng, gửi ơn hàng ã
chng ch s cho nhà cung cp;
+ Nhà cung cp chuyn chng ch s ca người dùng cho VA kim tra, nếu chng
ch s hp l thì tiến hành xác thc ch s của người dùng s dng khóa ng
khai của người dùng ly t chng ch s. Nếu ch của người dùng xác thực
thành công thì ơn hàng ược duyt.
lOMoARcPSD| 37054152
-
3.5. Quản lý khóa và phân phối khóa
3.5.1. Giới thiệu
3.5.1.1. Một số khái niệm
Quan hệ khóa (Keying relationship) trạng thái trong ó các bên tham gia truyền
thông chia s d liu chia s (thưng là khóa hoc thành phn tạo ra khóa) s dng cho
các k thut mã hóa. Các d liu chia s có th gm:
- Khóa bí mt
- Khóa công khai
- Các giá tr khi to
- Các tham s b sung không bí mt.
Quản lý khóa (Key management) là mt tp các k thut cho phép thiết lp và duy trì
các quan h khóa gi các bên thm quyn. C th, qun khóa gm các k thut
th tc cho phép:
- Khi tạo các người dùng h thng (system users) trong mt vùng (domain);
Sinh khóa, phân phối và cài ặt các d liu khóa;
- Kim soát vic s dng các d liu khóa;
- Cp nht, thu hi và hy các d liu khóa; - Lưu, sao lưu/khôi phục và lưu trữ các
d liu khóa.
Phân phối khóa (Key distribution) mt thành phn ca quản khóa, trong ó các
khóa mật mã ược vn chuyn, hoặc trao ổi gia các thc th trong mt h thng, hay gia
các bên tham gia phiên truyn thông.
3.5.1.2. Vai trò và các nguy cơ mất an toàn quản lý khóa
Qun khóa mt khâu vai trò quan trng trong việc m bo tính mt, toàn
vn, xác thc, không th chi b dch v ch s ca mt h hóa. Khâu qun
khóa ược thc hin phù hp s m bảo cho các thông tin khóa ược an toàn, c bit khi có
nhiu thc th tham gia truyn thông. Các thông tin khóa ược m bo an toàn là yếu t tiên
quyết cho việc ảm bo tính an toàn ca h mã hóa.
Đứng trên góc ộ qun lý, vấn ề qun lý khóa phi luôn ược thc hin trong khuôn kh
chính sách an ninh c th. Chính sách an ninh của quan, tổ chc cn các ni dung
mô t v qun lý khóa, bao gm:
- Các thc tế và th tc cn thc hin trong các khía cnh k thut qun tr khóa
t ng hoc th công;
- Trách nhim ca các bên có liên quan;
- Các bn ghi d liu cn phải lưu ể to các báo cáo v các vấn ề có liên quan ến an
toàn khóa.
lOMoARcPSD| 37054152
-
Ngoài ra, vic phân tích, nhn dạng các nguy cơ e dọa an toàn ca khâu qun khóa
mt vic cn thiết, t ó thể ra áp dng các biện pháp m bo an toàn phù hợp.
Các nguy cơ ối vi qun lý khóa bao gm:
- Các khóa bí mt b l;
- Tính xác thc ca các khóa mt công khai b tha hip. Tính xác thc bao
gm các hiu biết vic kim chng thông tin nhn dng ca mt bên khóa
ược chia s;
- S dng trái phép các khóa bí mt và công khai: + S dụng các khóa ã hết hiu lc;
+ S dng các khóa sai mục ích.
3.5.1.3. Phân loại khóa
Các khóa/chìa mt mã có th ược phân loi theo (1) kh năng sử dng và (2) thi gian
s dng. Theo kh năng sử dng, có th chia các khóa thành 3 lp:
- Khóa ch (Master key):
+ Là các khóa mc cao nhất và không ược bo v bng các k thut mt mã.
+ Các khóa ch thường ưc chuyn giao trc tiếp ược bo v bằng các chế
kim soát vt lý.
Khóa dùng cho trao ổi khóa (Key encrypting key):
+ Là những khóa ược s dụng ể vn chuyn hoặc lưu trữ các khóa khác.
+ Các khóa này cũng có thể ược bo v bng khóa khác.
- Khóa d liu (Data keys):
+ các khóa ược s dụng hóa d liệu cho ngưi dùng. +
Thường là các khóa ngn hn.
Theo thi gian s dng, có th chia các khóa thành 2 lp:
- Khóa dài hn (long-term key):
+ Là các khóa ược s dng trong mt khong thi gian dài;
+ Gm khóa chủ, khóa dùng cho trao ổi khóa, hoc khóa dùng cho tha thun khóa.
- Khóa ngn hn:
+ c khóa ược s dng trong mt khong thi gian ngn hoc ch trong mt
phiên làm vic;
+ Gm các khóa ược trao ổi trong quá trình trao i khóa, tha thun khóa; +
Thường ược dùng ể mã hóa d liu của ngưi dùng.
3.5.2. Phân phối khóa bí mật
3.5.2.1. Đặt vấn ề
Như ã cp trong mc 3.3.1, các h mã hóa khóa ối xng, hay khóa bí mật có ưu iểm
an toàn cao và tốc ộ x nhanh do kích thước khóa tương ối nh. Tuy nhiên, hn chế
lOMoARcPSD|37054152
-
ln nht của chúng là khó khăn trong quản lý và phân phi khóa bí mt các khóa bí mt
dùng chung phải ược phân phi, chia s an toàn ến các bên tham gia trước khi có th thc
hin phiên truyn thông an toàn.
Vấn ề phân phi khóa bí mật ược khái quát hóa thành bài toán phân phi n
2
khóa. Bài
toán này phát biểu như sau: Nếu mt h thống n người dùng tham gia truyn thông s
dng k thuật mã hóa khóa ối xng mi cặp người dùng cần traoi thông tin an toàn,
thì mi cặp người dùng cn chia s mt khóa mt duy nhất. Như vậy, mỗi người dùng
cn s hu n-1 khóa mt tng s khóa cn qun trong h thng n(n-1)/2 n
2
.
Ví d, nếu h thống có 10 người dùng, tng s khóa cn qun lý là 10×9/2 = 45 khóa; với
100 người dùng, s khóa 100×99/2 = 4.950 khóa; với 1000 người dùng, s khóa
1000×999/2 = 499.500 khóa. S khóa cn qun s rt ln nếu s ngưi dùng ln vic
qun lý s lượng lớn khóa ảm bo an toàn là rất khó khăn.
Để gii quyết bài toán phân phi n
2
khóa và ảm bo an toàn trong phân phi các khóa
mt, mt s hình k thut phân phi khóa mật ược xut ng dng, bao
gm:
- Phân phối khóa iểm iểm (Point-to-point key distribution)
- Trung tâm phân phi khóa (Key distribution center KDC)
- Trung tâm dch khóa (Key translation center KTC)
S dng mã hóa khóa công khai ể phân phi khóa bí mt.
Các mc tiếp theo mô t chi tiết các mô hình và k thut phân phi khóa bí mt.
3.5.2.2. Phân phối khóa iểm – iểm
Phân phối khóa iểm iểm (Point-to-point key distribution) hình thc phân phi khóa
ch liên quan trc tiếp ến 2 thc th tham gia truyn thông, như minh họa trên Hình 3.36.
Hình thc phân phối khóa iểm iểm th thc hin thông qua các nh tin cy, như kênh
truyền thuê riêng, hoc thư bảo m. Phương pháp y thể s dng với các trao ổi không
thường xuyên và thích hp vi các h thng c nh hoặc óng kín. Nhược iểm của phương
pháp y là trễ th lớn (như sử dụng thư bảo ảm) và các kênh tin cậy dùng riêng thường
t tin.
Hình 3.36. Phân phối khóa iểm iểm
3.5.2.3. Trung tâm phân phối khóa
a. Gii thiu
Trung tâm phân phi khóa (Key distribution center KDC) mt trong các k thut
ược s dng rộng rãi gii quyết bài toán n
2
khóa trong h thống n người dùng. Mc
tiêu là KDC to và phân phi khóa bí mật an toàn ến các thc th trong h thng và gim
thiu s lượng khóa dài hn mi thc th KDC phi qun lý. Hình 3.37 biu din
lOMoARcPSD|37054152
-
mô hình hoạt ộng ca h thng KDC gm 3 thc th: Trung tâm phân phi khóa KDC ký
hiu T 2 thc th thành viên tham gia trao i khóa A B. Khóa mt cn trao
i K. Hoạt ng ca h thng KDC gm 2 khâu: (1) Khi to thiết lp môi trường
các tham s hoạt ộng và (2) Th tc phân phi khóa s dng KDC.
Hình 3.37. Mô hình hoạt ộng ca trung tâm phân phi khóa KDC
b. Khi to
Trong quá trình khi to, thc th A s hu khóa dài hn K
AT
A chia s K
AT
vi
KDC T. Thc th B s hu khóa dài hn K
BT
B chia s K
BT
vi KDC T. Trung m
phân phi khóa T là mt máy ch tin cy, cho phép hai bên A và B không trc tiếp chia s
thông tin khóa thiết lp kênh truyn thông an toàn s dng hai khóa dài hn K
AT
và K
BT
.
lOMoARcPSD|37054152
c. Th tc phân phi khóa
Theo mô hình hoạt ộng ca trung tâm phân phi khóa biu din trên Hình 3.37, gi E là
hàm mã hóa, D là hàm gii mã, th tc phân phi khóa s dng KDC T như sau:
- A yêu cu chia s khóa vi B;
- T s to ra hoc ly khóa có sn K và mã hóa K thành E
KAT
(K) và gi cho A;
- T cũng có thể gửi khóa cho B dưới dng E
KBT
(K) thông qua A (hình i);
- T cũng có thể gi khóa trc tiếp cho B dưới dng E
KBT
(K) (hình ii);
- A nhận ược E
KAT
(K), gii mã s dng K
AT
có ưc K: D
KAT
(E
KAT
(K)) = K
- B nhận ưc E
KBT
(K), gii s dng K
BT
ược K: D
KBT
(E
KBT
(K)) = K
3.5.2.4. Trung tâm dịch khóa
a. Gii thiu
Trung tâm dch chuyn khóa (Key translation center KTC) mt trong các k thut
ược s dng rộng rãi gii quyết bài toán n
2
khóa trong h thống có n người dùng. Vai trò
của KTC tương tự KDC, tuy nhiên mt bên tham gia truyn thông s cung cp khóa trao
i. Mc tiêu KTC chuyn khóa mật an toàn ến các thc th n li tham gia truyn
thông trong h thng và gim thiu s lượng khóa dài hn mi thc th KTC phi
qun lý. Điểm khác bit ca KTC so vi KDC KTC cho phép sinh khóa phân tán (các
thc th t sinh khóa), còn KDC cho phép sinh khóa tp trung (KDC sinh khóa). Hình 3.38
biu din hình hoạt ng ca h thng KTC gm 3 thc th: Trung tâm dch chuyn khóa
KTC hiu T 2 thc th thành viên tham gia trao i khóa A B. Khóa bí mt
cần trao i K. Hoạt ng ca h thng KTC gm 2 khâu: (1) Khi to thiết lập môi
trường và các tham s hoạt ộng và (2) Th tc phân phi khóa s dng KTC.
Hình 3.38. Mô hình hoạt ộng ca trung tâm dch chuyn khóa KTC
b. Khi to
Trong quá trình khi to, thc th A s hu khóa dài hn K
AT
A chia s K
AT
vi KTC
T. Thc th B s hu khóa dài hn K
BT
và B chia s K
BT
vi KTC T. Trung tâm phân phi
khóa Tmt y ch tin cy, cho phép hai bên A B không trc tiếp chia s thông tin
khóa thiết lp kênh truyn thông an toàn s dng hai khóa dài hn K
AT
K
BT
.
c. Th tc phân phi khóa
lOMoARcPSD| 37054152
Theo mô hình hoạt ộng ca trung tâm dch chuyn khóa biu din trên Hình 3.38, gi E
là hàm mã hóa, D là hàm gii mã, th tc phân phi khóa s dng KTC T như sau:
- A to ra khóa K và mã hóa K thành E
KAT
(K) và gi cho T;
- T nhận ược E
KAT
(K), gii mã s dng K
AT
thu ược K: D
KAT
(E
KAT
(K)) = K
- Sau ó, T mã hóa khóa K s dng K
BT
có E
KBT
(K);
- T có th gửi khóa cho B dưới dng E
KBT
(K) thông qua A (hình i);
- T cũng có thể gi khóa trc tiếp cho B dưới dng E
KBT
(K) (hình ii);
- B nhận ược E
KBT
(K), gii mã s dng K
BT
có ược K: D
KBT
(E
KBT
(K)) = K
d. Ưu iểm và nhược iểm ca qun lý khóa tp trung (KDC và KTC) - Ưu iểm:
+ Hiu qu trong lưu trữ khóa: mi bên ch cn duy trì mt khóa mt dài hn vi
bên tin cy (không phi với bên trao i thông tin); + Tng s khóa dài hn cần lưu
trữ là n khóa (so vi n
2
khóa).
- Nhược iểm:
+ C h thng có th b mt an toàn nếu trung tâm qun khóa b tha hip (b iều
khin);
+ Trung tâm qun lý khóa có th thành iểm nút c chai;
+ Dch v s phi ngng nếu trung tâm qun khóa gp trc trc; +
Cn có mt máy ch tin cy chế trc tuyến.
3.5.2.5. Sử dụng mã hóa khóa công khai ể phân phối khóa bí mật
Do các h hóa khóa công khai ưu iểm phân phi khóa công khai d dàng,
th s dụng hóa khóa công khai phân phi khóa mt. Gi thiết bên A cn chuyn
khóa mt Ks cho bên B. Các bước hai bên A B cn thc hiện chuyn khóa mt
Ks t A ến B s dụng mã hóa khóa công khai như sau:
- B to cp khóa, khóa công khai Kp và khóa riêng Kr;
- B gi khóa công khai Kp ca mình cho A (cần m bo tính xác thctoàn vn); -
A s dụng Kp a khóa mt Ks to bn Cs gi cho B; - B s dụng
khóa riêng Kr ể giải mã Cs ể khôi phc khóa bí mt Ks.
Trên thc tế, các giao thức SSL/TLS PGP u s dng hóa khóa công khai mt
cách hiu qu trao i khóa mt, hoc d liu khóa mt cho phiên làm vic. Chi tiết
v các giao thức này ược ề cp mc 3.6.
3.5.3. Phân phối khóa công khai
3.5.3.1. Giới thiệu
Khác vi khóa mt, vic phân phi khóa công khai thun lợi hơn do khóa công khai
có th trao ổi công khai gia các thc th tham gia truyn thông. Tuy nhiên, vic phân phi
khóa công khai phải m bo tính xác thc (authentic public keys). Tính xác thc ca khóa
công khai th hin 2 yếu t: (1) tính toàn vn và ch th luôn xác nh. Các phương pháp
phân phối khóa công khai ược s dng rng rãi bao gm:
lOMoARcPSD| 37054152
- Trao ổi kiểu iểm-iểm thông qua kênh tin cy;
- Truy nhp trc tiếp vào danh mc công cng (public-key registry);
- S dng mt máy ch trc tuyến tin cy;
- S dng mt máy ch không trc tuyến và chng ch.
Phương pháp trao ổi khóa công khai kiểu iểm-iểm thông qua kênh tin cậy ược thc hiện
tương tự như phương pháp trao i khóa bí mt kiểu iểm-iểm ã ưc trình bày mc 3.5.2.2.
Các phương pháp phân phối khóa công khai còn li ược trình bày trong các mc tiếp theo.
3.5.3.2. Truy nhập trực tiếp vào danh mục công cộng (public-key registry)
Trong phương pháp này, một cơ sở d liu công cng tin cy ưc thiết lập, trong ó mi
bn ghi gồm tên người dùng khóa công khai tương ứng. sở d liu công cng y
th ược vn hành bi 1 bên tin cy người dùng th truy nhp khóa công khai t
sở d liu y nếu biết tên người dùng. Một phương pháp thực hiện ược s dng ph
biến là cây xác thc khóa công khai (Tree authentication of public keys).
3.5.3.3. Sử dụng một máy chủ trực tuyến tin cậy
Trong phương pháp này, một máy ch trc tuyến tin cậy ược s dụng cung cp truy
nhập ến cơ sở d liu công cng các khóa công khai. Khóa công khai cn phân phi ược ký
s dng khóa riêng ca y ch gi cho bên yêu cầu. Phương pháp y không òi hỏi
phi s dng kênh truyn bí mt. Bên yêu cu s dng khóa công khai ca máy ch xác
thc ch ký ca máy ch và qua ó kiểm tra tính xác thc, toàn vn ca khóa. Phương pháp
này có nhược iểm máy ch phi luôn trc tuyến ể h thng th hoạt ng bn thân
máy ch có th tr thành iểm nút c chai trong h thng.
3.5.3.4. Sử dụng một máy chủ không trực tuyến và chứng chỉ
Đây phương pháp phân phối khóa da trên chng ch khóa công khai (Public key
certificate) ược s dng rt rng rãi trong bo mt thông tin truyn trên mng Internet. Các
bước thc hin ca phương pháp này gồm:
- Bên A liên h vi mt bên tin cậy ( ược gi là Cơ quan cấp chng ch - Certification
Authority (CA)) ăng khóa công khai của mình nhận ược ch xác nhn
khóa công khai ca CA;
- CA cp mt chng ch (Certificate) cho khóa công khai của A, trong ó kết hp khóa
công khai ca A với thông tin ịnh danh ca A s dng ch ký s ca CA;
- Khi A ã chứng ch khóa công khai (Public key certificate), A có th gi khóa công
khai cho các bên có liên quan bng cách gi chng ch khóa công khai.
- Chng ch khóa công khai cũng thể ược ưa vào danh mục công cng và người
dùng khác có th truy nhp.
Chi tiết v chng ch khóa công khai và quá trình cp phát s dng chng ch ã ược ề
cp các mc 3.4.2 và 3.4.3.
3.6. Một số giao thức ảm bảo ATTT dựa trên mã hóa
3.6.1. SSL/TLS
3.6.1.1. Giới thiệu
lOMoARcPSD|37054152
SSL (Secure Socket Layer) giao thc bo mật do công ty Netscape phát minh năm
1993. Các phiên bn SSL ược phát trin bao gm: phiên bản 1.0 phát hành năm 1993, phiên
bản 2.0 phát hành năm 1995 phiên bản 3.0 phát hành năm 1996. Sau phiên bản 3.0, SSL
chính thc dng phát trin. SSL hiện ít ược s dng do có nhiu li không ược cp nht.
TLS (Transport Layer Security) ược phát triển vào m 1999 dựa trên SSL 3.0 do t
chc IETF phê chun. Các phiên bn ca TLS gm: phiên bn 1.0 phát hành năm 1999,
phiên bn 1.1 phát hành năm 2005, phiên bản 1.2 phát hành m 2008, phiên bản 1.3 ược
phát hành chính thc cho vào tháng 10 m 2017. Hiện nay phiên bn TLS 1.3 ược s dng
rng rãi nht, còn SSL ch ược gi li tên vi lý do lch s.
Hình 3.39 biu din v trí ca giao thc SSL/TLS trong chng giao thc TCP/IP. Có th
thấy SSL/TLS hoàn toàn ộc lp vi các giao thc tng ng dng nên nó có th ược s dụng
bo mt thông tin truyn cho nhiu giao thc ng dụng khác nhau, như HTTP, SMTP và
FTP. Chng hn, giao thc bo mt web HTTPS = HTTP + SSL/TLS, có nghĩa là HTTPS
tạo ra bi HTTP chy trên nn SSL/TLS. Một trong các iều kiện SSL/TLS th hoạt
ng là ít nht mt thc th (thường là máy ch) tham gia phiên truyn thông phi có chng
ch s cho khoá công khai (Public key certificate).
Hình 3.39. SSL/TLS trong b giao thc TCP/IP
Hình 3.40. Các giao thc con ca SSL/TLS
SSL/TLS mt b gm 4 giao thức con, như minh họa trên Hình 3.40. Các giao
thc con ca SSL/TLS gm:
- SSL Handshake Protocol: Giao thc bt tay ca SSL có nhim v trao i các thông
iệp xác thc thc th và thiết lp các thông s cho phiên làm vic;
- SSL Change Cipher Spec Protocol: Giao thc thiết lp vic s dng các b hóa
ược h tr bi c 2 bên tham gia phiên truyn thông;
lOMoARcPSD|37054152
- SSL Alert Protocol: Giao thc cnh bo ca SSL;
- SSL Record Protocol: Giao thc bn ghi ca SSL có nhim v tạo ưng hm an toàn
chuyển thông tin ảm bo tín bí mt, toàn vn và xác thc.
3.6.1.2. Hoạt ộng của SSL/TS
Hình 3.41 biu din hình mt phiên truyn thông gia y ch web (Web Server)
y khách web (Browser) da trên SSL/TLS. Theo ó, giao thức Bt tay (Handshake)
khi to phiên làm vic (có s h tr ca giao thc Change Cipher Spec), giao thc Bn
ghi (Record) vn chuyn d liu an toàn giao thc Cnh báo (Alert) gi các cnh báo
khi xy ra li, hoc mt s kiện ặc bit.
Hình 3.41. Mô hình truyn thông gia Web Server và Browser da trên SSL/TLS
a. Khi to phiên làm vic
Quá trình khi to phiên m việc trong SSL/TLS ược thc hin bi giao thc SSL
Handshake vi s h tr ca giao thc SSL Change Cipher Spec. Các nhim v ược các
bên tham gia truyn thông thc hin trong quá trình y bao gm: (1) xác thc thông tin
nhn dạng, (2) àm phán thng nht các b mã hóa s dụng và (3) trao ổi khóa và các thông
s khác cho phiên truyn thông.
Quá trình khi to phiên m vic biu din trên Hình 3.42 gia SSL Client (máy khách)
và SSL Server (máy ch) gồm các bước sau:
1. SSL Client gửi thông iệp “client hello” thông tin hóa (Cryptographic
information) ến SSL Server;
2. SSL Server gi thông iệp “server hello”, các bộ hóa h tr (CipherSuite)
chng ch máy ch (Server certificate) ến SSL Client. SSL Server cũng thể gi
yêu cu máy khách cung cp chng ch máy khách (Client certificate) nếu cn thiết;
3. Nhận ược yêu cu, SSL Client kim tra chng ch máy ch kim tra các tham s
hóa. Hai bên thng nht s dng các b hóa tt nht cùng h tr cho phiên
làm vic. Nếu chng ch máy ch không hp l quá trình qtrình khi to phiên
kết thúc không thành công. Nếu chng ch máy ch hp l tiếp tục bưc tiếp theo;
4. Trao i khóa máy khách (Client key exchange). SSL Client sinh khóa phiên (hoc
các tham shóa cho phiên), hóa khóa phiên s dng khóa công khai ca SSL
Server ly t chng ch máy ch và gi cho SSL Server;
5. SSL Client cũng có thể gi chng ch máy khách cho máy ch nếu ược yêu cu;
lOMoARcPSD|37054152
6. SSL Server s dng khóa riêng của mình gii mã khôi phc khóa phiên gi t SSL
Client. SSL Server cũng có thể kim tra chng chy khách nếu cn thiết;
7. Client gửi thông iệp kết thúc khi tạo phiên “Finished”;
8. Server gửi thông iệp kết thúc khi tạo phiên “Finished”.
Hình 3.42. Khi to phiên làm vic trong SSL/TLS
Sau khi quá trình khi to thành công, hai bên SSL Client SSL Server xác thc ược
các thông tin nhn dng ca nhau s dng chng ch s, thng nht các b mã hóa tt nht
s dụng trao ổi ược các khóa phiên, hoc các tham s hóa phiên, hai bên thiết lp
thành công kênh bo mt cho truyn d liu trong phiên. b. Vn chuyn d liu an toàn
Quá trình vn chuyn d liu an toàn thc hin bi giao thc SSL Record sau khi khi
to phiên làm vic thành công. Giao thc SSL Record s dng các tham s mã hóa các
b a thiết lp trong quá trình khi tạo tạo ường hm vn chuyn d liu an toàn.
SSL Record m bo tính mt cho khi d liu s dụng hóa i xng vi khóa phiên,
m bo nh toàn vn xác thc cho khi d liu s dụng hàm m khóa (MAC).
Hình 3.43 biu din quá trình x lý d liu bi SSL Record ti bên gi, gồm các bước:
lOMoARcPSD|37054152
Hình
3.43. Quá trình x lý d liu bi SSL Record ti bên gi
- Phân mnh d liu (Fragment): D liu t ng dụng (Application Data) ược phân
mnh thành các khi cho phù hp vi việc óng gói truyn ca các lp giao thc
tng thấp hơn;
- Nén d liu (Compress): Tng khi d liệu ược ược nén giảm kích thước. Bước
nén d liu là không bt buc;
- Thêm MAC (Add MAC): Tính toán giá tr MAC (s dụng hàm băm khóa) cho
khi d liu nén và ghép giá tr MAC vào khi d liu. Vic thêm MAC và kim tra
MAC bên nhận ể m bo tính toàn vn và xác thc khi d liu;
- hóa (Encrypt): hóa khi d liu (gm khi d liệu nén MAC) m bo
tính bí mt s dụng mã hóa khóa ối xng vi khóa phiên;
- Thêm mc của SSL Record (Append SSL Record Header): thêm mc ca SSL
Record vào khi d liệu ã mã hóa và chuyển xung tng giao vn chuyn sang bên
nhn.
Quá trình x d liu khi d liu nhận ược ti bên nhận ược thc hin bi SSL Record
theo trình t ngược li, gồm các bước: Tách ề mc ca SSL Record, Gii mã, Tách và kim
tra MAC, Gii nén Ghép các mnh d liu thành chui d liệu chuyn cho lp ng
dng.
3.6.2. SET
SET (Secure Electronic Transaction) là giao thức cho phép thanh toán iện t an toàn s
dng th tín dng do 2 công ty Visa International và MasterCard (Hoa K) phát trin. SET
kh năng m bo các thuc tính mt, toàn vn thông tin truyn, xác thc tài khon
ch th và xác thc nhà cung cp.
Hình 3.44 biu din mt hình tương tác giữa các thc th tham gia thc hin SET.
Các thc th tham gia mô hình này gm: Ch th/Khách hàng (Cardholder), Nhà cung cp
dch vụ/Người bán hàng (Merchant), Cng thanh toán (Payment Gateway), Ngân hàng ca
nhà cung cp/Ngân hàng của người bán (Acquirer), Ngân hàng ca ch th/Ngân hàng của
lOMoARcPSD|37054152
người mua (Issuer) và Nhà cung cp chng ch (Certificate Authority). Tt c các bên tham
gia quá trình x giao dch thanh toán (Cardholder, Merchant, Payment Gateway,
Acquirer, Issuer) u phải ăng với Nhà cung cp chng ch và ưc cp chng ch khóa
công khai. Các chng ch khóa công khai ược các bên s dụng c thc thông tin nhn
dng ca nhau và h tr trao ổi khóa. Quá trình thc hin mt giao dch da trên SET gồm
các bước sau:
Hình 3.44. Một mô hình tương tác giữa các thc th tham gia SET
1. Khách hàng xem các sn phm trên website của Ngưi bán hàng quyết nh các
mt hàng s mua;
2. Khách hàng gi thông iệp gồm thông tin ơn ng và thanh toán gồm 2 phn: (i) Đơn
hàng dành cho Người bán hàng và (ii) Thông tin th - dành cho h thng thanh
toán;
3. Người bán hàng chuyn thông tin th cho Cng thanh toán. Cng thanh toán chuyn
tiếp cho Ngân hàng của người bán;
4. Ngân hàng của người bán gi yêu cu xác thc giao dịch thanh toán ến Ngân hàng
của người mua;
5. Ngân hàng của người mua gi xác nhn giao dịch ến Ngân hàng của người bán;
6. Ngân hàng của người bán gi xác nhn giao dịch ến Người bán hàng;
7. Người bán hàng hoàn tất ơn hàng và gửi xác nhận ơn hàng ến Khách hàng;
8. Người bán hàng ghi nhn giao dch theo thông tin t Ngân hàng ngưi bán cung cp;
9. Ngân hàng của người mua in hóa ơn giao dịch cho th tín dng ca Khách hàng.
3.6.3. PGP
a. Gii thiu
PGP (Pretty Good Privacy) phương pháp bảo mt do Philip Zimmermann phát trin
năm 1991 có khả năng cung cấp tính riêng tính xác thực các thông iệp truyn. PGP
ược s dng rộng rãi ã ưc tha nhn thành chun thc tế (RFC 3156). PGP h tr
lOMoARcPSD|37054152
hoá d liu s dng mã hoá khoá mật hóa khoá công khai, ng thi cho phép to
và kim tra ch ký s.
PGP ược s dng rộng rãi truyn email file an toàn. PGP h tr hu hết các gii
thut mã hóa hiện ại như 3DES, AES, IDEA, RSA, ElGamal. Có nhiu bản cài t PGP trên
thc tế như OpenPGP, GnuPG, Gpg4win,…. b. Hoạt ng ca PGP
PGP h tr 3 hình hoạt ng, bao gm (1) hình PGP ch m bo tính xác thực
thông iệp, (2) hình PGP ch m bo tính mt thông iệp (3) Mô hình PGP m bo
tính bí mt và xác thực thông iệp. Để thun tin cho mô t hoạt ộng ca các mô hình PGP,
gọi H là hàm băm một chiều, EC là hàm mã hóa khóa ối xng, DC là hàm giải mã khóa ối
xng, EP làm mã hóa khóa bất ối xng, DP là hàm gii mã khóa bất i xng, Z là hàm
nén, Z
-1
hàm gii n, PUa khóa công khai ca bên A, PRa khóa riêng ca bên A,
PUb là khóa công khai ca bên B, PRb là khóa riêng ca bên B và Ks là khóa phiên. Phn
tiếp theo trình bày chi tiết v hoạt ộng ca các mô hình này.
n gửi ====> Bên nhận
Hình 3.45. Mô hình PGP ch m bo tính xác thực thông iệp
Hình 3.45 biu din hình PGP ch m bo tính xác thực thông iệp truyn. Theo ó,
hình y sử dng ch s xác thc tính toàn vn và ch th gi thông iệp. Điều kin
thc hin hình y bên gi A phi s hu cp khóa (khóa ng khai PUa khóa
riêng PRa). Quá trình thc hin gi/nhn thông iệp M m bo nh xác thc ti mỗi n như
sau:
- Bên gi A:
+ Tính toán giá tr băm (giá trị i din) của thông iệp M s dụng hàm băm H;
+ S dng khóa riêng PRa hóa (ký) giá tr băm của M to thành ch s; +
Ghép ch ký s vào thông iệp M;
+ Nén thông ip ch s s dng hàm nén Z; +
Gi bn d liệu ã nén cho người nhn.
- Bên nhn B:
+ Gii nén d liu nhận ược s dng hàm Z
-1
;
+ Tách ch s khỏi thông iệp M s dng khóa công khai ca bên gi PUa
kim tra (gii mã) chs khôi phc giá tr băm h1. Bên gửi A có th s dụng
các phương pháp trao ổi khóa công khai ã u mc 3.5.3 chuyn khóa công
khai PUa cho bên nhn;
lOMoARcPSD|37054152
+ Tính toán giá tr băm h2 của thông iệp M s dụng hàm băm H;
+ So sánh 2 giá tr băm h1 h2, nếu h1 = h2 thì thông iệp truyn toàn vn
thông iệp ược gi bi bên gi A. Nếu h1 h2 thì thông iệp M th ã bị sửai,
hoặc không ược ký và gi bi bên gi A.
Bên gửi ====> Bên nhận
Hình 3.46. Mô hình PGP ch m bo tính bí mật thông iệp
Hình 3.46 biu din mô hình PGP ch m bo tính bí mt thông iệp truyn. Theo ó,
hình này sử dng kết hp giữa mã hóa khóa i xng và mã hóa khóa bất i xứng ể m bo
tính bí mt của thông iệp. Điều kin thc hin mô hình này là bên nhn B phi s hu cp
khóa (khóa công khai PUb khóa riêng PRb). Quá trình thc hin gi/nhận thông iệp M
m bo tính bí mt ti mỗi bên như sau:
- Bên gi A:
+ Nén thông iệp M s dng hàm nén Z;
+ Sinh khóa phiên Ks s dụng khóa Ks hóa thông iệp M s dng hàm
hóa ối xng EC;
+ S dng khóa công khai PUb ca n nhận B hóa khóa phiên Ks s dng m
mã hóa bất ối xng EP. Bên nhn B có th s dụng các phương pháp trao ổi khóa
công khai ã nêu ở mc 3.5.3 chuyn khóa công khai PUb cho bên gi;
+ Ghép ch bn ca Ks vào bn ca thông iệp M; +
Gi bn mã d liu cho người nhn.
- Bên nhn B:
+ Tách bn mã ca Ks vào bn mã của thông iệp M;
+ Gii mã bn Ks s dng hàm gii mã khóa bất ối xng DP khóa riêng PRb
khôi phc Ks;
+ S dng khóa phiên Ks m giải khóa i xứng DC gii mã khôi phc thông
iệp ã nén M;
+ Gii nén khôi phc thông iệp M s dng hàm Z
-1
;
lOMoARcPSD|37054152
Bên gửi ===> Bên nhận
Hình 3.47. Mô hình PGP ảm bo tính bí mt và xác thực thông iệp
Hình 3.47 biu din hình PGP m bo tính xác thc mt thông iệp truyn. Theo
ó, mô hình y sử dng chs xác thc tính toàn vn và ch th gi thông iệp. Đồng
thi mô hình s dng kết hp giữa mã hóa khóa i xng và mã hóa khóa bt i xứng m
bo tính mt của thông iệp. Điều kin thc hin hình y n gi A phi s hu
cp khóa (khóa công khai PUa khóa riêng PRa) bên nhn B phi s hu cp khóa
(khóa công khai PUb và khóa riêng PRb). Mô hình này là s kết hp ca mô hình PGP ch
m bo tính xác thc và mô hình PGP ch m bo tính bí mt. Theo ó, bên gửi A thc hiện
hóa thông iệp, còn bên nhn B thc hin gii và kim tra ch của thông
ip.
3.7. Câu hỏi ôn tập
1) Mã hóa thông tin là gì? Nêu vai trò ca mã hóa.
2) Mô t các thành phn ca mt h mã hóa.
3) Mô t các phương pháp mã hóa dòng và mã hóa khối.
4) Nêu các ng dng ca mã hóa.
5) Mô t phương pháp mã hóa thay thế (substitution).
6) Mô t phương pháp mã hóa hoán v (permutation).
7) Mô t phương pháp mã hóa XOR.
8) V sơ ồ hoạt ộng và nêu các ặc iểm h mã hóa khóa ối xng.
9) V sơ ồ hoạt ộng và nêu các ặc iểm h mã hóa khóa bất ối xng.
10) Nêu các ặc iểm và mô t các bước x lý d liu ca gii thut mã hóa DES.
11) Nêu các ặc iểm và mô t các bước x lý d liu ca gii thut mã hóa AES.
12) Nêu các ặc iểm, th tc sinh khóa, mã hóa và gii mã ca gii thut mã hóa RSA.
13) Nêu các yêu cầu ảm bo an toàn ca quá trình sinh khóa RSA.
14) Nêu các ặc iểm và mô t các bước x lý d liu ca gii thuật băm MD5.
15) Nêu các ặc iểm và mô t các bước x lý d liu ca gii thuật băm SHA1.
16) Ch ký s là gì? Mô t quá trình to ch ký và kim tra ch ký ca một thông iệp.
17) Chng ch s khóa công khai là gì? Nêu 3 thành phn quan trng nht ca 1 chng ch
s khóa công khai. Nêu các ng dng ca chng ch s khóa công khai.
lOMoARcPSD|37054152
18) PKI là gì? Nêu các thành phn và mô t lưu cp và s dng chng ch trong PKI. 19)
Mô t cơ chế hoạt ộng của phương pháp phân phối khóa da trên KDC, KTC.
20) Mô t quá trình khi to phiên làm vic trong SSL/TLS.
21) Mô t quá trình x lý d liu bi SSL Record ti bên gi và bên nhn.
22) Mô t hoạt ộng ca mô hình PGP ch m bo tính xác thc và mô hình PGP ch m bo
tính bí mt.
lOMoARcPSD|37054152
CHƯƠNG 4. CÁC KỸ THUẬT VÀ CÔNG NGHỆ ĐẢM BẢO
AN TOÀN THÔNG TIN
Chương 4 giới thiệu khái quát về các kỹ thuật và công nghệ ảm bảo an toàn thông tin,
vấn ề kiểm soát truy cập, các biện pháp kiểm soát truy cập và một số công nghệ kiểm soát
truy cập ược sử dụng trên thực tế. Phần tiếp theo của chương giới thiệu về tường lửa – một
trong những kỹ thuật ược sử dụng rất phổ biến trong ảm bảo an toàn cho hthống máy
tính mạng. Phần cuối của chương giới thiệu về các hệ thống phát hiện ngăn chặn
xâm nhập.
4.1. Khái quát về các kỹ thuật và công nghệ ảm bảo ATTT
Trong an toàn thông tin, có nhiu k thut và công ngh m bo an toàn cho thông tin,
h thng mạng trong các lĩnh vực khác nhau ca an toàn thông tin, như minh họa trên
Hình 4.1.
Hình 4.1. Các k thut và công ngh bo mật trong các lĩnh vực ca ATTT
Theo ó, các k thut, công ngh và gii pháp m bo an toàn thông tin bao gm:
- Trong lĩnh vực an ninh mng (Network Security):
+ An toàn ng dng (Application Security)
+ K ngh an toàn (Security Engineering)
+ Kim th l hng (Vulnerability Testing)
+ Kim th xâm nhp (Penentration Testing)
+ Các h thng phát hin m nhp (Intrusion Detection Systems) +
Tường la (Firewalls).
- Trong lĩnh vực an ninh thiết b u cui (End Point Security):
lOMoARcPSD| 37054152
+ Kim soát truy cp
+ Bo mt email (Email Security)
+ Mng VPNs
+ Mã hóa (Encryption)
+ Quét và ngăn chặn phn mềm ộc hi (Anti-Malware).
- Trong lĩnh vc an ninh Internet (Internet Security):
+ Secure HTTP (HTTPS) + Chng
ch SSL (SSL Certificate) + Chun
xác thc m (OAuth 2.0).
- Trong lĩnh vực an ninh ám mây (Cloud Security): + Chun xác thc m (OAuth 2.0)
+ Web Sockets.
- Trong lĩnh vực an ninh mng không dây (Wireless Security): + Mã hóa (Encryption)
+ Kim soát truy cp.
Chương 2 của tài liệu này ã ề cập ến mt s k thut và gii pháp phân tích, kim th l
hng bo mt, kim th xâm nhp và vấn ề quét và ngăn chặn phn mềm ộc hại. Chương
3 ã trình y các k thut gii pháp dựa trên hóa cho m bo an toàn thông tin, bao
gm chng ch SSL, PGP cho bo mt file và email, giao thc bo mt SSL/TLS nn tng
cho HTTPS. Trong phm vi ca môn học y, chương y tiếp tc trình y mt s k
thut, công ngh gii pháp quan trng khác cho m bo an toàn thông tin bao gm, Kim
soát truy cập, Tường la và Các h thng phát hin tn công, xâm nhp.
4.2. Kiểm soát truy cập
4.2.1. Khái niệm kiểm soát truy cập
Kiểm soát truy cập (Access control) là quá trình mà trong ó người dùng ược nhận dạng
trao quyền truy nhập ến các thông tin, các h thng tài nguyên. Mt h thng kim
soát truy cp th ược cu thành t 3 dch v: Xác thc (Authentication), Trao quyn,
hoc cp quyn (Authorization) và Qun tr (Administration).
Xác thực quá trình xác minh tính chân thc ca các thông tin nhn dạng ngưi
dùng cung cấp. Đây khâu u tiên cn thc hin trong mt h thng kim soát truy cp.
Cn nh rng, xác thc ch có kh năng khẳngnh các thông tin nhn dạng mà người dùng
cung cp tn ti trong h thống thường không th xác minh ch th thc s ca thông
tin ó. Sau khi người dùng ã ược xác thc, trao quyền xác ịnh các tài nguyên người dùng
ược phép truy cp da trên chính sách qun tr tài nguyên của quan, t chc vai trò
của người dùng trong h thng.
Quản trị là dch v cung cp kh năng thêm, bt và sửa ổi các thông tin tài khon người
dùng, cũng như quyền truy cp của ngưi dùng trong h thng. Mcqun tr không trc
tiếp tham gia vào quá trình xác thc trao quyền cho người dùng, qun tr dch v
không th thiếu trong mt h thng kim soát truy cp.
lOMoARcPSD|37054152
Mục ích chính của kim soát truy cp m bo tính mt, toàn vn sn dùng hoc
kh dng ca thông tin, h thng các tài nguyên. Đây cũng các yêu cầu m bo an
toàn thông tin và h thống thông tin ã ề cp trong CHƯƠNG 1.
4.2.2. Các biện pháp kiểm soát truy cập
Các biện pháp hay chế (mechanism) kim soát truy cp các phương pháp thực hin
kim soát truy cp, gm 4 loi chính:
- Kim soát truy cp tu chn Discretionary Access Control (DAC)
- Kim soát truy cp bt buc Mandatory Access Control (MAC)
- Kim soát truy cp da trên vai trò Role-Based Access Control (RBAC) - Kim
soát truy cp da trên lut Rule-Based Access Control.
4.2.2.1. Kiểm soát truy cập tuỳ chọn
Kim soát truy cp tu chn (còn gi là tùy quyn) ược ịnh nghĩa là các cơ chế hn chế
truy cp ến các ối tượng da trên thông tin nhn dng ca các ch th, hoc nhóm ca các
ch th. Các thông tin nhn dng ch th (còn gi là các nhân tố - factor) có th gm:
- Bn là ai? (CMND, bng lái xe, vân tay,...)
- Nhng cái bn biết (tên truy nhp, mt khu, s PIN...)
- Bn có gì? (Th ATM, th tín dng, ...)
Đặc iểm ni bt ca kim soát truy cp tu chọn là cơ chế này cho phép người dùng có
th cp hoc hu quyn truy cp cho các người dùng khác ến các ối tượng thuc quyền iều
khin ca họ. Điều này cũng có nghĩa là chủ s hu của các ối tượng (owner of objects) là
người toàn quyền iều khiển các ối tượng này. Chng hn, trong mt h thng nhiều người
dùng, mỗi người dùng ược cấp 1 thư mục riêng (home directory) và ch s hu của thư
mục này. Ngưi dùng quyn to, sửa i xoá các file trong thư mục của riêng mình.
Người dùng cũng kh năng cấp hoc hu quyn truy cp vào các file của mình cho các
người dùng khác.
nhiu k thut thc hiện chế kim soát truy cp tu chn trên thc tế, trong ó 2
k thuật ược s dng rng rãi nht là Ma trận kiểm soát truy cập (Access Control Matrix -
ACM) Danh sách kiểm soát truy cập (Access Control List - ACL). Ma trn kim soát
truy cp là một phương pháp thc hin kim soát truy cp thông qua 1 ma trn 2 chiu gm
ch th (subject), ối ng (object) và các quyn truy cp, như biểu din trên Hình 4.2. Các
ối tưng, hay khách th (Objects) là các thc th cn bo vệ, ược hiu O
1
, O
2
, O
3
,....
Các ối tượng th là các file, các thư mục hay các tiến trình (process). Các ch th
(Subjects) người ng (users), hoc các tiến trình tác ng lên các ối tượng, ưc hiu
S
1
, S
2
, S
3
,... Quyn truy cp hành ng ch th thc hin trên ối tượng. Các quyn
bao gm r (read c), w (write - ghi), x (execute thc hin) và o (own ch s hu).
lOMoARcPSD|37054152
Hình 4.2. Mô hình ma trn kim soát truy cp
Ưu iểm ca ma trn kim soát truy cp là ơn giản, trc quan và d s dng. Tuy nhiên,
khi s lượng các ối tượng s ng các ch th lớn, kích thước ca ma trn s rt lớn.
Hơn nữa, quyn truy cp ca các ch th vào các ối tượng là khác nhau, trong ó một s ch
th không quyn truy cp vào mt s ối tượng, như vậy ô nh cha quyn truy cp
ca ch th vào ối tượng là rỗng. Trong ma trn kim soát truy cp có th tn ti rt nhiu
ô rỗng iều y m gim hiu qu s dng b nh của phương pháp này. Do vy, ma
trn kim soát truy cp ít ược s dng hin nay trên thc tế.
Danh sách kim soát truy cp (ACL) là mt danh sách các quyn truy cp ca mt ch
th i vi một ối tượng. Mt danh sách kim soát truy cp ch ra các người dùng hoc tiến
trình ược truy cp vào ối tượng nào các thao tác c th (hay quyền) ược thc hin trên
ối ợng ó. Mt bản ghi iển hình ca ACL dng (subject, operation). d bn ghi
(Alice, write) của 1 file có nghĩa là Alice có quyền ghi vào file ó. Khi ch th yêu cu truy
cp, h iều hành s kim tra ACL xem yêu cu ó có ược phép hay không. ACL có th ược
áp dng cho mt hoặc 1 nhóm ối tượng.
lOMoARcPSD|37054152
User
space
Kernel
space
4.3. Mô hình Hình
danh sách kim
soát truy cp
Hình 4.3 biu din mô hình danh sách kim soát truy cp trong không gian người dùng
(user space) không gian nhân (kernel space) t chc bi h iều hành. Mi file (F1, F2,
F3,...) có mt danh sách kim soát truy cp (ACL) ca riêng mình lưu trong hồ (profile)
của file. Quyn truy cp vào file ược t chc thành mt chui gm nhiu cp (subject,
operation), vi A, B, C hiu biu din ch th (subject) các thao tác (operation)
hay quyn gm R (Read - c), W (Write - ghi), X (eXecute - thc hin). Chng hn,
trong danh sách kim soát truy cp F1(A: RW; B: R) thì ch th A ược quyền ọc (R)
ghi (W) ối vi F1, còn ch th B ch có quyền ọc (R).
4.2.2.2. Kiểm soát truy cập bắt buộc
Điều khin truy bt buộc (MAC) ược ịnh nghĩa là các cơ chế hn chế truy cp ến các ối
tượng da trên hai yếu t chính:
- Tính nhy cm (sensitivity) ca thông tin chứa trong các ối tượng, và
- S trao quyn chính thc (formal authorization) cho các ch th truy cp các thông
tin nhy cm này.
Các thông tin nhy cm thường ược gán nhãn vi các mức nhạy cảm (Sensitivity level).
Có nhiều phương pháp phân chia các mức nhy cm ca các thông tin tùy thuc vào chính
sách an toàn thông tin của các cơ quan, tổ chc. Các mc nhy cm thường ược s dng
gm:
- Ti mt (Top Secret - T): Được áp dng vi thông tin nếu b l th dẫn ến
nhng thit hi trm trọng ối vi an ninh quc gia.
- Tuyt mt (Secret - S): Được áp dng vi thông tin nếu b l th dẫn ến mt
lot thit hại ối vi an ninh quc gia.
- Mt (Confidential - C): Được áp dng vi thông tin mà nếu b lth dẫn ến thit
hại ối vi an ninh quc gia.
- Không phân loi (Unclassified - U): Nhng thông tin không y thit hại i vi an
ninh quc gia nếu b tiết l.
ACL
A
B
ACL
Profiles
C
F2
F1
F3
A: RW; B: R
A: R; B: RW; C:R
B: RWX; C: RX
Files
lOMoARcPSD|37054152
Đặc iểm ni bt của cơ chế kim soát truy cp bt buộc là nó không cho phép người tạo
ra các ối tượng (thông tin, hoc tài nguyên) có toàn quyn truy cp các ối tượng này. Quyn
truy cp ến các ối tượng do ngưi qun tr h thống ịnh ra trước trên s chính sách an
toàn thông tin ca t chức ó. Đây cũng là iểm khác bit hoàn toàn vi cơ chế kim soát truy
cp y chọn, trong ó người tạo ra các ối ng ch s hu có toàn quyền i với các
ối tượng h to ra. d như, một tài liệu ược tạo ra ược óng dấu Mậtthì chỉ những
người trách nhim trong quan, tổ chc mới ược quyn xem ph biến cho ngưi
khác, còn bn thân tác gi ca tài liệu không ược quyn ph biến ến người khác. chế
kim soát truy cp bt buc thường ược s dng ph biến trong các quan an ninh, quân
i và ngân hàng.
Có nhiu k thut thc hiệnchế kim soát truy cp bt buộc, trong ó hình kim
soát truy cp Bell-LaPadula là mt trong các k thuật ược s dng rng rãi nht. hình
Bell-LaPadula là mô hình bo mật a cấp thường ược s dng trong quân s, nhưng nó cũng
có thể áp dụng cho các lĩnh vực khác. Theo mô hình này trong quân s, các tài liệu ưc gán
mt mức bo mt, chng hạn như không phân loi, mt, mt ti mật. Người dùng
cũng ưc ấn nh các cấp bo mt, tùy thuc vào nhng tài liu h ược phép xem.
Chng hn, mt v tướng quân i th ược phép xem tt c các tài liu, trong khi mt
trung úy th b hn chế ch ược xem các i liu mt thấp hơn. Đồng thi, mt tiến
trình chy nhân danh một người s dng có ược mức ộ bo mt của người dùng ó.
Mô hình Bell-LaPadula s dng nguyên tắc ọc xuống(read down) và nguyên tắc ghi
lên(write up) m bo an toàn trong vic cp quyn truy cp cho người dùng ến các ối
tượng. Vi nguyên tắc “ọc xuống”, một người dùng mức ộ bo mt k ch có th ọc các ối
tượng cùng mc bo mt hoc thấp hơn. dụ, mt v tướng th c các tài liu ca
một trung úy, nhưng một trung úy không th c các tài liu ca v tướng ó. Ngược li,
nguyên tắc ghi lên quy nh, một người dùng mức bo mt k ch có th ghi các ối tượng
cùng mc bo mt hoặc cao hơn. dụ, mt trung úy th ni thêm mt tin nhn vào
hộp thư của chung của ơn vị v tt c mi th ông biết, nhưng một v tướng không th ghi
thêm mt tin nhn vào hộp thư của trung úy vi tt c mi th ông y biết v tướng
th ã nhìn thấy các tài liu có mc bo mt cao mà không th ược tiết l cho mt trung úy.
lOMoARcPSD|37054152
Hình 4.4. Mô hình kim soát truy cp Bell-LaPadula
Hình 4.4 minh ha vic thc hin các nguyên tắc ọc xuốngnguyên tắc ghi n
trong mô hình Bell-LaPadula. Trong ó, các tiến trình chy bởi người dùng ược ký hiu A,
B, C, D, E ược biu din bởi các hình tròn và các ối tượng ược ánh số 1, 2, 3, 4, 5. Mũi tên
liền nét biu din quyền ọc, mũi tên t nét biu din quyn ghi và các mc bo mt cho c
tiến trình và ối tượng ược ánh số 1, 2, 3, 4. Theo mô hình này, tiến trình B có mc bo mt
là 2 ch ược phép ọc các ối tượng s 1 và 2 là các ối tượng có cùng mc bo mt và thấp
hơn 2. B không ược phép ọc ối tượng s 3 do ối ng này mc bo mt cao hơn. Ngược
li, B quyền ghi các ối tượng s 2 3 các ối tượng cùng mc bo mật cao
hơn 2. Tuy nhiên, B không ược phép ghi i tượng s 1 do ối ng y mc bo mt
thấp hơn.
4.2.2.3. Kiểm soát truy cập dựa trên vai trò
Kim soát truy cp dựa trên vai trò (RBAC) cho phép người dùng truy cp vào h thng
và thông tin da trên vai trò (role) ca h trong cơ quan, tổ chức ó. Kim soát truy cp da
trên vai trò th ược áp dng cho một nhóm người dùng hoc từng người dùng riêng l.
Quyn truy cp vào các ối tượng trong h thống ược tp hp thành các nhóm “vai tròvới
các mc quyn truy cp khác nhau. Các vai tược t chc thành mt cây theo hình
phân cp t nhiên của các quan, tổ chc. Ví d như, hệ thng thông tin trong một trưng
học chia người dùng thành các nhóm gán sn quyn truy cp vào các phn trong h thống
như sau:
- Nhóm Quản lý ược quyn truy cp vào tt c các thông tin trong h thng;
- Nhóm Giáo viên ược truy cp o cơ sở d liu các môn hc, bài báo khoa hc, cp
nhật iểm các lp do mi giáo viên ph trách;
- Nhóm Sinh viên ch ược quyn xem ni dung các môn hc, ti tài liu hc tp
xem iểm ca mình.
lOMoARcPSD|37054152
Vic liên kết giữa ngưi dùng và nhóm vai trò có th ược to lp và hu b d dàng và
ược thc hin theo nguyên tắc: Người dùng ược cấp thẻ thành viêncủa các nhóm vai
trò” trên cơ sở năng lực và vai trò, cũng như trách nhiệm ca h trong mt t chc. Trong
nhóm vai trò”, người dùng ược cp vừa quyền thc hin các thao tác cn thiết cho công
việc ược giao. Hình 4.5 minh ha một mô hình RBAC ơn giản, trong ó quyn truy cp vào
các ối tượng (PRMS) ược tp hp thành các nhóm vai trò (Roles) vic cp quyn truy
cp các ối tượng cho người dùng (Users) ược thc hin thông qua thao tác gán quyn (UA
User Assignment). Vic cp quyn truy cp các ối tượng cho người dùng th hiu
lc trong dài hn, hoặc cũng thể hiu lc trong ngn hạn, như theo phiên làm vic
(Session).
Hình 4.5. Một mô hình RBAC ơn giản
4.2.2.4. Kiểm soát truy cập dựa trên luật
Kim soát truy cp da trên lut (Rule-based Access Control) là cơ chế cho phép người
dùng truy cp vào h thng và thông tin da trên các luật (rules) ã ược nh nghĩa trước. Các
lut th ược thiết lập h thng cho phép truy cp ến các tài nguyên của mình cho người
dùng thuc mt tên min, mt mng hay mt dải a ch IP. Các tưng la (firewalls), hoc
proxies là ví d iển hình v vic thc hiện cơ chế kim soát truy cp da trên lut. Các lut
thc hin kim soát truy cp s dng các thông tin trích xut t các gói tin, thông tin v ni
dung truy cp, có th bao gm:
- Địa ch IP nguồn và ích của các gói tin;
- Phn m rng các file lọc các mã ộc hi;
- Địa ch IP hoc các tên miền ể lc, hoc chn các website b cm; - Tp các t khoá
lc các ni dung b cm.
Hình 4.6 minh ha mt s lut của tường la lọc gói tin. Theo ó, các thông tin của gói
tin ược s dụng ể lc bao gm: giao thức (Protocol), ịa ch IP ngun (Source IP), a ch IP
ích (Destination IP) và cổng ích (Dest.Port). Khi luật tha mãn, mt hành ộng (Action) ược
thực thi. Các hành ộng h tr bao gm chp nhn (Accept) và t chi (Deny).
lOMoARcPSD|37054152
Hình 4.6. Mt s lut của tường la lc gói tin
4.2.3. Một số công nghệ kiểm soát truy cập
Trên cơ sở các bin pháp, cơ chế kim soát truy cập ã trình bày, mục này mô t mt s
công ngh kim soát truy cập ã ang ược ng dng rng rãi trên thc tế, trong ó nhn
mạnh ến các thông tin, hoặc các phương tiện mang thông tin xác thc người dùng ược s
dng. Các công ngh kim soát truy cập ược ề cp bao gm:
- Kim soát truy cp da trên mt khu (password)
- Kim soát truy cp da trên các khoá mã (encrypted key)
- Kim soát truy cp da trên th thông minh (smartcard)
- Kim soát truy cp da trên th bài (token)
- Kim soát truy cp dựa trên các ặc iểm sinh trc (biometric).
4.2.3.1. Kiểm soát truy cập dựa trên mật khẩu
Kim soát truy cp da trên mt khu công ngh kim soát truy cp ược s dng t
lâu vẫn ang ược s dng rng rãi do tính d dùng r tin. Thông thường, mi người
dùng ưc cp 1 tài khoản (account) truy cp vào h thng. Mi tài khon người dùng
thường gm 2 thành tố: tên người dùng (username) mt khu (password), trong ó mật
khu cn ược gi bí mt. Trong mt s h thng, tên người dùng có th ược thay thế bằng
a ch email, s iện thoi,... Mt khu th lưu trong hệ thng dng (plaintext) hoc
dng mã hóa (encrypted text - thường dưi dng giá tr băm).
Tính bo mt ca kim soát truy cp s dng mt khu da trên 2 yếu t: (1) khó oán
của mt khu (2) tui th ca mt khu. Độ khó oán của mt khu li ph thuc vào s
b ký t s dng trong mt khẩu dài ca mt khu. Nhìn chung, mt khu càng an toàn
nếu càng nhiu b ký t ược s dụng kích thước ln. Vi các tài khon ca ng
dụng thông thưng, khuyến ngh nên s dng c t in thưng, t in hoa, ch s
t c bit trong mt khu với dài t 8 t tr lên. Theo tui th, mt khu gm 3
loi: không hết hn, thi hn sng mt khu s dng 1 lần. Để m bo an toàn, khuyến
ngh nh k i mt khu. Khong thi gian sng ca mt khu th ược thiết lp t 3 tháng
ến 6 tháng ph thuc chính sách an toàn thông tin ca cơ quan, t chc.
Nhìn chung, kim soát truy cp da trên mt khu an toàn thấp do người dùng
xu hướng chn các t ơn giản, d nh làm mt khu. Ngoài ra, mt khu có th b nghe lén
khi ược truyn trên i trường mng m như Internet. Do vậy, m bo an toàn, cn
chính sách qun lý tài khon và s dng mt khu phù hp vi tng h thng c th.
lOMoARcPSD|37054152
4.2.3.2. Kiểm soát truy cập dựa trên các khoá mã
Kim soát truy cp da trên các khoá cho phép m bo tính bí mt ca thông tin
ng thi cho phép kim tra thông tin nhn dng ca các bên tham gia giao dch. Mt trong
các ng dng rng rãi nht ca khóa chng ch s khóa công khai (Public Key Digital
Certificate). Mt chng ch s khóa công khai thường gm 3 thông tin quan trng nht:
- Thông tin nhn dng ca ch th (Subject);
- Khoá công khai ca ch th (Public key);
- Ch ký s ca nhà cung cp chng ch s (Certificate Authority CA).
Hình 4.7 giao din kim tra thông tin ca ca mt chng ch s khóa công khai cp
cho tên min www.vietcombank.com.vn. Chng ch s khóa công khai có th ược s dụng
xác thc các thc th tham gia phiên truyền thông, ng thi h tr trao i khóa cho các
khâu mã hóa giải mã thông iệp, nhm ảm bo tính bí mật thông iệp truyn.
4.2.3.3. Kiểm soát truy cập dựa trên thẻ thông minh
Th thông minh (Smartcard) các th nha gắn các chip in t vi kh năng tính
toán và các thông tin lưu trong thẻ ược mã hoá. Kim soát truy cp da trên th thông minh
là phương pháp có an toàn cao do smartcard s dng hai nhân t (two-factors) xác thc
nhn dng ch th: (1) cái bn (what you have) - th smartcard (2) cái bn biết
(what you know) - s PIN. Hình 4.8 hình nh th thông minh tiếp xúc (a) th thông
minh không tiếp xúc (b).
lOMoARcPSD|37054152
Hình 4.7. Giao din kim tra thông tin ca mt chng ch s khóa công khai
(a) (b)
Hình 4.8. Th thông minh tiếp xúc (a) và th không tiếp xúc (b)
4.2.3.4. Kiểm soát truy cập dựa trên thẻ bài
Các th bài thường các thiết b cầm tay ược thiết kế nh gọn th d dàng mang
theo. Khác vi th thông minh, th bài ược tích hp pin cung cp ngun nuôi. Th bài
th ược s dụng lưu mật khu, các thông tin nhân các thông tin quan trọng khác.
Tương tự th thông minh, th bài thường ược trang b chế xác thc 2 nhân t, gm th
bài mt khu, hoặc PIN (thưng dùng 1 lần). Ưu iểm ca th bài chế xác thc
mạnh hơn thẻ thông minh do th bài có CPU với năng lực xcao n và b nh lưu trữ
lớn hơn. Hình 4.9, nh 4.10 và Hình 4.11 minh ha mt s th bài ca hãng RSA Security,
iện t ca cng thanh toán trc tuyến Paypal h thng ApplePay tích hợp vào iện thoại
di ộng.
lOMoARcPSD|37054152
Hình 4.9. Mt s thi (Token) ca hãng RSA Security
Hình 4.10. Ví iện t (mt dng th bài) ca cng thanh toán trc tuyến Paypal
Hình 4.11. H thng ApplePay tích hợp vào iện thoại di ng
4.2.3.5. Kiểm soát truy cập dựa trên các ặc iểm sinh trắc
Các ặc iểm sinh trc các ặc iểm riêng nhn dạng ngưi dùng, bao gm du vân
tay, tròng mt, khuôn mt, tiếng nói, ch ký tay,... Kim soát truy cp s dng các ặc iểm
sinh trắc ể nhn dng ch th là phương pháp có kh năng cung cấp an toàn cao nht
cho phép xác thc ch th do các ặc iểm sinh trắc luôn i cùng chủ th khó b ánh cắp
hoc làm gi. Hình 4.12 minh ha (a) Khóa vân tay, (b) Khe c thc vân tay trên laptop
và (c) Xác thực vân tay trên iện thoi thông minh Samsung. Hình 4.13 minh ha vic quét
võng mạc ể nhn dng tròng mt.
lOMoARcPSD|37054152
Hình 4.12. (a) Khóa vân tay, (b) Khe xác thc vân tay trên laptop và (c)
Xác thực vân tay trên iện thoi thông minh Samsung
Hình 4.13. Quét võng mc nhn dng tròng mt
Nhược iểm chính ca kim soát truy cp s dụng các ặc iểm sinh trc phương pháp
này yêu cầu chi phí ầu tư lớn cho các thiết b quét, ọc và x lý các ặc iểm sinh trắc. Ngoài
ra, phương pháp này tương i chm do thường liên quan ến x nh công việc òi hỏi
khối lượng tính toán rt ln. Mt vấn ề khác cn quan tâm là t l nhn dng sai cao do có
nhiu yếu t nhiu ảnh hưởng. Ngoài ra, cũng có một s lo ngi v tính riêng tư của người
dùng khi một lượng ln d liu sinh trắc ưc thu thp có kh năng bị rò r và lm dng.
4.3. Tường lửa
4.3.1. Giới thiệu tường lửa
(
a)
(
c)
(
b)
lOMoARcPSD|37054152
Tường la (Firewall) mt trong các k thuật ược s dng ph biến nht bo h
thng mng cc b tránh các mi e da t bên ngoài. Tường la th mt thiết b
phn cng chuyên dng, hoặc mô un phần mm chy trên máy tính. Hình 4.14 là hình nh
mt tường la phn cng chuyên dng ca hãng Cisco.
Hình 4.14. Một tường la phn cng chuyên dng ca Cisco
Để m bo hiu qu bo v, tường la phi min dch vi các loi tn công, m nhập
thường ược t v tcng vào ca mng ni b quan hoc t chc, như minh ha
trên Hình 4.15. Nh v trí t cng mng, tt c các gói tin t trong ra và t ngoài vào u
phải i qua tường la và ch các i tin hợp pháp ược phép i qua tường la. Việc xác nh mt
gói tin hợp pháp hay không ược thc hin bi thao tác lc (filtering) da trên các lut
(rules). Tp các lut s dng cho vic lọc các gói tin ược to ra da trên chính sách an ninh
của cơ quan, tổ chc.
Hình 4.16 biu diễn sơ mạng trong ó tường lửa ược s dụng bo v các máy ch
dch v email Microsoft Exchange. Tt c các kết nối ến h thng máy ch email u phải i
qua tường la. Hình 4.17 mng s dụng 2 tưởng lửa bo vệ, trong ó một tường la
phn cứng (Hardware Firewall) ược s dng ti cng kết nối Internet ể bo v các máy ch
dch v (dch v web, dch v FTP dch v DNS) một tường la phn mềm (ISA
Firewall) ược s dụng bo v các máy ch ni bcác máy trm trong mng LAN của
cơ quan, tổ chức. Hai tường la có chính sách kim soát truy cp và tp lut khác nhau phù
hp với ối tượng bo v khác nhau.
lOMoARcPSD|37054152
Hình 4.15. Tường la bo v mạng gia ình hoặc văn phòng nhỏ
Hình 4.16. Tường la bo v các máy ch dch v
Hình 4.17. H thống tường la bo v các máy ch dch v và máy trm
4.3.2. Các loại tường lửa
nhiều phương pháp phân loại các ng la, chng hạn ndựa trên v trí các lp
giao thc mng kh năng lưu trạng thái ca các kết ni mng. Da trên v trí các lp
giao thc mng, th chia tường la thành 3 loại: ng la lc gói (Packet-filtering),
cng ng dng (Application-level gateway) và cng chuyn mch (Circuit-level gateway).
Tường la lọc gói thường thc hin vic lọc các gói tin IP, theo ó một tp, hoc mt nhóm
các luật ược áp dng cho mi gói tin gi i, hoặc chuyển ến ể quyết nh chuyn tiếp các gói
tin hp pháp, hay loi b gói tin bt hp pháp. Cng ng dng, còn gi y ch proxy
thường ược s dụng ể phát lại lưu lưng mng mc ng dng. Cng ng dng thc hin
vic lc các yêu cu, hoc hồi áp (request/response) ở các giao thc ng dng ph biến như
HTTP, SMTP, FTP,... Cổng chuyn mch hot ng mc thp nht, với chế tương tự
lOMoARcPSD|37054152
như các bộ chuyn mch (switch). Hình 4.18 minh ha mô hình tường la lc gói (a), cng
ng dng (b) và cng chuyn mch (c).
Hình 4.18. Mô hình tường la lc gói (a), Cng ng dng (b) và Cng
chuyn mch (c)
Da trên kh năng lưu trạng thái ca các kết ni mạng, tường lửa ược chia thành 2 loi:
tường la có trng thái (Stateful firewall) tường la không trng thái (Stateless firewall).
Tường la trng thái kh năng u trạng thái ca các kết ni mạng i qua ược lp
trình ể phân bit các gói tin thuc v các kết ni mạng khác nhau. Theo ó, ch nhng gói tin
thuc mt kết ni mạng ang hoạt ộng mới ược i qua tưng la, còn các gói tin khác không
thuc kết nối ang hoạt ng s b chn li. Hình 4.19 minh hot một tường la có trng thái
chn các gói tin IP gi t người dùng ngoài (Outside User) ến a ch IP 200.1.1.10 do chúng
không thuc kết nối ang hoạt ộng. Ngược lại, tường la không trng thái thc hin vic lc
các gói tin riêng r không quan tâm mi gói tin thuc v kết ni mạng nào. Tường la
dng này d b tn công bi k thut gi mo a ch, gi mo nội dung gói tin do tường la
không có kh năng nhớ các gói tin i trước thuc cùng mt kết ni mng.
lOMoARcPSD|37054152
Hình 4.19. Tường la có trng thái chn gói tin không thuc kết nối ang hoạt ộng
4.3.3. Các kỹ thuật kiểm soát truy cập
Hu hết các tường la h tr nhiu k thut kim soát truy cp, gm kim soát dch v,
kiểm soát hướng, kim soát người dùng và kim soát hành vi. C th:
- Kim soát dch v xác nh dch v nào có th ược truy cp và thường ược thc hin
thông qua vic m hoc óng một cng dch v nào ó. Chẳng hạn, ể cung cp dch v
web cm tt c các dch v khác, tường la m cng HTTP 80 HTTPS 443,
còn óng tất c các cng dch v khác.
- Kiểm soát hướng iều khiển ng ược phép i của các gói tin ca mi dch v. Hướng
có th gm lung t mng ni b i ra (outgoing) và luồng t ngoài i vào mng ni b
(incoming).
- Kiểm soát người dùng xác ịnh người dùng o ược quyn truy cp thường áp dụng
cho người dùng mng ni b.
- Kim soát hành vi thc hin kim soát vic s dng các dch v c th. d như,
tường la có th ược cấu hình lc loi b các thư rác, hoc hn chế truy cp ến mt
b phn thông tin ca máy ch web.
4.3.4. Các hạn chế của tường lửa
Mc tường la ược s dng rộng rãi bo v mng ni b khi các cuc tn công,
xâm nhập, nhưng cũng như hầu hết các k thut và công c m bo an toàn khác, tường lửa
cũng có những hn chế. Các hn chế của tường la gm:
- Không th chng li các tấn công không i qua tường lửa. Đó thể các dng tn
công khai thác yếu t con ngưi, hoc k tn công có th xâm nhp trc tiếp vào h
thng mng ni b mà không i qua tường la.
- Không th chng li các tấn công hướng d liu, hoc tn công vào các l hng bo
mt ca các phn mm.
lOMoARcPSD|37054152
- Không th chng li c him ho t bên trong, như từ người dùng trong mng ni
b.
- Không th ngăn chặn vic vn chuyển các chương trình hoặc các file b nhim vi rút
hoc các phn mm ộc hại (thường dng nén hoc mã hóa).
4.4. Các hệ thống phát hiện và ngăn chặn xâm nhập
4.4.1. Giới thiệu
Các h thng phát hiện, ngăn chặn tn công, xâm nhp (IDS/IPS) mt lp phòng v
quan trng trong các lp giải pháp ảm bo an toàn cho h thng thông tin và mng theo mô
hình phòng th theo chiu sâu. IDS (Intrusion Detection System) là h thng phát hin tn
công, xâm nhpIPS (Intrusion Prevention System) là h thống ngăn chặn tn công, xâm
nhp. Các h thng IDS/IPS th ược ặt trưc hoặc sau tường la trong hình mng,
tùy theo mục ích sử dng. Hình 4.20 cung cp v trí các h thng IDS IPS trong
mng, trong ó IDS thường ược kết ni vào b switch phía sau ng lửa, còn IPS ược ghép
vào giữa ường truyn t cng mng, phía sau tường la.
Hình 4.20. V trí các h thống IDS và IPS trong sơ ồ mng
Nhim v chính ca các h thng IDS/IPS bao gm:
- Giám sát lưu lượng mng hoc các hành vi trên mt h thống nhn dng c du
hiu ca tn công, xâm nhp;
- Khi phát hin các hành vi tn công, xâm nhp, thì ghi logs các hành vi này cho phân
tích b sung sau này;
- Ngăn chặn hoc dng các hành vi tn công, xâm nhp;
- Gửi thông báo cho ngưi qun tr v các các hành vi tn công, xâm nhập ã phát hiện
ược.
V bản IPS IDS ging nhau v chức ng giám sát lưu lượng mng hoc các s
kin trong h thống. Tuy nhiên, IPS thường ược t giữa ường truyn thông th ch
ộng ngăn chặn các tn công, xâm nhp b phát hiện. Trong khi ó, IDS thường ược kết ni
lOMoARcPSD|37054152
vào các b nh tuyến, switch, card mng ch yếu làm nhim v giám sát cnh bo,
không có kh năng chủ ộng ngăn chặn tn công, xâm nhp.
4.4.2. Phân loại
2 phương pháp phân loại chính các h thng IDS IPS, gm (1) phân loi theo
ngun d liu và (2) phân loại theo phương pháp phân tích dữ liu. Theo ngun d liu, có
2 loi h thng phát hin xâm nhp:
- H thng phát hin xâm nhp mng (NIDS Network-based IDS): NIDS phân tích
lưu lượng mạng phát hin tn công, xâm nhp cho c mng hoc mt phn mng.
Hình 4.21 biu din một sơ ồ mạng, trong ó các NIDS ược b trí giám sát phát hin
xâm nhp ti cng vào và cho tng phân oạn mng. Mt s NIDS iển hình như Snort,
Suricata...
Hình 4.21. Các NIDS ược b trí ể giám sát phát hin xâm nhp ti cng vào và
cho từng phân oạn mng
- H thng phát hin xâm nhp cho host (HIDS Host-based IDS): HIDS phân tích các
s kin xy ra trong h thng/dch v phát hin tn công, m nhp cho h thống
ó. Hình 4.22 minh ha một mạng, trong ó sử dng NIDS giám sát lưu lượng
ti cng mng và HIDS ể giám sát các host thông qua các IDS agent. Mt trm quản
lý (Management station) ược thiết lập thu nhp các thông tin t các NIDS và HIDS
x ưa ra quyết nh cui cùng. Mt trong các HIDS tiêu biu th k ến
OSSEC.
lOMoARcPSD|37054152
Hình 4.22. S dng kết hợp NIDS và HIDS ể giám sát lưu lượng mng và các host
Theo phương pháp phân tích dữ liu, 2 k thut phân tích chính, gm (1) phát hin
xâm nhp da trên ch ký/du hiu, hoc phát hin s lm dng (Signature-based / misuse
intrusion detection) và (2) phát hin xâm nhp da trên các bất thưng (Anomaly intrusion
detection). Mc tiếp theo trình bày chi tiết hơn về hai k thut phát hin này.
4.4.3. Các kỹ thuật phát hiện xâm nhập
4.4.3.1. Phát hiện xâm nhập dựa trên chữ ký
Phát hin xâm nhp da trên ch trưc hết cn y dựng sở d liu các ch ký,
hoc các du hiu ca các loi tn công, xâm nhập ã biết. Hu hết các ch ký, du hiu ược
nhn dng hóa th công dng biu diễn thường gp c lut phát hin (Detection
rule). Bước tiếp theo s dụng cơ sở d liu các ch giám sát các hành vi ca h
thng, hoc mng, cnh báo nếu phát hin ch ca tn công, xâm nhp. Hình 4.23
biu din lưu ồ giám sát phát hin tn công, xâm nhp da trên chiển hình.
Ưu iểm ln nht ca phát hin m nhp da trên ch kh năng phát hin các
tn công, m nhập ã biết mt cách hiu quả. Ngoài ra, phương pháp y cho tốc x
cao, ồng thi yêu cầu tài nguyên tính toán tương i thp. Nh vy, các h thng phát hin
xâm nhp da trên ch ược ng dng rng rãi trong thc tế. Tuy nhiên, nhược iểm chính
của phương pháp này là không có khả năng phát hiện các tn công, xâm nhp mi, do ch
của chúng chưa tồn tại trong sở d liu các ch ký. Hơn nữa, cũng òi hỏi nhiu
công sc xây dng và cp nhật cơ sở d liu ch ký, du hiu ca các tn công, xâm nhp.
lOMoARcPSD|37054152
Hình 4.23. Lưu ồ giám sát phát hin tn công, xâm nhp da trên ch
4.4.3.2. Phát hiện xâm nhập dựa trên bất thường
Phát hin xâm nhp da trên bất thường da trên gi thiết: các hành vi tấn công, xâm
nhập thường có quan hệ chặt chẽ với các hành vi bất thường. Quá trình y dng và trin
khai mt h thng phát hin xâm nhp da trên bất thường gồm 2 giai oạn: (1) hun luyn
(2) phát hiện. Trong giai oạn hun luyn, h (profile) của ối ng trong chế làm
việc bình thưng ược y dng. Để thc hin giai oạn hun luyn này, cn giám sát ối
tượng trong mt khong thời gian dài thu thập ược ầy d liu t các hành vi của
ối tượng trong iều kiện bình thường làm d liu hun luyn. Tiếp theo, thc hin hun luyn
d liệu y dng hình phát hin, hay h của i tượng. Trong giai oạn phát hin,
thc hin giám sát hành vi hin ti ca h thng cnh báo nếu khác bit nét gia
hành vi hin ti và các hành vi lưu trong h sơ của ối tượng.
Hình 4.24 biu din giá tr entropy ca IP ngun ca các gói tin theo ca s trượt t lưu
lượng bình thường entropy ca IP ngun ca các gói tin t u lượng tn công DDoS.
Có th thy s khác bit rõ nét gia giá tr entropy của lưu lượng bình thường và lưu lượng
tấn công như vậy, nếu một ngưỡng entropy ược chn phù hp ta hoàn toàn th phát
hin s xut hin ca cuc tn công DDoS da trên s thay ổi ột biến ca giá tr entropy.
Ưu iểm ca phát hin xâm nhp da trên bất thường tiềm năng phát hiện các loi
tn công, xâm nhp mi không yêu cu biết trước thông tin v chúng. Tuy nhiên, phương
pháp này có tỷ l cảnh báo sai tương ối cao so với phương pháp phát hiện da trên ch ký.
Điều y m gim kh năng ng dng thc tế ca phát hin xâm nhp da trên bất thường.
Ngoài ra, cũng tiêu tốn nhiu tài nguyên h thng cho vic xây dng h sơ ối tượng
phân tích nh vi hin ti. Mc vậy, ây vn là một ng nghiên cu phát hin m nhập
ang rất ược quan tâm nhm ci thin t l phát hin, gim t l cnh báo sai gim yêu
cu s dng tài nguyên tính toán, lưu trữ.
lOMoARcPSD|37054152
Hình 4.24. Giá tr entropy ca IP ngun ca các gói tin t lưu lượng hp pháp (phn giá
tr cao, ều) và entropy ca IP ngun ca các gói tin t lưu lượng tn công DDoS (phn
giá tr thp)
4.5. Câu hỏi ôn tập
1) Nêu khái nim, các thành phn và mục ích của kim soát truy cp.
2) Nêu cơ chế hoạt ộng ca mô hình (bin pháp) kim soát truy cp tùy chn (DAC).
3) Nêu cơ chế hoạt ộng ca mô hình (bin pháp) kim soát truy cp bt buc (MAC).
4) Nêu chế hoạt ng ca hình (bin pháp) kim soát truy cp da trên vai trò
(RBAC).
5) Nêu chế hoạt ng ca mô nh (bin pháp) kim soát truy cp da trên lut
(Rulebased access control).
6) So sánh 2 k thut thc hin mô hình kim soát truy cp tùy chn (DAC): ma trn kim
soát truy cp và danh sách kim soát truy cp.
7) Mô t cơ chế hoạt ộng ca mô hình bo mật a cấp Bell-LaPadula.
8) Mô t công ngh kim soát truy cp da trên mt khu.
9) Trong các công ngh kim soát truy cp: da trên mt khu, khóa mã, th thông minh,
th bài các ặc iểm sinh trc, công ngh nào có kh năng cho ộ bo mt cao nht? Ti
sao?
10) Tường la là gì? Nêu vai trò của tường lửa. Nêu các phương pháp phân loại ng la.
11) Nêu các k thut kim soát truy cp và các hn chế của tường la.
12) Các h thng IDS/IPS gì? Nêu các nhim v chính ca IDS/IPS. IDS IPS ging
và khác nhau những iểm nào?
13) Nêu các phương pháp phân loại IDS/IPS. Có th s dng kết hp NIDS và HIDS trong
cùng mt mạng ược không?
14) Mô t và nêu ưu nhược iểm của phương pháp phát hiện xâm nhp da trên ch ký.
15) t phương pháp phát hiện xâm nhp da trên bất thường. Nêu ưu nhược iểm ca
phương pháp này.
lOMoARcPSD|37054152
16) Ti sao phát hin xâm nhp da trên bất thường kh năng phát hiện các tn công
xâm nhp mi? Ti sao phát hin xâm nhp da trên bất thường thường t l cnh
báo sai cao hơn phát hin xâm nhp da trên ch ký?
lOMoARcPSD|37054152
CHƯƠNG 5. QUẢN LÝ, CHÍNH SÁCH VÀ PHÁP LUẬT AN
TOÀN THÔNG TIN
Chương 6 giới thiệu một số khái niệm cơ bản trong quản lý an toàn thông tin, vấn ánh
giá rủi ro an toàn thông tin thực thi quản an toàn thông tin. Nội dung tiếp theo của
chương ề cập ến các chuẩn quản lý an toàn thông tin, trong ó giới thiệu một số chuẩn của
bộ chuẩn ISO/IEC 27000. Phần cuối của chương giới thiệu khái quát về c vấn chính
sách, pháp luật và ạo ức an toàn thông tin.
5.1. Quản lý an toàn thông tin
5.1.1. Khái quát về quản lý an toàn thông tin
Chúng ta bắt u mc này vi khái nim Tài sản (Asset) trong lĩnh vực an toàn thông tin,
gi tt là Tài sản an toàn thông tin. Tài sn an toàn thông tin là thông tin, thiết b, hoc các
thành phn khác h tr các hoạt ộng có liên quan ến thông tin. Tài sn an toàn thông tin có
th gm:
- Phn cng (máy ch, các thiết b mạng,…);
- Phn mm (h iều hành, các phn mm máy ch dch vụ,…); và
- Thông tin (thông tin khách hàng, nhà cung cp, hoạt ộng kinh doanh,…).
Khái nim tiếp theo Quản an toàn thông tin (Information security management).
Qun lý an toàn thông tin là mt tiến trình nhằm ảm bo các tài sn an toàn thông tin quan
trng của cơ quan, tổ chc, doanh nghiệp ược bo v y ủ vi chi phí phù hp.
Qun an toàn thông tin mt thành phn rt quan trng trong an toàn thông tin và
nó phi tr lời ược 3 câu hi:
1. Nhng tài sn nào cần ược bo v?
2. Nhng mi e dọa nào có th có ối vi các tài sn này?
3. Nhng bin pháp th thc hiện ng phó vi các mi e dọa ó? Qun an toàn
thông tin có th ược thc hin theo 3 khâu chính sau:
- Khâu 1: Xác nh mục ích m bo an toàn thông tin h tổng hp v các ri
ro;
- Khâu 2: Đánh giá ri ro vi tng tài sn an toàn thông tin cn bo v; và
- Khâu 3: Xác ịnh và trin khai các bin pháp qun lý, k thut kim soát, gim ri ro
v mc chp nhận ưc.
Một iểm quan trng cn lưu ý là, quá trình qun lý an toàn thông tin cần ược thc hin
liên tc theo chu trình do s thay i nhanh chóng ca công ngh môi trường xut hin
ri ro. Hình 5.1 t hình h thng qun an toàn thông tin theo chun ISO 27001.
Theo ó, phần vic Phân tích rủi ro ược thc hin trong các khâu 1 và khâu 2, các phn
vic La chn các kim soát và Thc thi các kiểm soát ược thc hin trong khâu 3. Khi các
kiểm soát ược trin khai skh năng thay ổi mc rủi ro ối vi các tài sn an toàn thông
tin.
lOMoARcPSD|37054152
Hình 5.1. Quan h gia các khâu trong qun lý an toàn thông tin
5.1.2. Đánh giá rủi ro an toàn thông tin
5.1.2.1. Giới thiệu
Đánh giá rủi ro an toàn thông tin (Security risk assessment) mt b phn quan trng
ca vấn qun lý rủi ro an toàn thông tin. Theo ó, mi tài sn ca t chc cần ược xem xét,
nhn dng c ri roth và ánh giá mc rủi ro. Đánh giá rủi ro là mt trong các cơ sở
xác ịnh mc ri ro chp nhận ược vi tng loi tài sản. Trên cơ s xác ịnh mc ri ro, có
th ra các bin pháp x lý, kim soát ri ro trong mc chp nhận ược, vi mc chi phí
phù hp.
Hình 5.2 minh ho mô hình ánh giá ri ro an toàn thông tin, trong ó 3 nhân tố chính liên
quan trc tiếp cần ược xem xét gm: (1) Tài sn an toàn thông tin cn ược bo v, (2) Các
mối e doạ i vi các tài sn an toàn thông tin và (3) Các l hng bo mt tn ti trong các
tài sản an toàn thông tin. Như vậy, việc ánh giá ri ro an toàn thông tin cn phi xem xét
toàn din c vấn bên trong ca tài sn an toàn thông tin (l hng bo mt) vấn bên
ngoài (mối e doạ).
Hình 5.2. Mô hình ánh giá ri ro an toàn thông tin
4 phương pháp tiếp cận ánh giá rủi ro: phương pháp ường sở (Baseline approach),
phương pháp không chính thức (Informal approach), phương pháp phân tích chi tiết ri ro
(Detailed risk analysis) phương pháp kết hp (Combined approach). y theo quy
ca h thng thông tin của ơn vị tài sn an toàn thông tin cần ược bo vệ, ơn vị có th
xem xét la chọn phương pháp ánh giá rủi ro cho phù hp. Mc tiếp theo mô t chi tiết v
các phương pháp ánh giá rủi ro k trên.
lOMoARcPSD| 37054152
5.1.2.2. Các phương pháp ánh giá rủi ro
a. Phương pháp ánh giá rủi ro ường cơ sở
Phương pháp ánh giá rủi ro ường cơ sở phương pháp ơn giản nht. Mục ích ca
phương pháp y thc thi các kim soát an ninh mức bản da trên các tài liu
bản, các quy tc thc hành các thc tế tt nht của ngành ã ược áp dụng. Phương pháp
ường cơ sở có ưu iểm là không òi hỏi các chi phí cho các tài nguyên b sung s dng trong
ánh giá ri ro chính thc và cùng nhóm các bin pháp có th trin khai trên nhiu h thống.
Tuy nhiên, nhược iểm ca nó là không xem xét k ến các iều kin ny sinh các ri ro các
h thng ca các t chc khác nhau. Mt vấn ề khác ca phương pháp này là mức ường cơ
sở ược xác nh chung nên có th không phù hp vi tng t chc c th. Nếu chn mc quá
cao có th gây tốn kém, nhưng nếu chn mc quá thp có th gây mất an toàn. Nhìn chung,
phương pháp ường cơ sở phù hp vi các t chc vi h thng công ngh thông tin có quy
mô nh, có ngun lc hn chế. b. Phương pháp không chính thức
Phương pháp không chính thức là phương pháp tiếp cận ánh giá rủi ro tiếp theo. Phương
pháp không chính thức liên quan ến vic thc hin các ni dung sau:
- Thc hin mt s dng phân tích ri ro h thng công ngh thông tin ca t chc mt
cách không chính thc,
- S dng kiến thc chuyên gia ca các nhân viên bên trong t chc, hoặc các nhà
vn t bên ngoài, và
- Không thc hiện ánh giá toàn diện các rủi ro i vi tt c các tài sn ng ngh thông
tin ca t chc.
Phương pháp y ưu iểm không òi hỏi các nhân viên phân tích ri ro các k
năng bổ sung, nên th thc hin nhanh vi chi phí thp, vic phân tích h thng
công ngh thông tin ca t chc giúp cho việc ánh giá rủi ro, l hng chính xác hơn và các
biện pháp kiểm soát ưa ra cũng phù hợp hơn phương pháp ường cơ sở. Phương pháp không
chính thức có các nhưc iểm là:
- Do ánh giá rủi ro không ược thc hin toàn din nên th mt ri ro không ược
xem xét k, nên có th lại nguy cơ cao cho tổ chc, và
- Kết qu ánh giá dễ phc thuộc vào quan iểm ca các cá nhân.
Trên thc tế phương pháp không chính thc phù hp vi các t chc vi h thng công
ngh thông tin có quy mô nh và va, có ngun lực tương ối hn chế. c. Phương pháp phân
tích chi tiết ri ro
Phương pháp phân tích chi tiết ri ro phương pháp ánh giá toàn diện, ược thc hin
mt cách chính thức và ược chia thành nhiều giai oạn, bao gm:
- Nhn dng các tài sn,
- Nhn dng các mối e dọa và l hổng ối vi các tài sn này,
- Xác nh xác sut xut hin các ri ro các hu qu th nếu ri ro xy ra vi
cơ quan, t chc, và
lOMoARcPSD| 37054152
- La chn các bin pháp xri ro da trên kết qu ánh giá rủi ro ca các giai oạn
trên.
Ưu iểm của phương pháp y cho phép xem xét chi tiết các rủi ro i vi h thng
công ngh thông tin ca t chc, và lý gii rõ ràng các chi phí cho các bin pháp kim soát
rủi do xuất. Đồng thi, cung cp thông tin tt nht cho vic tiếp tc qun vấn an
ninh ca các h thng công ngh thông tin khi chúng ược nâng cp, sửa i. Tuy nhiên,
phương pháp này có 2 nhược iểm là:
- Chi phí ln v thi gian, các ngun lc yêu cu kiến thc chuyên gia trình
cao, và
- th dẫn ến chm tr trong việc ưa ra các biện pháp x lý, kim soát ri ro phù
hp.
Phương pháp phân tích chi tiết ri ro phù hp vi các t chc chính ph cung cp các
dch v thiết yếu cho người dân và doanh nghip, hoc các t chc có h thng công ngh
thông tin quy ln, hoc các t chc cung cp nn tng h tng truyn thông cho quc
gia.
d. Phương pháp kết hp
Phương pháp kết hp phương pháp tiếp cận ánh giá ri ro cui cùng. Phương pháp
này kết hp các thành phn của 3 phương pháp ường cơ s, không chính thc và phân tích
chi tiết, vi các mc tiêu là cung cp mc bo v hp lý càng nhanh càng tt và sau ó kiểm
tra và iều chnh các bin pháp bo v trên các h thng chính theo thi gian. Phương pháp
kết hợp ược thc hiện theo 3 bước:
- Thc hiện phương pháp ường cơ s vi tt c các thành phn ca h thng ng ngh
thông tin ca t chc;
- Tiếp theo, các thành phn mc ri ro cao, hoc trng yếu ược xem xét ánh g
theo phương pháp không chính thức;
- Cui cùng h thống ược xem xét ánh giá toàn din ri ro mc chi tiết.
Các ưu iểm của phương pháp kết hp là vic bắt ầu bng việc ánh giá rủi ro mc cao
d nhận ược s ng h ca cp qun , thun li cho vic lp kế hoch qun an toàn
thông tin, ồng thi có th giúp sm trin khai các bin pháp x lý và kim soát ri ro ngay
t giai oạn ầu, cũng như có thể giúp gim chi phí với a số các t chc. Tuy nhiên, phương
pháp kết hợp có nhược iểm là nếu ánh giá ở mức cao trong giai oạn u không chính xác có
th dẫn ến áp dng các bin pháp kim soát không phù hp, h thng có th gp ri ro trong
thi gian ch ánh giá chi tiết. Nói chung, phương pháp kết hp phù hp các t chc vi h
thng công ngh thông tin quy mô va và ln.
5.1.3. Phân tích chi tiết rủi ro an toàn thông tin
5.1.3.1. Giới thiệu
Phân tích chi tiết rủi ro an toàn thông tin là phương pháp xem xét, phân tích toàn din
các ri ro ca tng thành phn trong h thng công ngh thông tin của quan, tổ chc.
Phân tích chi tiết ri ro an toàn thông tin gm nhiu hoạt ộng ưc chia thành 9 bước:
1. Mô t ặc iểm h thng
lOMoARcPSD| 37054152
2. Nhn dng các mối e dọa
3. Nhn dng các l hng bo mt
4. Phân tích các kim soát
5. Xác ịnh xác sut ri ro
6. Phân tích các ảnh hưởng
7. Xác ịnh các ri ro
8. Đề xut các kim soát
9. Viết tài liu kết qu phân tích.
5.1.3.2. Nội dung phân tích chi tiết rủi ro
Ni dung c th từng bước ca phân tích chi tiết rủi ro an toàn thông tin như sau.
Bước 1: Mô t ặc im h thng - Đầu vào:
Các thành phn ca h thng:
+ Phn cng, phn mm, giao din
+ D liu và thông tin
+ Con người
+ S mnh ca h thng.
- Đầu ra:
+ Ranh gii và chức năng hệ thng;
+ Tính trng yếu ca d liu và h thng;
+ Tính nhy cm
Bước 2: Nhn dng các mối e dọa -
Đầu vào:
+ Lch s tn công vào h thng
+ D liu t các t chc chuyên v an toàn thông tin +
D liu t các phương tiện thông tin ại chúng.
- Đầu ra:
+ Báo cáo v các mối e dọa ối vi h thng
Bước 3: Nhn dng các l hng bo mt - Đầu
vào:
+ Các báo cáo ánh giá rủi ro ã có
+ Các nhn xét kim toán h thng
+ Các yêu cu an ninh, an toàn + Các
kết qu kim tra an ninh, an toàn - Đầu ra:
+ Danh sách các l hng bo mt tim tàng.
lOMoARcPSD| 37054152
Bước 4: Phân tích các kim soát (control)
- Đầu vào:
+ Các kim soát hin
+ Các kiểm soát ược lp kế hoch -
Đầu ra:
+ Danh sách các kim soát hiện có và ược lp kế hoch.
Bước 5: Xác ịnh xác sut ri ro - Đầu vào:
+ Động cơ của các nguồn e dọa
+ Kh năng của e dọa
+ Bn cht ca l hng bo mt
+ Các kim soát hin -
Đầu ra:
+ Đánh giá xác suất ri ro.
Bước 6: Phân tích các ảnh hưởng (liên quan s vi phm tính toàn vn, sn dùng và bí
mt ca các tài sn h thng) - Đầu vào:
+ Phân tích ảnh hưởng s mnh
+ Đánh giá tầm quan trng ca tài sn
+ Tm quan trng ca d liu
+ Tính nhy cm ca d liu -
Đầu ra:
+ Đánh giá các ảnh hưng.
Bước 7: Xác ịnh các ri ro -
Đầu vào:
+ Kh năng bị mối e dọa khai thác
+ Tm quan trng ca nh hưởng
+ S phù hp ca các kim soát theo kế hoch, hoc hin -
Đầu ra:
+ Các ri ro và các mc ri ro có liên quan.
Bước 8: Đề xut các kim soát
- Đầu vào: Không
- Đầu ra: Đề xut các bin pháp x lý, kim soát ri ro
Bước 9: Viết tài liu kết qu phân tích
- Đầu vào: Không
lOMoARcPSD| 37054152
- Đầu ra: Báo cáo ánh giá rủi ro.
5.1.4. Thực thi quản lý an toàn thông tin
5.1.4.1. Giới thiệu
Thc thi quản lý an toàn thông tin là bước tiếp theo của khâu ánh giá rủi ro, nhm trin
khai, thc thi các kim soát (control) nhm m bo an toàn thông tin cho h thng công
ngh thông tin ca t chc. Các ni dung chính ca thc thi qun lý an toàn thông tin gm:
- Thc thi (Implementation): Thc thi các kim soát, và nâng cao ý thức và ào tạo an
toàn thông tin.
- Thc thi tiếp tc (Implementation follow-up): Bo trì, kim tra hp chun, qun
thay ổi và x lý s c.
Kiểm soát (control), m bo an toàn (safeguard), hoc biện pháp i phó
(countermeasure) các thut ng th ược s dụng tương ương, hoặc tráo i cho nhau
trong qun an toàn thông tin. Kiểm soát phương tiện qun ri ro, bao gm các
chính sách, th tục, các hướng dn, các thc tế, hoc cu trúc t chc. Kim soát có th
vấn ề qun lý hành chính hoc k thut, hoc có bn cht lut pháp.
Các kiểm soát ược thc thi trong qun lý an toàn thông tin có th gm 6 loi:
- Kim soát qun lý (Management controls)
- Kim soát vn hành (Operational controls) - Kim soát k thut (Technical controls)
- Kim soát h tr (Supportive controls)
- Kiểm soát ngăn ngừa (Preventive controls)
- Kim soát phát hin và phc hi (Detection and recovery controls).
5.1.4.2. Các loại kiểm soát
Kiểm soát quản lý bao gồm các nội dung:
- Tp trung vào các chính sách, lp kế hoạch, hướng dn và chun an toàn thông tin;
- Các kim soát ảnh hưởng ến vic la chn các kim soát vn hành kim soát
k thut nhm gim tn tht do ri ro và bo v s mnh ca t chc;
- Các kim soát tham chiếu ến các vấn ề ược gii quyết thông qua lĩnh vực qun lý.
Kiểm soát vận hành bao gồm các nội dung:
- Gii quyết vấn thc thi chính xác s dng các chính sách và chun an toàn thông
tin, ảm bo tính nht quán trong vn hành an toàn thông tin và khc phc các khiếm
khuyết vận hành ã ược nhn dng;
- Các kiểm soát này liên quan ến các chế th tục ưc thc thi ch yếu bi con
người, hơn là bởi h thng;
- Được s dụng ể tăng cường an ninh cho mt h thng hoc mt nhóm các h thng.
Kiểm soát kỹ thuật bao gồm các nội dung:
lOMoARcPSD| 37054152
- Liên quan ến vic s dụng úngn các biện pháp m bo an ninh bng phn cng
phn mm trong h thng;
- Bao gm các bin pháp t ơn giản ến phc tạp m bo an toàn cho các thông tin
nhy cm và các chức năng trọng yếu ca các h thng;
- Mt s kim soát k thut: xác thc, trao quyn và thc thi kim soát truy cp,...
Kiểm soát hỗ trợ là các kim soát chung lớp dưới, có quan h với và ược s dng bi
nhiu kim soát khác.
Kiểm soát ngăn ngừa là kim soát tp trung vào việc ngăn ngừa vic xy ra các vi phm
an ninh, bng cách khc chế các n lc vi phm chính sách an ninh hoc khai thác các l
hng bo mt.
Kiểm soát phát hiện và phục hồi là kim soát tp trung vào vic áp tr vi phm an ninh
bằng cách ưa ra cảnh báo vi phm, hoc các n lc vi phm chính sách an ninh, hoc khai
thác các l hng bo mật, ng thi cung cp các bin pháp phc hi các tài nguyên tính
toán b ảnh hưởng do vi phm an ninh.
5.1.4.3. Xây dựng kế hoạch ảm bảo an toàn
Kế hoạch m bo an toàn (Security plan) là mt tài liu ch rõ các phn vic s ược thc
hin, các tài nguyên cn s dng những người, hoc nhân viên chu trách nhim thc
hin. Mục ích ca Kế hoạch ảm bo an toàn là cung cp chi tiết v các hành ộng cn thiết ể
ci thin các vấn ã ược nhn dng trong h ánh giá rủi ro mt cách nhanh chóng. Kế
hoạch ảm bo an toàn nên gm các thông tin chi tiết sau (theo chun hướng dn qun lý rủi
ro năm 2002 ca NIST):
- Các ri ro (s kế hp ca tài sn/mối e dọa/l hng)
- Các kiểm soát ược khuyến ngh (t ánh giá rủi ro)
- Các hành ộng ưu tiên cho mỗi ri ro
- Các kiểm soát ược chn (da trên phân tích li ích chi phí)
- Các tài nguyên cn có cho thc thi các kim soát ã chọn
- Nhân s chu trách nhim
- Ngày bắt ầu và kết thúc vic thc thi - Các yêu cu bo trì và các nhn xét khác.
5.1.4.4. Nội dung thực thi quản lý an toàn thông tin
Như ã cp trong mc 5.1.4.1, vic thc thi qun lý an toàn thông tin gm 2 khâu là (1)
thực thi (Implementation) (2) thực thi tiếp tục (Implementation follow-up). Khâu thực
thi gm 2 phn vic thc thi các kim soát, nâng cao ý thc ào tạo an toàn thông
tin. Thc thi các kim soát phn vic tiếp theo cn thc hin trong kế hoch m bo an
toàn ca tiến trình qun lý an toàn thông tin. Thc thi các kim soát có liên h mt thiết vi
việc ào tạo nâng cao ý thc an toàn thông tin cho nhân viên nói chung ào tạo chuyên sâu
v an toàn thông tin cho nhân viên an toàn thông tin trong t chc.
Khâu thực thi tiếp tục vic cn lp li trong chu trình qun an toàn thông tin áp
ng s thay ổi trong môi trường công ngh thông tin môi trường ri ro. Trong ó, các
kiểm soát ã ược thc thi cần ược giám sát m bo tính hiu qu, và bt k mt s thay ổi
lOMoARcPSD| 37054152
trên h thng cần ược xem xét vấn ề an ninh và h sơ rủi ro ca h thng b ảnh hưởng cần
ược xem xét nếu cn thiết. Giai oạn thc thi tiếp tc bao gm các khía cnh: bo trì các
kim soát an ninh, kim tra hp chun an ninh, quản lý thayi và cu hình và x lý các s
c.
Bảo trì các kiểm soát an ninh gm các phn vic phải ảm bo các yêu cu sau:
- Các kiểm soát ược xem xét ịnh k m bo chúng hoạt ộng như mong mun;
- Các kim soát cần ược nâng cp khi các yêu cu mới ược pháp hin;
- Các thay ổi vi h thống không ược có các ảnh hưởng tiêu cực ến các kim soát;
- Các mối e dọa mi hoc các l hổng ã không trở thành ược biết ến.
Kiểm tra hợp chuẩn an ninh là quá trình kim toán vic qun lý an toàn thông tin ca t
chc nhằm m bo tính phù hp vi kế hoạch m bo an ninh. Vic kim toán th ược
thc hin bi nhân s bên trong hoc bên ngoài t chc. Cn s dng danh sách kim tra
(checklist) các vấn : các chính sách và kế hoạch an ninh ược to ra, các kim soát phù hợp
ược la chn và các kiểm soát ưc s dng và bo trì phù hp.
Quản thay ổi cấu hình tiến trình ưc s dụng xem xét các thay ổi ược xut
cho h thng trong quá trình s dng. Các thay i vi các h thng hin cn thiết do
nhiều do, như hệ thng trc trc, hoc s xut hin ca các mối e dọa hoc l hng
mi, s xut hin ca yêu cu mi, nhim v mới,… Các thay i cần ưc xem xét k lưỡng
c vấn vận nh, tính năng và vấn ề an toàn,… Quản lý cu hình liên quan ến việc lưu vết
các cu hình ca mi h thống khi chúng ược nâng cp, thay i. Vic này bao gm danh
sách các phiên bn ca phn cng, phn mềm cài ặt trong mi h thng, và thông tin qun
lý cu hình hữu ích ể khôi phc h thng khi vic thay i hoc nâng cp tht bi.
Xử lý các sự cố bao gm các th tục ược s dụng ể phn ng li các s c an ninh. X
lý s c có liên quan ến vấn ào tạo nâng cao ý thức an toàn thông tin cho người dùng và
ào tạo chuyên sâu cho chuyên viên an toàn thông tin.
5.2. Các chuẩn quản lý an toàn thông tin
5.2.1. Giới thiệu
Trong các chun qun lý an toàn thông tin, b chun NIST SP 800 ca Vin tiêu chun
và công ngh M và b chun quc tế ISO/IEC 27000 ược tham chiếu và s dng rng rãi
nht. Nhiu quốc gia, trong ó có Việt Nam ã dịch và chp thun nguyên vn mt s chun
trong b chun quc tế ISO/IEC 27000 làm chun qun lý an toàn thông tin quc gia. Theo
ó, bộ chuẩn ISO/IEC 27000:2014 ược Vit Nam dch chp thun nguyên vn thành chun
TCVN 11238:2015. Trong phm vi ca môn hc, mc y gii thiu khái quát v b chun
qun lý an toàn thông tin ISO/IEC 27000.
Chun ISO/IEC 27000: 2009 gii thiu khái quát v b chun ISO/IEC 27000 nh
nghĩa các thuật ng t vng s dng cho toàn b các chun con trong b chun ISO/IEC
27000.
Chuẩn ISO/IEC 17799 ược son thảo m 2000 bởi International Organization for
Standardization (ISO) và International Electrotechnical Commission (IEC) là tin thân của
lOMoARcPSD|37054152
ISO 27000. Năm 2005, ISO 17799 ược chnh sa và tr thành ISO 17799:2005. m 2007,
ISO 17799:2005 ược ổi tên thành ISO 27002 song hành vi ISO 27001.
Chun ISO/IEC 27001:2005 chuyên v h thng qun an toàn thông tin (Information
Security Management System - ISMS). Chun y cung cp các thông tin thc thi các
yêu cu của ISO/IEC 27002 cài t mt h thng qun lý an toàn thông tin. Trong vic
xây dng h thng ISMS, chun cung cp các chi tiết cho thc hin chu k Lp kế hoch
Thc hin Giám sát Hành ng (Plan-Do-Check-Act). Một iểm cần lưu ý là ISO/IEC
27001 chỉ tp trung o các phn vic phi thc hin không ch dn cách thc thc
hin.
Chun ISO/IEC 27002 gm 127 iều, cung cp cái nhìn tng quan v nhiều lĩnh vực
trong an toàn thông tin. ra các khuyến ngh v qun an toàn thông tin cho nhng
người thc hin vic khi to, thc hin duy trì an ninh an toàn trong t chc ca h.
Chuẩn y ược thiết kế cung cp nn tảng sở giúp ra các chun an toàn thông tin cho
t chc và các thc tế qun lý an toàn thông tin mt cách hiu qu.
Chun ISO/IEC 27005: 2009 chuyên v qun ri ro cho h thng qun an toàn
thông tin. Chun y h tr ISO/IEC 27001, nhưng không cập ến phương pháp kim
soát ri ro c th.
5.2.2. Chu trình Plan-Do-Check-Act
Chun ISO/IEC 27001:2005 chuyên v h thng qun an toàn thông tin cung cp các
chi tiết cho thc hin chu k Plan-Do-Check-Act gm 4 pha: Plan - Lp kế hoch, Do
Thc hin kế hoch, Check Giám sát vic thc hin và Act Thc hin các ci tiến, hiu
chnh, như biểu din trên Hình 5.3. Theo ó, chi tiết 4 pha trong chu trình này như sau:
Hình 5.3. Chu trình Plan-Do-Check-Act ca ISO/IEC 27001:2005
Pha Plan gm các ni dung:
- Đề ra phm vi ca ISMS;
- Đề ra chính sách ca ISMS;
- Đề ra hướng tiếp cận ánh giá rủi ro;
- Nhn dng các ri ro;
- Đánh giá rủi ro;
- Nhn dạng ánh giá các lựa chọn phương pháp xử ri ro; - La chn các mc
tiêu kim soát và bin pháp kim soát; - Chun b tuyến b, báo cáo áp dng.
Pha Do gm các ni dung:
lOMoARcPSD| 37054152
- Xây dng kế hoch x lý ri ro;
- Thc thi kế hoch x lý ri ro;
- Thc thi các kim soát;
- Thực thi các chương trình ào tạo chuyên môn và giáo dc ý thc;
- Qun lý các hoạt ộng;
- Qun lý các tài nguyên;
- Thc thi các th tc phát hin và phn ng li các s c an ninh.
Pha Check gm các ni dung:
- Thc thi các th tc giám sát;
- Thc thi việc ánh giá thưng xuyên tính hiu qu ca ISMS;
- Thc hin vic kim toán (audits) ni b vi ISMS;
- Thc thi việc ánh giá thường xuyên vi ISMS bi b phn qun lý; - Ghi lại các hành
ng và s kin ảnh hưởng ến ISMS.
Pha Act gm các ni dung:
- Thc hin các ci tiến ã ược nhn dng;
- Thc hiện các hành ộng sa chữa và ngăn chặn;
- Áp dụng các bài ã ược hc;
- Tho lun kết qu vi các bên quan tâm; - Đảm bo các ci tiến ạt ược các mc tiêu.
5.3. Pháp luật và chính sách an toàn thông tin
5.3.1. Giới thiệu về pháp luật và chính sách an toàn thông tin
Các chính sách pháp lut an toàn thông tin vai trò rt quan trng trong việc m
bo an toàn cho thông tin, h thng và mạng. Trong ó, vai trò của nhân viên m bo an toàn
thông tin rt quan trng trong vic gim thiu rủi ro, m bo an toàn cho thông tin, h
thng và mng và gim thit hi nếu xy ra s cố. Các nhân viên ảm bo an toàn cho thông
tin phi hiu nhng khía cạnh pháp lý ạo c an toàn thông tin. Theo ó, h phi luôn
nm vng môi trường pháp lý hin ti (các luật và các quy nh lut pháp) và luôn thc hin
công vic nm trong khuôn kh cho phép ca lut pháp. Ngoài ra, cn thc hin vic giáo
dc ý thc v luật pháp và ạo ức an toàn thông tin cho cán b qun lý và nhân viên trong t
chức, ảm bo s dụng úng mục ích các công nghệ m bo an toàn thông tin.
Chính sách (Policy - còn gọi quy nh, nội quy) các quy nh v các hành vi chp
nhận ưc ca các nhân viên trong t chc tại nơi làm việc. Chính sách các "lut" ca t
chc giá tr thc thi trong ni b, gm mt tập các quy nh c chế tài x pht bt
buc phi thc hin. Các chính sách, hoc ni quy cần ưc nghiên cu, son tho k lưỡng.
Đồng thi, chính sách cần y ủ, úng n áp dng công bng vi mi nhân viên. Điểm
khác bit gia lut và chính sách là Lut luôn bt buc, còn vi Chính sách, vic thiếu hiu
biết chính sách là 1 cách bào cha chp nhận ược.
Cn phân bit ng gia luật (Law) ạo ức (Ethic). Lut gm những iều khon
bt buc hoc cm nhng hành vi c thể. Các iều luật thường ược xây dng t các vấn ề ạo
lOMoARcPSD| 37054152
ức. Trong khi ó, ạo ức ịnh nghĩa những hành vi xã hi chp nhn ược. Đạo ức thường dựa
trên các ặc iểm văn hóa. Do ó, hành vi ạoc gia các dân tộc, các nhóm người khác nhau
khác nhau. Mt s hành vi vi phm ạo ức ược lut hóa trên toàn thế giới, như trộm, cướp,
cưỡng dâm, bo hành tr em,... Khác bit gia luật và ạo c th hin ch luật ược thc thi
bởi các cơ quan chính quyn, còn ạo ức không ược thc thi bởi các cơ quan chính quyền.
Để các chính sách có th ược áp dng hiu qu, chúng phải ạt ược các yêu cu sau:
- Có kh năng phổ biến rng rãi, bng tài liu giy hoặc iện t;
- Nhân viên th xem, hiểu ược cn thc hin trên nhiu ngôn ng, d bng tiếng
Anh và tiếng ịa phương;
- Chính sách cn ràng d hiu t chc cần các iều tra/kho sát v mức hiu
biết/nm bt các chính sách ca nhân viên;
- Cn biện pháp nhân viên cam kết thc hin thông qua ký n bản cam kết hoc
tick vào ô xác nhn tuân th;
- Chính sách cần ược thc hiện ồng ều, bình ẳng, nhất quán, không ưu tiên vi bt
k nhân viên nào, k c người qun lý.
5.3.2. Luật quốc tế về an toàn thông tin
Mục này ề cập ến mt s lut và văn bản có liên quan ến an toàn thông tin ca M
Châu Âu là những nưc và khu vực ã phát triển và có h thng lut pháp v an toàn
thông tin tương ối hoàn thin.
th nói h thng lut pháp v an toàn thông tin của nước M khá y ưc chia
thành các nhóm: các lut ti phm máy tính, các lut v s riêng tư, lut xut khu chống
gián iệp, lut bn quyn và lut t do thông tin. Các lut v ti phm máy tính và ti phm
mng gm:
- Computer Fraud and Abuse Act of 1986 (CFA Act): quy ịnh v các ti phm la o
và lm dng máy tính;
- Computer Security Act, 1987: ề ra các nguyên tắc ảm bo an toàn cho h thng máy
tính;
- National Information Infrastructure Protection Act of 1996: bn sửa i ca CFA
Act, tăng khung hình phạt mt s ti phạm máy tính ến 20 năm tù;
- USA PATRIOT Act, 2001: cho phép các quan nhà nước mt s quyn theo dõi,
giám sát các hoạt ộng trên mng nhm phòng chng khng b hiu qu hơn;
- USA PATRIOT Improvement and Reauthorization Act: M rng ca USA
PATRIOT Act, 2001, cấp cho các quan nhà nước nhiu quyn hạn hơn cho nhim
v phòng chng khng b.
Các lut v s riêng nhằm bo v quyền riêng của người dùng, bo v các thông
tin cá nhân của người dùng, gm:
- Federal Privacy Act, 1974: lut Liên bang M bo v quyền riêng của người dùng;
- Electronic Communications Privacy Act , 1986: lut bo v quyền riêng tư trong các
giao tiếp iện t;
lOMoARcPSD| 37054152
- Health Insurance Portability and Accountability Act, 1996 (HIPAA): bo v tính
mt và an toàn ca các d liu y tế của ngưi bnh. T chc, hoc nhân vi phm
có th b phạt ến 250.000 USD hoặc 10 năm tù;
- Financial Services Modernization Act or Gramm-Leach-Bliley Act, 1999: iều chnh
các hoạt ộng liên quan ến nhà nước ca các ngân hàng, bo him các hãng an ninh.
Lut xut khu và chống gián iệp hn chế vic xut khu các công ngh và h thng x
lý thông tin và phòng chống gián iệp kinh tế, gm:
- Economic Espionage Act, 1996: phòng chng vic thc hin giao dch có liên quan
ến bí mt kinh tế công ngh;
- Security and Freedom through Encryption Act, 1999: quy nh v các vấn liên
quan ến s dụng mã hóa trong ảm bo an toàn và t do thông tin.
U.S. Copyright Law là Lut bn quyn ca Mỹ, iều chnh các vấn ề có liên quan ến xut
bn, quyn tác gi ca các tài liu, phn mm, bao gm c các tài liu s. Freedom of
Information Act, 1966 (FOIA) là Lut t do thông tin nêu rõ các cá nhân ược truy cp các
thông tin không gây tn hại ến an ninh quc gia.
Các t chc và lut quc tế có liên quan ến an toàn thông tin, gm:
- Hội ng Châu Âu v chng ti phm mng (Council of Europe Convention on
Cybercrime);
- Hiệp ước v chng ti phm mạng ược Hội ồng châu Âu phê chuẩn vào năm 2001;
- Hiệp ước bo v quyn s hu trí tu (Agreement on Trade-Related Aspects of
Intellectual Property Rights (TRIPS)): do T chức Thương mại thế gii WTO ch trì
àm phán trong giai oạn 19861994;
- Digital Millennium Copyright Act (DMCA): Lut bn quyn s Thiên niên k.
5.3.3. Luật Việt Nam về an toàn thông tin
Lut an toàn thông tin mng b luật u tiên v lĩnh vực an toàn thông ược Quc hội
thông qua vào tháng 11 năm 2015 và chính thức hiu lc t ngày 01/7/2016. Tiếp theo
Lut an toàn thông tin mng, Lut an ninh mạng ược Quc hi thông qua vào ngày
12/6/2018 và chính thc có hiu lc t ngày 01/01/2019. Đây là các cơ sở pháp lý rt quan
trng cho vic qun các hoạt ộng liên quan ến an toàn thông tin, an toàn không gian mng
Vit Nam. Ngoài hai b lut trên, ã có nhiều văn bản có liên quan ến công ngh thông tin
và an toàn thông tin ưc Quc Hi, Chính Ph và các cơ quan nhà nước ban hành như:
- Lut công ngh thông tin s 67/2006/QH11 ca Quc hi, ngày 12/07/2006.
- Ngh nh s 90/2008/NÐ-CP ca Chính Ph "V chống thư rác", ngày 13/08/2008.
- Quyết nh s 59/2008/QÐ-BTTTT ca B Thông tin Truyn thông "Ban nh
Danh mc tiêu chun bt buc áp dng v ch s dch v chng thc ch
s", ngày 31/12/2008.
- Quyết nh 63/QÐ-TTg ca Th tướng CP "Phê duyt Quy hoch phát trin an toàn
thông tin s quc gia ến năm 2020", ngày 13/01/2010.
lOMoARcPSD| 37054152
- Ch th s 897/CT-TTg ca Th tướng CP "V/v tăng ng trin khai các hot ộng
m bo an toàn thông tin s", 10/06/2011.
- Thông số 23/2011/TT-BTTTT ca B TT&TT "Quy nh v vic qun lý, vn hành,
s dng bảo m an toàn thông tin trên Mng truyn s liu chuyên dùng của các
cơ quan Đảng, Nhà nưc", ngày 11/08/2011.
- Ngh nh s 77/2012/NĐ-CP ca Chính Ph "Sửa i, b sung mt s iều ca Ngh
nh s 90/2008/NĐ-CP ngày 13 tháng 8 năm 2008 của Chính ph v chng thư rác",
ngày 05/10/2012.
- Ngh ịnh 72/2013/NĐ-CP ca Chính Ph v Qun lý, cung cp, s dng dch v
internet và thông tin trên mạng; quy nh v vic chia s thông tin trên các trang mng
xã hi.
5.4. Vấn ề ạo ức an toàn thông tin
5.4.1. Sự cần thiết của ạo ức an toàn thông tin
Vấn ạo c ngh nghip (Professional ethic) hay quy tc ng x (Code of conduct) ược
cp trong ngành công ngh thông tin nói chung và an toàn thông tin nói riêng do các công
việc liên quan ến an toàn thông tin có th liên quan ến các thông tin nhy cảm, như thông
tin, hệ thng mt quc gia, thông tin mt của các quan, tổ chc, hoc mt công
ngh, bí mt kinh doanh ca các công ty. Nếu các thông tin nhy cm b r, hoc b ánh
cắp và lm dng có th ảnh hưởng nghiêm trọng ến an ninh quc gia, hoc ảnh hưng xấu
ến các cơ quan, tổ chc và người dùng. Do vậy, người làm trong lĩnh vực an toàn thông tin
cn có hiu biết v chính sách, pháp lut và có thái và hành ộng úng ắn trong khi thc thi
nhim v.
5.4.2. Một số bộ quy tắc ứng xử trong CNTT và ATTT
Nhiu t chc hi ngh nghiệp ã ban nh các quy tắc ng x bt buc tại nơi làm
việc, như với luật sư, bác sỹ các vận ng viên th thao. Nếu vi phm nghiêm trng các
quy tc ng x tại nơi làm việc có th b cm hành ngh có thi hn, hoặc vĩnh viễn. Trong
lĩnh vực công ngh thông tin an toàn thông tin, hin không b quy tc ng x bt
buc. Mt s t chc hi ngh nghiệp như ACM (Association for Computing Machinery)
ISSA (Information Systems Security Association) hợp tác ra các quy tc ng x trong
an toàn thông tin. Tuy nhiên, các quy tc ng x trong an toàn thông tin ch có tính khuyến
ngh do các t chc trên không có thm quyn buc phi thc hin.
Hip hi an toàn thông tin Việt Nam ã công b B Qui tc ng x an toàn thông tin vào
ầu năm 2015, ưa ra một s quy tc khuyến ngh v nhng việc không ược m cho các
thành viên các nhân viên ca các t chc hoạt ộng trong lĩnh vực an toàn thông tin.
bình din quc tế, Viện ạo c máy nh, M ưa ra B Quy tc ng x 10 iểm (Ten
Commandments of Computer Ethics) như sau:
1. Không ược s dụng máy tính ểy hại cho người khác;
2. Không ược can thip vào công vic của người khác trên máy tính;
3. Không trm cp các file trên máy tính ca người khác;
4. Không ược s dụng máy tính ể trm cp;
lOMoARcPSD| 37054152
5. Không ược s dụng máy tính ể to bng chng gi;
6. Không sao chép hoc s dng phn mm không có bn quyn;
7. Không s dng các tài nguyên máy tính của người khác khi không ược phép hoc
không có bồi thường thỏa áng;
8. Không chiếm oạn tài sn trí tu của người khác;
9. Nên suy nghĩ về các hu qu hi của chương trình mình ang y dựng hoc h
thống ang thiết kế;
10. Nên s dng máy tính mt cách có trách nhiệm, m bo s quan tâm và n trng ến
ng bào ca mình.
5.4.3. Một số vấn ề khác
Liên quan ến vấn ạo c trong an toàn thông tin, có mt s vấn ề khác cần lưu ý là (1)
s khác bit v vấn ạo c gia các nền văn hóa, (2) vấn ề vi phm bn quyn phn mm
và (3) vấn ề lm dng các tài nguyên ca quan, t chc.
Trên thc tế, có s khác bit khá ln v vấn ạo c gia các nền văn hóa. Trong ó, nhận
thc v vấn ề ạo ức trong s dng các tài nguyên của cơ quan, tổ chc là rt khác bit gia
các quc gia có nền văn hóa khác nhau. Trong nhiều trong hp, mt hành vi ược phép ca
mt s cá nhân trong mt quc gia li vi phm quy tắc ạo c ca quc gia khác. Chng hn,
hành vi tiết l thông tin cá nhân và ặc bit là mc thu nhp của người khác ược coi là bình
thường Việt Nam, nhưng ây là hành vi vi phạm quyền riêng tư ở c nước phát triển như
Mỹ và châu Âu.
Vấn ề vi phm bn quyn phn mm là rt nghiêm trọng, ặc bit là các nước ang phát
trin châu Á và châu Phi. Đa số người dùng có hiu biết v vấn ề bn quyn phn mềm,
nhưng coi việc s dng phn mm bt hp pháp là bình thường vì nhiều nước chưa có quy
nh hoc không xnghiêm vi phm. T l vi phm bn quyn phn mm Vit Nam
hin rất cao, ến khong 90% do thiếu các chế tài x lý vi phm.
Vấn ề lm dng các tài nguyên ca công ty, t chc xảy ra tương ối ph biến và cn
các quy ịnh và chế tài kim soát. Mt s cơ quan, t chức chưa có các quy ịnh cm nhân
viên s dng các tài nguyên ca cơ quan, t chc vào vic riêng. Mt s ơn vị khác có quy
ịnh nhưng chưa ược thc thi cht ch chưa chế tài x pht nghiêm minh. Các hành
vi lm dụng thường gp, gm:
- In n tài liu riêng;
- S dng email cá nhân cho vic riêng;
- Ti các tài liu, file không ược phép;
- Cài t và chy các chương trình, phn mềm không ược phép;
- S dng máy tính công ty làm vic riêng;
- S dụng các phương tiện làm việc khác như iện thoi công ty quá mc vào vic riêng.
5.5. Câu hỏi ôn tập
1) Nêu khái nim tài sn an toàn thông tin, khái nim qun an toàn thông tin. Nêu vai
trò và các khâu cn thc hin ca qun lý an toàn thông tin.
lOMoARcPSD| 37054152
2) Đánh giá rủi ro an toàn thông tin là gì? Mô t vn tắt các phương pháp tiếp cận ánh giá
ri ro an toàn thông tin.
3) Mô t vn tắt các bước ca phân tích chi tiết ri ro an toàn thông tin.
4) Mô t các loi kim soát trong thc thi qun lý an toàn thông tin.
5) Mô t ni dung thc thi qun lý an toàn thông tin.
6) t vn tt các chun ISO/IEC 27000, ISO/IEC 27001, ISO/IEC 27002 ISO/IEC
27005.
7) Mô t chu trình Plan-Do-Check-Act ca chun ISO/IEC 27001.
8) Phân bit pháp lut và chính sách. Nêu các yêu cu ca chính sách có th ược áp dng
hiu qu.
9) Mô t vn tắt các văn bn luật có liên quan ến an toàn thông tin ca Vit Nam.
10) Nêu s cn thiết ca vấn ạo ức an toàn thông tin. Nêu b qui tc ng x ca Viện ạo
c máy tính (M).
TÀI LIỆU THAM KHẢO
[1] Michael E. Whitman, Herbert J. Mattord, Principles of information security, 4th
edition, Course Technology, Cengage Learning, 2012.
[2] David Kim, Michael G. Solomon, Fundamentals of Information Systems Security,
Jones & Bartlettlearning, 2012.
[3] Statista.com, Internet of Things (IoT) connected devices installed base worldwide from
2015 to 2025, https://www.statista.com/statistics/471264/iot-number-ofconnected-
devices-worldwide/, truy cp tháng 11.2021.
[4] Statista.com, Number of cyber security incident reports by federal agencies in the
United States from FY 2006 to 2018, https://www.statista.com/statistics/677015/
number-cyber-incident-reported-usa-gov/, truy cp tháng 11.2021.
[5] Tập oàn Bkav, Tổng kết an ninh mng 2019 d báo xu hướng 2020,
https://m.bkav.com.vn/tin_tuc_noi_bat/-/chi_tiet/669034/tong-ket-an-ninh-mangnam-
2019-va-du-bao-2020, truy cp tháng 11.2021.
[6] US National Vulnerability Database, https://nvd.nist.gov, truy cp tháng 11.2021.
[7] Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone, Handbook of Applied
Cryptography, CRC Press, Fifth Printing, August 2001.
[8] Bruce Schneier, Applied Cryptography, 2nd edition, John Wiley & Sons, 1996.
[9] Schneier, B. (2000). Secrets and lies: digital security in a networked world. New York:
John Wiley and Sons.
[10] Webster's Online Dictionary, http://www.websters-online-dictionary.org, truy cp
tháng 11.2021.
[11] The Free Online Dictionary of Computing, http://foldoc.org, truy cp tháng 11.2021.
lOMoARcPSD| 37054152
[12] Eric Code, Advanced Persistent Threat: Understanding the Danger and How to Protect
Your Organization, Elsevier, USA, 2013.
| 1/157

Preview text:

lOMoARcPSD| 37054152
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoAR cPSD| 37054152 MỤC LỤC
DANH MỤC CÁC HÌNH ............................................................................................................... 4
DANH MỤC CÁC THUẬT NGỮ TIẾNG ANH VÀ VIẾT TẮT ................................................. 7
MỞ ĐẦU ......................................................................................................................................... 8
CHƯƠNG 1. TỔNG QUAN VỀ AN TOÀN BẢO MẬT HỆ THỐNG THÔNG TIN ............... 10
1.1. Khái quát về an toàn thông tin ........................................................................................... 10
1.1.1. An toàn thông tin là gì? ............................................................................................... 10
1.1.2. Sự cần thiết của an toàn thông tin ............................................................................... 11
1.1.3. Các thành phần của an toàn thông tin ......................................................................... 13
1.2. Khái quát về an toàn hệ thống thông tin ............................................................................. 15
1.2.1. Các thành phần của hệ thống thông tin ....................................................................... 15
1.2.2. An toàn hệ thống thông tin là gì? ................................................................................ 16
1.3. Các yêu cầu ảm bảo an toàn hệ thống thông tin ............................................................... 16
1.3.1. Tính bí mật .................................................................................................................. 16
1.3.2. Toàn vẹn ...................................................................................................................... 17
1.3.3. Sẵn dùng ...................................................................................................................... 17
1.4. Bảy vùng trong hạ tầng CNTT và các mối e dọa ............................................................. 18
1.4.1. Bảy vùng trong cơ sở hạ tầng CNTT .......................................................................... 18
1.4.2. Các mối e dọa và nguy cơ ......................................................................................... 19
1.5. Mô hình tổng quát ảm bảo an toàn hệ thống thông tin ..................................................... 20
1.5.1. Giới thiệu ..................................................................................................................... 20
1.5.2. Một số mô hình ảm bảo an toàn hệ thống thông tin .................................................. 21
1.6. Câu hỏi ôn tập .................................................................................................................... 22
CHƯƠNG 2. CÁC DẠNG TẤN CÔNG VÀ PHẦN MỀM ĐỘC HẠI ....................................... 23
2.1. Khái quát về mối e dọa, iểm yếu, lỗ hổng và tấn công .................................................. 23
2.1.1. Khái niệm mối e dọa, iểm yếu, lỗ hổng và tấn công ............................................... 23
2.1.2. Các dạng mối e dọa thường gặp ................................................................................ 24
2.1.3. Các loại tấn công ......................................................................................................... 25
2.2. Các công cụ hỗ trợ tấn công ............................................................................................... 25
2.2.1. Công cụ rà quét lỗ hổng, iểm yếu hệ thống ............................................................... 26
2.2.2. Công cụ quét cổng dịch vụ .......................................................................................... 27
2.2.3. Công cụ nghe lén ......................................................................................................... 27
2.2.4. Công cụ ghi phím gõ ................................................................................................... 28
2.3. Các dạng tấn công thường gặp ........................................................................................... 29
2.3.1. Tấn công vào mật khẩu ............................................................................................... 29
2.3.2. Tấn công bằng mã ộc ................................................................................................ 30
2.3.3. Tấn công từ chối dịch vụ ............................................................................................. 44
2.3.4. Tấn công từ chối dịch vụ phân tán .............................................................................. 47
2.3.5. Tấn công giả mạo ịa chỉ ............................................................................................ 49 lOMoAR cPSD| 37054152
2.3.6. Tấn công nghe lén ....................................................................................................... 50
2.3.7. Tấn công kiểu người ứng giữa .................................................................................. 51
2.3.8. Tấn công bằng bom thư và thư rác .............................................................................. 52
2.3.9. Tấn công sử dụng các kỹ thuật xã hội ......................................................................... 52
2.3.10. Tấn công pharming.................................................................................................... 55
2.3.11. Tấn công APT ........................................................................................................... 56
2.4. Các dạng phần mềm ộc hại .............................................................................................. 57
2.4.1. Phân loại ...................................................................................................................... 58
2.4.2. Mô tả các dạng phần mềm ộc hại .............................................................................. 59
2.4.3. Phòng chống phần mềm ộc hại ................................................................................. 64
2.5. Câu hỏi ôn tập .................................................................................................................... 66
CHƯƠNG 3. ĐẢM BẢO AN TOÀN THÔNG TIN DỰA TRÊN MÃ HÓA ............................. 67
3.1. Khái quát về mã hóa thông tin và ứng dụng....................................................................... 67
3.1.1. Các khái niệm .............................................................................................................. 67
3.1.2. Các thành phần của một hệ mã hóa ............................................................................. 69
3.1.3. Lịch sử mã hóa ............................................................................................................ 70
3.1.4. Mã hóa dòng và mã hóa khối ...................................................................................... 71
3.1.5. Ứng dụng của mã hóa.................................................................................................. 72
3.2. Các phương pháp mã hóa ................................................................................................... 72
3.2.1. Phương pháp thay thế .................................................................................................. 72
3.2.2. Phương pháp hoán vị ................................................................................................... 73
3.2.3. Phương pháp XOR ...................................................................................................... 73
3.2.4. Phương pháp Vernam .................................................................................................. 74
3.2.5. Phương pháp sách hoặc khóa chạy .............................................................................. 74
3.2.6. Phương pháp hàm băm ................................................................................................ 74
3.3. Các giải thuật mã hóa ......................................................................................................... 75
3.3.1. Các giải thuật mã hóa khóa ối xứng .......................................................................... 75
3.3.2. Các giải thuật mã hóa khóa bất ối xứng .................................................................... 83
3.3.3. Các hàm băm ............................................................................................................... 86
3.4. Chữ ký số, chứng chỉ số và PKI ......................................................................................... 91
3.4.1. Chữ ký số .................................................................................................................... 91
3.4.2. Chứng chỉ số ................................................................................................................ 95
3.4.3. PKI .............................................................................................................................. 97
3.5. Quản lý khóa và phân phối khóa ........................................................................................ 98
3.5.1. Giới thiệu ..................................................................................................................... 98
3.5.2. Phân phối khóa bí mật ............................................................................................... 100
3.5.3. Phân phối khóa công khai ......................................................................................... 103
3.6. Một số giao thức ảm bảo ATTT dựa trên mã hóa .......................................................... 105
3.6.1. SSL/TLS .................................................................................................................... 105
3.6.2. SET ............................................................................................................................ 108
3.6.3. PGP............................................................................................................................ 109 lOMoARcPSD| 37054152
3.7. Câu hỏi ôn tập .................................................................................................................. 112
CHƯƠNG 4. CÁC KỸ THUẬT VÀ CÔNG NGHỆ ĐẢM BẢO AN TOÀN THÔNG TIN ... 114
4.1. Khái quát về các kỹ thuật và công nghệ ảm bảo ATTT ................................................. 114
4.2. Kiểm soát truy cập ............................................................................................................ 115
4.2.1. Khái niệm kiểm soát truy cập .................................................................................... 115
4.2.2. Các biện pháp kiểm soát truy cập.............................................................................. 116
4.2.3. Một số công nghệ kiểm soát truy cập ........................................................................ 121
4.3. Tường lửa ......................................................................................................................... 126
4.3.1. Giới thiệu tường lửa .................................................................................................. 126
4.3.2. Các loại tường lửa ..................................................................................................... 128
4.3.3. Các kỹ thuật kiểm soát truy cập ................................................................................ 129
4.3.4. Các hạn chế của tường lửa ........................................................................................ 130
4.4. Các hệ thống phát hiện và ngăn chặn xâm nhập .............................................................. 130
4.4.1. Giới thiệu ................................................................................................................... 130 4.4.2. Phân loại
.................................................................................................................... 131
4.4.3. Các kỹ thuật phát hiện xâm nhập .............................................................................. 132
4.5. Câu hỏi ôn tập .................................................................................................................. 134
CHƯƠNG 5. QUẢN LÝ, CHÍNH SÁCH VÀ PHÁP LUẬT AN TOÀN THÔNG TIN .......... 136
5.1. Quản lý an toàn thông tin ................................................................................................. 136
5.1.1. Khái quát về quản lý an toàn thông tin...................................................................... 136
5.1.2. Đánh giá rủi ro an toàn thông tin .............................................................................. 137
5.1.3. Phân tích chi tiết rủi ro an toàn thông tin .................................................................. 139
5.1.4. Thực thi quản lý an toàn thông tin ............................................................................ 142
5.2. Các chuẩn quản lý an toàn thông tin ................................................................................ 144
5.2.1. Giới thiệu ................................................................................................................... 144
5.2.2. Chu trình Plan-Do-Check-Act ................................................................................... 145
5.3. Pháp luật và chính sách an toàn thông tin ........................................................................ 146
5.3.1. Giới thiệu về pháp luật và chính sách an toàn thông tin ........................................... 146
5.3.2. Luật quốc tế về an toàn thông tin .............................................................................. 147
5.3.3. Luật Việt Nam về an toàn thông tin .......................................................................... 148
5.4. Vấn ề ạo ức an toàn thông tin ..................................................................................... 149
5.4.1. Sự cần thiết của ạo ức an toàn thông tin ............................................................... 149
5.4.2. Một số bộ quy tắc ứng xử trong CNTT và ATTT ..................................................... 149
5.4.3. Một số vấn ề khác.................................................................................................... 150
5.5. Câu hỏi ôn tập .................................................................................................................. 151
TÀI LIỆU THAM KHẢO ........................................................................................................... 152 DANH MỤC CÁC HÌNH
Hình 1.1. Các thuộc tính cần bảo vệ của tài sản thông tin: Bí mật (C), Toàn vẹn (I) và Sẵn dùng
(A) .................................................................................................. Error! Bookmark not defined. lOMoARcPSD| 37054152
Hình 1.2. Thống kê và dự báo số lượng các thiết bị IoT kết nối Internet từ 2015 ến 2025 ........... 10
Hình 1.3. Số lượng sự cố mất ATTT báo cáo bởi các cơ quan chính phủ Hoa Kỳ giai oạn 2006-
2018 [3] .......................................................................................................................................... 11
Hình 1.4. Các thành phần chính của An toàn thông tin ................................................................. 12
Hình 1.5. Chu trình quản lý an toàn thông tin................................................................................ 12
Hình 1.6. Chính sách an toàn thông tin .......................................................................................... 13
Hình 1.7. Mô hình hệ thống thông tin của cơ quan, tổ chức .......................................................... 14
Hình 1.8. Các thành phần của hệ thống thông tin và an toàn hệ thống thông tin .......................... 15
Hình 1.9. Một văn bản ược óng dấu Confidential (Mật) ............................................................... 15
Hình 1.10. Đảm bảo tính bí mật bằng ường hầm VPN, hoặc mã hóa ............................................ 15
Hình 1.11. Minh họa tính sẵn dùng: (a) không ảm bảo và (b) ảm bảo tính sẵn dùng .................... 16
Hình 1.12. Bảy vùng trong hạ tầng CNTT theo mức kết nối mạng ............................................... 17
Hình 1.13. Đảm bảo ATTT cần cân bằng giữa mức An toàn, Chi phí và tính Hữu dụng ............. 19
Hình 1.14. Mô hình ảm bảo an toàn thông tin với bảy lớp ............................................................ 19
Hình 1.15. Mô hình ảm bảo an toàn thông tin với ba lớp chính .................................................... 20
Hình 2.1. Phân bố lỗ hổng bảo mật trong các thành phần của hệ thống ........................................ 22
Hình 2.2. Phân bố lỗ hổng bảo mật theo mức ộ nghiêm trọng ...................................................... 22
Hình 2.3. Báo cáo kết quả quét của Microsoft Baseline Security Analyzer .................................. 24
Hình 2.4. Kết quả quét website sử dụng Acunetix Web Vulnerability Scanner ............................ 25
Hình 2.5. Giao diện của công cụ Zenmap ...................................................................................... 26
Hình 2.6. Sử dụng Wireshark ể bắt gói tin có chứa thông tin nhạy cảm ....................................... 26
Hình 2.7. Mô un Keylogger phần cứng và cài ặt trên máy tính ể bàn ........................................... 27
Hình 2.8. Các vùng bộ nhớ cấp cho chương trình ......................................................................... 30
Hình 2.9. Một chương trình minh họa cấp phát bộ nhớ trong ngăn xếp ........................................ 30
Hình 2.10. Các thành phần ược lưu trong vùng bộ nhớ trong ngăn xếp ........................................ 31
Hình 2.11. Cấp phát bộ nhớ cho các biến nhớ trong vùng bộ nhớ trong ngăn xếp ........................ 31
Hình 2.12. Một chương trình minh họa gây tràn bộ nhớ ệm trong ngăn xếp ................................ 31
Hình 2.13. Minh họa hiện tượng tràn bộ nhớ ệm trong ngăn xếp .................................................. 32
Hình 2.14. Một shellcode viết bằng hợp ngữ và chuyển thành chuỗi tấn công ............................. 33
Hình 2.15. Chèn và thực hiện shellcode khai thác lỗi tràn bộ ệm.................................................. 33
Hình 2.16. Chèn shellcode với phần ệm bằng lệnh NOP (N) ........................................................ 33
Hình 2.17. Bản ồ lây nhiễm sâu Slammer (mầu xanh) theo trang www.caida.org vào ngày
25/1/2003 lúc 6h00 (giờ UTC) với 74.855 máy chủ bị nhiễm ...................................................... 34
Hình 2.18. Cung cấp dữ liệu quá lớn ể gây lỗi cho ứng dụng........................................................ 36
Hình 2.19. Form ăng nhập (log on) và oạn mã xử lý xác thực người dùng ................................... 38
Hình 2.20. Form tìm kiếm sản phẩm và oạn mã xử lý tìm sản phẩm ............................................ 39
Hình 2.21. (a) Thủ tục bắt tay 3 bước của TCP và (b) Tấn công SYN Flood ............................... 43
Hình 2.22. Mô hình tấn công Smurf .............................................................................................. 44
Hình 2.23. Kiến trúc tấn công DDoS trực tiếp ............................................................................... 46
Hình 2.24. Kiến trúc tấn công DDoS gián tiếp hay phản xạ .......................................................... 46
Hình 2.25. Minh họa tấn công giả mạo ịa chỉ IP ........................................................................... 48
Hình 2.26. Một mô hình tấn công nghe lén ................................................................................... 49
Hình 2.27. Mô hình chung của tấn công kiểu người ứng giữa ...................................................... 49
Hình 2.28. Một kịch bản tấn công kiểu người ứng giữa ................................................................ 50
Hình 2.29. Một phishing email gửi cho khách hàng của mạng ấu giá eBay .................................. 53
Hình 2.30. Một phishing email gửi cho khách hàng của ngân hàng Royal Bank .......................... 53 lOMoARcPSD| 37054152
Hình 2.31. Tấn công pharming "cướp" trình duyệt ........................................................................ 54
Hình 2.32. Tấn công pharming thông qua tấn công vào máy chủ DNS ........................................ 55
Hình 2.33. Các dạng phần mềm ộc hại .......................................................................................... 57
Hình 2.34. Chèn và gọi thực hiện mã vi rút ................................................................................... 59
Hình 2.35. Một email do vi rút gửi ến người dùng ........................................................................ 60
Hình 2.36. Một mô hình lây lan của sâu mạng .............................................................................. 61
Hình 2.37. Mô hình mô hình giao tiếp giữa các thành phần trong botnet ..................................... 62
Hình 2.38. Mô hình tin tặc sử dụng các máy tính Zombie/Bot ể gửi thư rác ................................ 63
Hình 2.39. Màn hình chính của Microsoft Windows Defender ..................................................... 64
Hình 3.1. Các khâu Mã hóa và Giải mã của một hệ mã hóa .......................................................... 67
Hình 3.2. Mã hóa khóa ối xứng sử dụng chung 1 khóa bí mật ...................................................... 67
Hình 3.3. Mã hóa khóa bất ối xứng sử dụng một cặp khóa ........................................................... 68
Hình 3.4. Minh họa ầu vào (Input) và ầu ra (Digest) của hàm băm .............................................. 68
Hình 3.5. Các thành phần của một hệ mã hóa ơn giản ................................................................... 69
Hình 3.6. Mô hình phương pháp mã hóa dòng .............................................................................. 70
Hình 3.7. Mô hình phương pháp mã hóa khối ............................................................................... 70
Hình 3.8. Mã hóa bằng hệ mã hóa Caesar cipher .......................................................................... 71
Hình 3.9. Phương pháp thay thế với 4 bộ chữ mã.......................................................................... 72
Hình 3.10. Phương pháp hoán vị thực hiện ổi chỗ các bit ............................................................. 72
Hình 3.11. Phương pháp hoán vị thực hiện ổi chỗ các ký tự ......................................................... 72
Hình 3.12. Ví dụ mã hóa bằng phương pháp XOR ........................................................................ 72
Hình 3.13. Mã hóa bằng phương pháp Vernam ............................................................................. 73
Hình 3.14. Các khâu mã hóa và giải mã của DES ......................................................................... 75
Hình 3.15. Thủ tục sinh các khóa phụ từ khóa chính của DES ..................................................... 76
Hình 3.16. Các bước xử lý chuyển khối rõ 64 bit thành khối mã 64 bit của DES ......................... 77
Hình 3.17. Các bước xử lý của hàm Feistel (F) ............................................................................. 77
Hình 3.18. Mã hóa và giải mã với giải thuật 3-DES ...................................................................... 79
Hình 3.19. Các bước xử lý mã hóa dữ liệu của AES ..................................................................... 80
Hình 3.20. Thủ tục sinh khóa Rijndael .......................................................................................... 81
Hình 3.21. Hàm SubBytes sử dụng Rijndael S-box ....................................................................... 83
Hình 3.22. Hàm ShiftRows ............................................................................................................ 83
Hình 3.23. Hàm MixColumns ........................................................................................................ 83
Hình 3.24. Hàm AddRoundKey ..................................................................................................... 84
Hình 3.25. Quá trình mã hóa và giải mã trong AES ...................................................................... 84
Hình 3.26. Mô hình nén thông tin của hàm băm............................................................................ 87
Hình 3.27. Phân loại các hàm băm theo khóa sử dụng .................................................................. 88
Hình 3.28. Mô hình tổng quát xử lý dữ liệu của hàm băm ............................................................ 89
Hình 3.29. Mô hình chi tiết xử lý dữ liệu của hàm băm ................................................................ 89
Hình 3.30. Lưu ồ xử lý một thao tác của MD5 .............................................................................. 91
Hình 3.31. Lưu ồ một vòng xử lý của SHA1 ................................................................................. 92
Hình 3.32. Quá trình tạo chữ ký số và kiểm tra chữ ký số............................................................. 93
Hình 3.33. Giao diện kiểm tra thông tin một chứng chỉ số ............................................................ 96
Hình 3.34. Nội dung chi tiết của một chứng chỉ số ....................................................................... 97
Hình 3.35. Lưu ồ cấp và sử dụng chứng chỉ số trong PKI ............................................................. 99
Hình 3.36. Phân phối khóa iểm – iểm .......................................................................................... 102
Hình 3.37. Mô hình hoạt ộng của trung tâm phân phối khóa – KDC .......................................... 103 lOMoARcPSD| 37054152
Hình 3.38. Mô hình hoạt ộng của trung tâm dịch chuyển khóa – KTC ....................................... 104
Hình 3.39. SSL/TLS trong bộ giao thức TCP/IP ......................................................................... 107
Hình 3.40. Các giao thức con của SSL/TLS ................................................................................ 107
Hình 3.41. Mô hình truyền thông giữa Web Server và Browser dựa trên SSL/TLS ................... 108
Hình 3.42. Khởi tạo phiên làm việc trong SSL/TLS.................................................................... 109
Hình 3.43. Quá trình xử lý dữ liệu bởi SSL Record tại bên gửi .................................................. 110
Hình 3.44. Một mô hình tương tác giữa các thực thể tham gia SET ........................................... 111
Hình 3.45. Mô hình PGP chỉ ảm bảo tính xác thực thông iệp ..................................................... 112
Hình 3.46. Mô hình PGP chỉ ảm bảo tính bí mật thông iệp ......................................................... 113
Hình 3.47. Mô hình PGP ảm bảo tính bí mật và xác thực thông iệp ........................................... 114
Hình 4.1. Các kỹ thuật và công nghệ bảo mật trong các lĩnh vực của ATTT .............................. 116
Hình 4.2. Mô hình ma trận kiểm soát truy cập ............................................................................ 119
Hình 4.3. Mô hình danh sách kiểm soát truy cập ......................................................................... 120
Hình 4.4. Mô hình kiểm soát truy cập Bell-LaPadula ................................................................. 122
Hình 4.5. Một mô hình RBAC ơn giản ........................................................................................ 123
Hình 4.6. Một số luật của tường lửa lọc gói tin ........................................................................... 124
Hình 4.7. Giao diện kiểm tra thông tin của một chứng chỉ số khóa công khai ............................ 126
Hình 4.8. Thẻ thông minh tiếp xúc (a) và thẻ không tiếp xúc (b) ................................................ 126
Hình 4.9. Một số thẻ bài (Token) của hãng RSA Security .......................................................... 127
Hình 4.10. Ví iện tử (một dạng thẻ bài) của cổng thanh toán trực tuyến Paypal ......................... 127
Hình 4.11. Hệ thống ApplePay tích hợp vào iện thoại di ộng ..................................................... 127
Hình 4.12. (a) Khóa vân tay, (b) Khe xác thực vân tay trên laptop và (c) Xác thực vân tay trên iện
thoại thông minh Samsung .......................................................................................................... 128
Hình 4.13. Quét võng mạc nhận dạng tròng mắt ......................................................................... 128
Hình 4.14. Một tường lửa phần cứng chuyên dụng của Cisco ..................................................... 129
Hình 4.15. Tường lửa bảo vệ mạng gia ình hoặc văn phòng nhỏ ................................................ 130
Hình 4.16. Tường lửa bảo vệ các máy chủ dịch vụ ..................................................................... 130
Hình 4.17. Hệ thống tường lửa bảo vệ các máy chủ dịch vụ và máy trạm .................................. 130
Hình 4.18. Mô hình tường lửa lọc gói (a), Cổng ứng dụng (b) và Cổng chuyển mạch (c) ........ 131
Hình 4.19. Tường lửa có trạng thái chặn gói tin không thuộc kết nối ang hoạt ộng ................... 132
Hình 4.20. Vị trí các hệ thống IDS và IPS trong sơ ồ mạng ........................................................ 133
Hình 4.21. Các NIDS ược bố trí ể giám sát phát hiện xâm nhập tại cổng vào và cho từng phân oạn
mạng ............................................................................................................................................. 134
Hình 4.22. Sử dụng kết hợp NIDS và HIDS ể giám sát lưu lượng mạng và các host ................. 135
Hình 4.23. Lưu ồ giám sát phát hiện tấn công, xâm nhập dựa trên chữ ký ................................. 136
Hình 4.24. Giá trị entropy của IP nguồn của các gói tin từ lưu lượng hợp pháp (phần giá trị cao,
ều) và entropy của IP nguồn của các gói tin từ lưu lượng tấn công DDoS (phần giá trị thấp) ... 137
Hình 5.1. Quan hệ giữa các khâu trong quản lý an toàn thông tin ............................................... 140
Hình 5.2. Mô hình ánh giá rủi ro an toàn thông tin...................................................................... 140
Hình 5.3. Chu trình Plan-Do-Check-Act của ISO/IEC 27001:2005 ............................................ 148
DANH MỤC CÁC THUẬT NGỮ TIẾNG ANH VÀ VIẾT TẮT Từ
viết tắt Thuật ngữ tiếng Anh/Giải thích
Thuật ngữ tiếng Việt/Giải thích lOMoAR cPSD| 37054152 AES Advanced Encryption Standard Chuẩn mã hóa tiên tiến ATTT Information Security An toàn thông tin CNTT Information Technology Công nghệ thông tin CRC Cyclic redundancy checks Kiểm tra dư thừa vòng DAC Discretionary Access Control
Kiểm soát truy cập tuỳ chọn DES Data Encryption Standard Chuẩn mã hóa dữ liệu DNS Domain Name System Hệ thống tên miền FTP File Transfer Protocol Giao thức truyền file HTTT Information System Hệ thống thông tin IDEA
International Data Encryption Algorithm
Giải thuật mã hóa dữ liệu quốc tế IPSec Internet Protocol Security An toàn giao thức Internet LAN Local Area Network Mạng cục bộ MAC Mandatory Access Control
Kiểm soát truy cập bắt buộc
Mã xác thực thông iệp (sử dụng hàm băm MAC Message Authentication Code có khóa) MD Message Digest
Chuỗi ại diện thông iệp
Mã phát hiện sử ổi (sử dụng hàm băm MDC Modification Detection Code không khóa) NSA National Security Agency
Cơ quan mật vụ liên bang Mỹ PGP Pretty Good Privacy Chuẩn bảo mật PGP PKI Public Key Infrastructure Hạ tầng khóa công khai RBAC Role-Based Access Control
Kiểm soát truy cập dựa trên vai trò RSA RSA Public Key Croptosystem
Hệ mật khóa công khai RSA SET
Secure Electronic Transactions
Các giao dịch iện tử an toàn SHA Secure Hash Algorithm Giải thuật băm an toàn SMTP Simple Mail Transfer Protocol
Giao thức truyền thư iện tử ơn giản SSH Secure Shell Vỏ an toàn
Secure Socket Layer / Transport Layer SSL/TLS Security
Bộ giao thức bảo mật SSL / TLS SSO Single Sign On Đăng nhập một lần WAN Wide Area Network Mạng diện rộng WLAN Wireless Local Area Network Mạng cục bộ không dây lOMoAR cPSD| 37054152 MỞ ĐẦU
An toàn thông tin (Information security) là một lĩnh vực tương ối mới và ược quan tâm
trong vài thập kỷ gần ây và phát triển mạnh trong khoảng hơn một thập kỷ qua nhờ sự phát
triển mạnh mẽ của mạng Internet và các dịch vụ mạng trên nền Internet. Tuy nhiên, do
Internet ngày càng mở rộng và gần như không còn khái niệm biên giới quốc gia trong
không gian mạng, các sự cố mất an toàn thông tin liên tục xảy ra và ặc biệt các dạng tấn
công, xâm nhập các hệ thống máy tính và mạng xuất hiện ngày càng phổ biến và mức ộ
phá hoại ngày càng nghiêm trọng. Vấn ề ảm bảo an toàn cho thông tin, các hệ thống và
mạng trở nên cấp thiết và là mối quan tâm của mỗi quốc gia, cơ quan, tổ chức và mỗi người dùng.
An toàn thông tin ược ịnh nghĩa là việc bảo vệ chống truy nhập, sử dụng, tiết lộ, sửa ổi,
hoặc phá hủy thông tin một cách trái phép. Dưới một góc nhìn khác, An toàn thông tin là
việc bảo vệ các thuộc tính bí mật, tính toàn vẹn và tính sẵn dùng của các tài sản thông tin
trong quá trình chúng ược lưu trữ, xử lý, hoặc truyền tải. An toàn thông tin có thể ược chia
thành ba thành phần chính: An toàn máy tính và dữ liệu, An ninh mạng và Quản lý an toàn thông tin.
Môn học An toàn và bảo mật hệ thống thông tin là môn học cơ sở chuyên ngành trong
chương trình ào tạo ại học ngành Công nghệ thông tin của Học viện Công nghệ Bưu chính
Viễn thông. Mục tiêu của môn học là cung cấp cho sinh viên các khái niệm và nguyên tắc
cơ bản về ảm bảo an toàn thông tin, an toàn máy tính và an toàn hệ thống thông tin; các
khái niệm về nguy cơ gây mất an toàn, các iểm yếu và các lỗ hổng bảo mật tồn tại trong hệ
thống; các dạng tấn công, xâm nhập thường gặp vào hệ thống máy tính và mạng; các dạng
phần mềm ộc hại; các giải pháp, kỹ thuật và công cụ phòng chống, ảm bảo an toàn thông
tin, hệ thống và mạng; vấn ề quản lý an toàn thông tin, chính sách, pháp luật và ạo ức an toàn thông tin.
Với phạm vi là môn học cơ sở về an toàn và bảo mật thông tin và hệ thống, tác giả cố
gắng trình bày những vấn ề cơ sở nhất phục vụ mục tiêu môn học. Nội dung của tài liệu
bài giảng ược biên soạn thành 5 chương với tóm tắt nội dung như sau:
Chương 1- Tổng quan về an toàn và bảo mật hệ thống thông tin giới thiệu các khái
niệm về an toàn thông tin, an toàn hệ thống thông tin và các yêu cầu ảm bảo an toàn thông
tin, an toàn hệ thống thông tin. Chương cũng ề cập các nguy cơ, rủi ro trong các vùng của
hạ tầng công nghệ thông tin theo mức kết nối mạng. Phần cuối của chương giới thiệu mô
hình tổng quát ảm bảo an toàn hệ thống thông tin.
Chương 2- Các dạng tấn công và phần mềm ộc hại giới thiệu khái quát về mối e dọa,
iểm yếu, lỗ hổng tồn tại trong hệ thống và tấn công. Phần tiếp theo phân tích chi tiết các
dạng tấn công iển hình vào các hệ thống máy tính và mạng, bao gồm tấn công vào mật
khẩu, tấn công nghe lén, người ứng giữa, tấn công DoS, DDoS, tấn công sử dụng các kỹ
thuật xã hội,… Nửa cuối của chương ề cập ến các dạng phần mềm ộc hại, gồm cơ chế lây
nhiễm, tác hại và phòng chống.
Chương 3 – Đảm bảo an toàn thông tin dựa trên mã hóa giới thiệu các khái niệm cơ
bản về mật mã, hệ mã hóa, các phương pháp mã hóa. Phần tiếp theo của chương trình bày lOMoAR cPSD| 37054152
một số giải thuật cơ bản của mã hóa khóa ối xứng (DES, 3-DES và AES), mã hóa khóa bất
ối xứng (RSA), các hàm băm (MD5 và SHA1), chữ ký số, chứng chỉ số và PKI. Phần cuối
của chương ề cập vấn ề quản lý và phân phối khóa, và một số giao thức ảm bảo an toàn
thông tin dựa trên mã hóa.
Chương 4- Các kỹ thuật và công nghệ ảm bảo an toàn thông tin giới thiệu khái quát về
các kỹ thuật và công nghệ ảm bảo an toàn thông tin, vấn ề kiểm soát truy cập, các cơ chế
(mô hình) kiểm soát truy cập và một số công nghệ kiểm soát truy cập ược sử dụng trên
thực tế. Phần tiếp theo của chương giới thiệu về tường lửa – một trong các kỹ thuật ược sử
dụng rất phổ biến trong ảm bảo an toàn cho hệ thống máy tính và mạng. Phần cuối của
chương giới thiệu về các hệ thống phát hiện và ngăn chặn xâm nhập.
Chương 5 – Quản lý, chính sách và pháp luật an toàn thông tin giới thiệu một số khái
niệm cơ bản trong quản lý an toàn thông tin, vấn ề ánh giá rủi ro an toàn thông tin và thực
thi quản lý an toàn thông tin. Nội dung tiếp theo ược ề cập là các chuẩn quản lý an toàn
thông tin, trong ó giới thiệu một số chuẩn của bộ chuẩn ISO/IEC 27000. Phần cuối của
chương giới thiệu khái quát về các vấn ề chính sách, pháp luật và ạo ức an toàn thông tin.
Tài liệu ược biên soạn dựa trên kinh nghiệm giảng dạy môn học An toàn và bảo mật hệ
thống thông tin trong nhiều năm của tác giả tại Học viện Công nghệ Bưu chính Viễn thông,
kết hợp tiếp thu các óng góp của ồng nghiệp và phản hồi từ sinh viên. Tài liệu có thể ược
sử dụng làm tài liệu học tập cho sinh viên hệ ại học ngành Công nghệ thông tin. Trong quá
trình biên soạn và hiệu chỉnh, mặc dù tác giả ã rất cố gắng song không thể tránh khỏi có
những thiếu sót. Tác giả rất mong muốn nhận ược ý kiến phản hồi và các góp ý cho các
thiếu sót, cũng như ý kiến về việc cập nhật, hoàn thiện hơn nữa nội dung của tài liệu.
Hà Nội, Tháng 12 năm 2021 Tác giả TS. Hoàng Xuân Dậu
CHƯƠNG 1. TỔNG QUAN VỀ AN TOÀN BẢO MẬT HỆ THỐNG THÔNG TIN
Chương 1 giới thiệu các khái niệm về an toàn thông tin, an toàn hệ thống thông tin và
các yêu cầu ảm bảo an toàn thông tin và an toàn hệ thống thông tin. Chương này cũng ề
cập các rủi ro và nguy cơ trong các vùng của hạ tầng công nghệ thông tin theo mức kết
nối mạng. Phần cuối của chương giới thiệu mô hình tổng quát ảm an toàn hệ thống thông tin.

1.1. Khái quát về an toàn thông tin
1.1.1. An toàn thông tin là gì?
An toàn thông tin (Information security) là việc bảo vệ chống truy nhập, sử dụng, tiết
lộ, sửa ổi, hoặc phá hủy thông tin một cách trái phép, Viện SAN, Hoa Kỳ
(https://www.sans.org/information-security/). lOMoARcPSD| 37054152
Theo cuốn Principles of Information Security, An toàn thông tin là việc bảo vệ các
thuộc tính bí mật, tính toàn vẹn và tính sẵn dùng của các tài sản thông tin trong quá trình
chúng ược lưu trữ, xử lý, hoặc truyền tải. Hình 1.1 minh họa ba thuộc tính cần bảo vệ nói
trên của các tài sản thông tin, bao gồm dữ liệu và dịch vụ trong tam giác CIA
(Confidentiality - Integrity - Availability).
Hình 1.1. Các thuộc tính cần bảo vệ của tài sản thông tin: Bí mật (C),
Toàn vẹn (I) và Sẵn dùng (A)
An toàn thông tin gồm hai lĩnh vực chính là An toàn công nghệ thông tin (Information
technology security, hay IT security) và Đảm bảo thông tin (Information assurance). An
toàn công nghệ thông tin, hay còn gọi là An toàn máy tính (Computer security) là việc ảm
bảo an toàn cho các hệ thống công nghệ thông tin, bao gồm các hệ thống máy tính và mạng,
chống lại các cuộc tấn công phá hoại. Đảm bảo thông tin là việc ảm bảo thông tin không
bị mất khi xảy ra các sự cố, như thiên tai, hỏng hóc, trộm cắp, phá hoại,… Đảm bảo thông
tin thường ược thực hiện sử dụng các kỹ thuật sao lưu ngoại vi (offsite backup), trong ó dữ
liệu thông tin từ hệ thống gốc ược sao lưu ra các thiết bị lưu trữ vật lý ặt ở một vị trí khác.
Một số khái niệm khác trong an toàn thông tin:
Truy cập (Access) là việc một chủ thể, người dùng hoặc một ối tượng có khả năng sử
dụng, xử lý, sửa ổi, hoặc gây ảnh hưởng ến một chủ thể, người dùng hoặc một ối tượng
khác. Trong khi người dùng hợp pháp có quyền truy cập hợp pháp ến một hệ thống thì tin
tặc truy cập bất hợp pháp ến hệ thống.
Tài sản (Asset) là tài nguyên của các tổ chức, cá nhân ược bảo vệ. Tài sản có thể là tài
sản lô gíc, như một trang web, thông tin, hoặc dữ liệu. Tài sản có thể là tài sản vật lý, như
hệ thống máy tính, thiết bị mạng, hoặc các tài sản khác.
Tấn công (Attack) là hành ộng có chủ ý hoặc không có chủ ý có khả năng gây hại, hoặc
làm thỏa hiệp các thông tin, hệ thống và các tài sản ược bảo vệ. Tấn công có thể chủ ộng
hoặc thụ ộng, trực tiếp hoặc gián tiếp.
1.1.2. Sự cần thiết của an toàn thông tin
Trong những năm gần ây, cùng với sự phát triển mạnh mẽ của các thiết bị di ộng, và ặc
biệt là các thiết bị IoT, số lượng người dùng mạng Internet và số lượng thiết bị kết nối vào
mạng Internet tăng trưởng nhanh chóng. Theo thống kê và dự báo của trang Statista [3] cho
trên Hình 1.2, số lượng các thiết bị có kết nối Internet là khoảng 15 tỷ trong năm 2015,
tăng lên hơn 26 tỷ vào năm 2019 và dự báo sẽ rất tăng mạnh lên trên 75 tỷ vào năm 2025. lOMoARcPSD| 37054152
Các thiết bị IoT kết nối thông minh là nền tảng cho phát triển nhiều ứng dụng quan trọng
trong các lĩnh vực của ời sống xã hội, như thành phố thông minh, cộng ồng thông minh,
ngôi nhà thông minh, các ứng dụng giám sát và chăm sóc sức khỏe,…
Hình 1.2. Thống kê và dự báo số lượng các thiết bị IoT kết nối Internet từ 2015 ến 2025
Cùng với những lợi ích to lớn mà các thiết bị kết nối Internet mang lại, các sự cố mất
an toàn thông tin ối với các hệ thống máy tính, iện thoại di ộng thông minh, các thiết bị IoT
và người dùng cũng tăng vọt. Cũng theo số liệu thống kê của trang Statista [4] cho trên
Hình 1.3, số lượng các sự cố mất an toàn thông tin ược thông báo bởi các cơ quan chính
phủ Hoa Kỳ giai oạn 2006-2015 tăng rất mạnh, từ 5.503 vụ vào năm 2006 lên ến 77.183 vụ
vào năm 2015. Tuy nhiên, trong các năm 2016-2018, số lượng các sự cố mất an toàn thông
tin ã giảm áng kể và chỉ còn 31.107 vụ vào năm 2018. lOMoARcPSD| 37054152
Hình 1.3. Số lượng sự cố mất ATTT báo cáo bởi các cơ quan chính phủ Hoa Kỳ giai oạn 2006-2018 [3]
Ở Việt Nam, trong báo cáo “Tổng kết an ninh mạng năm 2019 và dự báo xu hướng
2020” [5], Tập oàn công nghệ Bkav cho biết 20.892 tỷ ồng (tương ương khoảng 902 triệu
USD) là tổng thiệt hại ước tính do vi rút máy tính và các dạng mã ộc khác gây ra ối với
người dùng Việt Nam trong năm 2019, vượt xa mốc 14.900 tỷ ồng thiệt hại do vi rút máy
tính và các dạng mã ộc khác trong năm 2018. Dự báo trong năm 2020 và các năm tiếp theo,
số lượng sự cố và thiệt hại do mất an toàn thông tin gây ra còn có thể lớn hơn nữa, do số
lượng thiết bị kết nối tăng trưởng nhanh chóng và nguy cơ từ sự bùng phát mạnh của các
phần mềm ộc hại (mã ộc tấn công APT sẽ tinh vi hơn, mã ộc không file (Fileless) sẽ là xu
hướng chính, các loại mã ộc botnet, các loại mã ộc mã hóa tống tiền (ransomware), mã ộc
ào tiền ảo…) và các kỹ thuật tấn công, phá hoại ngày càng tinh vi.
Từ các số liệu nêu trên có thể khẳng ịnh, việc ảm bảo an toàn cho thông tin, máy tính,
hệ thống mạng và các thiết bị kết nối khác là rất cần thiết bởi 2 lý do: (1) số lượng các thiết
bị có kết nối Internet tăng nhanh chóng, ặc biệt là các thiết bị thông minh, IoT và (2) sự
bùng phát của các dạng phần mềm ộc hại, các dạng tấn công mạng trên diện rộng và các
nguy cơ gây mất an toàn thông tin. Việc ảm bảo an toàn thông tin không chỉ cần thiết ối
với các cá nhân, tổ chức, cơ quan, doanh nghiệp mà còn là vấn ề cấp thiết ối với an ninh
quốc gia. Hơn nữa, việc xây dựng các giải pháp an toàn thông tin chỉ thực sự hiệu quả khi
ược thực hiện bài bản, ồng bộ, ảm bảo cân bằng giữa tính an toàn, tính hữu dụng của hệ
thống và chi phí ầu tư cho các biện pháp ảm bảo an toàn.
1.1.3. Các thành phần của an toàn thông tin
An toàn thông tin có thể ược chia thành ba thành phần chính: an toàn máy tính và dữ
liệu (Computer & data security), an ninh mạng (Network security) và quản lý an toàn thông
tin
(Management of information security). Ba thành phần của an toàn thông tin có quan hệ
mật thiết và giao thoa với nhau, trong ó phần chung của cả ba thành phần trên là chính sách
an toàn thông tin
(Policy) như minh họa trên Hình 1.4. lOMoARcPSD| 37054152
Hình 1.4. Các thành phần chính của An toàn thông tin
1.1.3.2. An toàn máy tính và dữ liệu
An toàn máy tính và dữ liệu là việc ảm bảo an toàn cho hệ thống phần cứng, phần mềm
và dữ liệu trên máy tính; ảm bảo cho máy tính có thể vận hành an toàn, áp ứng các yêu cầu
của người sử dụng. An toàn máy tính và dữ liệu bao gồm các nội dung:
- Đảm bảo an toàn hệ iều hành, ứng dụng, dịch vụ;
- Vấn ề kiểm soát truy cập;
- Vấn ề mã hóa và bảo mật dữ liệu;
- Vấn ề phòng chống phần mềm ộc hại;
- Việc sao lưu tạo dự phòng dữ liệu, ảm bảo dữ liệu lưu trong máy tính không bị mất mát khi xảy ra sự cố.
1.1.3.3. An ninh mạng
An ninh mạng là việc ảm bảo an toàn cho hệ thống mạng và các thông tin truyền tải
trên mạng, chống lại các tấn công, xâm nhập trái phép. Các kỹ thuật và công cụ thường
ược sử dụng trong an ninh mạng bao gồm:
- Các tường lửa, proxy cho lọc gói tin và kiểm soát truy cập;
- Mạng riêng ảo và các kỹ thuật bảo mật thông tin truyền như SSL/TLS, PGP;
- Các kỹ thuật và hệ thống phát hiện, ngăn chặn tấn công, xâm nhập; - Vấn ề giám sát mạng.
1.1.3.4. Quản lý an toàn thông tin
Quản lý an toàn thông tin là việc quản lý và giám sát việc thực thi các biện pháp ảm
bảo an toàn thông tin, giúp nâng cao hiệu quả của chúng. Một trong các nội dung cốt lõi
của quản lý an toàn thông tin là việc quản lý các rủi ro (Risk management), trong ó việc
nhận dạng và ánh giá rủi ro (Risk assessment) óng vai trò then chốt. Các nội dung khác của
quản lý an toàn thông tin, bao gồm các chuẩn an toàn thông tin, chính sách an toàn thông
tin và vấn ề ào tạo, nâng cao ý thức an toàn thông tin của người dùng.
Hình 1.5. Chu trình quản lý an toàn thông tin
Việc thực thi quản lý an toàn thông tin cần ược thực hiện theo chu trình lặp lại, từ khâu
Lập kế hoạch (Plan), Thực thi kế hoạch (Implement), Giám sát kết quả thực hiện (Monitor) lOMoARcPSD| 37054152
và Hiệu chỉnh kiểm soát (Control) như minh họa trên Hình 1.5, do các iều kiện bên trong
và bên ngoài thay ổi theo thời gian.
1.1.3.5. Chính sách an toàn thông tin
Hình 1.6. Chính sách an toàn thông tin
Chính sách an toàn thông tin (Information security policy) là các nội quy, quy ịnh của
tổ chức, nhằm ảm bảo các biện pháp ảm bảo an toàn thông tin ược thực thi và tuân thủ.
Chính sách an toàn thông tin, như minh họa trên Hình 1.6 gồm 3 thành phần:
- Chính sách an toàn ở mức vật lý (Physical security policy);
- Chính sách an toàn ở mức tổ chức (Organizational security policy);
- Chính sách an toàn ở mức logic (Logical security policy).
Một ví dụ về chính sách an toàn thông tin: ể tăng cường an toàn cho hệ thống công nghệ
thông tin, một tổ chức có thể áp dụng chính sách xác thực ‘mạnh’ sử dụng các ặc iểm sinh
trắc (Biometrics), như xác thực sử dụng vân tay thay cho mật khẩu truyền thống cho hệ
thống cửa ra vào trung tâm dữ liệu, hoặc ăng nhập vào hệ thống máy tính.
1.2. Khái quát về an toàn hệ thống thông tin
1.2.1. Các thành phần của hệ thống thông tin
Hệ thống thông tin (Information system), theo cuốn sách Fundamentals of Information
Systems Security [2] là một hệ thống tích hợp các thành phần nhằm phục vụ việc thu thập,
lưu trữ, xử lý thông tin và chuyển giao thông tin, tri thức và các sản phẩm số. Trong nền
kinh tế số, hệ thống thông tin óng vai trò rất quan trọng trong hoạt ộng của các tổ chức, cơ
quan và doanh nghiệp (gọi chung là tổ chức). Có thể nói, hầu hết các tổ chức ều sử dụng
các hệ thống thông tin với các quy mô khác nhau ể quản lý các hoạt ộng của mình. Hình
1.7 minh họa mô hình một hệ thống thông tin iển hình. Trong mô hình này, mỗi hệ thống
thông tin gồm ba thành phần chính: (i) Đầu vào là thành phần thu thập thông tin, (ii) Xử lý
là thành phần xử lý thông tin và (iii) Đầu ra là thành phần kết xuất thông tin. Hệ thống
thông tin ược sử dụng ể tương tác với khách hàng, với nhà cung cấp, với cơ quan chính
quyền, với cổ ông và với ối thủ cạnh tranh. Có thể nêu ra một số hệ thống thông tin iển
hình, như các hệ lập kế hoạch nguồn lực doanh nghiệp, các máy tìm kiếm và các hệ thống thông tin ịa lý. lOMoARcPSD| 37054152
Hình 1.7. Mô hình hệ thống thông tin của cơ quan, tổ chức
Trong lớp các hệ thống thông tin, hệ thống thông tin dựa trên máy tính (Computerbased
information system), hay sử dụng công nghệ máy tính ể thực thi các nhiệm vụ là lớp hệ
thống thông tin ược sử dụng rộng rãi nhất. Hệ thống thông tin dựa trên máy tính thường
gồm các thành phần chính: phần cứng (Hardware) ể thu thập, lưu trữ, xử lý và biểu diễn
dữ liệu; phần mềm (Software) chạy trên phần cứng ể xử lý dữ liệu; cơ sở dữ liệu
(Databases) ể lưu trữ dữ liệu; mạng (Networks) là hệ thống truyền dẫn thông tin/dữ liệu;
và các thủ tục (Procedures) là tập hợp các lệnh kết hợp các bộ phận nêu trên ể xử lý dữ
liệu, ưa ra kết quả mong muốn.
1.2.2. An toàn hệ thống thông tin là gì?
An toàn hệ thống thông tin (Information systems security) là việc ảm bảo các thuộc tính
an ninh, an toàn của hệ thống thông tin, bao gồm tính bí mật, tính toàn vẹn và tính sẵn
dùng
. Hình 1.8 minh họa các thành phần của Hệ thống thông tin dựa trên máy tính và An
toàn hệ thống thông tin. lOMoARcPSD| 37054152
Hình 1.8. Các thành phần của hệ thống thông tin và an toàn hệ thống thông tin
1.3. Các yêu cầu ảm bảo an toàn hệ thống thông tin
Như ã trình bày trong Mục 1.1.1, việc ảm bảo an toàn thông tin, hoặc hệ thống thông
tin là việc ảm bảo ba thuộc tính quan trọng của thông tin, hoặc hệ thống, bao gồm tính
mật
, tính Toàn vẹn và tính Sẵn dùng. Đây cũng là ba yêu cầu ảm bảo an toàn thông tin và hệ thống thông tin.
1.3.1. Tính bí mật
Tính bí mật ảm bảo rằng chỉ người dùng có thẩm quyền mới ược truy nhập thông tin,
hệ thống. Các thông tin bí mật có thể bao gồm: (i) dữ liệu riêng của cá nhân, (ii) các thông
tin thuộc quyền sở hữu trí tuệ của các doanh nghiệp hay các cơ quan, tổ chức và (iii) các
thông tin có liên quan ến an ninh của các quốc gia và các chính phủ. Hình 1.9 minh họa
một văn bản ược óng dấu Confidential (Mật), theo ó chỉ những người có thẩm quyền (có
thể không gồm người tạo, hoặc soạn thảo văn bản ó) mới ược ọc và phổ biến văn bản.
Thông tin bí mật lưu trữ hoặc trong quá trình truyền tải cần ược bảo vệ bằng các biện
pháp phù hợp, tránh bị lộ lọt hoặc bị ánh cắp. Các biện pháp có thể sử dụng ể ảm bảo tính
bí mật của thông tin như bảo vệ vật lý, hoặc sử dụng mật mã. Hình 1.10 minh họa việc ảm
bảo tính bí mật bằng cách sử dụng ường hầm VPN, hoặc mã hóa ể truyền tải thông tin.
Hình 1.9. Một văn bản ược óng dấu Confidential (Mật)
Hình 1.10. Đảm bảo tính bí mật bằng ường hầm VPN, hoặc mã hóa
1.3.2. Toàn vẹn lOMoARcPSD| 37054152
Tính toàn vẹn ảm bảo rằng thông tin và dữ liệu chỉ có thể ược sửa ổi bởi những người
dùng có thẩm quyền. Tính toàn vẹn liên quan ến tính hợp lệ (validity) và chính xác
(accuracy) của dữ liệu. Trong nhiều tổ chức, thông tin và dữ liệu có giá trị rất lớn, như bản
quyền phần mềm, bản quyền âm nhạc, bản quyền phát minh, sáng chế. Mọi thay ổi không
có thẩm quyền có thể ảnh hưởng rất nhiều ến giá trị của thông tin. Thông tin hoặc dữ liệu
là toàn vẹn nếu nó thỏa mãn ba iều kiện: (i) không bị thay ổi, (ii) hợp lệ và (iii) chính xác.
1.3.3. Sẵn dùng
Tính sẵn dùng, sẵn sàng, hoặc khả dụng ảm bảo rằng thông tin, hoặc hệ thống có thể
truy nhập bởi người dùng hợp pháp bất cứ khi nào họ có yêu cầu. Tính sẵn dùng có thể ược o bằng các yếu tố:
- Thời gian cung cấp dịch vụ (Uptime);
- Thời gian ngừng cung cấp dịch vụ (Downtime);
- Tỷ lệ phục vụ: A = (Uptime) / (Uptime + Downtime);
- Thời gian trung bình giữa các sự cố; - Thời gian trung bình ngừng ể sửa chữa; - Thời
gian khôi phục sau sự cố.
Hình 1.11 minh họa tính sẵn sàng của một hệ thống trong 2 trường hợp: (a) hệ thống
không ảm bảo tính sẵn sàng khi có một số thành phần gặp sự cố (biểu diễn bằng biểu tượng
có dấu X) do ó không có khả năng phục vụ tất cả các yêu cầu của người dùng (người dùng
truy cập ược dịch vụ biểu diễn bằng mũi tên thẳng “
” người dùng không truy cập ược
dịch vụ biểu diễn bằng mũi tên i ra “
”), và (b) hệ thống ảm bảo tính sẵn sàng khi tất cả
các thành phần của nó hoạt ộng bình thường. Các biện pháp ảm bảo hoặc tăng cường tính
sẵn sàng cho hệ thống có thể kể ến như: xây dựng hệ thống cung cấp dịch vụ dựa trên chuỗi
cân bằng tải, hoặc nền tảng iện toán ám mây.
Hình 1.11. Minh họa tính sẵn dùng: (a) không ảm bảo và (b) ảm bảo tính sẵn dùng
1.4. Bảy vùng trong hạ tầng CNTT và các mối e dọa
1.4.1. Bảy vùng trong cơ sở hạ tầng CNTT
Hạ tầng công nghệ thông tin (IT Infrastructure) của các cơ quan, tổ chức, doanh nghiệp
có thể có quy mô lớn hay nhỏ khác nhau, nhưng thường gồm bảy vùng theo mức kết nối
mạng như minh họa trên Hình 1.12. lOMoARcPSD| 37054152
Hình 1.12. Bảy vùng trong hạ tầng CNTT theo mức kết nối mạng
Theo ó, các vùng cụ thể gồm:
- Vùng người dùng (User domain) gồm người dùng hệ thống, bao gồm nhân viên và
khách viếng thăm ược cấp tài khoản truy cập vào hệ thống;
- Vùng máy trạm (Workstation domain) gồm các máy tính và các thiết bị tính toán
ược kết nối mạng LAN/WLAN;
- Vùng mạng LAN (LAN domain) gồm hệ thống kết nối mạng LAN/WLAN và các máy chủ nội bộ;
- Vùng LAN-to-WAN (LAN-to-WAN domain) gồm hệ thống kết nối mạng LAN/WLAN ến mạng WAN;
- Vùng mạng WAN (WAN domain) là vùng mạng diện rộng, hay mạng Internet toàn cầu;
- Vùng truy cập từ xa (Remote Access domain) gồm các công cụ hỗ trợ người dùng
kết nối từ xa ến hệ thống CNTT của cơ quan, tổ chức thông qua mạng Internet; và
- Vùng hệ thống/ứng dụng (Systems/Application domain) gồm hệ thống máy chủ cung
cấp các dịch vụ mạng, như máy chủ web, DNS, email và dịch vụ iện toán ám mây.
Do mỗi vùng nêu trên có ặc iểm khác nhau nên chúng có các mối e dọa và nguy cơ mất
an toàn thông tin khác nhau. Mục tiếp theo trình bày các mối e dọa và nguy cơ ối với từng vùng.
1.4.2. Các mối e dọa và nguy cơ
Vùng người dùng
Có thể nói vùng người dùng là vùng có nhiều mối e dọa và nguy cơ nhất do người dùng
có bản chất khó oán ịnh và khó kiểm soát hành vi. Các vấn ề thường gặp như thiếu ý thức,
coi nhẹ vấn ề an ninh an toàn, vi phạm các chính sách an ninh an toàn; ưa CD/DVD/USB
với các file cá nhân vào hệ thống; tải ảnh, âm nhạc, video trái phép; phá hoại dữ liệu, ứng lOMoAR cPSD| 37054152
dụng và hệ thống; các nhân viên bất mãn có thể tấn công hệ thống từ bên trong, hoặc nhân
viên có thể tống tiền hoặc chiếm oạt thông tin nhạy cảm, thông tin quan trọng.
Vùng máy trạm
Vùng máy trạm cũng có nhiều mối e dọa và nguy cơ do vùng máy trạm tiếp xúc trực
tiếp với vùng người dùng. Các nguy cơ thường gặp gồm: truy nhập trái phép vào máy trạm,
hệ thống, ứng dụng và dữ liệu; các lỗ hổng an ninh trong hệ iều hành, trong các phần mềm
ứng dụng máy trạm; các hiểm họa từ vi rút, mã ộc và các phần mềm ộc hại. Ngoài ra, vùng
máy trạm cũng chịu các nguy cơ do hành vi bị cấm từ người dùng, như ưa CD/DVD/USB
với các file cá nhân vào hệ thống; tải ảnh, âm nhạc, video trái phép.
Vùng mạng LAN
Các nguy cơ có thể có ối với vùng mạng LAN bao gồm: truy nhập trái phép vào mạng
LAN vật lý, truy nhập trái phép vào hệ thống, ứng dụng và dữ liệu; các lỗ hổng an ninh
trong hệ iều hành và các phần mềm ứng dụng máy chủ; nguy cơ từ người dùng giả mạo
trong mạng WLAN; tính bí mật dữ liệu trong mạng WLAN có thể bị e dọa do sóng mang
thông tin của WLAN truyền trong không gian có thể bị nghe trộm. Ngoài ra, các hướng
dẫn và cấu hình chuẩn cho máy chủ LAN nếu không ược tuân thủ nghiêm ngặt sẽ dẫn ến
những lỗ hổng an ninh mà tin tặc có thể khai thác.
Vùng mạng LAN-to-WAN
Vùng mạng LAN-to-WAN là vùng chuyển tiếp từ mạng nội bộ ra mạng diện rộng, nên
nguy cơ lớn nhất là tin tặc từ mạng WAN có thể thăm dò và rà quét trái phép các cổng dịch
vụ, nguy cơ truy nhập trái phép. Ngoài ra, một nguy cơ khác cần phải xem xét là lỗ hổng
an ninh trong các bộ ịnh tuyến, tường lửa và các thiết bị mạng khác.
Vùng mạng WAN
Vùng mạng WAN, hay mạng Internet là vùng mạng mở, trong ó hầu hết dữ liệu ược
truyền dưới dạng rõ, nên các nguy cơ lớn nhất là dễ bị nghe trộm và dễ bị tấn công phá
hoại, tấn công từ chối dịch vụ (DoS) và từ chối dịch vụ phân tán (DDoS). Kẻ tấn công có
thể tự do, dễ dàng gửi email có ính kèm vi rút, sâu và các phần mềm ộc hại.
Vùng truy nhập từ xa
Trong vùng truy nhập từ xa, các nguy cơ iển hình bao gồm: tấn công kiểu vét cạn vào
tên người dùng và mật khẩu, tấn công vào hệ thống ăng nhập và kiểm soát truy cập; truy
nhập trái phép vào hệ thống CNTT, ứng dụng và dữ liệu; các thông tin bí mật có thể bị ánh
cắp từ xa; và vấn ề rò rỉ dữ liệu do vi phạm các tiêu chuẩn phân loại dữ liệu.
Vùng hệ thống và ứng dụng
Trong vùng hệ thống và ứng dụng, các nguy cơ có thể bao gồm: truy nhập trái phép ến
trung tâm dữ liệu, phòng máy hoặc tủ cáp; các khó khăn trong quản lý các máy chủ với yêu
cầu tính sẵn dùng cao; các lỗ hổng trong quản lý các phần mềm ứng dụng của hệ iều hành
máy chủ; các vấn ề an ninh trong các môi trường ảo của iện toán ám mây; và vấn ề hỏng
hóc hoặc mất dữ liệu.
1.5. Mô hình tổng quát ảm bảo an toàn hệ thống thông tin
1.5.1. Giới thiệu lOMoARcPSD| 37054152
Mô hình tổng quát ảm bảo an toàn hệ thống thông tin là Phòng vệ theo chiều sâu
(Defence in Depth). Theo mô hình này, ta cần tạo ra nhiều lớp bảo vệ, kết hợp tính năng,
tác dụng của mỗi lớp ể ảm bảo an toàn tối a cho thông tin, hệ thống và mạng. Một lớp, một
công cụ phòng vệ riêng rẽ dù có hiện ại, nhưng vẫn không thể ảm bảo an toàn. Do vậy,
việc tạo ra nhiều lớp bảo vệ có khả năng bổ sung cho nhau là cách làm hiệu quả.
Một iểm khác cần lưu ý khi thiết kế và triển khai hệ thống ảm bảo an toàn thông tin là
cần cân bằng giữa Hữu dụng, Chi phíAn toàn, như minh họa trên Hình 1.13Error! R
eference source not found.
. Hệ thống ảm bảo an toàn thông tin chỉ thực sự phù hợp và
hiệu quả khi hệ thống ược bảo vệ ạt mức an toàn phù hợp mà vẫn có khả năng cung cấp
các tính năng hữu dụng cho người dùng, với chi phí cho ảm bảo an toàn phù hợp với tài sản ược bảo vệ.
Hình 1.13. Đảm bảo ATTT cần cân bằng giữa mức An toàn, Chi phí và tính Hữu dụng
1.5.2. Một số mô hình ảm bảo an toàn hệ thống thông tin
Hình 1.14 minh họa mô hình ảm bảo an toàn thông tin với bảy lớp bảo vệ, bao gồm lớp
chính sách, thủ tục, ý thức (Policies, procedures, awareness); lớp vật lý (Physical); lớp
ngoại vi (Perimeter); lớp mạng nội bộ (Internal network); lớp host (Host); lớp ứng dụng
(Application) và lớp dữ liệu (Data). Trong mô hình này, ể truy nhập ược ến ối tượng ích là
dữ liệu, tin tặc cần phải vượt qua cả 7 lớp bảo vệ. Hình
1.14. Mô hình ảm bảo an toàn thông tin với bảy lớp
Cụ thể hơn, Hình 1.15 minh họa mô hình phòng vệ gồm 3 lớp: lớp an ninh tổ chức, lớp
an ninh mạng và lớp an ninh hệ thống. Mỗi lớp trên lại gồm một số lớp con như sau:
- Lớp an ninh cơ quan/tổ chức (Plant Security), gồm 2 lớp con:
+ Lớp bảo vệ vật lý (Physical Security) có nhiệm vụ kiểm soát các truy nhập vật lý
ến các trang thiết bị hệ thống và mạng. lOMoARcPSD| 37054152
+ Lớp chính sách & thủ tục (Policies & procedures) bao gồm các quy trình quản lý
ATTT, các hướng dẫn vận hành, quản lý hoạt ộng liên tục và phục hồi sau sự cố.
- Lớp an ninh mạng (Network Security), gồm 2 lớp con:
+ Lớp bảo vệ vùng hạn chế truy nhập (Security cells and DMZ) cung cấp các biện
pháp bảo vệ cho từng phân oạn mạng.
+ Lớp các tường lửa, mạng riêng ảo (Firewalls and VPN) ược triển khai như iểm truy
nhập duy nhất ến một phân oạn mạng.
- Lớp an ninh hệ thống (System Integrity), gồm 4 lớp con:
+ Lớp tăng cường an ninh hệ thống (System hardening) ảm bảo việc cài ặt và cấu
hình các thành phần trong hệ thống ảm bảo các yêu cầu an toàn.
+ Lớp quản trị tài khoản người dùng (User Account Management) thực hiện kiểm
soát truy cập dựa trên quyền truy nhập và các ặc quyền của người dùng.
+ Lớp quản lý các bản vá (Patch Management) có nhiệm vụ ịnh kỳ cài ặt các bản vá
an ninh và các bản cập nhật cho hệ thống.
+ Lớp phát hiện và ngăn chặn phần mềm ộc hại (Malware detection and prevention)
có nhiệm vụ bảo vệ hệ thống, chống vi rút và các phần mềm ộc hại khác.
Hình 1.15. Mô hình ảm bảo an toàn thông tin với ba lớp chính
1.6. Câu hỏi ôn tập
1) An toàn thông tin (Information Security) là gì?
2) Tại sao cần phải ảm bảo an toàn cho thông tin?
3) An toàn thông tin gồm những thành phần cơ bản nào?
4) Đảm bảo thông tin thường ược thực hiện bằng cách nào?
5) An toàn hệ thống thông tin là gì?
6) Nêu các yêu cầu ảm bảo an toàn thông tin và hệ thống thông tin.
7) Nêu các mối e dọa và nguy cơ trong vùng người dùng và vùng máy trạm trong hạ tầng
CNTT. Tại sao nói vùng người dùng là vùng có nhiều nguy cơ và rủi ro nhất? lOMoAR cPSD| 37054152
8) Nêu các mối e dọa và nguy cơ trong vùng mạng LAN, LAN-to-WAN và vùng mạng
WAN trong hạ tầng CNTT. Tại sao vùng mạng WAN có nguy cơ bị tấn công phá hoại cao?
9) Mô hình tổng quát ảm bảo an toàn hệ thống thông tin là gì?
10) Mô tả một mô hình tổng quát ảm bảo an toàn hệ thống thông tin.
CHƯƠNG 2. CÁC DẠNG TẤN CÔNG VÀ PHẦN MỀM ĐỘC HẠI
Chương 2 giới thiệu khái quát về mối e dọa, iểm yếu, lỗ hổng tồn tại trong hệ thống và
khái niệm tấn công. Phần tiếp theo phân tích chi tiết các dạng tấn công iển hình vào các
hệ thống máy tính và mạng, bao gồm tấn công vào mật khẩu, tấn công nghe lén, người ứng
giữa, tấn công DoS, DDoS, tấn công sử dụng các kỹ thuật xã hội,… Nửa cuối của chương
ề cập ến các dạng phần mềm ộc hại, gồm cơ chế lây nhiễm, tác hại và giải pháp phòng chống.

2.1. Khái quát về mối e dọa, iểm yếu, lỗ hổng và tấn công
2.1.1. Khái niệm mối e dọa, iểm yếu, lỗ hổng và tấn công
Mối e dọa (Threat) là bất kỳ một hành ộng nào có thể gây hư hại ến các tài nguyên hệ
thống. Các tài nguyên hệ thống bao gồm phần cứng, phần mềm, cơ sở dữ liệu, các file, dữ
liệu, hoặc hạ tầng mạng vật lý,…
Các iểm yếu hệ thống (System weaknesses) là các lỗi hay các khiếm khuyết tồn tại
trong hệ thống. Nguyên nhân của sự tồn tại các iểm yếu có thể do lỗi thiết kế, lỗi cài ặt, lỗi
lập trình, hoặc lỗi quản trị, cấu hình hoạt ộng. Các iểm yếu có thể tồn tại trong cả các mô
un phần cứng và các mô un phần mềm. Một số iểm yếu ược phát hiện và ã ược khắc phục.
Tuy nhiên, có một số iểm yếu ược phát hiện nhưng chưa ược khắc phục, hoặc các iểm yếu
chưa ược phát hiện, hoặc chỉ tồn tại trong một iều kiện ặc biệt nào ó.
Lỗ hổng bảo mật (Security vulnerability) là một iểm yếu tồn tại trong một hệ thống cho
phép tin tặc khai thác gây tổn hại ến các thuộc tính an ninh của hệ thống ó, bao gồm tính
toàn vẹn, tính bí mật, tính sẵn dùng. Nói chung, lỗ hổng bảo mật tồn tại trong tất cả các
thành phần của hệ thống, bao gồm phần cứng, hệ iều hành và các phần mềm ứng dụng.
Theo số liệu thống kê từ Cơ sở dữ liệu lỗ hổng quốc gia Hoa Kỳ [6], trong năm 2014, phân
bố lỗ hổng bảo mật ược phát hiện trên các thành phần của hệ thống lần lượt là phần cứng
– 4%, hệ iều hành – 13% và phần mềm ứng dụng – 83%, như minh họa trên Hình 2.1. Như
vậy, có thể thấy các lỗ hổng bảo mật chủ yếu xuất hiện trong hệ thống phần mềm và phần
lớn tồn tại trong các phần mềm ứng dụng.
Phụ thuộc vào khả năng bị khai thác, các lỗ hổng bảo mật có mức ộ nghiêm trọng
(severity) khác nhau. Theo Microsoft, có 4 mức ộ nghiêm trọng của các lỗ hổng bảo mật:
nguy hiểm (Critical), quan trọng (Important), trung bình (Moderate) và thấp (Low). Tuy
nhiên, một số tổ chức khác chỉ phân loại các lỗ hổng bảo mật theo 3 mức ộ nghiêm trọng:
cao (High), trung bình (Medium) và thấp (Low). Cũng theo số liệu thống kê năm 2014 từ
[6] cho trên Hình 2.2, các lỗ hổng có mức ộ nghiêm trọng cao chiếm 24%, các lỗ hổng có
mức ộ nghiêm trọng trung bình chiếm 68% và các lỗ hổng có mức ộ nghiêm trọng thấp chỉ lOMoARcPSD| 37054152
chiếm 8%. Như vậy, ta có thể thấy, a số các lỗ hổng bảo mật có mức ộ nghiêm trọng từ
trung bình trở lên và cần ược xem xét khắc phục càng sớm càng tốt.
Hình 2.1. Phân bố lỗ hổng bảo mật trong các thành phần của hệ thống
Hình 2.2. Phân bố lỗ hổng bảo mật theo mức ộ nghiêm trọng
Tấn công (Attack) là một, hoặc một chuỗi các hành ộng vi phạm các chính sách an ninh
an toàn của cơ quan, tổ chức, gây tổn hại ến các thuộc tính bí mật, toàn vẹn và sẵn dùng
của thông tin, hệ thống và mạng. Một cuộc tấn công vào hệ thống máy tính hoặc các tài
nguyên mạng thường ược thực hiện bằng cách khai thác các lỗ hổng tồn tại trong hệ thống.
Như vậy, tấn công chỉ có thể trở thành hiện thực nếu có sự tồn tại ồng thời của mối e dọa
và lỗ hổng, hay có thể nói:
Tấn công = Mối e dọa + Lỗ hổng
Như vậy, mối e dọa và lỗ hổng bảo mật có quan hệ hữu cơ với nhau: Các mối e dọa
thường khai thác một hoặc một số lỗ hổng bảo mật ã biết ể thực hiện các cuộc tấn công phá
hoại. Điều này có nghĩa là nếu tồn tại một lỗ hổng trong hệ thống, sẽ có khả năng một mối
e dọa trở thành hiện thực. Nói chung, không thể triệt tiêu ược hết các mối e dọa do ó là yếu
tố khách quan, nhưng có thể giảm thiểu các lỗ hổng, qua ó giảm thiểu khả năng bị khai
thác ể thực hiện tấn công.
2.1.2. Các dạng mối e dọa thường gặp
Trên thực tế, không phải tất cả các mối e dọa ều là ác tính hay ộc hại (malicious). Một
số mối e dọa là chủ ộng, cố ý, nhưng một số khác chỉ là ngẫu nhiên, hoặc vô tình.
Các mối e dọa thường gặp ối với thông tin, hệ thống và mạng: lOMoAR cPSD| 37054152 - Phần mềm ộc hại
- Kẻ tấn công ở bên trong
- Kẻ tấn công ở bên ngoài
- Hư hỏng phần cứng hoặc phần mềm
- Mất trộm các thiết bị - Tai họa thiên nhiên
- Gián iệp công nghiệp - Khủng bố phá hoại.
2.1.3. Các loại tấn công
Có thể chia tấn công theo mục ích thực hiện thành 4 loại chính như sau:
- Giả mạo (Fabrications): Tấn công giả mạo thông tin thường ược sử dụng ể ánh lừa
người dùng thông thường;
- Chặn bắt (Interceptions): Tấn công chặn bắt thường liên quan ến việc nghe lén trên
ường truyền và chuyển hướng thông tin ể sử dụng trái phép;
- Gây ngắt quãng (Interruptions): Tấn công gây ngắt quãng làm ngắt, hoặc chậm kênh
truyền thông, hoặc làm quá tải hệ thống, ngăn cản việc truy nhập dịch vụ của người dùng hợp pháp;
- Sửa ổi (Modifications): Tấn công sửa ổi liên quan ến việc sửa ổi thông tin trên ường
truyền hoặc sửa ổi dữ liệu file.
Theo hình thức thực hiện, có thể chia các loại tấn công thành 2 kiểu chính như sau:
- Tấn công chủ ộng (Active attacks): Tấn công chủ ộng là một ột nhập, xâm nhập
(intrusion) về mặt vật lý vào hệ thống, hoặc mạng. Các tấn công chủ ộng thực hiện
sửa ổi dữ liệu trên ường truyền, sửa ổi dữ liệu trong file, hoặc giành quyền truy nhập
trái phép vào máy tính hoặc hệ thống mạng.
- Tấn công thụ ộng (Passive attacks): Tấn công thụ ộng thường không gây ra thay ổi
trên hệ thống. Các tấn công thụ ộng iển hình là nghe trộm và giám sát lưu lượng trên ường truyền.
Trên thực tế, tấn công thụ ộng thường là giai oạn ầu của tấn công chủ ộng, trong ó tin
tặc sử dụng các kỹ thuật tấn công thụ ộng ể thu thập các thông tin về hệ thống, mạng, và
trên cơ sở thông tin có ược sẽ lựa chọn kỹ thuật tấn công chủ ộng có xác suất thành công cao nhất.
2.2. Các công cụ hỗ trợ tấn công
Các công cụ hỗ trợ tấn công (Attacking assistant tools) là các công cụ phần cứng, phần
mềm, hoặc các kỹ thuật hỗ trợ kẻ tấn công, tin tặc (attacker) thu thập các thông tin về các
hệ thống máy tính, hoặc mạng. Trên cơ sở các thông tin thu ược, tin tặc sẽ lựa chọn công
cụ, kỹ thuật tấn công có xác suất thành công cao nhất. Các công cụ hỗ trợ tấn công bao
gồm 4 nhóm chính: công cụ quét iểm yếu, lỗ hổng bảo mật, công cụ quét cổng dịch vụ,
công cụ nghe lén và công cụ ghi phím gõ.
2.2.1. Công cụ rà quét lỗ hổng, iểm yếu hệ thống lOMoARcPSD| 37054152
Các công cụ rà quét các iểm yếu hệ thống và lỗ hổng bảo mật có thể ược người quản trị
sử dụng ể chủ ộng rà quét các hệ thống, nhằm tìm ra các iểm yếu và lỗ hổng bảo mật tồn
tại trong hệ thống. Trên cơ sở kết quả rà quét, phân tích và ề xuất áp dụng các biện pháp
khắc phục phù hợp. Mặt khác, các công cụ này cũng có thể ược kẻ tấn công sử dụng ể rà
quét hệ thống và dựa trên kết quả rà quét iểm yếu, lỗ hổng ể quyết ịnh dạng tấn công có
khả năng thành công cao nhất. Các công cụ bao gồm, các công cụ rà quét lỗ hổng bảo mật
hệ thống, và các công cụ rà quét lỗ hổng ứng dụng web, hay các trang web.
2.2.1.1. Công cụ rà quét lỗ hổng bảo mật hệ thống
Các công cụ rà quét lỗ hổng bảo mật hệ thống cho phép rà quét hệ thống, tìm các iểm
yếu và các lỗ hổng bảo mật. Đồng thời, chúng cũng cung cấp phần phân tích chi tiết từng
iểm yếu, lỗ hổng, kèm theo là hướng dẫn khắc phục, sửa chữa. Các công cụ ược sử dụng
rộng rãi là Microsoft Baseline Security Analyzer (Hình 2.3) cho rà quét các hệ thống chạy
hệ iều hành Microsoft Windows và Nessus Vulnerability Scanner cho rà quét các hệ thống
chạy nhiều loại hệ iều hành khác nhau.
Hình 2.3. Báo cáo kết quả quét của Microsoft Baseline Security Analyzer
2.2.1.2. Công cụ rà quét lỗ hổng ứng dụng web
Các công cụ rà quét lỗ hổng ứng dụng web cho phép rà quét, phân tích các trang web,
tìm các lỗi và lỗ hổng bảo mật. Chúng cũng hỗ trợ phân tích tình trạng các lỗi tìm ược, như
các lỗi XSS, lỗi chèn mã SQL, lỗi CSRF, lỗi bảo mật phiên,… Các công cụ ược sử dụng
phổ biến bao gồm Acunetix Web Vulnerability Scanner (Hình 2.4), IBM AppScan, Beyond Security AVDS và SQLmap. lOMoARcPSD| 37054152
Hình 2.4. Kết quả quét website sử dụng Acunetix Web Vulnerability Scanner
2.2.2. Công cụ quét cổng dịch vụ
Các công cụ quét cổng dịch vụ (Port scanner) cho phép quét các cổng, tìm các cổng ang
mở, ang hoạt ộng, ồng thời tìm các thông tin về ứng dụng, dịch vụ và hệ iều hành ang hoạt
ộng trên hệ thống. Dựa trên thông tin quét cổng dịch vụ, có thể xác ịnh ược dịch vụ, ứng
dụng nào ang chạy trên hệ thống:
- Cổng 80/443 mở có nghĩa là dịch vụ web ang hoạt ộng;
- Cổng 25 mở có nghĩa là dịch vụ gửi/nhận email SMTP ang hoạt ộng; - Cổng 1433
mở có nghĩa là máy chủ Microsoft SQL Server ang hoạt ộng; - Cổng 53 mở có nghĩa
là dịch vụ tên miền DNS ang hoạt ộng,...
Các công cụ quét cổng dịch vụ ược sử dụng phổ biến bao gồm: Nmap, Zenmap,
Portsweep, Advanced Port Scanner, Angry IP Scanner, SuperScan và NetScanTools. Hình
2.5 là giao diện của công cụ quét cổng dịch vụ Nmap/ Zenmap – một trong các công cụ
quét cổng dịch vụ ược sử dụng rộng rãi. Nmap cung cấp tập lệnh rà quét rất mạnh. Tuy
nhiên, Nmap tương ối khó dùng do chỉ hỗ trợ giao diện dòng lệnh.
2.2.3. Công cụ nghe lén
Công cụ nghe lén (Sniffer) cho phép bắt các gói tin khi chúng ược truyền trên mạng.
Công cụ nghe lén có thể là mô un phần cứng, phần mềm hoặc kết hợp. Các thông tin nhạy
cảm như thông tin tài khoản, thẻ tín dụng, hoặc mật khẩu nếu không ược mã hóa thì có thể
bị kẻ tấn công nghe lén khi ược truyền từ máy trạm ến máy chủ và bị lạm dụng. Một số
công cụ phần mềm cho phép bắt gói tin truyền trên mạng: - Tcpdump
- Wireshark (minh họa trên Hình 2.6)
- Pcap / Wincap / Libcap (Packet capture) - IP Tools (http://www.softpedia.com). lOMoARcPSD| 37054152
Hình 2.5. Giao diện của công cụ Zenmap
Hình 2.6. Sử dụng Wireshark ể bắt gói tin có chứa thông tin nhạy cảm
2.2.4. Công cụ ghi phím gõ
Công cụ ghi phím gõ (Keylogger) là một dạng công cụ giám sát bằng phần cứng hoặc
phần mềm có khả năng ghi lại mọi phím người dùng gõ và lưu vào một file. File ã ghi sau
ó có thể ược gửi cho kẻ tấn công theo ịa chỉ chỉ ịnh trước hoặc sao chép trực tiếp. Ngoài
kẻ tấn công, người quản lý cũng có thể cài ặt Keylogger vào máy tính của nhân viên ể theo
dõi hoạt ộng của các nhân viên. Việc cài ặt Keylogger có thể ược thực hiện tương ối ơn lOMoARcPSD| 37054152
giản: Hình 2.7 minh họa một Keylogger dưới dạng một khớp nối phần cứng kết nối cổng
bàn phím với ầu nối bàn phím, hỗ trợ cả giao diện cổng bàn phím PS/2 và USB. Với
Keylogger phần mềm, kẻ tấn công có thể tích hợp Keylogger vào một phần mềm thông
thường và lừa người dùng cài ặt vào máy tính của mình.
Hình 2.7. Mô un Keylogger phần cứng và cài ặt trên máy tính ể bàn
2.3. Các dạng tấn công thường gặp
Các dạng tấn công thường gặp là các dạng tấn công iển hình, xảy ra thường xuyên nhằm
vào các hệ thống máy tính, hệ thống mạng và người dùng. Các dạng tấn công thường gặp bao gồm:
- Tấn công vào mật khẩu - Tấn công bằng mã ộc
- Tấn công từ chối dịch vụ
- Tấn công từ chối dịch vụ phân tán
- Tấn công giả mạo ịa chỉ - Tấn công nghe lén
- Tấn công kiểu người ứng giữa
- Tấn công bằng bom thư và thư rác
- Tấn công sử dụng các kỹ thuật xã hội - Tấn công pharming - Tấn công APT.
Phần tiếp theo của mục này trình bày chi tiết về các dạng tấn công thường gặp nêu trên
và các biện pháp phòng chống tương ứng.
2.3.1. Tấn công vào mật khẩu
2.3.1.1. Giới thiệu
Tấn công vào mật khẩu (Password attack) là dạng tấn công nhằm ánh cắp mật khẩu và
thông tin tài khoản của người dùng ể lạm dụng. Tên người dùng và mật khẩu không ược
mã hóa có thể bị ánh cắp trên ường truyền từ máy khách ến máy chủ, hoặc các thông tin
này có thể bị ánh cắp thông qua các dạng tấn công XSS, hoặc lừa ảo, bẫy người dùng cung
cấp thông tin. Đây là một trong các dạng tấn công phổ biến nhất do hầu hết các ứng dụng
sử cơ chế xác thực người dùng dựa trên tên người dùng, hoặc email và mật khẩu. Nếu kẻ
tấn công có tên người dùng và mật khẩu thì hắn có thể ăng nhập vào tài khoản và thực hiện
các thao tác như người dùng bình thường. 2.3.1.2. Mô tả
Có thể chia tấn công vào mật khẩu thành 2 dạng: lOMoAR cPSD| 37054152
- Tấn công dựa trên từ iển (Dictionary attacks): Dạng tấn công này khai thác vấn ề
người dùng có xu hướng chọn mật khẩu là các từ ơn giản cho dễ nhớ. Kẻ tấn công
thử các từ có tần suất sử dụng cao làm mật khẩu trong từ iển, nhờ vậy tăng khả năng thành công.
- Tấn công vét cạn (Brute force attacks): Dạng vét cạn sử dụng tổ hợp các ký tự và
thử tự ộng. Phương pháp này thường ược sử dụng với các mật khẩu ã ược mã hóa.
Kẻ tấn công sinh tổ hợp ký tự, sau ó mã hóa với cùng thuật toán mà hệ thống sử
dụng, tiếp theo so sánh chuỗi mã hóa từ tổ hợp ký tự với chuỗi mật khẩu mã hóa thu
thập ược. Nếu hai bản mã trùng nhau thì tổ hợp ký tự là mật khẩu.
2.3.1.3. Phòng chống
Để ảm bảo an toàn cho mật khẩu, cần thực hiện kết hợp các biện pháp sau:
- Chọn mật khẩu ủ mạnh: Mật khẩu mạnh cho người dùng thông thường cần có ộ dài
lớn hơn hoặc bằng 8 ký tự, gồm tổ hợp của 4 loại ký tự: chữ cái hoa, chữ cái thường,
chữ số và ký tự ặc biệt (?#$...). Mật khẩu cho người quản trị hệ thống cần có ộ dài
lớn hơn hoặc bằng 10 ký tự cũng với các loại ký tự như mật khẩu cho người dùng thông thường.
- Định kỳ thay ổi mật khẩu. Thời hạn ổi mật khẩu tùy thuộc vào chính sách an ninh
của cơ quan, tổ chức, có thể là 3 tháng, hoặc 6 tháng.
- Mật khẩu không nên lưu ở dạng rõ (plaintext). Nên lưu mật khẩu ở dạng ã mã hóa
sử dụng hàm băm một chiều.
- Hạn chế trao ổi tên người dùng và mật khẩu trên kênh truyền không ược mã hóa.
- Nên hạn chế số lần ăng nhập lỗi, chẳng hạn nếu người dùng cố gắng ăng nhập với
thông tin sai 3 lần liên tục sẽ bị khóa tài khoản trong một khoảng thời gian.
2.3.2. Tấn công bằng mã ộc
2.3.2.1. Giới thiệu
Tấn công bằng mã ộc (Malicious code attacks) là dạng tấn công sử dụng các mã ộc
(Malicious code) làm công cụ ể tấn công hệ thống nạn nhân. Tấn công bằng mã ộc có thể chia thành 2 loại:
- Khai thác các lỗ hổng về lập trình, lỗ hổng cấu hình hệ thống ể chèn và thực hiện mã
ộc trên hệ thống nạn nhân. Loại tấn công này lại gồm 2 dạng:
+ Tấn công khai thác lỗi tràn bộ ệm (Buffer Overflow)
+ Tấn công khai thác lỗi không kiểm tra ầu vào, gồm tấn công chèn mã SQL (SQL
Injection) và tấn công sử dụng mã script, kiểu XSS, CSRF.
- Lừa người sử dụng tải, cài ặt và thực hiện các phần mềm ộc hại, như:
+ Các phần mềm quảng cáo (Adware), gián iệp (Spyware) + Vi rút + Zombie/Bot + Trojan lOMoARcPSD| 37054152
Dạng tấn công lừa người sử dụng tải, cài ặt và thực hiện các phần mềm ộc hại sẽ ược ề
cập ở Mục 2.4. Mục này chủ yếu ề cập về tấn công khai thác lỗi tràn bộ ệm, tấn công khai
thác lỗi không kiểm tra ầu vào, trong ó tập trung phân tích dạng tấn công chèn mã SQL.
2.3.2.2. Tấn công khai thác lỗi tràn bộ ệm
a. Giới thiệu và nguyên nhân
Lỗi tràn bộ ệm (Buffer overflow) là một trong các lỗi thường gặp trong các hệ iều hành
và ặc biệt nhiều ở các phần mềm ứng dụng [6]. Lỗi tràn bộ ệm xảy ra khi một ứng dụng cố
gắng ghi dữ liệu vượt khỏi phạm vi của bộ nhớ ệm, là giới hạn cuối hoặc cả giới hạn ầu
của bộ ệm. Lỗi tràn bộ ệm có thể khiến ứng dụng ngừng hoạt ộng, gây mất dữ liệu hoặc
thậm chí giúp kẻ tấn công chèn, thực hiện mã ộc ể kiểm soát hệ thống. Lỗi tràn bộ ệm
chiếm một tỷ lệ lớn trong số các lỗi gây lỗ hổng bảo mật [6]. Tuy nhiên, trên thực tế không
phải tất cả các lỗi tràn bộ ệm ều có thể bị khai thác bởi kẻ tấn công.
Lỗi tràn bộ ệm xuất hiện trong khâu lập trình phần mềm (coding) trong quy trình phát
triển phần mềm. Nguyên nhân của lỗi tràn bộ ệm là người lập trình không kiểm tra, hoặc
kiểm tra không ầy ủ các dữ liệu ầu vào nạp vào bộ nhớ ệm. Khi dữ liệu có kích thước quá
lớn hoặc có ịnh dạng sai ược ghi vào bộ nhớ ệm, nó sẽ gây tràn và có thể ghi è lên các tham
số thực hiện chương trình, có thể khiến chương trình bị lỗi và ngừng hoạt ộng. Một nguyên
nhân bổ sung khác là việc sử dụng các ngôn ngữ với các thư viện không an toàn, như hợp
ngữ, C và C++. b. Cơ chế gây tràn và khai thác * Cơ chế gây tràn
Trên hầu hết các nền tảng, khi một ứng dụng ược nạp vào bộ nhớ, hệ iều hành cấp phát
các vùng nhớ ể tải mã và lưu dữ liệu của chương trình. Hình 2.8 minh họa các vùng bộ nhớ
cấp cho chương trình, bao gồm vùng lưu mã thực hiện (Executable code), vùng lưu dữ liệu
toàn cục (Data), vùng bộ nhớ cấp phát ộng (Heap) và vùng bộ nhớ ngăn xếp (Stack). Vùng
bộ nhớ ngăn xếp là vùng nhớ lưu các tham số gọi hàm, thủ tục, phương thức (gọi chung là
hàm hay chương trình con) và dữ liệu cục bộ của chúng. Vùng nhớ cấp phát ộng là vùng
nhớ chung lưu dữ liệu cho ứng dụng, ược cấp phát hay giải phóng trong quá trình hoạt ộng của ứng dụng.
Chúng ta sử dụng vùng bộ nhớ ngăn xếp ể giải thích cơ chế gây tràn và khai thác lỗi
tràn bộ ệm. Bộ nhớ ngăn xếp ược cấp phát cho chương trình dùng ể lưu các biến cục bộ
của hàm, trong ó có các biến nhớ ược gọi là bộ ệm, các tham số hình thức của hàm, các
tham số quản lý ngăn xếp, và ịa chỉ trở về (Return address). Địa chỉ trở về là ịa chỉ của lệnh
nằm kế tiếp lời gọi hàm ở chương trình gọi ược tự ộng lưu vào ngăn xếp khi hàm ược gọi.
Khi việc thực hiện hàm kết thúc, hệ thống nạp ịa chỉ trở về ã lưu trong ngăn xếp vào con
trỏ lệnh (còn gọi là bộ ếm chương trình) kích hoạt việc quay trở lại thực hiện lệnh kế tiếp
lời gọi hàm ở chương trình gọi. lOMoARcPSD| 37054152
Hình 2.8. Các vùng bộ nhớ cấp cho chương trình // ịnh nghĩa một hàm
void function(int a, int b, int c){ char buffer1[8]; char buffer2[12]; } // chương trình chính int main(){ function(1,2,3); // gọi hàm }
Hình 2.9. Một chương trình minh họa cấp phát bộ nhớ trong ngăn xếp
Hình 2.9 là một oạn chương trình gồm một hàm con (function()) và một hàm chính
(main()) minh họa cho việc gọi làm và cấp phát bộ nhớ trong vùng nhớ ngăn xếp. Hàm
function() có 3 tham số hình thức kiểu nguyên và kê khai 2 biến cục bộ buffer1buffer2
kiểu xâu ký tự. Hàm chính main() chỉ chứa lời gọi ến hàm function() với 3 tham số thực.
Hình 2.10 biểu diễn việc cấp pháp bộ nhớ cho các thành phần trong ngăn xếp: các tham số
gọi hàm ược lưu vào Function Parameters, ịa chỉ trở về ược lưu vào ô Return Address, giá
trị con trỏ khung ngăn xếp ược lưu vào ô Save Frame Pointer và các biến cục bộ trong hàm
ược lưu vào Local Variables. Hình 2.11 minh họa chi tiết việc cấp phát bộ nhớ cho các
biến trong ngăn xếp: ngoài ô ịa chỉ trở về (ret) và con trỏ khung (sfp) ược cấp cố ịnh ở
giữa, các tham số gọi hàm ược cấp các ô nhớ bên phải (phía áy ngăn xếp – bottom of stack)
và các biến cục bộ ược cấp các ô nhớ bên trái (phía ỉnh ngăn xếp – top of stack). lOMoARcPSD| 37054152
Hình 2.10. Các thành phần ược lưu trong vùng bộ nhớ trong ngăn xếp
Hình 2.11. Cấp phát bộ nhớ cho các biến nhớ trong vùng bộ nhớ trong ngăn xếp
// ịnh nghĩa một hàm void function(char *str){ char buffer[16]; strcpy(buffer, str); } // chương trình chính int main(){ char large_string[256]; int i;
for (i = 0; i < 255; i++){ large_string[i] = ‘A’; } function(large_string); }
Hình 2.12. Một chương trình minh họa gây tràn bộ nhớ ệm trong ngăn xếp
Hình 2.12 là một oạn chương trình minh họa gây tràn bộ nhớ ệm trong ngăn xếp. Đoạn
chương trình này gồm hàm con function() và hàm chính main(), trong ó hàm function()
nhận một con trỏ xâu ký tự str làm ầu vào. Hàm này khai báo 1 biến buffer kiểu xâu ký tự
với ộ dài 16 byte. Hàm này sử dụng hàm thư viện strcpy() ể sao chép xâu ký tự từ con trỏ
str sang biến cục bộ buffer. Hàm chính main() kê khai một xâu ký tự large_string với ộ dài
256 byte và sử dụng một vòng lặp ể iền ầy xâu large_string bằng ký tự ‘A’. Sau ó main()
gọi hàm function() với tham số ầu vào là large_string. lOMoARcPSD| 37054152
Có thể thấy oạn chương trình biểu diễn trên Hình 2.12 khi ược thực hiện sẽ gây tràn
trong biến nhớ buffer của hàm function() do tham số truyền vào large_string có kích thước
256 byte lớn hơn nhiều so với buffer có kích thước 16 byte và hàm strcpy() không hề thực
hiện việc kiểm tra kích thước dữ liệu vào khi sao chép vào biến buffer. Như minh họa trên
Hình 2.13, chỉ 16 byte ầu tiên của large_string ược lưu vào buffer, phần còn lại ược ghi è
lên các ô nhớ khác trong ngăn xếp, bao gồm sfp, ret và cả con trỏ xâu ầu vào str. Ô nhớ
chưa ịa chỉ trở về ret bị ghi è và giá trị ịa chỉ trở về mới là ‘AAAA’ (0x41414141). Khi kết
thúc thực hiện hàm con function(), chương trình tiếp tục thực hiện lệnh tại ịa chỉ
0x41414141. Đây không phải là ịa chỉ của lệnh chương trình phải thực hiện theo lôgic ã ịnh ra từ trước.
Hình 2.13. Minh họa hiện tượng tràn bộ nhớ ệm trong ngăn xếp
Như vậy, lỗi tràn bộ ệm xảy ra khi dữ liệu nạp vào biến nhớ (gọi chung là bộ ệm) có
kích thước lớn hơn so với khả năng lưu trữ của bộ ệm và chương trình thiếu các bước kiểm
tra kích thước và ịnh dạng dữ liệu nạp vào. Phần dữ liệu tràn sẽ ược ghi è lên các ô nhớ
liền kề trong ngăn xếp, như các biến cục bộ khác, con trỏ khung, ịa chỉ trở về, các biến tham số ầu vào,....
* Khai thác lỗi tràn bộ ệm
Khi một ứng dụng chứa lỗ hổng tràn bộ ệm, tin tặc có thể khai thác bằng cách gửi mã
ộc dưới dạng dữ liệu ến ứng dụng nhằm ghi è, thay thế ịa chỉ trở về với mục ích tái ịnh
hướng chương trình ến thực hiện oạn mã ộc mà tin tặc gửi ến. Đoạn mã ộc tin tặc xây dựng
là mã máy có thể thực hiện ược và thường ược gọi là shellcode. Như vậy, ể có thể khai thác
lỗi tràn bộ ệm, tin tặc thường phải thực hiện việc gỡ rối (debug) chương trình (hoặc có
thông tin từ nguồn khác) và nắm chắc cơ chế gây lỗi và phương pháp quản lý, cấp phát
vùng nhớ ngăn xếp của ứng dụng.
shellcode có thể ược viết bằng hợp ngữ, C, hoặc các ngôn ngữ lập trình khác, sau ó
ược chuyển thành mã máy, rồi chuyển ịnh dạng thành một chuỗi dữ liệu và cuối cùng ược
gửi ến ứng dụng. Hình 2.14 minh họa một oạn mã shellcode viết bằng hợp ngữ và ược
chuyển ổi thành một chuỗi dưới dạng hexa làm dữ liệu ầu vào gây tràn bộ ệm và gọi thực
hiện shell sh trong các hệ thống Linux hoặc Unix thông qua lệnh /bin/sh.
Hình 2.15. minh họa việc chèn shellcode, ghi è lên ô nhớ chứa ịa chỉ trở về ret, tái ịnh
hướng việc trở về từ chương trình con, chuyển ến thực hiện mã shellcode ược chèn vào.
Trên thực tế, ể tăng khả năng oạn mã shellcode ược thực hiện, người ta thường chèn một
số lệnh NOP (N) vào phần ầu shellcode ể phòng khả năng ịa chỉ ret mới không trỏ chính
xác ến ịa chỉ bắt ầu shellcode, như minh họa trên Hình 2.16. Lệnh NOP (No OPeration) là
lệnh không thực hiện tác vụ nào cả, chỉ tiêu tốn một số chu kỳ của bộ vi xử lý. lOMoARcPSD| 37054152
Hình 2.14. Một shellcode viết bằng hợp ngữ và chuyển thành chuỗi tấn công
Hình 2.15. Chèn và thực hiện shellcode khai thác lỗi tràn bộ ệm
Hình 2.16. Chèn shellcode với phần ệm bằng lệnh NOP (N)
* Ví dụ về khai thác lỗi tràn bộ ệm
Sâu SQL Slammer (một số tài liệu gọi là sâu Sapphire) ược phát hiện ngày 25/1/2003
lúc 5h30 (UTC) là sâu có tốc ộ lây lan nhanh nhất lúc bấy giờ: nó lây nhiễm ra khoảng
75.000 máy chủ chỉ trong khoảng 30 phút, như minh họa trên Hình 2.17. Sâu Slammer khai
thác lỗi tràn bộ ệm trong thành phần Microsoft SQL Server Resolution Service của hệ quản
trị cơ sở dữ liệu Microsoft SQL Server 2000. lOMoARcPSD| 37054152
Hình 2.17. Bản ồ lây nhiễm sâu Slammer (mầu xanh) theo trang www.caida.org vào ngày
25/1/2003 lúc 6h00 (giờ UTC) với 74.855 máy chủ bị nhiễm
Sâu sử dụng giao thức UDP với kích thước gói tin 376 byte và vòng lặp chính của sâu
chỉ gồm 22 lệnh hợp ngữ. Chu trình hoạt ộng của sâu SQL Slammer gồm:
- Sinh tự ộng ịa chỉ IP;
- Quét tìm các máy có lỗi với IP tự sinh trên cổng dịch vụ 1434;
- Nếu tìm ược, gửi một bản sao của sâu ến máy có lỗi;
- Mã của sâu gây tràn bộ ệm, thực thi mã của sâu và quá trình lặp lại.
SQL Slammer là sâu “lành tính” vì nó không can thiệp vào hệ thống file, không thực
hiện việc phá hoại hay ánh cắp thông tin ở hệ thống bị lây nhiễm. Tuy nhiên, sâu tạo ra lưu
lượng mạng khổng lồ trong quá trình lây nhiễm, gây tê liệt ường truyền mạng Internet trên
nhiều vùng của thế giới. Do mã của SQL Slammer chỉ ược lưu trong bộ nhớ nó gây tràn
mà không ược lưu vào hệ thống file, nên chỉ cần khởi ộng lại máy là có thể tạm thời xóa
ược sâu khỏi hệ thống. Tuy nhiên, hệ thống chứa lỗ hổng có thể bị lây nhiễm lại nếu nó ở
gần một máy khác bị nhiễm sâu. Các biện pháp phòng chống triệt ể khác là cập nhật bản
vá cho bộ phần mềm Microsoft SQL Server 2000. Thông tin chi tiết về sâu SQL Slammer
có thể tìm ở các trang: https://technet.microsoft.com/library/security/ms02-039, hoặc
https://www.caida.org/publications/papers/2003/sapphire/sapphire.html. c. Phòng chống
Để phòng chống lỗi tràn bộ ệm một cách hiệu quả, cần kết hợp nhiều biện pháp. Các
biện pháp có thể thực hiện bao gồm:
- Kiểm tra thủ công mã nguồn hay sử dụng các công cụ phân tích mã tự ộng ể tìm và
khắc phục các iểm có khả năng xảy ra lỗi tràn bộ ệm, ặc biệt lưu ý ến các hàm xử lý xâu ký tự.
- Sử dụng cơ chế không cho phép thực hiện mã trong dữ liệu DEP (Data Excution
Prevention). Cơ chế DEP ược hỗ trợ bởi hầu hết các hệ iều hành (từ Windows XP
và các hệ iều hành họ Linux, Unix,…) không cho phép thực hiện mã chương trình
chứa trong vùng nhớ dành cho dữ liệu. Như vậy, nếu kẻ tấn công khai thác lỗi tràn
bộ ệm, chèn ược mã ộc vào bộ ệm trong ngăn xếp, mã ộc cũng không thể thực hiện.
- Ngẫu nhiên hóa sơ ồ ịa chỉ cấp phát các ô nhớ trong ngăn xếp khi thực hiện chương
trình, nhằm gây khó khăn cho việc gỡ rối và phát hiện vị trí các ô nhớ quan trọng
như ô nhớ chứa ịa chỉ trở về. lOMoARcPSD| 37054152
- Sử dụng các cơ chế bảo vệ ngăn xếp, theo ó thêm một số ngẫu nhiên (canary) phía
trước ịa chỉ trở về và kiểm tra số ngẫu nhiên này trước khi trở về chương trình gọi ể
xác ịnh khả năng bị thay ổi ịa chỉ trở về.
- Sử dụng các ngôn ngữ, thư viện và công cụ lập trình an toàn. Trong các trường hợp
có thể, sử dụng các ngôn ngữ không gây tràn, như Java, các ngôn ngữ lập trình trên
Microsoft .Net. Với các ngôn ngữ có thể gây tràn như C, C++, nên sử dụng các thư
viện an toàn (Safe C/C++ Libraries) ể thay thế các thư viện chuẩn có thể gây tràn.
2.3.2.3. Tấn công khai thác lỗi không kiểm tra ầu vào a. Giới thiệu
Lỗi không kiểm tra ầu vào (Unvalidated input) là một trong các dạng lỗ hổng bảo mật
phổ biến, trong ó ứng dụng không kiểm tra, hoặc kiểm tra không ầy ủ các dữ liệu ầu vào,
nhờ ó tin tặc có thể khai thác lỗi ể tấn công ứng dụng và hệ thống. Dữ liệu ầu vào (Input
data) cho ứng dụng rất a dạng, có thể ến từ nhiều nguồn với nhiều ịnh dạng khác nhau. Các
dạng dữ liệu ầu vào iển hình cho ứng dụng:
- Các trường dữ liệu văn bản (text);
- Các lệnh ược truyền qua ịa chỉ URL ể kích hoạt chương trình;
- Các file âm thanh, hình ảnh, hoặc ồ họa do người dùng, hoặc các tiến trình khác cung cấp;
- Các ối số ầu vào trong dòng lệnh;
- Các dữ liệu từ mạng hoặc từ các nguồn không tin cậy.
Trên thực tế, tin tặc có thể sử dụng phương pháp thủ công, hoặc tự ộng ể kiểm tra các
dữ liệu ầu vào và thử tất cả các khả năng có thể ể khai thác lỗi không kiểm tra ầu vào. Theo
thống kê của trang web OWASP (http://www.owasp.org), một trang web chuyên về thông
kê các lỗi bảo mật ứng dụng web, lỗi không kiểm tra ầu vào luôn chiếm vị trí nhóm dẫn ầu
các lỗi bảo mật các trang web trong khoảng 5 năm trở lại ây. b. Tấn công khai thác
Có hai dạng chính tấn công khai thác lỗi không kiểm tra ầu vào: (1) cung cấp dữ liệu
quá lớn hoặc sai ịnh dạng ể gây lỗi cho ứng dụng, và (2) chèn mã khai thác vào dữ liệu ầu
vào ể thực hiện trên hệ thống của nạn nhân, nhằm ánh cắp dữ liệu nhạy cảm hoặc thực hiện
các hành vi phá hoại. Hình 2.18 minh họa tấn công khai thác lỗi không kiểm tra ầu vào
dạng (1) thông qua việc nhập dữ liệu quá lớn, gây lỗi thực hiện cho trang web. lOMoARcPSD| 37054152
Hình 2.18. Cung cấp dữ liệu quá lớn ể gây lỗi cho ứng dụng
Chúng ta minh họa tấn công khai thác lỗi không kiểm tra ầu vào dạng (2) bằng việc
chèn mã tấn công SQL vào dữ liệu ầu vào, ược thực hiện trên hệ quản trị cơ sở dữ liệu
nhằm ánh cắp, hoặc phá hủy dữ liệu trong cơ sở dữ liệu. Giả thiết một trang web tìm kiếm
sản phẩm sử dụng câu lệnh SQL sau ể tìm kiếm các sản phẩm:
"SELECT * FROM tbl_products WHERE product_name like '%" + keyword + "%'"
trong ó tbl_products là bảng lưu thông tin các sản phẩm, product_name là trường tên sản
phẩm và keyword là từ khóa cung cấp từ người dùng form tìm kiếm. Nếu người dùng
nhập từ khóa là "iPhone 7", khi ó câu lệnh SQL trở thành:
"SELECT * FROM tbl_products WHERE product_name like '%iPhone X%'"
Nếu trong bảng có sản phẩm thỏa mãn iều kiện tìm kiếm, câu lệnh SQL sẽ trả về tập
bản ghi. Nếu không có sản phẩm nào thỏa mãn iều kiện tìm kiếm, câu lệnh SQL sẽ trả về
tập bản ghi rỗng. Nếu người dùng nhập từ khóa "iPhone X';DELETE FROM tbl_products;-
-
", khi ó câu lệnh SQL trở thành:
"SELECT * FROM tbl_products WHERE product_name like '%iPhone X';DELETE
FROM tbl_products;--%'"
Như vậy, câu lệnh SQL ược thực hiện trên cơ sở dữ liệu gồm 2 câu lệnh: câu lệnh chọn
SELECT ban ầu và câu lệnh xóa DELETE do tin tặc chèn thêm. Câu lệnh “DELETE FROM
tbl_products
” sẽ xóa tất cả các bản ghi trong bảng tbl_products. Sở dĩ tin tặc có thể thực
hiện iều này là do hầu hết các hệ quản trị cơ sở dữ liệu cho phép thực hiện nhiều câu lệnh
SQL theo mẻ (batch), trong ó các câu lệnh ược ngăn cách bởi dấu (;). Ngoài ra, dấu “--” ở
cuối dữ liệu nhập ể loại bỏ hiệu lực của phần lệnh còn lại do “-” là ký hiệu bắt ầu phần chú
thích của dòng lệnh. Ngoài DELETE, tin tặc có thể chèn thêm các lệnh SQL khác, như
INSERT, UPDATE ể thực hiện việc chèn thêm bản ghi hoặc sửa ổi dữ liệu theo ý ồ tấn công của mình. c. Phòng chống lOMoAR cPSD| 37054152
Biện pháp chủ yếu phòng chống tấn công khai thác lỗi không kiểm tra ầu vào là lọc dữ
liệu ầu vào. Tất cả các dữ liệu ầu vào, ặc biệt dữ liệu nhập từ người dùng và từ các nguồn
không tin cậy cần ược kiểm tra kỹ lưỡng. Các biện pháp cụ thể bao gồm:
- Kiểm tra kích thước và ịnh dạng dữ liệu ầu vào;
- Kiểm tra sự hợp lý của nội dung dữ liệu;
- Tạo các bộ lọc ể lọc bỏ các ký tự ặc biệt và các từ khóa của các ngôn ngữ trong các
trường hợp cần thiết mà kẻ tấn công có thể sử dụng:
+ Các ký tự ặc biệt: *, ', =, --
+ Các từ khóa ngôn ngữ: chẳng hạn với dạng tấn công chèn mã SQL, cần lọc các từ
khóa như SELECT, INSERT, UPDATE, DELETE, DROP.... 2.3.2.4. Tấn công chèn mã SQL a. Khái quát
Tấn công chèn mã SQL (SQL Injection) là một kỹ thuật cho phép kẻ tấn công chèn mã
SQL vào dữ liệu gửi ến máy chủ và cuối cùng ược thực hiện trên máy chủ cơ sở dữ liệu.
Tùy vào mức ộ tinh vi, tấn công chèn mã SQL có thể cho phép kẻ tấn công (1) vượt qua
các khâu xác thực người dùng, (2) chèn, sửa ổi, hoặc xóa dữ liệu, (3) ánh cắp các thông tin
trong cơ sở dữ liệu và (4) chiếm quyền iều khiển hệ thống máy chủ cơ sở dữ liệu. Tấn công
chèn mã SQL là dạng tấn công thường gặp ở các ứng dụng web, các trang web có kết nối ến cơ sở dữ liệu.
Có 2 nguyên nhân của lỗ hổng trong ứng dụng nói chung và ứng dụng web nói riêng
cho phép thực hiện tấn công chèn mã SQL:
- Dữ liệu ầu vào từ người dùng hoặc từ các nguồn khác không ược kiểm tra hoặc kiểm tra không kỹ lưỡng;
- Sử dụng các câu lệnh SQL ộng trong ứng dụng, trong ó có thao tác nối dữ liệu người
dùng với mã lệnh SQL gốc.
Phần tiếp theo mục này là mô tả chi tiết về 4 hành ộng kẻ tấn công có thể thực hiện trên
hệ thống nạn nhân thông qua khai thác lỗi chèn mã SQL. b. Vượt qua các khâu xác thực người dùng
Xem xét một form ăng nhập (Log in) và oạn mã xử lý xác thực người dùng lưu trong
bảng cơ sở dữ liệu tbl_accounts(username, password) cho như trên Hình 2.19.
Nếu người dùng nhập 'admin' vào trường username và 'abc123' vào trường password
của form, mã xử lý hoạt ộng úng: Nếu tồn tại người dùng với usernamepassword kể
trên, hệ thống sẽ cho phép ăng nhập với thông báo ăng nhập thành công; Nếu không tồn
tại người dùng với usernamepassword ã cung cấp, hệ thống sẽ từ chối ăng nhập và trả
lại thông báo lỗi. Tuy nhiên, nếu người dùng nhập aaaa' OR 1=1-- vào trường username
và một chuỗi bất kỳ, chẳng hạn 'aaaa' vào trường password của form, mã xử lý hoạt ộng
sai và chuỗi chứa câu truy vấn SQL trở thành:
SELECT * FROM tbl_accounts WHERE username='aaaa' OR 1=1--' AND password='aaaa' lOMoARcPSD| 37054152
<!— Form ăng nhập --> Tên ăng nhập: Mật khẩu: <%
' Mã ASP xử lý ăng nhập trong file log_in.asp:
' giả thiết ã kết nối với CSDL SQL qua ối tượng conn và
bảng tbl_accounts lưu thông tin người dùng
Dim username, password, sqlString, rsLogin ' lấy dữ liệu từ form
username = Request.Form("username")
password = Request.Form("password")
' tạo và thực hiện câu truy vấn sql
sqlString = "SELECT * FROM tbl_accounts WHERE
username='" & username & "' AND password = '" & password
& "'" set rsLogin = conn.execute(sqlString) if (NOT rsLogin.eof()) then
' cho phép ăng nhập, bắt ầu phiên làm việc else
' từ chối ăng nhập, báo lỗi end if %>
Hình 2.19. Form ăng nhập (log on) và oạn mã xử lý xác thực người dùng
Câu truy vấn sẽ trả về mọi bản ghi trong bảng do thành phần OR 1=1 làm cho iều kiện
trong mệnh ề WHERE trở lên luôn úng và phần kiểm tra mật khẩu ã bị loại bỏ bởi ký hiệu
(--). Phần lệnh sau ký hiệu (--) ược coi là ghi chú và không ược thực hiện. Nếu trong bảng
tbl_accounts có chứa ít nhất một bản ghi, kẻ tấn công sẽ luôn ăng nhập thành công vào hệ thống.
c. Chèn, sửa ổi, hoặc xóa dữ liệu
Xem xét một form tìm kiếm sản phẩm và oạn mã xử lý tìm sản phẩm lưu trong bảng cơ
sở dữ liệu tbl_products(product_id, product_name, product_desc, product_cost) cho như trên Hình 2.20.
<!— Form tìm kiếm sản phẩm --> lOMoARcPSD| 37054152 Nhập tên sản phẩm: <%
' Mã ASP xử lý tìm sản phẩm trong file search.asp:
' giả thiết ã kết nối với CSDL SQL server qua connection
' conn và bảng tbl_products lưu thông tin sản phẩm
Dim keyword, sqlString, rsSearch ' lấy dữ liệu từ form
keyword = Request.Form("keyword") ' tạo và
thực hiện câu truy vấn SQL sqlString =
"SELECT * FROM tbl_products WHERE
product_name like '%" & keyword & "%'" set
rsSearch = conn.execute(sqlString) if (NOT
rsSearch.eof()) then ' hiển thị danh sách các sản phẩm else
' thông báo không tìm thấy sản phẩm end if %>
Hình 2.20. Form tìm kiếm sản phẩm và oạn mã xử lý tìm sản phẩm
Nếu người dùng nhập chuỗi "Samsung Galaxy S8" vào trường keyword của form, mã
xử lý hoạt ộng úng: Nếu tìm thấy các sản phẩm có tên chứa từ khóa, hệ thống sẽ hiển thị
danh sách các sản phẩm tìm thấy; Nếu không tìm thấy sản phẩm nào có tên chứa từ khóa,
hệ thống thông báo không tìm thấy sản phẩm. Tuy nhiên, nếu người dùng nhập chuỗi
"Samsung Galaxy S8';DELETE FROM tbl_products;--" vào trường keyword của form, mã
xử lý sẽ hoạt ộng sai và chuỗi chứa câu truy vấn SQL trở thành:
SELECT * FROM tbl_products WHERE keyword like '%Samsung Galaxy
S8';DELETE FROM tbl_products;--%'
Chuỗi lệnh SQL mới gồm 2 lệnh SQL: câu lệnh SELECT tìm kiếm các sản phẩm có
tên chứa từ khóa "Samsung Galaxy S8" trong bảng tbl_products và câu lệnh DELETE xóa
tất cả các sản phẩm trong bảng tbl_products. Sở dĩ kẻ tấn công có thể làm ược iều này là
do hệ quản trị cơ sở dữ liệu MS-SQL server nói riêng và hầu hết các hệ quản trị cơ sở dữ
liệu nói chung cho phép thực hiện nhiều lệnh SQL theo lô và dùng dấu ; ể ngăn cách các
lệnh. Ký hiệu -- dùng ể hủy tác dụng của phần lệnh còn lại nếu có.
Bằng thủ thuật tương tự, kẻ tấn công có thể thay lệnh DELETE bằng lệnh UPDATE
hoặc INSERT ể chỉnh sửa, hoặc chèn thêm dữ liệu. Chẳng hạn, kẻ tấn công chèn thêm lệnh
UPDATE ể cập nhật mật khẩu của người quản trị bằng cách nhập chuỗi sau làm từ khóa
tìm kiếm (giả thiết bảng tbl_administrators chứa thông tin người quản trị):
Galaxy S8';UPDATE tbl_administrators SET password=abc123 WHERE username = lOMoAR cPSD| 37054152 'admin';--
Hoặc kẻ tấn công có thể chèn thêm bản ghi vào bảng tbl_administrators bằng cách nhập
chuỗi sau làm từ khóa tìm kiếm:
Galaxy S8';INSERT INTO tbl_administrators (username, password) VALUES ('attacker', 'abc12345');--
d. Đánh cắp các thông tin trong cơ sở dữ liệu
Lỗ hổng chèn mã SQL có thể giúp kẻ tấn công ánh cắp dữ liệu trong cơ sở dữ liệu thông
qua một số bước như sau:
- Tìm lỗ hổng chèn mã SQL và thăm dò các thông tin về hệ quản trị cơ sở dữ liệu:
+ Nhập một số dữ liệu mẫu ể kiểm tra một trang web có chứa lỗ hổng chèn mã SQL,
như các dấu nháy ơn, dấu --,…
+ Tìm phiên bản máy chủ cơ sở dữ liệu: nhập các câu lệnh lỗi và kiểm tra thông báo
lỗi, hoặc sử dụng @@version (với MS-SQL Server), hoặc version() (với MySQL)
trong câu lệnh ghép với UNION SELECT.
- Tìm thông tin về số lượng và kiểu dữ liệu các trường của câu truy vấn hiện tại của trang web.
+ Sử dụng mệnh ề ORDER BY
+ Sử dụng UNION SELECT 1, 2, 3, …
- Trích xuất thông tin về các bảng, các trường của cơ sở dữ liệu thông qua các bảng hệ thống (metadata).
- Sử dụng lệnh UNION SELECT ể ghép các thông tin ịnh trích xuất vào câu truy vấn
hiện tại của ứng dụng.
e. Chiếm quyền iều khiển hệ thống máy chủ cơ sở dữ liệu
Khả năng máy chủ cơ sở dữ liệu bị chiếm quyền iều khiển xảy ra khi trang web tồn tại
ồng thời 2 lỗ hổng: (1) lỗ hổng cho phép tấn công chèn mã SQL và (2) lỗ hổng thiết lập
quyền truy nhập cơ sở dữ liệu – sử dụng người dùng có quyền quản trị ể truy nhập và thao
tác dữ liệu của website. Khai thác 2 lỗ hổng này, kẻ tấn công có thể gọi thực hiện các lệnh
hệ thống của máy chủ cơ sở dữ liệu cho phép can thiệp sâu vào cơ sở dữ liệu, hệ quản trị
cơ sở dữ liệu và cả hệ iều hành trên máy chủ. Chẳng hạn, hệ quản trị cơ sở dữ liệu MS-
SQL Server cung cấp thủ tục sp_send_dbmail cho phép gửi email từ máy chủ cơ sở dữ liệu
và thủ tục xp_cmdshell cho phép chạy các lệnh và chương trình cài ặt trên hệ iều hành
Microsoft Windows. Sau ây là một số ví dụ chạy các lệnh Microsoft Windows thông qua
thủ tục xp_cmdshell:
EXEC xp_cmdshell 'dir *.exe' : liệt kê nội dung thư mục hiện thời
EXEC xp_cmdshell 'shutdown /s /t 00' : tắt máy chủ nền chạy hệ quản trị CSDL
EXEC xp_cmdshell 'net stop W3SVC' : dừng hoạt ộng máy chủ web
EXEC xp_cmdshell 'net stop MSSQLSERVER' : dừng hoạt ộng máy chủ CSDL
Ngoài ra, kẻ tấn công có thể thực hiện các thao tác nguy hiểm ến cơ sở dữ liệu nếu có
quyền của người quản trị cơ sở dữ liệu hoặc quản trị hệ thống, như: lOMoAR cPSD| 37054152
Xóa cả bảng (gồm cả cấu trúc): DROP TABLE
Xóa cả cơ sở dữ liệu: DROP DATABASE
Tạo 1 tài khoản mới truy nhập CSDL: sp_addlogin
Đổi mật khẩu tài khoản truy nhập CSDL: sp_password f. Phòng chống
Do tính chất nguy hiểm của tấn công chèn mã SQL, nhiều giải pháp ã ược ề xuất nhằm
hạn chế tác hại và ngăn chặn triệt ể dạng tấn công này. Nhìn chung, cần áp dụng kết hợp
các biện pháp phòng chống tấn công chèn mã SQL ể ảm bảo an toàn cho hệ thống. Các
biện pháp, kỹ thuật cụ thể có thể áp dụng gồm:
- Các biện pháp phòng chống dựa trên kiểm tra và lọc dữ liệu ầu vào:
+ Kiểm tra tất cả các dữ liệu ầu vào, ặc biệt dữ liệu nhập từ người dùng và từ các nguồn không tin cậy;
+ Kiểm tra kích thước và ịnh dạng dữ liệu ầu vào;
+ Tạo các bộ lọc ể lọc bỏ các ký tự ặc biệt (như *, ‘, =, --) và các từ khóa của ngôn
ngữ SQL (SELECT, INSERT, UPDATE, DELETE, DROP,....) mà kẻ tấn công có thể sử dụng:
- Sử dụng thủ tục cơ sở dữ liệu (stored procedures) và cơ chế tham số hóa dữ liệu:
+ Đưa tất cả các câu truy vấn (SELECT) và cập nhật, sửa, xóa dữ liệu (INSERT,
UPDATE, DELETE) vào các thủ tục. Dữ liệu truyền vào thủ tục thông qua các
tham số, giúp tách dữ liệu khỏi mã lệnh SQL, nhờ ó hạn ngăn chặn hiệu quả tấn công chèn mã SQL;
+ Hạn chế thực hiện các câu lệnh SQL ộng trong thủ tục;
+ Sử dụng cơ chế tham số hóa dữ liệu hỗ trợ bởi nhiều ngôn ngữ lập trình web như ASP.NET, PHP và JSP.
- Các biện pháp phòng chống dựa trên thiết lập quyền truy nhập người dùng cơ sở dữ liệu:
+ Không sử dụng người dùng có quyền quản trị hệ thống hoặc quản trị cơ sở dữ liệu
làm người dùng truy nhập dữ liệu. Ví dụ: không dùng người dùng sa (Microsoft
SQL) hoặc root (MySQL) làm người dùng truy nhập dữ liệu. Chỉ dùng các người
dùng này cho mục ích quản trị.
+ Chia nhóm người dùng, chỉ cấp quyền vừa ủ ể truy nhập các bảng biểu, thực hiện
câu truy vấn và chạy các thủ tục.
+ Tốt nhất, không cấp quyền thực hiện các câu truy vấn, cập nhật, sửa, xóa trực tiếp
trên các bảng dữ liệu. Thủ tục hóa tất cả các câu lệnh và chỉ cấp quyền thực hiện thủ tục.
+ Cấm hoặc vô hiệu hóa (disable) việc thực hiện các thủ tục hệ thống (các thủ tục cơ
sở dữ liệu có sẵn) cho phép can thiệp vào hệ quản trị cơ sở dữ liệu và hệ iều hành nền. lOMoARcPSD| 37054152
- Sử dụng các công cụ rà quét lỗ hổng chèn mã SQL, như SQLMap, hoặc Acunetix
Vulnerability Scanner ể chủ ộng rà quét, tìm các lỗ hổng chèn mã SQL và có biện
pháp khắc phục phù hợp.
2.3.3. Tấn công từ chối dịch vụ
2.3.3.1. Giới thiệu
Tấn công từ chối dịch vụ (Denial of Service - DoS) là dạng tấn công nhằm ngăn chặn
người dùng hợp pháp truy nhập các tài nguyên mạng. Tấn công DoS có thể ược chia thành
2 loại: (1) tấn công logic (Logic attacks) và (2) tấn công gây ngập lụt (Flooding attacks).
Tấn công logic là dạng tấn công khai thác các lỗi phần mềm làm dịch vụ ngừng hoạt ộng,
hoặc làm giảm hiệu năng hệ thống. Tấn công DoS sử dụng sâu Slammer ề cập ở Mục
2.3.2.2 là dạng tấn công khai thác lỗi tràn bộ ệm trong phần mềm. Ngược lại, trong tấn
công gây ngập lụt, kẻ tấn công gửi một lượng lớn yêu cầu gây cạn kiệt tài nguyên hệ thống
hoặc băng thông ường truyền mạng.
Có nhiều kỹ thuật tấn công DoS ã ược phát hiện trên thực tế. Các kỹ thuật tấn công DoS
thường gặp bao gồm: SYN Flood, Smurf, Teardrop, Ping of Death, Land Attacks, ICMP
Flood, HTTP Flood, UDP Flood,… Trong phạm vi của môn học này, chúng ta chỉ ề cập
ến 2 kỹ thuật phổ biến nhất là SYN Flood và Smurf. 2.3.3.2. Tấn công SYN flood a. Giới thiệu
Tấn công SYN Flood là kỹ thuật tấn công DoS khai thác iểm yếu trong thủ tục bắt tay
3 bước (3-way handshake) khi hai bên tham gia truyền thông thiết lập kết nối TCP ể bắt ầu
phiên trao ổi dữ liệu. SYN là bit cờ iều khiển của giao thức TCP dùng ể ồng bộ số trình tự
gói tin. Thủ tục bắt tay khi một người dùng hợp pháp thiết lập một kết nối TCP ến máy
chủ, như minh họa trên hình Hình 2.21 (a) gồm 3 bước như sau:
- Người dùng thông qua máy khách gửi yêu cầu mở kết nối (SYN hay SYN-REQ) ến máy chủ;
- Máy chủ nhận ược lưu yêu cầu kết nối vào Bảng kết nối (Backlog) và gửi lại xác
nhận kết nối SYN-ACK cho máy khách;
- Khi nhận ược SYN-ACK từ máy chủ, máy khách gửi lại xác nhận kết nối ACK ến
máy chủ. Khi máy chủ nhận ược xác nhận kết nối ACK từ máy khách, nó xác nhận
kết nối mở thành công, máy chủ và máy khách bắt ầu phiên truyền thông TCP. Bản
ghi mở kết nối ược xóa khỏi Bảng kết nối. b. Kịch bản tấn công
Kịch bản tấn công SYN Flood, như minh họa trên Hình 2.21 (b) gồm các bước sau:
- Kẻ tấn công gửi một lượng lớn yêu cầu mở kết nối (SYN-REQ) ến máy nạn nhân;
- Nhận ược yêu cầu mở kết nối, máy nạn nhân lưu yêu cầu kết nối vào Bảng kết nối trong bộ nhớ;
- Máy nạn nhân sau ó gửi xác nhận kết nối (SYN-ACK) ến kẻ tấn công;
- Do kẻ tấn công không gửi lại xác nhận kết nối ACK, nên máy nạn nhân vẫn phải lưu
tất cả các yêu cầu kết nối chưa ược xác nhận trong Bảng kết nối. Khi Bảng kết nối
bị iền ầy thì các yêu cầu mở kết nối của người dùng hợp pháp sẽ bị từ chối;
- Máy nạn nhân chỉ có thể xóa một yêu cầu kết nối ang mở khi nó hết hạn (timedout). lOMoARcPSD| 37054152
Hình 2.21. (a) Thủ tục bắt tay 3 bước của TCP và (b) Tấn công SYN Flood
Do kẻ tấn công thường sử dụng ịa chỉ IP giả mạo, hoặc ịa chỉ không có thực làm ịa chỉ
nguồn (Source IP) trong gói tin IP yêu cầu mở kết nối, nên xác nhận kết nối SYNACK của
máy nạn nhân không thể ến ích. Đồng thời, kẻ tấn công cố tình tạo một lượng rất lớn yêu
cầu mở kết nối dở dang ể chúng iền ầy bảng kết nối. Hậu quả là máy nạn nhân không thể
chấp nhận yêu cầu mở kết nối của những người dùng khác. Tấn công SYN Flood làm cạn
kiệt tài nguyên bộ nhớ (cụ thể là bộ nhớ Bảng kết nối) của máy nạn nhân, có thể làm máy
nạn nhân ngừng hoạt ộng và gây nghẽn ường truyền mạng. c. Phòng chống
Nhiều biện pháp phòng chống tấn công SYN Flood ược ề xuất, nhưng chưa có giải pháp
nào có khả năng ngăn chặn triệt ể dạng tấn công này. Do vậy, ể phòng chống tấn công SYN
Flood hiệu quả, cần kết hợp các biện pháp sau:
- Sử dụng kỹ thuật lọc ịa chỉ giả mạo (Spoofed IP Filtering): Kỹ thuật này òi hỏi chỉnh
sửa giao thức TCP/IP không cho phép kẻ tấn công giả mạo ịa chỉ;
- Tăng kích thước Bảng kết nối: Tăng kích thước Bảng kết nối cho phép tăng khả năng
chấp nhận các yêu cầu mở kết nối; lOMoARcPSD| 37054152
Giảm thời gian chờ (SYN-RECEIVED Timer): Các yêu cầu mở kết nối chưa ược
xác nhận sẽ bị xóa sớm hơn khi thời gian chờ ngắn hơn;
- SYN cache: Một yêu cầu mở kết nối chỉ ược cấp phát không gian nhớ ầy ủ khi nó ược xác nhận;
- Sử dụng tường lửa (Firewall) và Proxy: Tường lửa và proxy có khả năng nhận dạng
các ịa chỉ IP nguồn là ịa chỉ không có thực, ồng thời chúng có khả năng tiếp nhận
yêu cầu mở kết nối, chờ ến khi có xác nhận mới chuyển cho máy chủ ích.
2.3.3.3. Tấn công Smurf a. Giới thiệu
Tấn công Smurf là dạng tấn công DoS sử dụng giao thức iều khiển truyền (ICMP) và
kiểu phát quảng bá có ịnh hướng ể gây ngập lụt ường truyền mạng của máy nạn nhân. Trên
mỗi phân vùng mạng IP thường có 1 ịa chỉ quảng bá, theo ó khi có một gói tin gửi tới ịa
chỉ này, nó sẽ ược router của mạng chuyển ến tất cả các máy trong mạng ó.
Hình 2.22. Mô hình tấn công Smurf b. Kịch bản tấn công
Hình 2.22 minh họa mô hình tấn công DoS Smurf. Theo ó, kịch bản tấn công Smurf gồm các bước:
- Kẻ tấn công gửi một lượng lớn gói tin chứa yêu cầu ICMP (Ping) với ịa chỉ IP nguồn
là ịa chỉ của máy nạn nhân ến một ịa chỉ quảng bá (IP Broadcast address) của một mạng;
- Router của mạng nhận ược yêu cầu ICMP gửi ến ịa chỉ quảng bá sẽ tự ộng chuyển
yêu cầu này ến tất cả các máy trong mạng;
- Các máy trong mạng nhận ược yêu cầu ICMP sẽ gửi trả lời (reply) ến máy có ịa chỉ
IP là ịa nguồn trong yêu cầu ICMP (là máy nạn nhân). Nếu số lượng máy trong
mạng rất lớn thì máy nạn nhân sẽ bị ngập lụt ường truyền, hoặc ngừng hoạt ộng. c. Phòng chống
Có thể sử dụng các biện pháp sau ể phòng chống tấn công Smurf: 44
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Cấu hình các máy trong mạng và router không trả lời các yêu cầu ICMP, hoặc các yêu cầu phát quảng bá;
- Cấu hình các router không chuyển tiếp yêu cầu ICMP gửi ến các ịa chỉ quảng bá;
- Sử dụng tường lửa ể lọc các gói tin với ịa chỉ giả mạo ịa chỉ trong mạng.
Việc cấu hình các router không chuyển tiếp yêu cầu ICMP, hoặc các máy trong mạng
không trả lời các yêu cầu ICMP có thể gây khó khăn cho các ứng dụng dựa trên phát quảng
bá và giao thức ICMP, như ứng dụng giám sát trạng thái hoạt ộng của các máy trong mạng dựa trên ICMP/Ping.
2.3.4. Tấn công từ chối dịch vụ phân tán
2.3.4.1. Giới thiệu
Tấn công DDoS (Distributed Denial of Service) là một loại tấn công DoS ặc biệt, liên
quan ến việc gây ngập lụt các máy nạn nhân với một lượng rất lớn các yêu cầu kết nối giả
mạo. Điểm khác biệt chính giữa DDoS và DoS là phạm vi (scope) tấn công: trong khi số
lượng máy tham gia tấn công DoS thường tương ối nhỏ, chỉ gồm một số ít máy tại một,
hoặc một số ít ịa iểm, thì số lượng máy tham gia tấn công DDoS thường rất lớn, có thể lên
ến hàng ngàn, hoặc hàng trăm ngàn máy, và các máy tham gia tấn công DDoS có thể ến
từ rất nhiều vị trí ịa lý khác nhau trên toàn cầu. Do vậy, việc phòng chống tấn công DDoS
gặp nhiều khó khăn hơn so với việc phòng chống tấn công DoS.
Có thể chia tấn công DDoS thành 2 dạng chính theo mô hình kiến trúc: tấn công DDoS
trực tiếp (Direct DDoS) và tấn công DDoS gián tiếp, hay phản xạ (Indirect/Reflective
DDoS). Trong tấn công DDoS trực tiếp, các yêu cầu tấn công ược các máy tấn công gửi
trực tiếp ến máy nạn nhân. Ngược lại, trong tấn công DDoS gián tiếp, các yêu cầu tấn công
ược gửi ến các máy phản xạ (Reflectors) và sau ó gián tiếp chuyển ến máy nạn nhân.
2.3.4.2. Tấn công DDoS trực tiếp
Hình 2.23 minh họa kiến trúc iển hình của dạng tấn công DDoS trực tiếp. Tấn công
DDoS trực tiếp ược thực hiện theo nhiều giai oạn theo kịch bản như sau:
- Kẻ tấn công (Attacker) chiếm quyền iều khiển hàng ngàn, thậm chí hàng chục ngàn
máy tính trên mạng Internet, sau ó bí mật cài các chương trình tấn công tự ộng
(Automated agents) lên các máy này. Các automated agents còn ược gọi là các Bot
hoặc Zombie (Máy tính ma);
- Các máy bị chiếm quyền iều khiển hình thành mạng máy tính ma, gọi là botnet hay
zombie network. Các botnet, hay zombie network không bị giới hạn bởi chủng loại
thiết bị và tô pô mạng vật lý;
- Kẻ tấn công có thể giao tiếp với các máy botnet, zombie thông qua một mạng lưới
các máy trung gian (handler) gồm nhiều tầng. Phương thức giao tiếp có thể là IRC
(Internet Relay Chat), P2P (Peer to Peer), HTTP,…
Tiếp theo, kẻ tấn công ra lệnh cho các automated agents ồng loạt tạo các yêu cầu
giả mạo gửi ến các máy nạn nhân tạo thành cuộc tấn công DDoS;
- Lượng yêu cầu giả mạo có thể rất lớn và ến từ rất nhiều nguồn, vị trí ịa lý khác nhau
nên rất khó ối phó và lần vết ể tìm ra kẻ tấn công thực sự. 45
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
Hình 2.23. Kiến trúc tấn công DDoS trực tiếp
Hình 2.24. Kiến trúc tấn công DDoS gián tiếp hay phản xạ
2.3.4.3. Tấn công DDoS gián tiếp
Hình 2.24 minh họa kiến trúc tấn công DDoS gián tiếp, hay phản xạ. Tấn công DDoS
gián tiếp cũng ược thực hiện theo nhiều giai oạn theo kịch bản như sau:
- Kẻ tấn công chiếm quyền iều khiển của một lượng lớn máy tính trên mạng Internet,
cài ặt phần mềm tấn công tự ộng bot/zombie (còn gọi là slave), hình thành nên mạng botnet; 46
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoAR cPSD| 37054152 -
Theo lệnh của kẻ tấn công iều khiển các Slave/Zombie gửi một lượng lớn yêu cầu
giả mạo với ịa chỉ nguồn là ịa chỉ máy nạn nhân ến một số lớn các máy khác
(Reflectors) trên mạng Internet;
- Các Reflectors gửi các phản hồi (Reply) ến máy nạn nhân do ịa chỉ của máy nạn
nhân ược ặt vào ịa chỉ nguồn của yêu cầu giả mạo;
- Khi các Reflectors có số lượng lớn, số phản hồi sẽ rất lớn và gây ngập lụt ường
truyền mạng hoặc làm cạn kiệt tài nguyên của máy nạn nhân, dẫn ến ngắt quãng
hoặc ngừng dịch vụ cung cấp cho người dùng. Các Reflectors bị lợi dụng ể tham gia
tấn công thường là các hệ thống máy chủ có công suất lớn trên mạng Internet và
không chịu sự iều khiển của kẻ tấn công.
2.3.4.4. Phòng chống tấn công DDoS
Nhìn chung, ể phòng chống tấn công DDoS hiệu quả, cần kết hợp nhiều biện pháp và
sự phối hợp của nhiều bên do tấn công DDoS có tính phân tán cao và hệ thống mạng máy
tính ma (botnet) ược hình thành và iều khiển theo nhiều tầng, lớp. Một số biện pháp có thể xem xét áp dụng:
- Sử dụng các phần mềm rà quét vi rút và các phần mềm ộc hại khác nhằm loại bỏ
các loại bot, zombie, slaves khỏi các hệ thống máy tính;
- Sử dụng các hệ thống lọc ặt trên các router, tường lửa của các nhà cung cấp dịch vụ
Internet (ISP) ể lọc các yêu cầu iều khiển (C&C – Command and Control) gửi từ kẻ tấn công ến các bot;
- Sử dụng các hệ thống giám sát, phát hiện bất thường, nhằm phát hiện sớm các dấu
hiệu của tấn công DDoS.
- Sử dụng tường lửa ể chặn (block) tạm thời các cổng dịch vụ bị tấn công.
2.3.5. Tấn công giả mạo ịa chỉ
2.3.5.1. Giới thiệu
Dạng tấn công giả mạo ịa chỉ thường gặp nhất là tấn công giả mạo ịa chỉ IP, trong ó kẻ
tấn công sử dụng ịa chỉ IP giả làm ịa chỉ nguồn (Source IP) của các gói tin IP, thường ể
ánh lừa máy nạn nhân nhằm vượt qua các hàng rào kiểm soát an ninh thông thường. Chẳng
hạn, nếu kẻ tấn công giả ịa chỉ IP là ịa chỉ cục bộ của mạng LAN, hắn có thể có nhiều cơ
hội xâm nhập vào các máy khác trong mạng LAN ó do chính sách kiểm soát an ninh với
các máy trong cùng mạng LAN thường ược giảm nhẹ. 2.3.5.2. Kịch bản
Hình 2.25 minh họa một cuộc tấn công giả mạo ịa chỉ IP vào một máy nạn nhân trong
mạng cục bộ. Các bước thực hiện như sau:
- Giả sử máy của kẻ tấn công có ịa chỉ IP là 192.168.0.25 và hắn muốn gửi gói tin tấn
công ến máy nạn nhân có ịa chỉ IP là 100.0.0.75; 47
Downloaded by Jiisaa Miliana (milihisa22@gmail.com) lOMoARcPSD| 37054152
- Kẻ tấn công tạo và gửi yêu cầu giả mạo với ịa chỉ IP nguồn của các gói tin IP của
yêu cầu là 100.0.0.80 ến máy nạn nhân. Địa chỉ 100.0.0.80 là ịa chỉ cùng mạng LAN
với máy nạn nhân 100.0.0.75;
Nếu tường lửa mạng LAN không lọc ược các gói tin với ịa chỉ nguồn giả mạo, yêu
cầu giả mạo của kẻ tấn công có thể ến ược và gây tác hại cho máy nạn nhân.
Hình 2.25. Minh họa tấn công giả mạo ịa chỉ IP
2.3.5.3. Phòng chống
Biện pháp phòng chống tấn công giả mạo ịa chỉ IP hiệu quả nhất là sử dụng kỹ thuật
lọc trên tường lửa, hoặc các router với nguyên tắc lọc: các gói tin từ mạng ngoài i vào
mạng LAN mà có ịa chỉ nguồn là ịa chỉ nội bộ của mạng LAN ó thì chúng là các gói tin
giả mạo và phải bị chặn.
2.3.6. Tấn công nghe lén
Tấn công nghe lén (Sniffing/Eavesdropping), như minh họa trên Hình 2.26 là dạng tấn
công sử dụng thiết bị phần cứng hoặc phần mềm, lắng nghe trên card mạng, hub, switch,
router, hoặc môi trường truyền dẫn ể bắt các gói tin dùng cho phân tích, hoặc lạm dụng về
sau. Đây là kiểu tấn công thụ ộng nhằm thu thập các thông tin nhạy cảm, hoặc giám sát
lưu lượng mạng. Các thông tin nhạy cảm như tên người dùng, mật khẩu, thông tin thanh
toán nếu không ược mã hóa có thể bị nghe lén và lạm dụng. Các thông tin truyền trong
mạng WiFi, hoặc các mạng không dây cũng có thể bị nghe lén dễ dàng do môi trường
truyền dẫn vô tuyến và nếu không sử dụng các cơ chế bảo mật ủ mạnh. lOMoARcPSD| 37054152
Hình 2.26. Một mô hình tấn công nghe lén
Để phòng chống tấn công nghe lén, có thể áp dụng các biện pháp sau:
- Có cơ chế bảo vệ các thiết bị mạng và hệ thống truyền dẫn ở mức vật lý;
- Sử dụng các biện pháp, cơ chế xác thực người dùng ủ mạnh;
- Sử dụng các biện pháp bảo mật thông tin truyền dựa trên các kỹ thuật mã hóa.
2.3.7. Tấn công kiểu người ứng giữa
2.3.7.1. Giới thiệu
Tấn công kiểu người ứng giữa (Man in the middle) là dạng tấn công dụng quá trình
chuyển gói tin i qua nhiều trạm (hop) thuộc các mạng khác nhau, trong ó kẻ tấn công chặn
bắt các thông iệp giữa 2 bên tham gia truyền thông và chuyển thông iệp lại cho bên kia.
Mục ích chính của dạng tấn công này là ánh cắp thông tin. Hình 2.27 minh họa mô hình
tấn công kiểu người ứng giữa trong một phiên truyền file ở dạng rõ (plaintext) sử dụng
giao thức FTP giữa máy khách (Client) và máy chủ (Server).
Hình 2.27. Mô hình chung của tấn công kiểu người ứng giữa 2.3.7.2. Kịch bản
Hình 2.28 minh họa một kịch bản tấn công kiểu người ứng giữa, trong ó hai bên A và
B (Công ty A và Công ty B) trao ổi các thông iệp bí mật và kẻ tấn công C (Hacker) bắt và
có thể sửa ổi, lạm dụng các thông iệp truyền giữa A và B. Các bước tấn công cụ thể như sau: lOMoARcPSD| 37054152
Hình 2.28. Một kịch bản tấn công kiểu người ứng giữa
A gửi các thông iệp ể thiết lập một phiên làm việc bảo mật với B;
- C bắt ược các thông iệp A gửi. C giả làm B và trao ổi các khóa của mình với A. Sau
ó C giả làm A ể thiết lập một phiên làm việc với B (có trao ổi khóa với B);
- B gửi các thông iệp cho C mà vẫn tưởng như ang liên lạc với A. C nhận các thông
iệp B gửi, giải mã bằng khóa của mình (và có thể sửa ổi), sau ó chuyển tiếp thông
iệp cho A. A nhận các thông iệp mà không biết là chúng ã bị C lạm dụng.
2.3.7.3. Phòng chống
Một trong các biện pháp hiệu quả ể phòng chống tấn công kiểu người ứng giữa là hai
bên tham gia truyền thông phải có cơ chế xác thực thông tin nhận dạng của nhau và xác
thực tính toàn vẹn của các thông iệp trao ổi. Chẳng hạn, các bên có thể sử dụng chứng chỉ
số khóa công khai (Public key certificate) ể xác thực thông tin nhận dạng của nhau và sử
dụng chữ ký số ể ảm bảo tính toàn vẹn của các thông iệp trao ổi.
2.3.8. Tấn công bằng bom thư và thư rác
Tấn công bằng bom thư (Mail bombing attack) là một dạng tấn công DoS khi kẻ tấn
công gửi một lượng rất lớn email ến hộp thư của nạn nhân. Khi ó hộp thư và cả máy chủ
nạn nhân có thể bị tê liệt và không thể hoạt ộng bình thường. Tấn công bằng bom thư có
thể ược thực hiện bằng một số thủ thuật:
- Gửi bom thư bằng cách sử dụng kỹ thuật xã hội, ánh lừa người dùng phát tán email;
- Khai thác lỗi trong hệ thống gửi nhận email SMTP;
- Lợi dụng các máy chủ email không ược cấu hình tốt ể gửi email (relay) cho chúng.
Tấn công bằng thư rác (Email spamming attack) là dạng tấn công gửi các thư không
mong muốn, như thư quảng cáo, thư chứa các phần mềm ộc hại. Theo một số thống kê,
khoảng 70-80% lượng email gửi trên mạng Internet là thư rác. Kẻ tấn công thường sử dụng
các máy tính bị iều khiển (bot/zombie) ể gửi email cho chúng. Spam email gây lãng phí
tài nguyên tính toán và thời gian của người dùng. lOMoAR cPSD| 37054152
Có thể hạn chế, hoặc giảm thiểu tác hại của hình thức tấn công bằng bom thư và thư
rác sử dụng các biện pháp sau:
- Cấu hình máy chủ email SMTP hỗ trợ các giải pháp bảo mật email, như xác thực
người gửi, hoặc xác thực máy chủ gửi email (SPF, DKIM, S/MINE…);
- Sử dụng các bộ lọc thư rác tập trung trên máy chủ email cũng như phân tán trên các máy khách email.
2.3.9. Tấn công sử dụng các kỹ thuật xã hội
2.3.9.1. Giới thiệu
Tấn công sử dụng các kỹ thuật xã hội (Social engineering attack) là dạng tấn công phi
kỹ thuật nhằm vào người dùng. Dạng tấn công này khai thác các iểm yếu cố hữu của người
dùng, như tính cả tin, ngây thơ, tò mò và lòng tham. Dạng thường gặp của kiểu tấn công
này là thuyết phục người dùng tiết lộ thông tin truy nhập hoặc các thông tin có giá trị cho
kẻ tấn công. Một số kỹ thuật mà kẻ tấn công thường áp dụng gồm:
- Kẻ tấn công có thể giả danh làm người có vị trí cao hơn so với nạn nhân ể có ược
sự tin tưởng, từ ó thuyết phục hoặc ánh lừa nạn nhân cung cấp thông tin;
- Kẻ tấn công có thể mạo nhận là người ược ủy quyền của người có thẩm quyền ể yêu
cầu các nhân viên tiết lộ thông tin về cá nhân/tổ chức;
- Kẻ tấn công có thể lập trang web giả ể ánh lừa người dùng cung cấp các thông tin
cá nhân, thông tin tài khoản, thẻ tín dụng,…
2.3.9.2. Trò lừa ảo Nigeria 4-1-9
Trò lừa ảo Nigeria 4-1-9 là một trong các dạng tấn công sử dụng các kỹ thuật xã hội
nổi tiếng nhất, trong ó ã có hàng chục nghìn người ở Mỹ, Canada và Châu Âu ã sập bẫy
của kẻ lừa ảo. Kẻ lừa ảo lợi dụng sự ngây thơ và lòng tham của một số người với kịch bản tóm tắt như sau:
- Kẻ lừa ảo gửi thư tay, hoặc email ến nhiều người nhận, mô tả về việc có 1 khoản
tiền lớn (từ thừa kế, hoặc lợi tức,..) cần chuyển ra nước ngoài, nhờ người nhận giúp
ỡ ể hoàn thành giao dịch. Khoản tiền có thể lên ến hàng chục, hoặc trăm triệu USD.
Kẻ lừa ảo hứa sẽ trả cho người tham gia một phần số tiền (lên ến 2030%);
- Nếu người nhận có phản hồi và ồng ý tham gia, kẻ lừa ảo sẽ gửi tiếp thư, hoặc email
khác, yêu cầu chuyển cho hắn 1 khoản phí giao dịch (từ vài ngàn ến hàng chục ngàn USD);
- Nếu người nhận gửi tiền phí giao dịch theo yêu cầu thì người ó sẽ mất tiền, do giao
dịch mà kẻ lừa ảo hứa hẹn là giả mạo.
Nhiều biến thể của trò lừa ảo Nigeria 4-1-9 ã xuất hiện trong những năm gần ây trên
thế giới cũng như ở Việt Nam, chẳng hạn như thông báo lừa trúng thưởng các tài sản có
giá trị lớn ể chiếm oạt khoản "phí trả thưởng", lừa ầu tư vào tài khoản ảo với hứa hẹn lãi suất cao,… 2.3.9.3. Phishing lOMoAR cPSD| 37054152
Phishing là một dạng ặc biệt phát triển rất mạnh của tấn công sử dụng các kỹ thuật xã
hội, trong ó kẻ tấn công bẫy người dùng ể lấy thông tin cá nhân, thông tin tài khoản, thẻ
tín dụng,… Kẻ tấn công có thể giả mạo trang web của các tổ chức tài chính, ngân hàng,
sau ó chúng gửi email cho người dùng ( ịa chỉ email thu thập trên mạng), yêu cầu xác thực
thông tin. Hình 2.29 và Hình 2.30 minh họa 2 phishing email gửi cho khách hàng của
mạng ấu giá trực tuyến eBay và ngân hàng Royal Bank yêu cầu người dùng cập nhật thông
tin thanh toán ã hết hạn, hoặc xác nhận thông tin tài khoản không sử dụng. Nếu người dùng
làm theo hướng dẫn thì sẽ vô tình cung cấp các thông tin cá nhân, thông tin tài khoản, thẻ
tín dụng cho kẻ tấn công. lOMoARcPSD| 37054152
Hình 2.29. Một phishing email gửi cho khách hàng của mạng ấu giá eBay
Hình 2.30. Một phishing email gửi cho khách hàng của ngân hàng Royal Bank
2.3.9.4. Phòng chống
Do tấn công sử dụng các kỹ thuật xã hội nhắm ến người dùng nên biện pháp phòng
chống hiệu quả là giáo dục, ào tạo nâng cao ý thức cảnh giác cho người dùng. Một số
khuyến nghị giúp người dùng phòng tránh dạng tấn công này:
- Cảnh giác với các lời mời, hoặc thông báo trúng thưởng bằng email, tin nhắn iện
thoại, hoặc quảng cáo trên các trang web, diễn àn mà không có lý do, nguồn gốc trúng thưởng rõ ràng;
- Cảnh giác với các yêu cầu cung cấp thông tin, xác nhận tài khoản, thông tin thanh
toán, thông tin thẻ tín dụng,..;
- Kiểm tra kỹ ịa chỉ (URL) các trang web, ảm bảo truy nhập úng trang web của cơ quan, tổ chức. lOMoARcPSD| 37054152
2.3.10. Tấn công pharming
Pharming là kiểu tấn công vào trình duyệt của người dùng, trong ó người dùng gõ ịa
chỉ 1 website, trình duyệt lại yêu cầu và tải 1 website khác, thường là website ộc hại. Có 2
dạng tấn công pharming: (1) kẻ tấn công thường sử dụng sâu, vi rút hoặc các phần mềm ộc
hại cài vào hệ thống ể iều khiển trình duyệt của người dùng và (2) kẻ tấn công có thể tấn
công vào hệ thống tên miền (DNS) ể thay ổi kết quả truy vấn: thay ịa chỉ IP của website
hợp pháp thành IP của website ộc hại.
Hình 2.31 minh họa cửa sổ trình duyệt của người dùng bị tấn công pharming ở dạng
(1), hay còn gọi là tấn công cướp trình duyệt (Browser hijacking), trong ó người dùng nhập
ịa chỉ trang google.com thì trình duyệt lại nạp trang adventureinsecurity.com. Trong trường
hợp này, trình duyệt của nạn nhân ã bị cài ặt trình cắm (plug-in, hoặc add-on) ộc hại có khả
năng iều khiển trình duyệt.
Hình 2.31. Tấn công pharming "cướp" trình duyệt
Hình 2.32 minh họa các bước của tấn công pharming dạng (2), trong ó kẻ tấn công xâm
nhập vào máy chủ DNS chỉnh sửa ịa chỉ IP của website hợp pháp thành ịa chỉ IP của máy
chủ của chúng. Kết quả là trình duyệt người dùng bị chuyển hướng yêu cầu nạp website
của kẻ tấn công. Các bước cụ thể của tấn công pharming dạng này như sau:
(1) Kẻ tấn công (Attacker) xâm nhập vào máy chủ DNS của người dùng thực hiện chỉnh
sửa ịa chỉ IP của website hợp pháp thành IP của máy chủ web của chúng;
(2) Người dùng (User) sử dụng trình duyệt ể gửi yêu cầu truy cập website hợp pháp,
chẳng hạn trang (Website - www.nicebank.com);
(3) Trình duyệt của người dùng gửi yêu cầu phân giải ịa chỉ IP của trang website hợp
pháp lên máy chủ DNS (DNS Server);
(4) Máy chủ DNS thực hiện yêu cầu phân giải ịa chỉ IP và trả về kết quả. Tuy nhiên, do
máy chủ DNS ã bị kiểm soát nên ịa chỉ IP nó trả về là ịa chỉ IP của máy chủ web của kẻ tấn công; lOMoARcPSD| 37054152
(5) Trình duyệt của người dùng gửi yêu cầu, tải và nạp trang web giả mạo từ máy chủ
web của kẻ tấn công (Fake website – www.n1cebank.com).
Hình 2.32. Tấn công pharming thông qua tấn công vào máy chủ DNS
2.3.11. Tấn công APT
Tấn công APT (Advanced Persistent Threat), hay còn ược gọi là tấn công có chủ ích là
hình thức tấn công tập trung, có chủ ích, ược thiết kế riêng cho từng mục tiêu, từng ối tượng
cụ thể nhằm mục ích tìm kiếm các thông tin giá trị và gửi ra bên ngoài [12]. Hai thuộc tính
quan trọng của tấn công APT là tiên tiến, hay cao cấp (Advanced) và Kiên trì, dai dẳng
(Persistent). Thuộc tính “tiên tiến” có nghĩa là các kỹ thuật tiên tiến ược sử dụng ể tấn công
vào hệ thống mục tiêu một cách bài bản. Bên cạnh ó các cuộc tấn công APT thường kết
hợp nhiều kỹ thuật khác nhau một cách khoa học. Tính “tiên tiến” còn thể hiện ở khả năng
ẩn mình, thay ổi liên tục khiến cho việc phát hiện tấn công APT trở nên rất khó khăn. Phần
lớn các cuộc tấn công ược ghi nhận trên thế giới ều có những ặc iểm và cách thức tấn công, khai thác khác nhau.
Thuộc tính “kiên trì” có nghĩa là mục tiêu ược xác ịnh rất cụ thể ể thực hiện tấn công,
ẩn mình và khai thác theo từng giai oạn. Nhiều kỹ thuật, phương pháp tấn công khác nhau
vào mục tiêu ược sử dụng cho ến khi thành công. Bên cạnh ó sự kiên trì của kẻ tấn công
còn thể hiện ở chỗ, chúng có thể sử dụng hàng tháng, thậm chí hàng năm chỉ ể thu thập
thông tin của nạn nhân làm tiền ề cho cuộc tấn công. Ví dụ, ể tấn công vào người dùng
chúng kiên trì tìm hiểu thông tin về người dùng ó như sở thích, tính cách hay cách ặt tên
file, mối quan hệ của nạn nhân trên thế giới ảo. Đồng thời, tấn công APT dai dẳng ở chỗ
khi chúng ã xâm nhập ược vào hệ thống và ã ánh cắp ược dữ liệu và gửi ra ngoài, chúng
không bao giờ dừng việc ánh cắp dữ liệu mà mục ích của chúng là cài cắm mã ộc vào hệ
thống ể lấy ược càng nhiều dữ liệu càng tốt. Một cuộc tấn công APT iển hình thường ược
thực hiện theo các giai oạn sau: lOMoAR cPSD| 37054152
- Truy cập ban ầu: Mục tiêu của giai oạn này là lây nhiễm mã ộc vào hệ thống mục
tiêu thông qua bẫy người dùng tải và cài ặt mã ộc, hoặc tấn công khai thác các lỗ
hổng của hệ iều hành hoặc các ứng dụng;
- Thâm nhập lần ầu và triển khai mã ộc: Sau khi có quyền truy cập, kẻ tấn công cài ặt
mã ộc thường trú lâu dài trong hệ thống mục tiêu và duy trì kết nối với hệ thống iều
khiển của kẻ tấn công. Các kỹ thuật tiến tiến như mã hóa, xáo trộn mã, a hình ược
sử dụng giúp mã ộc có thể tồn tài lâu dài trong hệ thống mục tiêu;
- Mở rộng truy cập và di chuyển ngang: Các xâm nhập sâu hơn vào các hệ thống ược
thực hiện ể có thể ánh cắp nhiều dữ liệu nhạy cảm hơn. Các cửa hậu và các ường
hầm cũng có thể ược cài ặt ể thuận tiện cho việc vận chuyển dữ liệu ánh cắp ược sau này;
- Giai oạn tấn công: Kẻ tấn công thực hiện quá trình giám sát các ối tượng, hoặc hệ
thống nhằm trích xuất và vận chuyển dữ liệu nhạy cảm ến nơi an toàn trong hệ thống.
Các dữ liệu trích xuất ược thường ược nén và mã hóa trước khi ược vận chuyển ra ngoài;
- Gây thiệt hại: Thực hiện việc vận chuyển dữ liệu ánh cắp ược ra ngoài. Kẻ tấn công
có thể thực hiện một số dạng tấn công khác, như tấn công DDoS vào hệ thống mục
tiêu ể ánh lạc hướng người quản trị và xóa các dấu vết việc sao chép và truyền dữ liệu ra ngoài;
- Tấn công tiếp theo: Thông thường cuộc tấn công APT không kết thúc sau khi ã lấy
ược dữ liệu mong muốn. Kẻ tấn công vẫn giám sát hệ thống thông qua các cửa hậu
ã mở hoặc các mã ộc thường trú nhằm chờ cơ hội xâm nhập sâu hơn, hoặc thực hiện
các cuộc tấn công trong tương lai.
Do tấn công APT là dạng tấn công phức tạp, kết hợp của việc sử dụng mã ộc cao cấp
với các kỹ thuật tấn công tinh vi nên cần có một chiến lược thích hợp ể phòng chống dạng
tấn công này. Chiến lược tổng quát là kết hợp nhiều biện pháp, hoặc lớp phòng vệ, kết hợp
với việc ào tạo nâng cao ý thức người dùng về an toàn thông tin. Trong ó, các lớp phòng
vệ cần thiết bao gồm: tường lửa, kiểm soát truy cập, các hệ thống phát hiện và diệt mã ộc,
các hệ thống giám sát phát hiện xâm nhập có tích hợp khả năng phân tích tương quan các
dạng nguy cơ, kết hợp với hệ thống quản lý và chính sách an toàn thông tin ầy ủ và ược
giám sát thực hiện nghiêm ngặt.
2.4. Các dạng phần mềm ộc hại
Các phần mềm ộc hại, còn gọi là phần mềm mã ộc (Malware hay Malicious software),
hay ngắn gọn là mã ộc là các chương trình, phần mềm ược viết ra nhằm các mục ích xấu,
như ánh cắp thông tin nhạy cảm, hoặc phá hoại các hệ thống. Khi mới ược phát hiện vào
những năm 1970-1980, các phần mềm ộc hại còn tương ối ít chủng loại và ược gọi chung
là vi rút (virus). Tuy nhiên, theo thời gian vi rút ã phát triển rất mạnh thành nhiều dạng
khác nhau, ặc biệt với sự bùng nổ của mạng Internet toàn cầu và thuật ngữ “phần mềm ộc
hại” hay “mã ộc” (malware) ược sử dụng chỉ các dạng mã ộc thay thế cho thuật ngữ “vi rút”. lOMoARcPSD| 37054152
2.4.1. Phân loại
Các phần mềm ộc hại (Malware hay Malicious software) là các chương trình, phần mềm
ược viết ra nhằm các mục ích xấu, như ánh cắp thông tin nhạy cảm, hoặc phá hoại các hệ thống.
Có nhiều phương pháp phân loại các phần mềm ộc hại, trong ó một phương pháp ược
thừa nhận rộng rãi là chia các phần mềm ộc hại thành 2 nhóm chính như biểu diễn trên
Hình 2.33. Theo ó, các phần mềm ộc hại ược chia thành 2 nhóm chính dựa trên phương pháp lây nhiễm như sau:
- Các phần mềm ộc hại cần chương trình chủ, vật chủ (host) ể ký sinh và lây nhiễm.
Các phần mềm ộc hại thuộc nhóm này gồm Logic bomb (Bom logic), Back door
(Cửa hậu), Trojan horse (Con ngựa thành Tơ roa), Virus (Vi rút), Rootkit, Adware
(Phần mềm quảng cáo) và Spyware (Phần mềm gián iệp).
- Các phần mềm ộc hại không cần chương trình chủ, vật chủ ể lây nhiễm. Các phần
mềm ộc hại thuộc nhóm này gồm Worm (Sâu) và Zombie hay Bot (Phần mềm máy tính ma).
Hình 2.33. Các dạng phần mềm ộc hại
Trong số các phần mềm ộc hại, các phần mềm ộc hại có khả năng tự lây nhiễm (self-
infection), hay tự nhân bản (self-replicate) gồm Vi rút, Sâu và Phần mềm máy tính ma. Các
dạng còn lại không có khả năng tự lây nhiễm. Việc phân loại các phần mềm ộc hại kể trên
mang tính chất tương ối do hiện nay, các dạng phần mềm ộc hại và các biến thể của chúng
phát triển rất nhanh và nhiều dạng mã ộc mới ược phát hiện trong thời gian gần ây. Chẳng
hạn, các dạng mã ộc mã hóa dữ liệu nhằm tống tiền (Ransomeware), mã ộc ào tiền ảo và
mã ộc chuyên dụng cho tấn công APT ang phát triển rất mạnh. Ngoài ra, có một số phần
mềm ộc hại có các ặc tính kết hợp của nhiều dạng phần mềm ộc hại kể trên, chẳng hạn một
phần mềm ộc hại có các ặc tính của cả vi rút, sâu và phần mềm gián iệp. Mục tiếp theo
trình bày chi tiết từng dạng phần mềm ộc hại ã nêu trên Hình 2.33.
2.4.2. Mô tả các dạng phần mềm ộc hại lOMoAR cPSD| 37054152 2.4.2.1. Logic bomb
Logic bomb (Bom lô gíc) là các oạn mã ộc thường ược “nhúng” vào các chương trình
bình thường và thường hẹn giờ ể “phát nổ” trong một số iều kiện cụ thể. Điều kiện ể bom
“phát nổ” có thể là sự xuất hiện hoặc biến mất của các file cụ thể, một thời iểm cụ thể, hoặc
một ngày trong tuần. Khi “phát nổ” bom logic có thể xoá dữ liệu, file, tắt cả hệ thống...
Thực tế ã ghi nhận quả bom logic do Tim Lloyd cài lại ã “phát nổ” tại công ty Omega
Engineering vào ngày 30/7/1996, 20 ngày sau khi Tim Lloyd bị sa thải. Bom lô gíc này ã
xoá sạch các bản thiết kế và các chương trình, gây thiệt hại 10 triệu USD cho công ty. Bản
thân Tim Lloyd bị phạt 2 triệu USD và 41 tháng tù. 2.4.2.2. Trojan Horse
Trojan horse lấy tên theo tích “Con ngựa thành Tơ roa”, là chương trình chứa mã ộc,
thường giả danh những chương trình có ích, nhằm lừa người dùng kích hoạt chúng. Trojan
horse thường ược sử dụng ể thực thi gián tiếp các tác vụ, mà tác giả của chúng không thể
thực hiện trực tiếp do không có quyền truy nhập. Chẳng hạn, trong một hệ thống nhiều
người dùng, một người dùng (kẻ tấn công) có thể tạo ra một trojan ội lốt một chương trình
hữu ích ặt ở thư mục chung. Khi trojan này ược thực thi bởi một người dùng khác, nó sẽ
thay ổi quyền truy nhập các file và thư mục của người dùng ó, cho phép tất cả người dùng
(trong ó có kẻ tấn công) truy nhập vào các file của người dùng ó. 2.4.2.3. Back door
Back door (Cửa hậu) thường ược các lập trình viên tạo ra, dùng ể gỡ rối và kiểm thử
chương trình trong quá trình phát triển. Cửa hậu thường cho phép truy nhập trực tiếp vào
hệ thống mà không qua các thủ tục kiểm tra an ninh thông thường. Khi cửa hậu ược lập
trình viên tạo ra ể truy nhập bất hợp pháp vào hệ thống, nó trở thành một mối e dọa ến an
ninh hệ thống. Cửa hậu thường ược thiết kế và cài ặt khéo léo và chỉ ược kích hoạt trong
một ngữ cảnh nào ó, do vậy nó rất khó bị phát hiện.
Thực tế ã phát hiện nhiều cửa hậu ược bí mật cài ặt trên các hệ thống máy tính, như mã
ộc cửa hậu ược bí mật cài ặt trong BIOS của một loạt máy tính của hãng Lenovo, Trung
quốc. Do mã ộc ược tích hợp vào BIOS của máy nên người dùng không thể loại bỏ ược
chúng bằng cách cài ặt lại hệ iều hành, hoặc sử dụng các công cụ rà quét phần mềm ộc hại.
Mã ộc này tự ộng ược kích hoạt khi hệ thống khởi ộng và âm thầm thu thập dữ liệu người
dùng và gửi về máy chủ ặt tại Trung quốc. 2.4.2.4. Vi rút a. Giới thiệu
Vi rút (Virus) là một chương trình có thể “nhiễm” vào các chương trình khác, bằng cách
sửa ổi các chương trình này. Nếu các chương trình ã bị sửa ổi chứa vi rút ược kích hoạt thì
vi rút sẽ tiếp tục “lây nhiễm” sang các chương trình khác. Tương tự như vi rút sinh học, vi
rút máy tính cũng có khả năng tự nhân bản, tự lây nhiễm sang các chương trình khác mà nó
tiếp xúc. Có nhiều con ường lây nhiễm vi rút, như sao chép file, gọi các ứng dụng và dịch vụ qua mạng, email...
Vi rút có thể thực hiện ược mọi việc mà một chương trình thông thường có thể thực
hiện. Khi ã lây nhiễm vào một chương trình, vi rút tự ộng ược thực hiện khi chương trình lOMoARcPSD| 37054152
này chạy. Hình 2.34 minh họa việc chèn mã vi rút vào cuối một chương trình và chỉnh sửa
chương trình ể khi chương trình ược kích hoạt, mã vi rút luôn ược thực hiện trước, sau ó
mới thực hiện mã chương trình.
Hình 2.34. Chèn và gọi thực hiện mã vi rút b. Các loại vi rút
Dạng vi rút ầu tiên ược phát hiện là vi rút lây nhiễm vào các file chương trình. Theo
thời gian, có nhiều loại vi rút xuất hiện khai thác nhiều phương thức lây nhiễm khác nhau
và ược tích hợp các kỹ thuật ẩn tinh vi mình nhằm lẩn tránh bị rà quét. Hiện nay, các loại
vi rút thường gặp bao gồm boot vi rút, file vi rút, macro vi rút và email vi rút.
Boot vi rút là dạng vi rút lây nhiễm vào cung khởi ộng (boot sector) của ĩa hoặc phần
hệ thống của ĩa như cung khởi ộng chủ của ĩa cứng (master boot record). Do boot vi rút lây
nhiễm vào cung khởi ộng nên nó luôn ược nạp vào bộ nhớ mỗi khi hệ thống máy khởi ộng.
Boot vi rút có thể gây hỏng phần khởi ộng của ĩa, thậm chí có thể làm cho ĩa không thể truy nhập ược.
File vi rút là dạng vi rút phổ biến nhất, ối tượng lây nhiễm của chúng là các file chương
trình và các file dữ liệu. Mỗi khi chương trình ược kích hoạt hoặc file dữ liệu ược nạp vào
bộ nhớ, vi rút ược kích hoạt. Mọi chương trình tiếp theo ược kích hoạt ều bị lây nhiễm vi
rút này. File vi rút có thể làm hỏng chương trình, hỏng hoặc phá hủy các file dữ liệu, ánh
cắp các dữ liệu nhạy cảm,…
Macro vi rút là một loại file vi rút ặc biệt do chúng chỉ lây nhiễm vào các tài liệu của
bộ phần mềm Microsoft Office. Macro vi rút hoạt ộng ược nhờ tính năng cho phép tạo và
thực hiện các oạn mã macro trong các tài liệu của bộ ứng dụng Microsoft Office, gồm ứng
dụng soạn thảo Word, bảng tính Excel, trình email Outlook,…. Các oạn mã macro thường
ược dùng ể tự ộng hóa 1 số việc và ược viết bằng ngôn ngữ Visual Basic for Applications
(VBA). Macro vi rút thường lây nhiễm vào các file ịnh dạng chuẩn (các template như
normal.dot và normal.dotx) và từ ó lây nhiễm vào tất cả các file tài liệu ược mở. Macro vi
rút cũng có thể ược tự ộng kích hoạt nhờ các autoexecuted macros, như AutoExecute,
Automacro và Command macro. Theo thống kê, macro vi rút chiếm khoảng 2/3 tổng lượng lOMoARcPSD| 37054152
vi rút ã ược phát hiện. Lượng tài liệu bị lây nhiễm macro vi rút ã giảm áng kể từ khi
Microsoft Office 2010 có thiết lập ngầm ịnh không cho phép tự ộng chạy các macro.
Email vi rút lây nhiễm bằng cách tự ộng gửi một bản copy của nó như 1 file ính kèm ến
tất cả các ịa chỉ email trong sổ ịa chỉ của người dùng trên máy bị lây nhiễm. Nếu người
dùng mở email hoặc file ính kèm, vi rút ược kích hoạt. Email vi rút có thể lây nhiễm rất
nhanh chóng, lan tràn trên khắp thế giới trong một thời gian ngắn. Hình 2.35 là một email
do vi rút gửi ến người dùng, theo ó email có ính kèm một file giả dạng một giấy biên nhận
chứa mã vi rút lừa người dùng mở và kích hoạt.
Hình 2.35. Một email do vi rút gửi ến người dùng 2.4.2.5. Sâu
Sâu (Worm) là một loại phần mềm ộc hại có khả năng tự lây nhiễm từ máy này sang
máy khác mà không cần chương trình chủ, vật chủ, hoặc sự trợ giúp của người dùng. Khi
sâu lây nhiễm vào một máy, nó sử dụng máy này làm “bàn ạp” ể tiếp tục rà quét, tấn công
các máy khác. Một trong các dạng sâu phổ biến là sâu mạng (network worm) sử dụng kết
nối mạng ể lây lan từ máy này sang máy khác. Hình 2.36 minh họa một mô hình lây lan
của sâu mạng: Bắt ầu từ máy F, sâu quét các máy B và E trên cổng 25 (SMTP) ể lây nhiễm.
Khi sâu lây nhiễm thành công lên máy B, nó lại tiếp tục rà quét các máy A, C và D trên
cổng 25 ể tìm ích lây nhiễm tiếp theo. Mặc dù sử dụng phương thức lây lan khác vi rút, khi
sâu hoạt ộng, nó tương tự vi rút.
Hiện nay, sâu có thể lây lan sử dụng nhiều phương pháp khác nhau. Một số sâu chỉ sử
dụng một phương pháp lây lan, nhưng một số sâu khác có khả năng lây lan theo nhiều
phương pháp. Các phương pháp lây lan chính của sâu gồm: lOMoARcPSD| 37054152
Hình 2.36. Một mô hình lây lan của sâu mạng
- Lây lan qua thư iện tử: Sâu sử dụng email ể gửi bản sao của mình ến các máy khác.
- Lây lan thông qua khả năng thực thi từ xa: Sâu gửi và thực thi một bản sao của nó
trên một máy khác thông qua việc khai thác các lỗ hổng an ninh của hệ iều hành, các
dịch vụ, hoặc phần mềm ứng dụng.
- Lây lan thông qua khả năng log-in ( ăng nhập) từ xa: Sâu ăng nhập vào hệ thống ở
xa như một người dùng và sử dụng lệnh ể sao chép bản thân nó từ máy này sang máy khác.
Sâu Code Red ược phát hiện vào tháng 7/2001 lây nhiễm thông qua việc khai thác lỗi
tràn bộ ệm khi xử lý các file .ida trong máy chủ web Microsoft IIS (Internet Information
Service). Code Red quét các ịa chỉ IP ngẫu nhiên ể tìm các hệ thống có lỗi và lây nhiễm
vào 360.000 máy chủ trong vòng 14 giờ. Sau ó, sâu Nimda ược phát hiện vào tháng 9/2001
là sâu có khả năng lây lan theo nhiều con ường:
- Qua email từ máy client sang client.
- Qua các thư mục chia sẻ trên mạng.
- Từ máy chủ web sang trình duyệt.
- Từ máy khách ến máy chủ nhờ khai thác các lỗi máy chủ.
Chỉ 22 phút sau khi ra ời, Nimda trở thành sâu có tốc ộ lan truyền nhanh nhất trên
Internet vào thời iểm ó. 2.4.2.6. Zombie/Bot
Zombie/Bot (còn gọi là Automated agent – từ ây thống nhất gọi là Bot) là một chương
trình ược thiết kế ể giành quyền kiểm soát một máy tính, hoặc thiết bị tính toán có kết nối
Internet và sử dụng máy tính bị kiểm soát ể tấn công các hệ thống khác, hoặc gửi thư rác.
Tương tự như sâu, bot có khả năng tự lây nhiễm sang các hệ thống khác mà không cần
chương trình chủ, vật chủ, hoặc hỗ trợ từ người dùng. Một tập hợp các máy tính bot dưới
sự kiểm soát của một, hoặc một nhóm kẻ tấn công ược gọi là mạng máy tính ma, hay botnet.
Kẻ tấn công kiểm soát và iều khiển các bot trong botnet thông qua một hệ thống các máy lOMoARcPSD| 37054152
chủ lệnh và iều khiển trung gian (Command and control – C&C) sử dụng các giao thức
truyền thông thông dụng như HTTP, hoặc IRC. Hình 2.37 minh họa mô hình giao tiếp giữa
các thành phần trong botnet: kẻ tấn công/chủ của botnet (botmaster) gửi lệnh cho các bot
thông qua các máy chủ C&C.
Hình 2.37. Mô hình mô hình giao tiếp giữa các thành phần trong botnet
Khác với các phần mềm ộc hại khác, các bot có khả năng tự tải mã cập nhật và nâng
cấp phiên bản từ các máy chủ C&C nhằm tăng khả năng sống sót. Các bot ịnh kỳ truy cập
ến các máy chủ C&C ể tải lệnh và mã cập nhật. Các bot thường ược iều phối và sử dụng ể
thực hiện các cuộc tấn công DDoS các máy chủ, các website của các công ty, hoặc các tổ
chức chính phủ, như ã minh hoạ trên Hình 2.23 và Hình 2.24 trong mục 2.3.4. Các máy
tính bot/zombie cũng có thể ược sử dụng ể gửi thư rác tạo ra khoản tiền không nhỏ cho các
nhóm tin tặc/kẻ tấn công, như minh họa trên Hình 2.38. 2.4.2.7. Rootkit
Rootkit là một dạng phần mềm ộc hại gồm một tập các công cụ có mục ích giành quyền
truy nhập vào hệ thống máy tính mà người dùng không có thẩm quyền không thể truy nhập.
Rootkit thường che giấu mình bằng cách ội lột một phần mềm khác. Rootkit có thể ược cài
ặt tự ộng, hoặc tin tặc cài ặt rootkit khi chiếm ược quyền quản trị hệ thống. Do rootkit có
quyền truy nhập hệ thống ở mức quản trị nên nó có toàn quyền truy nhập vào các thành
phần trong hệ thống và rất khó bị phát hiện. lOMoARcPSD| 37054152
Hình 2.38. Mô hình tin tặc sử dụng các máy tính Zombie/Bot ể gửi thư rác
2.4.2.8. Adware và Spyware
Adware (tên ầy ủ là advertising-supported software) là các phần mềm tự ộng hiển thị
các bảng quảng cáo trong thời gian người dùng tải hoặc sử dụng các phần mềm. Adware
thường ược óng gói chung với các phần mềm khác có thể dưới dạng như một phần của một
phần mềm hoặc một dịch vụ miễn phí. Adware trong một số trường hợp có thể ược coi là
một phần mềm ộc hại nếu chúng ược tự ộng cài ặt và kích hoạt mà không ược sự ồng ý của người dùng.
Spyware là một dạng phần mềm ộc hại ược cài ặt tự ộng nhằm giám sát, thu thập và
ánh cắp các thông tin nhạy cảm trên hệ thống nạn nhân. Có 4 loại spyware thường gặp,
gồm system monitor (giám sát hệ thống), trojan, adware, and tracking cookies (các cookie
theo dõi). Spyware có thể ược cài ặt vào hệ thống nạn nhân thông qua nhiều phương pháp,
như tích hợp, óng gói vào các phần mềm khác, bẫy nạn nhân tự tải và cài ặt, hoặc tin tặc
có thể sử dụng vi rút, sâu ể tải và cài ặt. Spyware thường ược trang bị khả năng ẩn mình
nên rất khó có thể phát hiện bằng các phương pháp thông thường.
2.4.3. Phòng chống phần mềm ộc hại
2.4.3.1. Nguyên tắc chung
Có thể thấy các phần mềm ộc hại là một trong các nguy cơ gây mất an toàn lớn nhất và
thường trực nhất ối với thông tin, hệ thống và người dùng do sự bùng nổ về số lượng, mức
ộ tinh vi ngày càng cao và khả năng phá hoại ngày càng lớn của chúng. Nguyên tắc chung
trong phòng chống phần mềm ộc hại vẫn là phòng vệ theo chiều sâu, trong ó nhiều nhóm
biện pháp ảm bảo an toàn cần ược áp dụng ể phòng ngừa và ngăn chặn việc lây nhiễm các
phần mềm ộc hại vào hệ thống. Có thể liệt kê các biện pháp phòng chống các phần mềm
ộc hại theo thứ tự ưu tiên từ cao ến thấp như sau:
(1) Sử dụng các biện pháp kiểm soát truy cập cung cấp bởi tường lửa và hệ iều hành ể
hạn chế giao diện tiếp xúc của hệ thống với mạng ngoài. Chẳng hạn, tường lửa có
thể chặn các kết nối trái phép từ Internet ến hệ thống máy tính ể khai thác các lỗ
hổng, hoặc tải các phần mềm ộc hại;
(2) Sử dụng công cụ rà quét và diệt trừ các phần mềm ộc hại. Với mỗi hệ thống máy
tính, nhất là các máy trạm và máy tính cá nhân, cần cài ặt một bộ công cụ (và chỉ
nên một tại mỗi thời iểm) rà quét phần mềm ộc hại có khả năng bảo vệ hệ thống theo
thời gian thực. Bộ công cụ này cần ược cập nhật thường xuyên ể ảm bảo khả năng
phát hiện và diệt trừ các phần mềm ộc hại mới nhất;
(3) Đào tạo và nâng cao ý thức cảnh giác của người dùng về mã ộc, phần mềm ộc hại,
các chương trình ứng dụng trên máy tính, trên mạng Internet không rõ nguồn gốc.
Việc nâng cao ý thức người dùng óng vai trò quan trọng trong việc phòng ngừa việc
lây lan của các dạng phần mềm ộc hại;
(4) Sử dụng các phần mềm có bản quyền. Sử dụng các phần mềm có bản quyền là cách
hiệu quả ể hạn chế các loại phần mềm ộc hại, như trojan, adware và spyware thường lOMoARcPSD| 37054152
ược tích hợp vào các công cụ phá khoá (cracker) hệ iều hành và các phần mềm ứng dụng;
(5) Thường xuyên cập nhật hệ iều hành và các phần mềm ứng dụng. Việc cập nhật
thường xuyên, nhất là các bản vá an ninh nhằm giảm thiểu các lỗ hổng bảo mật ã
biết trên hệ thống và nhờ vậy giảm thiểu khả năng bị khai thác bởi các dạng phần mềm ộc hại;
(6) Phân quyền người dùng phù hợp giúp hạn chế khả năng tự ộng cài ặt các dạng phần
mềm ộc hại lên hệ thống. Không sử dụng người dùng có quyền quản trị (root, hoặc
administrator) ể thực thi các ứng dụng. Người dùng thông thường chỉ nên ược cấp
quyền truy cập vừa ủ ể thực thi nhiệm vụ.
2.4.3.2. Các công cụ rà quét phần mềm ộc hại
Các công cụ rà quét vi rút và các phần mềm ộc hại (Antivirus software) là các phần
mềm có khả năng rà quét, bảo vệ hệ thống khỏi vi rút và các phần mềm ộc hại khác theo
thời gian thực. Hầu hết các công cụ này ều cho phép thực hiện 2 chế ộ quét: (i) quét ịnh kỳ
từng phần, hoặc toàn bộ hệ thống các file và (ii) bảo vệ hệ thống theo thời gian thực
(Realtime protection). Chúng cho phép giám sát tất cả các thao tác ọc/ghi hệ thống file ể
phát hiện các phần mềm ộc hại. Đa số công cụ rà quét vi rút và các phần mềm ộc hại hoạt
ộng dựa trên một cơ sở dữ liệu các mẫu, hoặc chữ ký của các phần mềm ộc hại ã biết. Do
vậy, ể ảm bảo hiệu quả rà quét, cơ sở dữ liệu này phải ược cập nhật thường xuyên. Một số
bộ công cụ cho phép quét theo hành vi hoặc heuristics. Hình
2.39. Màn hình chính của Microsoft Windows Defender
Có thể liệt kê một số công cụ rà quét vi rút và các phần mềm ộc hại thông dụng, như:
- Microsoft Security Essentials (Microsoft Windows 7 trở lên)
- Microsoft Windows Defender (Microsoft Windows 8 trở lên) – Hình 2.39 - Semantec Norton Antivirus - Kaspersky Antivirus lOMoAR cPSD| 37054152 - BitDefender Antivirus - AVG Antivirus - McAfee VirusScan - Trend Micro Antivirus
- F-secure Antivirus và - BKAV Antivirus.
2.5. Câu hỏi ôn tập
1) Điểm yếu hệ thống là gì? Liệt kê các nguyên nhân của sự tồn tại các iểm yếu trong hệ thống.
2) Lỗ hổng bảo mật là gì? Các lỗ hổng bảo mật thường tồn tại nhiều nhất trong thành phần nào của hệ thống?
3) Nêu các dạng lỗ hổng bảo mật thường gặp trong hệ iều hành và các phần mềm ứng dụng.
4) Mối e dọa (threat) là gì? Nêu quan hệ giữa lỗ hổng và mối e dọa.
5) Tấn công là gì? Có thể giảm thiểu khả năng bị tấn công bằng cách nào?
6) Mô tả 4 loại tấn công chính và 2 kiểu tấn công chủ ộng và thụ ộng.
7) Nêu mục ích và các dạng tấn công vào mật khẩu.
8) Tấn công chèn mã SQL là gì? Nêu các nguyên nhân của lỗ hổng chèn mã SQL. Tấn
công chèn mã SQL có khả năng cho phép tin tặc thực hiện hành ộng gì trên hệ thống nạn nhân?
9) Nêu các biện pháp phòng chống tấn công chèn mã SQL.
10) Vẽ sơ ồ, mô tả cơ chế tấn công SYN Flood và các biện pháp phòng chống.
11) Vẽ sơ ồ, mô tả cơ chế tấn công Smurf và các biện pháp phòng chống.
12) Vẽ sơ ồ và mô tả kịch bản tấn công DDoS trực tiếp và tấn công DDoS gián tiếp.
13) Mô tả cơ chế và các biện pháp phòng chống tấn công người ứng giữa.
14) Đối tượng của tấn công sử dụng các kỹ thuật xã hội là gì? Mô tả kịch bản của Trò lừa ảo Nigeria 4-1-9.
15) Tấn công pharming là gì? Mô tả các dạng tấn công pharming.
16) Tấn công APT là gì? Mô tả các thuộc tính chính của tấn công APT.
17) Phần mềm ộc hại là gì? Phân loại các phần mềm ộc hại.
18) Vi rút là gì? Nêu các phương pháp lây nhiễm và các loại vi rút.
19) Trojan là gì? Mô tả cơ chế hoạt ộng của trojan.
20) Sâu máy tính là gì? Nêu iểm khác biệt cơ bản của sâu và vi rút. Nêu các phương pháp lây lan của sâu.
21) Zombie/Bot là gì? Mô tả cơ chế hoạt ộng của Zombie/Bot.
22) Nêu nguyên tắc chung trong phòng chống phần mềm ộc hại. Tại sao chỉ nên cài ặt và
chạy một bộ phần mềm quét phần mềm ộc hoạt ộng ở chế ộ “bảo vệ theo thời gian thực”
hại tại mỗi thời iểm? lOMoARcPSD| 37054152
CHƯƠNG 3. ĐẢM BẢO AN TOÀN THÔNG TIN DỰA TRÊN MÃ HÓA
Chương 3 giới thiệu các khái niệm cơ bản về mật mã, hệ mã hóa, các phương pháp mã
hóa. Phần tiếp theo của chương trình bày một số giải thuật cơ bản của mã hóa khóa ối
xứng (DES, 3-DES và AES), mã hóa khóa bất ối xứng (RSA), các hàm băm (MD5 và SHA1),
chữ ký số, chứng chỉ số và PKI. Phần cuối của chương ề cập vấn ề quản lý và phân phối
khóa, và một số giao thức ảm bảo an toàn thông tin dựa trên mã hóa.

3.1. Khái quát về mã hóa thông tin và ứng dụng
3.1.1. Các khái niệm Mật mã
Theo từ iển Webster's Revised Unabridged Dictionary: “cryptography is the act or art
of writing secret characters”, hay mật mã là một hành ộng hoặc nghệ thuật viết các ký tự bí
mật
. Còn theo từ iển Free Online Dictionary of Computing: “cryptography is encoding data
so that it can only be decoded by specific individuals”, có nghĩa là mật mã là việc mã hóa
dữ liệu mà nó chỉ có thể ược giải mã bởi một số người chỉ ịnh
. Bản rõ, Bản mã, Mã hóa và Giải mã
Bản rõ (Plaintext), hay thông tin chưa mã hóa (Unencrypted information) là thông tin ở
dạng có thể hiểu ược.
Bản mã (Ciphertext), hay thông tin ã ược mã hóa (Encrypted information) là thông tin
ở dạng ã bị xáo trộn.
Mã hóa (Encryption) là hành ộng xáo trộn (scrambling) bản rõ ể chuyển thành bản mã.
Giải mã (Decryption) là hành ộng giải xáo trộn (unscrambling) bản mã ể chuyển thành bản rõ.
Hình 3.1 mô tả 2 khâu chính của một hệ mã hóa, trong ó khâu Mã hóa chuyển Bản rõ
thành Bản mã sử dụng khoá mã hoá K1 ược thực hiện ở phía người gửi và khâu Giải mã
chuyển Bản mã thành Bản rõ sử dụng khoá giải mã K2 ược thực hiện ở phía người nhận.
Các khoá K1 và K2 có thể giống nhau hoặc khác nhau. Nếu K1 khác K2 thì chúng có quan
hệ về mặt toán học với nhau.
Giải thuật mã hóa & giải mã, Bộ mã hóa, Khóa/Chìa, Không gian khóa
Giải thuật mã hóa (Encryption algorithm) là giải thuật dùng ể mã hóa thông tin và giải
thuật giải mã (Decryption algorithm) dùng ể giải mã thông tin.
Một bộ mã hóa (Cipher) gồm một giải thuật ể mã hóa và một giải thuật ể giải mã thông tin.
Khóa/Chìa (Key) là một chuỗi ược sử dụng trong giải thuật mã hóa và giải mã.
Không gian khóa (Keyspace) là tổng số khóa có thể có của một hệ mã hóa. Ví dụ, nếu
sử dụng khóa kích thước 64 bit thì không gian khóa là 264. lOMoARcPSD| 37054152
Hình 3.1. Các khâu Mã hóa và Giải mã của một hệ mã hóa
Mã hóa khóa ối xứng, Mã hóa khóa bất ối xứng, Hàm băm, Thám mã
Mã hóa khóa ối xứng (Symmetric key cryptography) là dạng mã hóa trong ó một khóa
ược sử dụng cho cả khâu mã hóa và khâu giải mã. Do khóa sử dụng chung cần phải ược
giữ bí mật nên mã hóa khóa ối xứng còn ược gọi là mã hóa khóa bí mật (Secret key
cryptography). Hình 3.2 minh họa hoạt ộng của một hệ mã hóa khóa ối xứng, trong ó một
khóa bí mật duy nhất ược sử dụng cho cả hai khâu mã hóa và giải mã một thông iệp.
Hình 3.2. Mã hóa khóa ối xứng sử dụng chung 1 khóa bí mật
Mã hóa khóa bất ối xứng (Asymmetric key cryptography) là dạng mã hóa trong ó một
cặp khóa ược sử dụng: khóa công khai (public key) dùng ể mã hóa, khóa riêng (private
key) dùng ể giải mã. Chỉ có khóa riêng cần phải giữ bí mật, còn khóa công khai có thể phổ
biến rộng rãi. Do khóa ể mã hóa có thể công khai nên ôi khi mã hóa khóa bất ối xứng còn
ược gọi là mã hóa khóa công khai (Public key cryptography). Hình 3.3 minh họa hoạt ộng
của một hệ mã hóa khóa bất ối xứng, trong ó một khóa công khai ược sử dụng cho khâu
mã hóa và khóa riêng cho khâu giải mã thông iệp.
Hàm băm (Hash function) là một ánh xạ chuyển các dữ liệu có kích thước thay ổi về dữ
liệu có kích thước cố ịnh. Hình 3.4 minh họa ầu vào (Input) và ầu ra (Digest) của hàm băm.
Trong các loại hàm băm, hàm băm 1 chiều (One-way hash function) là hàm băm, trong ó
việc thực hiện mã hóa tương ối ơn giản, còn việc giải mã thường có ộ phức tạp rất lớn, hoặc
không khả thi về mặt tính toán. lOMoARcPSD| 37054152
Hình 3.3. Mã hóa khóa bất ối xứng sử dụng một cặp khóa
Hình 3.4. Minh họa ầu vào (Input) và ầu ra (Digest) của hàm băm
Thám mã hay phá mã (Cryptanalysis) là quá trình giải mã thông iệp ã bị mã hóa mà
không cần có trước thông tin về giải thuật mã hóa và khóa mã. Thám mã ra ời, phát triển
song hành với mật mã và là công việc òi hỏi khối lượng tính toán rất lớn, cũng như kinh
nghiệm, tri thức chuyên gia. Nhìn chung, thám mã liên quan ến việc phân tích toán học các
giải thuật mật mã, khai thác các iểm yếu trong giải thuật và cài ặt các hệ mã hóa nhằm khôi
phục thông iệp gốc và/hoặc khóa mã.
3.1.2. Các thành phần của một hệ mã hóa
Một hệ mã hóa hay hệ mật mã (Cryptosystem) là một bản cài ặt của các kỹ thuật mật
mã và các thành phần có liên quan ể cung cấp dịch vụ bảo mật thông tin. Hình 3.5 nêu các
thành phần của một hệ mã hóa ơn giản dùng ể ảm bảo tính bí mật của thông tin từ người
gửi truyền ến người nhận mà không bị một bên thứ ba nghe lén. Các thành phần của một
hệ mã hóa ơn giản gồm bản rõ, giải thuật mã hóa, bản mã, giải thuật giải mã, khóa mã hóa
và khóa giải mã. Một thành phần quan trọng khác của một hệ mã hóa là không gian khóa -
là tập hợp tất cả các khóa có thể có. Ví dụ, nếu chọn kích thước khóa là 64 bit thì không lOMoARcPSD| 37054152
gian khóa sẽ là 264. Nhìn chung, hệ mã hóa có ộ an toàn càng cao nếu không gian khóa lựa chọn càng lớn.
Hình 3.5. Các thành phần của một hệ mã hóa ơn giản
3.1.3. Lịch sử mã hóa
Có thể nói mã hóa hay mật mã là con ẻ của toán học nên sự phát triển của mật mã i liền
với sự phát triển của toán học. Tuy nhiên, do nhiều giải thuật mật mã òi hỏi khối lượng tính
toán lớn nên mật mã chỉ thực sự phát triển mạnh cùng với sự ra ời và phát triển của máy
tính iện tử. Sau ây là một số mốc trong sự phát triển của mật mã và ứng dụng mật mã:
- Các kỹ thuật mã hoá thô sơ ã ược người cổ Ai cập sử dụng cách ây 4000 năm.
- Người cổ Hy lạp, Ấn ộ cũng ã sử dụng mã hoá cách ây hàng ngàn năm.
- Các kỹ thuật mã hoá chỉ thực sự phát triển mạnh từ thế kỷ 1800 nhờ công cụ toán
học, và phát triển vượt bậc trong thế kỷ 20 nhờ sự phát triển của máy tính và ngành công nghệ thông tin.
- Trong chiến tranh thế giới thứ I và II, các kỹ thuật mã hóa ược sử dụng rộng rãi trong
liên lạc quân sự sử dụng sóng vô tuyến. Quân ội các nước ã sử dụng các công cụ phá
mã, thám mã ể giải mã các thông iệp của quân ịch.
- Năm 1976 chuẩn mã hóa DES (Data Encryption Standard) ược Cơ quan mật vụ Mỹ
(NSA – National Security Agency) thừa nhận và sử dụng rộng rãi.
- Năm 1976, hai nhà khoa học Whitman Diffie và Martin Hellman ã ưa ra khái niệm
mã hóa khóa bất ối xứng (Asymmetric key cryptography), hay mã hóa khóa công
khai (Public key cryptography) ưa ến những thay ổi lớn trong kỹ thuật mật mã. Theo
ó, các hệ mã hóa khóa công khai bắt ầu ược sử dụng rộng rãi nhờ khả năng hỗ trợ
trao ổi khóa dễ dàng hơn và do các hệ mã hóa khóa bí mật gặp khó khăn trong quản
lý và trao ổi khóa, ặc biệt khi số lượng người dùng lớn.
- Năm 1977, ba nhà khoa học Ronald Rivest, Adi Shamir, và Leonard Adleman giới
thiệu giải thuật mã hóa khóa công khai RSA. Từ ó, RSA trở thành giải thuật mã hóa
khóa công khai ược sử dụng rộng rãi nhất do RSA có thể vừa ược sử dụng ể mã hóa
thông tin và sử dụng trong chữ ký số.
- Năm 1991, phiên bản ầu tiên của PGP (Pretty Good Privacy) ra ời. lOMoARcPSD| 37054152
- Năm 2000, chuẩn mã hóa AES (Advanced Encryption Standard) ược thừa nhận và ứng dụng rộng rãi.
3.1.4. Mã hóa dòng và mã hóa khối
3.1.4.1. Mã hóa dòng
Mã hóa dòng hay mã hóa luồng (Stream cipher) là kiểu mã hóa mà từng bit, hoặc ký tự
của bản rõ ược kết hợp với từng bit, hoặc ký tự tương ứng của khóa ể tạo thành bản mã.
Hình 3.6 biểu diễn quá trình mã hóa và giải mã trong mã hóa dòng. Theo ó, ở bên gửi các
bit Pi của bản rõ ược liên tục ưa vào kết hợp với bit tương ứng Ki của khóa ể tạo thành bit
Ci; Ở bên nhận, bit mã Ci ược kết hợp với bit khóa Ci ể khôi phục bit rõ Pi. Một bộ sinh
luồng khóa ược sử dụng ể liên tục sinh các bit khóa Ki từ khóa gốc K. Các giải thuật mã
hóa dòng tiêu biểu như A5, hoặc RC4 ược sử dụng rộng rãi trong truyền thông, viễn thông.
Hình 3.6. Mô hình phương pháp mã hóa dòng
3.1.4.2. Mã hóa khối
Hình 3.7. Mô hình phương pháp mã hóa khối
Mã hóa khối (Block cipher) là kiểu mã hóa mà dữ liệu ược chia ra thành từng khối có
kích thước cố ịnh ể mã hóa và giải mã. Hình 3.7 biểu diễn quá trình mã hóa và giải mã
trong mã hóa khối. Theo ó, ở bên gửi bản rõ ược chia thành các khối có kích thước cố ịnh,
sau ó từng khối ược mã hóa ể chuyển thành khối mã. Các khối mã ược ghép lại thành bản
mã. Ở bên nhận, bản mã lại ược chia thành các khối và từng lại ược giải mã ể chuyển thành
khối rõ. Cuối cùng ghép các khối rõ ể có bản rõ hoàn chỉnh. Các giải thuật mã hóa khối
tiêu biểu như DES, 3-DES, IDEA, AES ược sử dụng rất rộng rãi trong mã hóa dữ liệu với
kích thước khối 64, hoặc 128 bit.
3.1.5. Ứng dụng của mã hóa lOMoARcPSD| 37054152
Mã hoá thông tin có thể ược sử dụng ể ảm bảo an toàn thông tin với các thuộc tính: bí
mật (confidentiality), toàn vẹn (integrity), xác thực (authentication), không thể chối bỏ
(non-repudiation). Cụ thể, các kỹ thuật mã hóa ược ứng dụng rộng rãi trong các hệ thống,
công cụ và dịch vụ bảo mật như:
- Dịch vụ xác thực (Kerberos, SSO, RADIUS,…) - Kiểm soát truy cập
- Các công cụ cho ảm bảo an toàn cho truyền thông không dây
- Các nền tảng bảo mật như PKI, PGP
- Các giao thức bảo mật như SSL/TLS, SSH, SET, IPSec
- Các hệ thống bảo mật kênh truyền, như VPN
- Các công nghệ và ứng dụng dựa trên mật mã, như công nghệ khối chuỗi
(Blockchain), tiền kỹ thuật số (Bitcoin, Ethereum,...).
3.2. Các phương pháp mã hóa
Phương pháp mã hóa là phương pháp xáo trộn dữ liệu ể tạo bản mã từ bản rõ. Các
phương pháp mã hóa cổ iển thường phải giữ bí mật phương pháp xáo trộn dữ liệu. Ngược
lại, các phương pháp mã hóa hiện ại thường không giữ bí mật phương pháp xáo trộn dữ
liệu, nhưng giữ bí mật khóa mã. Mục này mô tả một số phương pháp mã hóa cổ iển và hiện
ại ã và ang ược sử dụng, bao gồm phương pháp thay thế, phương pháp hoán vị, phương
pháp XOR, phương pháp Vernam, phương pháp sách hoặc khóa chạy và phương pháp hàm
băm. Phần tiếp theo của mục này trình bày chi tiết các phương pháp mã hóa kể trên.
3.2.1. Phương pháp thay thế
Phương pháp thay thế (Substitution) là phương pháp thay thế một giá trị này bằng một
giá trị khác, như thay một ký tự bằng một ký tự khác, hoặc thay một bit bằng một bit khác.
Hình 3.8 biểu diễn bộ chữ gốc, bộ chữ mã và ví dụ mã hóa sử dụng hệ mã hóa nổi tiếng
thời La Mã là Caesar cipher. Nguyên tắc của Caesar cipher là dịch 3 chữ trong bộ ký tự
tiếng Anh sang bên phải (AD, BE, CF,….). Bản rõ “LOVE” ược mã hóa thành “ORYH”. Hình
3.8. Mã hóa bằng hệ mã hóa Caesar cipher
Để tăng ộ an toàn của phương pháp thay thế, người ta có thể sử dụng nhiều bộ chữ mã,
như minh họa trên Hình 3.9 với 4 bộ chữ mã (Substitution cipher), với nguyên tắc thay thế:
ký tự số 1 ở bản rõ thay thế sử dụng bộ chữ mã số 1, ký tự số 2 sử dụng bộ chữ mã số 2,…,
ký tự số 5 sử dụng bộ chữ mã số 1, ký tự số 6 sử dụng bộ chữ mã số 2,… Nếu các bộ chữ
mã ược sắp ặt ngẫu nhiên thì một ký tự xuất hiện ở các vị trí khác nhau trong bản rõ sẽ ược
chuyển ổi thành các ký tự khác nhau trong bản mã. Điều này giúp tăng ộ an toàn do làm
tăng ộ khó trong việc phân tích oán bản rõ từ bản mã. lOMoARcPSD| 37054152
Hình 3.9. Phương pháp thay thế với 4 bộ chữ mã
3.2.2. Phương pháp hoán vị
Phương pháp hoán vị, hoặc ổi chỗ (permutation) thực hiện sắp xếp lại các giá trị trong
một khối bản rõ ể tạo bản mã. Thao tác hoán vị có thể thực hiện với từng bit hoặc từng byte
(ký tự). Hình 3.10 minh họa ví dụ mã hóa bằng phương pháp hoán vị thực hiện ổi chỗ các
bit, trong ó việc ổi chỗ ược thực hiện theo khóa trong khối 8 bit, tính từ bên phải. Hình 3.11
minh họa ví dụ mã hóa bằng phương pháp hoán vị thực hiện ổi chỗ các ký tự, trong ó việc
ổi chỗ ược thực hiện theo khóa trong khối 8 ký tự, tính từ bên phải. Với bản rõ
“SACKGAULSPARENOONE” ta có 3 khối, 2 khối ầu ủ 8 ký tự, còn khối cuối chỉ có 2
ký tự “NE” nên phải chèn thêm dấu trắng cho ủ khối 8 ký tự.
Hình 3.10. Phương pháp hoán vị thực hiện ổi chỗ các bit
Hình 3.11. Phương pháp hoán vị thực hiện ổi chỗ các ký tự
3.2.3. Phương pháp XOR
Hình 3.12. Ví dụ mã hóa bằng phương pháp XOR
Phương pháp mã hóa XOR sử dụng phép toán logic XOR ể tạo bản mã, trong ó từng
bit của bản rõ ược XOR với bit tương ứng của khóa. Để giải mã, ta thực hiện XOR từng
bit của bản mã với bit tương ứng của khóa. Hình 3.12 minh họa quá trình mã hóa bản rõ
“CAT” với khóa “VVV”. Theo ó, các ký tự của bản rõ và khóa ược chuyển thành mã ASCII
và biểu diễn dưới dạng nhị phân. Sau ó, thực hiện phép toán XOR trên các bit tương ứng
của bản rõ và khóa ể tạo bản mã. lOMoARcPSD| 37054152
3.2.4. Phương pháp Vernam
Phương pháp Vernam sử dụng một tập ký tự ể nối vào các ký tự của bản rõ ể tạo bản
mã. Tập ký tự này ược gọi là one-time pad và mỗi ký tự trong tập chỉ dùng 1 lần trong một
tiến trình mã hóa. Với bộ chữ tiếng Anh có 26 chữ, mã hóa bằng phương pháp Vernam ược thực hiện như sau:
- Các ký tự của bản rõ và các ký tự của tập nối thêm (one-time pad) ược chuyển thành số trong khoảng 1-26;
- Cộng giá trị của ký tự trong bản rõ với giá trị tương ứng trong tập nối thêm;
- Nếu giá trị cộng lớn hơn 26 thì em trừ cho 26 ( ây chính là phép modulo – chia lấy phần dư).
- Chuyển giá trị số thành ký tự mã.
Hình 3.13 minh họa mã hóa bản rõ “SACKGAULSPARENOONE” bằng phương pháp
Vernam với tập nối thêm “FPQRNSBIEHTZLACDGJ”.
Hình 3.13. Mã hóa bằng phương pháp Vernam
3.2.5. Phương pháp sách hoặc khóa chạy
Phương pháp sách, hoặc khóa chạy thực hiện việc mã hóa và giải mã sử dụng các khóa
mã chứa trong các cuốn sách. Hiện nay phương pháp này thường ược dùng trong các bộ
phim trinh thám do tính chất kỳ bí của nó. Ví dụ như, với bản mã “259,19,8; 22,3,8; 375,7,4;
394,17,2” và cuốn sách ược dùng chứa khóa là “A Fire Up on the Deep”, ta có thể giải mã như sau:
- Trang 259, dòng 19, từ thứ 8 là sack - Trang 22, dòng 3, từ thứ 8 là island
- Trang 375, dòng 7, từ thứ 4 là sharp
- Trang 394, dòng 17, từ thứ 2 là path
Bản rõ tương ứng của bản mã “259,19,8;22,3,8;375,7,4;394,17,2” là “sack island sharp path”.
3.2.6. Phương pháp hàm băm
Các hàm băm (Hash functions) là các giải thuật ể tạo các bản tóm tắt (digest) của thông
iệp, thường ược sử dụng ể nhận dạng và ảm bảo tính toàn vẹn của thông iệp.
Độ dài của thông iệp ầu vào là bất kỳ, nhưng ầu ra hàm băm thường có ộ dài cố ịnh. Chi
tiết về các hàm băm ược ở mục 3.3.3. Các hàm băm thông dụng gồm:
- Các hàm băm MD2, MD4, MD5 với ộ dài chuỗi ầu ra là 128 bit;
- Hàm băm MD6 cho chuỗi ầu ra có ộ dài trong khoảng 0 ến 512 bit; lOMoAR cPSD| 37054152
- Các hàm băm SHA0, SHA1 với ộ dài chuỗi ầu ra là 160 bit;
- Các hàm băm SHA2, gồm SHA256, SHA384, SHA512 cho phép một số lựa chọn
chuỗi ầu ra tương ứng 256, 384 và 512 bit;
- Hàm băm SHA3 cho chuỗi ầu ra có ộ dài trong khoảng 0 ến 512 bit;
- Hàm băm CRC32 với chuỗi ầu ra 32 bit sử dụng trong kiểm tra dư thừa mạch vòng.
3.3. Các giải thuật mã hóa
Các giải thuật mã hóa là các giải thuật cho phép ảm bảo tính bí mật của thông tin lưu
trữ, hoặc thông iệp truyền ưa bằng cách chuyển ổi thông iệp bản rõ thành bản mã ở bên
người gửi và khôi phục bản rõ ban ầu từ bản mã ở bên người nhận. Mục này tập trung trình
bày hai nhóm giải thuật mã hóa ược sử dụng phổ biến, bao gồm:
- Các giải thuật mã hóa khóa ối xứng với các ại diện là DES, 3-DES và AES, và -
Các giải thuật mã hóa khóa bất ối xứng với ại diện tiêu biểu là RSA.
3.3.1. Các giải thuật mã hóa khóa ối xứng 3.3.1.1. Khái quát
Mã hóa khóa ối xứng hay thường gọi là mã hóa khóa bí mật sử dụng một khóa bí mật
duy nhất cho cả quá trình mã hóa và giải mã. Khóa bí mật ược sử dụng trong quá trình mã
hóa và giải mã còn ược gọi là khóa chung, hay khóa chia sẻ (Shared key). Khóa bí mật
dùng chung cần ược bên gửi và bên nhận chia sẻ một cách an toàn trước khi có thể thực
hiện việc mã hóa và giải mã các thông iệp. Hình 3.2, mục 3.1 ã mô tả hoạt ộng của một hệ
mã hóa bất ối xứng, trong ó một khóa bí mật chia sẻ ược sử dụng cho cả quá trình mã hóa và giải mã.
Các hệ mã hóa khóa ối xứng thường sử dụng khóa với kích thước tương ối ngắn. Một
số kích thước khóa ược sử dụng phổ biến là 64, 128, 192 và 256 bit. Do sự phát triển nhanh
về tốc ộ tính toán của máy tính, nên các khóa có kích thước nhỏ hơn 128 bit ược xem là
không an toàn và hầu hết các hệ mã hóa khóa ối xứng ảm bảo an toàn hiện tại sử dụng khóa
có kích thước từ 128 bit trở lên. Ưu iểm nổi bật của các hệ mã hóa khóa ối xứng là có ộ an
toàn cao và tốc ộ thực thi nhanh. Tuy nhiên, nhược iểm lớn nhất của các hệ mã hóa khóa
ối xứng là việc quản lý và phân phối khóa rất khó khăn, ặc biệt là trong các môi trường mở
như mạng Internet do các bên tham gia phiên truyền thông cần thực hiện việc trao ổi các
khóa bí mật một cách an toàn trước khi có thể sử dụng chúng ể mã hóa và giải mã các thông iệp trao ổi.
Một số hệ mã hóa khóa ối xứng tiêu biểu, gồm DES (Data Encryption Standard), 3DES
(Triple-DES), AES (Advanced Encryption Standard), IDEA (International Data
Encryption Algorithm), Blowfish, Twofish, RC4 và RC5. Phần tiếp theo của mục này là
mô tả các giải thuật mã hóa DES, 3-DES và AES do chúng là các giải thuật ã và ang ược
sử dụng rộng rãi nhất trên thực tế. 3.3.1.2. Giải thuật mã hóa DES a. Giới thiệu
DES (Data Encryption Standard) ược phát triển tại IBM với tên gọi Lucifer vào ầu
những năm 1970 và ược chấp nhận là chuẩn mã hóa ở Mỹ vào năm 1977. DES ược sử dụng lOMoARcPSD| 37054152
rộng rãi trong những năm 1970 và 1980. DES là dạng mã hóa khối với khối dữ liệu vào
kích thước 64 bit và khóa 64 bit, trong ó thực sử dụng 56 bit (còn gọi là kích thước hiệu
dụng của khóa) và 8 bit dùng cho kiểm tra chẵn lẻ.
Một ưu iểm của DES là sử dụng chung một giải thuật cho cả khâu mã hóa và khâu giải
mã, như minh họa trên Hình 3.14, trong ó P là khối bản rõ 64 bit, K là khóa với kích thước
hiệu dụng 56 bit, C là khối bản mã 64 bit, DES biểu diễn khâu mã hóa và DES-1 biểu diễn
khâu giải mã. Hiện nay DES ược coi là không an toàn do nó có không gian khóa nhỏ, dễ
bị vét cạn và tốc ộ tính toán của các hệ thống máy tính ngày càng nhanh trong những năm gần ây.
Hình 3.14. Các khâu mã hóa và giải mã của DES
b. Thủ tục sinh khoá phụ
DES sử dụng một thủ tục sinh 16 khóa phụ từ khóa chính ể sử dụng trong 16 vòng lặp
hàm Feistel. Hình 3.15 minh họa thủ tục sinh 16 khóa phụ từ khóa chính của DES. Các
bước xử lý chính của thủ tục sinh khóa phụ như sau:
- 56 bit khóa ược chọn từ khóa gốc 64 bit bởi PC1 (Permuted Choice 1). 8 bit còn lại
ược hủy hoặc dùng ể kiểm tra chẵn lẻ;
- 56 bit ược chia thành 2 phần 28 bit, mỗi phần ược xử lý riêng;
- Mỗi phần ược quay trái 1 hoặc 2 bit;
- Hai phần ược ghép lại và 48 bit ược chọn làm khóa phụ 1 (Subkey 1) bởi PC2; - Lặp
lại bước trên ể tạo 15 khóa phụ còn lại. c. Mã hoá khối bản rõ
Với mỗi khối dữ liệu ầu vào 64 bit, DES thực hiện 3 bước xử lý như minh họa trên Hình
3.16 ể chuyển nó thành khối mã 64 bit tương ứng. Các bước cụ thể gồm:
- Bước 1: Hoán vị khởi tạo (IP – Initial Permutation);
- Bước 2: 16 vòng lặp chính thực hiện xáo trộn dữ liệu sử dụng hàm Feistel (F). Sau
mỗi vòng lặp, các kết quả trung gian ược kết hợp lại sử dụng phép (XOR); - Bước
3: Hoán vị kết thúc (FP – Final Permutation). lOMoARcPSD| 37054152
Hình 3.15. Thủ tục sinh các khóa phụ từ khóa chính của DES lOMoARcPSD| 37054152
Hình 3.16. Các bước xử lý chuyển khối rõ 64 bit thành khối mã 64 bit của DES
Hàm Feistel (F) là hạt nhân trong các vòng lặp xử lý dữ liệu của DES. Trước hết,
khối 64 bit ược chia thành 2 khối 32 bit và ược xử lý lần lượt. Hàm Feistel ược thực
hiện trên một khối dữ liệu 32 bit gồm 4 bước xử lý như minh họa trên Hình 3.17. Cụ
thể, các bước xử lý của DES trên mỗi khối 32 bit (Half Block 32 bits) như sau:
- E (Expansion): thực hiện mở rộng 32 bit khối ầu vào thành 48 bit bằng cách nhân ôi một nửa số bit. -
: Trộn khối 48 bit kết quả ở bước E với khóa phụ 48 bit. Có 16 khóa phụ (Subkey)
ược tạo từ khóa chính ể sử dụng cho 16 vòng lặp.
- Si (Substitution): Khối dữ liệu 48 bit ược chia thành 8 khối 6 bit và ược chuyển cho
các bộ thay thế (S1-S8). Mỗi bộ thay thế Si sử dụng phép chuyển ổi phi tuyến tính ể
chuyển 6 bit ầu vào thành 4 bit ầu ra theo bảng tham chiếu. Các bộ thay thế là thành
phần nhân an ninh (Security core) của DES.
- P (Permutation): khối 32 bit ầu ra từ các bộ thay thế ược sắp xếp bằng phép hoán vị
cố ịnh (Fixed permutation) cho ra ầu ra 32 bit. Hình
3.17. Các bước xử lý của hàm Feistel (F)
d. Giải mã khối bản mã
Như ã ề cập, giải thuật DES có thể sử dụng cho cả khâu mã hóa và giải mã. Trong khâu
giải mã các bước xử lý tương tự khâu mã hóa. Tuy nhiên, các khóa phụ sử dụng cho các
vòng lặp ược sử dụng theo trật tự ngược lại: khóa phụ số 16, 15,…, 2, 1 ược sử dụng cho
các vòng lặp số 1, 2,…, 15, 16 tương ứng. 3.3.1.3. 3-DES
3-DES hay Triple DES có tên ầy ủ là Triple Data Encryption Algorithm (TDEA) ược
phát triển từ giải thuật DES bằng cách áp dụng DES 3 lần cho mỗi khối dữ liệu ầu vào 64
bit. 3-DES sử dụng một bộ gồm 3 khóa DES: K1, K2, K3, trong ó mỗi khóa kích thước
hiệu dụng là 56 bit. 3-DES cho phép lựa chọn các bộ khóa:
- Lựa chọn 1: cả 3 khóa ộc lập, với tổng kích thước bộ khóa là 168 bit; lOMoAR cPSD| 37054152
- Lựa chọn 2: K1 và K2 ộc lập, K3 = K1, với tổng kích thước bộ khóa là 112 bit; lOMoARcPSD| 37054152 -
Lựa chọn 3: 3 khóa giống nhau, K1 = K2 = K3, với tổng kích thước bộ khóa là 56 bit.
Hình 3.18 biểu diễn quá trình mã hóa và giải mã với giải thuật 3-DES, trong ó khâu
mã hóa ược ký hiệu là E và khâu giải mã ược ký hiệu là D. Theo ó, ở bên gửi bản rõ
(Plaintext) ược mã hóa bằng khóa K1, giải mã bằng khóa K2 và mã hóa bằng khóa K3 ể
cho ra bản mã (Ciphertext). Ở bên nhận, quá trình giải mã bắt ầu bằng việc giải mã bằng
khóa K3, sau ó mã hóa bằng khóa K2 và cuối cùng giải mã bằng khóa K1 ể khôi phục bản
rõ. Ưu iểm của 3-DES là nâng cao ược ộ an toàn nhờ tăng kích thước khóa. Tuy nhiên,
nhược iểm chính của 3-DES là tốc ộ thực thi chậm do phải thực hiện DES lặp 3 lần cho
mỗi khâu mã hóa và giải mã.
Hình 3.18. Mã hóa và giải mã với giải thuật 3-DES
3.3.1.4. Giải thuật mã hóa AES a. Giới thiệu
AES (Advanced Encryption Standard) là một chuẩn mã hóa dữ liệu ược Viện Tiêu
chuẩn và Công nghệ Mỹ (NIST) công nhận năm 2001. AES ược xây dựng dựa trên
Rijndael cipher phát triển và công bố năm 1998 bởi 2 nhà mật mã học người Bỉ là Joan
Daemen và Vincent Rijmen. AES là dạng mã hóa khối, với khối dữ liệu vào có kích thước
là 128 bit và khóa bí mật với kích thước có thể là 128, 192, hoặc 256 bit. AES ược thiết
kế dựa trên mạng hoán vị-thay thế (Substitution-permutation network) và nó có thể cho
tốc ộ thực thi cao khi cài ặt bằng cả phần mềm và phần cứng. Đặc biệt, giải thuật AES ã
ược tích hợp vào các bộ vi xử lý gần ây của hãng Intel dưới dạng tập lệnh AES-NI, giúp
tăng áng kể tốc ộ thực thi các thao tác mã hóa và giải mã dựa trên AES.
AES vận hành dựa trên một ma trận vuông 4x4, ược gọi là state (trạng thái). Ma trận
này gồm 16 phần tử, mỗi phần tử là 1 byte dữ liệu. State ược khởi trị là khối 128 bit bản
rõ và qua quá trình biến ổi sẽ chứa khối 128 bit bản mã ở ầu ra. Như ã ề cập, AES hỗ trợ
3 kích thước khóa và kích thước của khóa quyết ịnh số vòng lặp chuyển ổi cần thực hiện
ể chuyển bản rõ thành bản mã như sau:
- 10 vòng lặp với khóa 128 bit; lOMoARcPSD| 37054152 -
12 vòng lặp với khóa 192 bit; -
14 vòng lặp với khóa 256 bit. b. Quá trình mã hóa
Giải thuật AES cho mã hóa dữ liệu, như minh họa trên Hình 3.19, gồm các bước xử lý chính như sau:
- Mở rộng khóa (Key Expansion): các khóa vòng (Round key) dùng trong các vòng
lặp ược sinh ra từ khóa chính AES sử dụng thủ tục sinh khóa Rijndael.
Hình 3.19. Các bước xử lý mã hóa dữ liệu của AES
- Vòng khởi tạo (Initial Round): Thực hiện hàm AddRoundKey, trong ó mỗi byte
trong state ược kết hợp với khóa vòng sử dụng phép XOR.
- Các vòng lặp chính (Rounds): Có 4 hàm biến ổi dữ liệu ược thực hiện trong mỗi vòng, gồm:
+ SubBytes: hàm thay thế phi tuyến tính, trong ó mỗi byte trong state ược thay thế
bằng một byte khác sử dụng bảng tham chiếu S-box;
+ ShiftRows: hàm ổi chỗ, trong ó mỗi dòng trong state ược dịch một số bước theo chu kỳ; lOMoARcPSD| 37054152 -
+ MixColumns: trộn các cột trong state, kết hợp 4 bytes trong mỗi cột. + AddRoundKey.
Vòng cuối (Final Round): Tương tự các vòng lặp chính, nhưng chỉ thực hiện 3 hàm
biến ổi dữ liệu, gồm: + SubBytes; + ShiftRows; + AddRoundKey. c. Mở rộng khóa
Hình 3.20. Thủ tục sinh khóa Rijndael
Khâu mở rộng khóa AES sử dụng thủ tục sinh khóa Rijndael ể sinh các khóa vòng
(Round key) cho các vòng lặp xử lý như biểu diễn trên Hình 3.20. Thủ tục Rijndael nhận
ầu vào là khóa chính AES (cipher key) và xuất ra một khóa vòng (Subkey/Round key) sau
mỗi vòng lặp. Một vòng lặp của thủ tục Rijndael gồm các khâu:
- Rotword: quay trái 8 bit từng từ 32 bit từ khóa gốc;
- SubBytes: thực hiện phép thay thế sử dụng bảng tham chiếu S-box.
- Rcon: tính toán giá trị Rcon(i) = x(i-1) mod x8 + x4 + x3 + x + 1
- ShiftRow: thực hiện ổi chỗ tương tự hàm ShiftRows của AES. d. Các hàm xử lý chính
Hàm SubBytes: Mỗi byte trong ma trận state ược thay thế bởi 1 byte trong Rijndael S-
box, hay bij = S(aij) như minh họa trên Hình 3.21. S-box là một bảng tham chiếu phi tuyến lOMoAR cPSD| 37054152 -
tính, ược tạo ra bằng phép nhân nghịch ảo một số cho trước trong trường GF(28). Nếu như
trong khâu mã hóa S-box ược sử dụng thì bảng S-box ảo ược sử dụng trong khâu giải mã.
Hàm ShiftRows: Các dòng của ma trận state ược dịch theo chu kỳ sang trái theo nguyên
tắc: hàng số 0 giữ nguyên, hàng số 1 dịch 1 byte sang trái, hàng số 2 dịch 2 byte và hàng
số 3 dịch 3 byte, như minh họa trên Hình 3.22. lOMoARcPSD| 37054152
Hàm MixColumns: Mỗi cột của ma trận state ược nhân với một a thức c(x), như minh
họa trên Hình 3.23. Đa thức c(x) = 3x3 + x2 + x +2.
Hàm AddRoundKey: Mỗi byte của ma trận state ược kết hợp với một byte tương ứng
của khóa vòng sử dụng phép (XOR), như minh họa trên Hình 3.24.
Hình 3.21. Hàm SubBytes sử dụng Rijndael S-box
Hình 3.22. Hàm ShiftRows
Hình 3.23. Hàm MixColumns lOMoARcPSD| 37054152
Hình 3.24. Hàm AddRoundKey e. Quá trình giải mã
Hình 3.25. Quá trình mã hóa và giải mã trong AES
Khâu giải mã trong AES cũng gồm các bước xử lý tương tự như khâu mã hóa. Hình
3.25 biểu diễn quá trình mã hóa và giải mã trong AES. Theo ó, ngoài bước Mở rộng khóa,
quá trình giải mã gồm Vòng khởi tạo (AddRoundKey), Các vòng lặp chính (Decryption
round) và Vòng cuối (Last round) ể chuyển khối mã thành khối rõ. Điểm khác biệt chính
của khâu giải mã so với khâu mã hóa là các hàm ảo ược sử dụng, như các hàm ảo
InvSubBytes, InvShiftRows và InvMixColumns tương ứng thay cho các hàm SubBytes, ShiftRows và MixColumns.
3.3.2. Các giải thuật mã hóa khóa bất ối xứng 3.3.2.1. Khái quát
Mã hóa khóa bất ối xứng, ôi khi ược gọi là mã hóa khóa công khai sử dụng một cặp
khóa cho quá trình mã hóa và giải mã. Trong cặp khóa, khóa công khai ược sử dụng cho
mã hóa và khóa riêng ược sử dụng cho giải mã. Chỉ khóa riêng cần giữ bí mật, còn khóa
công khai có thể phổ biến rộng rãi, nhưng phải ảm bảo tính toàn vẹn và xác thực chủ thể
của khóa. Hình 3.3, mục 3.1 ã mô tả hoạt ộng của một hệ mã hóa khóa bất ối xứng, trong
ó một cặp khóa, gồm khóa công khai và khóa riêng tương ứng ược sử dụng cho quá trình mã hóa và giải mã.
Đặc iểm nổi bật của các hệ mã hóa khóa bất ối xứng là kích thước khóa lớn, lên ến
hàng ngàn bit. Do vậy, các hệ mã hóa dạng này thường có tốc ộ thực thi chậm hơn nhiều
lần so với các hệ mã hóa khóa ối xứng với ộ an toàn tương ương. Mặc dù vậy, các hệ mã lOMoAR cPSD| 37054152
hóa khóa bất ối xứng có khả năng ạt ộ an toàn cao và ưu iểm nổi bật nhất là việc quản lý
và phân phối khóa ơn giản hơn do khóa công khai có thể phân phối rộng rãi.
Các giải thuật mã hóa khóa bất ối xứng iển hình bao gồm: RSA, Rabin, ElGamal,
McEliece và Knapsack. Trong mục tiếp theo chúng ta tìm hiểu về giải thuật mã hóa RSA
– một trong các giải thuật mã hóa khóa ối xứng ược sử dụng rộng rãi nhất trên thực tế.
3.3.2.2. Giải thuật mã hóa RSA a. Giới thiệu
Giải thuật mã hóa RSA ược 3 nhà khoa học người Mỹ là R. Rivest, A. Shamir và L.
Adleman phát minh năm 1977, và tên giải thuật RSA lấy theo chữ cái ầu của tên 3 ồng tác
giả. Độ an toàn của RSA dựa trên tính khó của việc phân tích số nguyên rất lớn, với ộ lớn
cỡ hàng trăm chữ số thập phân. Giải thuật RSA sử dụng một cặp khóa, trong ó khóa công
khai dùng ể mã hóa và khóa riêng dùng ể giải mã. Chỉ khóa riêng RSA cần giữ bí mật.
Khóa công khai có thể công bố rộng rãi. Hiện nay, các khóa RSA có kích thước nhỏ hơn
1024 bit ược coi là không an toàn do tốc ộ các hệ thống máy tính tăng nhanh. Để ảm bảo
an toàn, khuyến nghị sử dụng khóa 2048 bit trong giai oạn 20102020. Trong tương lai, cần
sử dụng khóa RSA có kích thước lớn hơn, chẳng hạn 3072 bit. b. Sinh khóa
RSA cung cấp một thủ tục sinh cặp khóa (khóa công khai và khóa riêng) tương ối ơn
giản. Cụ thể, thủ tục sinh khóa gồm các bước như sau:
- Tạo 2 số nguyên tố pq;
- Tính modulo n = p × q
- Tính (n) = (p-1) × (q-1)
- Chọn số e sao cho 1 < e < (n) và gcd(e, (n)) = 1, trong ó hàm gcd() tính ước số
chung lớn nhất của 2 số nguyên. Do gcd(e, (n)) = 1 nên e và (n) là 2 số nguyên tố cùng nhau.
- Chọn số d sao cho d e-1 mod (n),
hoặc (d × e) mod (n) = 1
hay d là modulo nghịch ảo của e.
- Ta có (n, e) là khóa công khai, (n, d) là khóa riêng và n còn ược gọi là modulo. c. Mã hóa và giải mã - Mã hóa
+ Thông iệp bản rõ m ã ược chuyển thành số, với m < n. Nếu thông iệp bản rõ m
kích thước lớn thì ược chia thành các khối mi, với mi < n. + Bản mã c = me mod n - Giải mã
+ Bản mã c, với c < n
+ Bản rõ m = cd mod n d. Ví dụ - Sinh khóa: lOMoAR cPSD| 37054152
+ Chọn 2 số nguyên tố p = 3 và q = 11
+ Tính n = p × q = 3 × 11 = 33
+ Tính (n) = (p-1) × (q-1) = 2 × 10 = 20
+ Chọn số e sao cho 1 < e < 20, và e và (n) là số nguyên tố cùng nhau ( (n) không
chia hết cho e). Chọn e = 7
+ Tính (d x e) mod (n)  (d × 7) mod 20 = 1
d = (20 × k +1)/7  d = 3 (k=1)
+ Ta có: khóa công khai là (33, 7) và khóa riêng là (33, 3) - Mã hóa:
+ Với bản rõ m = 6,
+ c = me mod n = 67 mod 33 = 279936 mod 33 = 30
+ Vậy bản mã c = 30 - Giải mã:
+ Với bản mã c = 30
+ m = cd mod n = 303 mod 33 = 27000 mod 33 = 6 + Vậy bản rõ m = 6.
e. Một số yêu cầu với quá trình sinh khóa
Dưới ây liệt kê các yêu cầu ặt ra với các tham số sinh khóa và khóa ể ảm bảo sự an
toàn cho cặp khóa RSA. Các yêu cầu cụ thể gồm:
- Yêu cầu với các tham số sinh khóa pq:
+ Các số nguyên tố pq phải ược chọn sao cho việc phân tích n (n = p × q) là
không khả thi về mặt tính toán. pq nên có cùng ộ lớn (tính bằng bit) và phải
là các số ủ lớn. Nếu n có kích thước 2048 bit thì pq nên có kích thước khoảng 1024 bit.
+ Hiệu số p – q không nên quá nhỏ, do nếu p – q quá nhỏ, tức p qp √𝑛. Như
vậy, có thể chọn các số nguyên tố ở gần √𝑛 và thử. Khi có ược p, có thể tính q
tìm ra d là khóa bí mật từ khóa công khai e và (n) = (p - 1)(q - 1). Nếu pq
ược chọn ngẫu nhiên và pq ủ lớn, khả năng hai số này bị phân tích từ n giảm i.
- Vấn ề sử dụng số mũ mã hóa (e) nhỏ: Khi sử dụng số mũ mã hóa (e) nhỏ, chẳng hạn
e = 3 có thể tăng tốc ộ mã hóa. Kẻ tấn công có thể nghe lén và lấy ược bản mã, từ ó
phân tích bản mã ể khôi phục bản rõ. Do số mũ mã hóa nhỏ nên chi phí cho phân
tích, hoặc vét cạn không quá lớn. Do vậy, nên sử dụng số mũ mã hóa e ủ lớn và
thêm chuỗi ngẫu nhiên vào khối rõ trước khi mã hóa ể giảm khả năng bị vét cạn hoặc phân tích bản mã. lOMoARcPSD| 37054152
- Vấn ề sử dụng số mũ giải mã (d) nhỏ: Khi sử dụng số mũ giải mã (d) nhỏ, có thể
tăng tốc ộ giải mã. Nếu d nhỏ và gcd(p-1, q-1) cũng nhỏ thì d có thể tính ược tương
ối dễ dàng từ khóa công khai (n, e). Do vậy, ể ảm bảo an toàn, nên sử dụng số mũ
giải mã d ủ lớn.
3.3.3. Các hàm băm
Theo ịnh nghĩa trong mục 3.1.1, hàm băm là một ánh xạ chuyển ổi dữ liệu ầu vào có
kích thước thay ổi sang dữ liệu ầu ra có kích thước cố ịnh. Hầu hết các hàm băm ều hỗ trợ
ộ dài thông iệp ầu vào rất lớn, ến 264 bit, hoặc thậm chí ến 2128 bit, nên có thể coi ộ dài
thông iệp ầu vào của hàm băm là bất kỳ. Do chuỗi băm ầu ra thường có kích thước cố ịnh
và nhỏ hơn nhiều lần so với thông iệp ầu vào, nó thường ược gọi là chuỗi ại diện, hay bản
tóm lược
(digest) của thông iệp. Mục này giới thiệu các tính chất cơ bản của hàm băm,
phân loại các hàm băm, mô hình xử lý dữ liệu và mô tả một số hàm băm thông dụng gồm
MD5 và SHA1. 3.3.3.1. Khái quát về hàm băm a. Giới thiệu
Hàm băm (hash function) là một hàm toán học h có tối thiểu 2 thuộc tính:
- Nén (Compression): h là một ánh xạ từ chuỗi ầu vào x có chiều dài bất kỳ sang một
chuỗi ầu ra h(x) có chiều dài cố ịnh n bit;
- Dễ tính toán (Ease of computation): cho trước hàm h và ầu vào x, việc tính toán h(x) là dễ dàng.
Hình 3.26 minh họa mô hình nén thông tin của hàm băm, theo ó thông iệp (Message)
ầu vào với chiều dài tùy ý i qua nhiều vòng xử lý của hàm băm ể tạo chuỗi rút gọn, hay
chuỗi ại diện (Digest) có kích thước cố ịnh ở ầu ra.
Hình 3.26. Mô hình nén thông tin của hàm băm b. Phân loại
Có thể phân loại các hàm băm theo khóa sử dụng hoặc theo chức năng. Theo khóa sử
dụng, các hàm băm gồm 2 loại: hàm băm không khóa và hàm băm có khóa, như biểu diễn lOMoARcPSD| 37054152
trên Hình 3.27. Trong khi hàm băm không khóa nhận ầu vào chỉ là thông iệp (dạng h(x),
với hàm băm h và thông iệp x), hàm băm có khóa nhận ầu vào gồm thông iệp và khóa bí
mật (theo dạng h(x, K), với hàm băm h và thông iệp xK là khóa bí mật). Trong các hàm
băm không khóa, các mã phát hiện sửa ổi (MDC – Modification Detection Code) ược sử
dụng rộng rãi nhất, bên cạnh một số hàm băm không khóa khác. Tương tự, trong các hàm
băm có khóa, các mã xác thực thông iệp (MAC - Message Authentication Code) ược sử
dụng rộng rãi nhất, bên cạnh một số hàm băm có khóa khác.
Hình 3.27. Phân loại các hàm băm theo khóa sử dụng
Theo chức năng, có thể chia các hàm băm thành 2 loại chính:
- Mã phát hiện sửa ổi (MDC - Modification Detection Code): MDC thường ược sử
dụng ể tạo chuỗi ại diện cho thông iệp và dùng kết hợp với các kỹ thuật khác (như
chữ ký số) ể ảm bảo tính toàn vẹn của thông iệp. MDC thuộc loại hàm băm không
khóa. MDC gồm 2 loại nhỏ:
+ Hàm băm một chiều (OWHF - One-way hash functions): Với hàm băm một chiều,
việc tính giá trị băm là dễ dàng, nhưng việc khôi phục thông iệp từ giá trị băm là rất khó khăn;
+ Hàm băm chống ụng ộ (CRHF - Collision resistant hash functions): Với hàm băm
chống ụng ộ, sẽ là rất khó ể tìm ược 2 thông iệp khác nhau nhưng có cùng giá trị băm.
- Mã xác thực thông iệp (MAC - Message Authentication Code): MAC cũng ược
dùng ể ảm bảo tính toàn vẹn của thông iệp mà không cần một kỹ thuật bổ sung nào
khác. MAC là loại hàm băm có khóa như ã ề cập ở trên, với ầu vào là thông iệp và một khóa bí mật.
c. Mô hình xử lý dữ liệu
Hình 3.28 biểu diễn mô hình tổng quát xử lý dữ liệu của các hàm băm. Theo ó, thông
iệp ầu vào với ộ dài tùy ý i qua hàm nén lặp nhiều vòng ể tạo chuỗi ầu ra có kích thước cố
ịnh. Chuỗi này i qua một khâu chuyển ổi ịnh dạng tùy chọn ể tạo ra chuỗi băm kết quả.
Hình 3.29 mô tả chi tiết quá trình xử lý dữ liệu của các hàm băm. Theo ó, quá trình xử
lý gồm 3 bước chính: (1) tiền xử lý, (2) xử lý lặp và (3) chuyển ổi ịnh dạng. Trong bước
tiền xử lý, thông iệp ầu vào x trước hết ược nối uôi thêm một số bit và kích thước khối,
sau ó chia thành các khối có kích thước xác ịnh. Kết quả của bước này là t khối dữ liệu có lOMoARcPSD| 37054152
cùng kích thước có dạng x = x1x2…xt làm ầu vào cho bước 2. Trong bước 2, từng khối dữ
liệu xi ược xử lý thông qua hàm nén f ể tạo ầu ra là Hi. Kết quả của bước 2 là chuỗi ầu ra
HtHt ược chuyển ổi ịnh dạng bởi hàm g ể tạo chuỗi giá trị băm hết quả h(x).
Hình 3.28. Mô hình tổng quát xử lý dữ liệu của hàm băm
Hình 3.29. Mô hình chi tiết xử lý dữ liệu của hàm băm
3.3.3.2. Một số hàm băm thông dụng
Các hàm băm thông dụng giới thiệu trong mục này ều là các hàm băm không khóa, gồm
các họ hàm băm chính như sau:
- Họ hàm băm MD (Message Digest) gồm các hàm băm MD2, MD4, MD5 và MD6. lOMoARcPSD| 37054152
- Họ hàm băm SHA (Secure Hash Algorithm) gồm các hàm băm SHA0, SHA1, SHA2 và SHA3.
- Một số hàm băm khác, gồm CRC (Cyclic redundancy checks), Checksums,...
Các mục con tiếp theo của mục này giới thiệu 2 hàm băm ã và ang ược sử dụng rộng
rãi nhất là hàm băm MD5 và SHA1. a. Hàm băm MD5 * Giới thiệu
MD5 (Message Digest) là hàm băm không khóa ược Ronald Rivest thiết kế năm 1991
ể thay thế MD4. Chuỗi giá trị băm ầu ra của MD5 là 128 bit (16 byte) và thường ược biểu
diễn thành 32 số hexa. MD5 ược sử dụng khá rộng rãi trong nhiều ứng dụng, như tạo chuỗi
ảm bảo tính toàn vẹn thông iệp, tạo chuỗi kiểm tra lỗi, hoặc kiểm tra tính toàn vẹn dữ liệu
(Checksum) và mã hóa mật khẩu trong các hệ iều hành và các ứng dụng. MD5 hiện nay
ược khuyến nghị không nên sử dụng do nó không còn ủ an toàn. Nhiều iểm yếu của MD5
ã bị khai thác, như iển hình MD5 bị khai thác bởi mã ộc Flame vào năm 2012.
* Quá trình xử lý thông iệp
Quá trình xử lý thông iệp của MD5 gồm 2 khâu là tiền xử lýcác vòng lặp xử lý. Cụ
thể, chi tiết về các khâu này như sau:
- Tiền xử lý: Thông iệp ược chia thành các khối 512 bit (16 từ 32 bit). Nếu kích thước
thông iệp không là bội số của 512 thì nối thêm số bit còn thiếu.
- Các vòng lặp xử lý: Phần xử lý chính của MD5 làm việc trên state 128 bit, chia
thành 4 từ 32 bit (A, B, C, D):
+ Các từ A, B, C, D ược khởi trị bằng một hằng cố ịnh;
+ Từng phần 32 bit của khối ầu vào 512 bit ược ưa dần vào ể thay ổi state; + Quá
trình xử lý gồm 4 vòng, mỗi vòng gồm 16 thao tác tương tự nhau.
+ Mỗi thao tác gồm: Xử lý bởi hàm F (4 dạng hàm khác nhau cho mỗi vòng), Cộng
modulo và Quay trái. Hình 3.30 biểu diễn lưu ồ xử lý của một thao tác của MD5,
trong ó A, B, C, D là các từ 32 bit của state, Mi: khối 32 bit thông iệp ầu vào, Ki
là 32 bit hằng khác nhau cho mỗi thao tác, <<s bit, biểu
diễn phép cộng modulo 32 bit và F là hàm phi tuyến tính.
Hàm F gồm 4 dạng ược dùng cho 4 vòng lặp. Cụ thể, F có các dạng như sau: F(B, C, D) = (B C) ( B D) G(B, C, D) = (B D) (C D) H(B, C, D) = B C D
I(B, C, D) = C (B D) trong ó, các ký hiệu , , , biểu diễn các phép toán
lô gíc XOR, AND, OR và NOT tương ứng. lOMoARcPSD| 37054152
Hình 3.30. Lưu ồ xử lý một thao tác của MD5 b. Hàm băm SHA1 * Giới thiệu
SHA1 (Secure Hash Function) ược Cơ quan mật vụ Mỹ thiết kế năm 1995 ể thay thế
cho hàm băm SHA0. Chuỗi giá trị băm ầu ra của SHA1 có kích thước 160 bit và thường
ược biểu diễn thành 40 số hexa. Tương tự MD5, SHA1 ược sử dụng rộng rãi ể ảm bảo tính
xác thực và toàn vẹn thông iệp.
* Quá trình xử lý thông iệp
SHA1 sử dụng thủ tục xử lý thông iệp tương tự MD5, cũng gồm 2 khâu là tiền xử lý
các vòng lặp xử lý. Cụ thể, chi tiết về các khâu này như sau:
- Tiền xử lý: Thông iệp ược chia thành các khối 512 bit (16 từ 32 bit). Nếu kích thước
thông iệp không là bội số của 512 thì nối thêm số bit còn thiếu.
- Các vòng lặp xử lý: Phần xử lý chính của SHA1 làm việc trên state 160 bit, chia
thành 5 từ 32 bit (A, B, C, D, E):
+ Các từ A, B, C, D, E ược khởi trị bằng một hằng cố ịnh;
+ Từng phần 32 bit của khối ầu vào 512 bit ược ưa dần vào ể thay ổi state;
+ Quá trình xử lý gồm 80 vòng, mỗi vòng gồm các thao tác: add, and, or, xor, rotate, mod.
+ Mỗi vòng xử lý gồm: Xử lý bởi hàm phi tuyến tính F (có nhiều dạng hàm khác
nhau), Cộng modulo và Quay trái. Hình 3.31 biểu diễn lưu ồ một vòng xử lý của
SHA1, trong ó A, B, C, D, E là các từ 32 bit của state, Wt: khối 32 bit thông iệp
ầu vào, Kt là 32 bit hằng khác nhau cho mỗi vòng, <<n bit,
biểu diễn phép cộng modulo 32 bit và F là hàm phi tuyến tính.
Hàm phi tuyến tính F phụ thuộc vào số vòng lặp t như sau: lOMoARcPSD| 37054152 trong
ó, các ký hiệu , , , tương ứng biểu diễn các phép toán lô gíc XOR, AND, OR và NOT.
Hình 3.31. Lưu ồ một vòng xử lý của SHA1
3.4. Chữ ký số, chứng chỉ số và PKI
3.4.1. Chữ ký số
3.4.1.1. Một số khái niệm
Chữ ký số (Digital signature) là một chuỗi dữ liệu liên kết với một thông iệp (message)
và thực thể tạo ra thông iệp. Chữ ký số thường ược sử dụng ể ảm bảo tính toàn vẹn của thông iệp.
Giải thuật tạo chữ ký số (Digital signature generation algorithm) là một phương pháp sinh chữ ký số;
Giải thuật kiểm tra chữ ký số (Digital signature verification algorithm) là một phương
pháp xác minh tính xác thực của chữ ký số, có nghĩa là nó thực sự ược tạo ra bởi 1 bên chỉ ịnh;
Một hệ chữ ký số (Digital signature scheme) bao gồm giải thuật tạo chữ ký số và giải
thuật kiểm tra chữ ký số.
Quá trình tạo chữ ký số (Digital signature signing process) bao gồm:
- Giải thuật tạo chữ ký số, và
- Phương pháp chuyển dữ liệu thông iệp thành dạng có thể ký ược.
Quá trình kiểm tra chữ ký số (Digital signature verification process) bao gồm:
- Giải thuật kiểm tra chữ ký số, và
- Phương pháp khôi phục dữ liệu từ thông iệp. lOMoARcPSD| 37054152
3.4.1.2. Quá trình ký và kiểm tra
Hình 3.32. Quá trình tạo chữ ký số và kiểm tra chữ ký số
Hình 3.32 biểu diễn quá trình tạo chữ ký số và kiểm tra chữ ký số cho một thông iệp
(Message). Trong khi quá trình tạo chữ ký số cho thông iệp ược thực hiện ở bên người gửi
(Sender) thì quá trình kiểm tra chữ ký số của thông iệp ược thực hiện ở bên người nhận
(Receiver). Để có thể tạo và kiểm tra chữ ký số cho thông iệp, người gửi phải sở hữu cặp
khóa công khai (Public key) và khóa riêng (Private key). Khóa riêng dùng ể tạo chữ ký số
và khóa công khai dùng ể kiểm tra chữ ký số.
Các bước của quá trình tạo chữ ký số cho thông iệp (bên người gửi - Sender):
- Tính toán chuỗi ại diện (message digest/hash value) của thông iệp sử dụng một giải
thuật băm (Hashing algorithm);
- Chuỗi ại diện ược ký sử dụng khóa riêng (Private key) của người gửi và một giải
thuật tạo chữ ký (Signature/Encryption algorithm). Kết quả là chữ ký số (Digital
signature) của thông iệp hay còn gọi là chuỗi ại diện ược mã hóa (Encrypted message digest);
- Thông iệp ban ầu (message) ược ghép với chữ ký số (Digital signature) tạo thành
thông iệp ã ược ký (Signed message);
- Thông iệp ã ược ký (Signed message) ược gửi cho người nhận.
Các bước của quá trình kiểm tra chữ ký số của thông iệp (bên người nhận - Receiver):
- Tách chữ ký số và thông iệp gốc khỏi thông iệp ã ký ể xử lý riêng;
- Tính toán chuỗi ại diện MD1 (message digest) của thông iệp gốc sử dụng giải thuật
băm (là giải thuật sử dụng trong quá trình ký); lOMoAR cPSD| 37054152
- Sử dụng khóa công khai (Public key) của người gửi ể giải mã chữ ký số ể khôi phục
chuỗi ại diện thông iệp MD2. Trên thực tế, người gửi thường chuyển chứng chỉ số
khóa công khai của mình cho người nhận và người nhận thực hiện việc kiểm tra
chứng chỉ số của người gửi và tách lấy khóa công khai nếu việc kiểm tra thành công.
- So sánh hai chuỗi ại diện MD1 và MD2:
+ Nếu MD1 = MD2 : chữ ký kiểm tra thành công. Thông iệp ảm bảo tính toàn vẹn
và thực sự xuất phát từ người gửi (do khóa công khai ược chứng thực).
+ Nếu MD1 <> MD2 : chữ ký không hợp lệ. Thông iệp có thể ã bị sửa ổi hoặc không
thực sự xuất phát từ người gửi.
3.4.1.3. Các giải thuật chữ ký số
Mục này trình bày 2 giải thuật chữ ký số thông dụng là RSA và DSA. RSA ược sử
dụng rộng rãi do RSA có thể ược sử dụng ể mã hóa thông iệp và tạo chữ ký số cho thông
iệp. DSA là thuật toán chữ ký chuẩn ược Viện NIST (Hoa Kỳ) phát triển. a. Giải thuật chữ ký số RSA
Giải thuật RSA ề cập ở mục 3.3.2.2 có thể ược sử dụng với hai mục ích ể mã hóa - giải
mã thông iệp và tạo chữ ký số - kiểm tra chữ ký số cho thông iệp. Điểm khác biệt giữa
việc sử dụng RSA cho mã hóa và chữ ký số là bên sở hữu các cặp khóa và việc sử dụng
các khóa trong quá trình mã hóa và giải mã. Cụ thể:
- RSA sử dụng cho mã hóa thông iệp:
+ Người nhận phải sở hữu cặp khóa công khai (Public key) và khóa riêng (Private
key). Người nhận chuyển khóa công khai của mình cho người gửi;
+ Người gửi mã hóa thông iệp sử dụng khóa công khai của người nhận và chuyển
bản mã cho người nhận;
+ Người nhận giải mã thông iệp sử dụng khóa riêng của mình ể khôi phục bản rõ của thông iệp.
- RSA sử dụng cho tạo chữ ký số thông iệp:
+ Người gửi phải sở hữu cặp khóa công khai (Public key) và khóa riêng (Private
key). Người gửi chuyển khóa công khai của mình cho người nhận;
+ Người gửi sử dụng khóa riêng ể tạo chữ ký số cho thông iệp (bản chất là sử dụng
khóa riêng ể mã hóa chuỗi ại diện cho thông iệp);
+ Người nhận sử dụng khóa công khai của người gửi ể kiểm tra chữ ký số của thông
iệp (bản chất là sử dụng khóa công khai ể giải mã khôi phục chuỗi ại diện cho thông iệp).
Quá trình ký và kiểm tra chữ ký số sử dụng giải thuật RSA tương tự như quá trình ký
và kiểm tra chữ ký số tổng quát ã trình bày ở mục 3.4.1.2 và Hình 3.32, trong ó quá trình
ký sử dụng giải thuật mã hóa RSA với khóa riêng của người gửi và quá trình kiểm tra sử
dụng giải thuật giải mã RSA với khóa công khai của người gửi. b. Giải thuật chữ ký số DSA lOMoAR cPSD| 37054152
DSA (Digital Signature Algorithm) là thuật toán chữ ký số ược phát triển từ giải thuật
ElGamal Signature Algorithm và ược công nhận là chuẩn chữ ký số sử dụng trong các cơ
quan chính phủ bởi Viện NIST (Hoa Kỳ) vào năm 1991. DSA gồm 3 gồm 3 khâu: (1) sinh
cặp khóa, (2) quá trình ký thông iệp và (3) quá trình kiểm tra chữ ký của thông iệp.
* Sinh khóa cho một người dùng:
- Chọn số ngẫu nhiên x sao cho 0 < x < q; - Tính y = gx mod p;
- Khóa công khai là (q, p, g, y); - Khóa riêng là x.
* Quá trình ký thông iệp:
- H là hàm băm sử dụng và m là thông iệp gốc;
- Tính H(m) từ thông iệp gốc;
- Tạo số ngẫu nhiên k cho mỗi thông iệp, 0 < k < q; - Tính r = (gk mod p) mod q;
- Nếu r = 0, chọn một k mới và tính lại r;
- Tính s = k-1(H(m) + xr) mod q;
- Nếu s = 0, chọn một k mới và tính lại r và s; - Chữ ký là cặp (r, s).
* Quá trình kiểm tra chữ ký
- Loại bỏ chữ ký nếu r và s không thỏa mãn 0 < r , s < q;
- Tính H(m) từ thông iệp nhận ược; - Tính w = s-1 mod q; - Tính u1 = H(m) * w mod q; - Tính u2 = r * w mod q;
- Tính v = ((gu1 * yu2) mod p) mod q; - Chữ ký là xác thực nếu v = r.
Theo một số nghiên cứu, giải thuật chữ ký số DSA và giải thuật chữ ký số RSA có ộ
an toàn tương tương. Ưu iểm của giải thuật chữ ký số DSA so với giải thuật chữ ký số
RSA là quá trình sinh cặp khóa và quá trình ký nhanh hơn. Tuy nhiên, quá trình kiểm tra
chữ ký số bởi DSA thực hiện chậm hơn RSA. Trên thực tế, giải thuật chữ ký số RSA ược
sử dụng rộng rãi hơn do RSA có thể sử dụng cho cả mục ích mã hóa/giải mã và ký/kiểm
tra chữ ký, trong khi DSA chỉ có thể sử dụng ể ký/kiểm tra chữ ký.
3.4.2. Chứng chỉ số
3.4.2.1. Giới thiệu
Chứng chỉ số (Digital certificate), còn gọi là chứng chỉ khóa công khai (Public key
certificate), hay chứng chỉ nhận dạng (Identity certificate) là một tài liệu iện tử sử dụng
một chữ ký số ể liên kết một khóa công khai và thông tin nhận dạng của một thực thể. Ba
thành phần cơ bản nhất của một chứng chỉ số gồm: lOMoARcPSD| 37054152
- Chữ ký số: là chữ ký của một bên thứ 3 tin cậy cung cấp chứng chỉ số, thường gọi
là CA – Certificate Authority;
- Khóa công khai: là khóa công khai trong cặp khóa công khai và khóa riêng của thực thể;
- Thông tin nhận dạng: là tên, ịa chỉ, tên miền hoặc các thông tin ịnh danh của thực thể.
Chứng chỉ số có thể ược sử dụng ể xác minh chủ thể thực sự của một khóa công khai.
Hình 3.33 là giao diện kiểm tra thông tin một chứng chỉ số do bên thứ 3 là một ơn vị của
công ty Verisign cấp cho tên miền www.vietcombank.com.vn của ngân hàng TMCP Ngoại thương Việt Nam.
Hình 3.33. Giao diện kiểm tra thông tin một chứng chỉ số
3.4.2.2. Nội dung chứng chỉ số
Như biểu diễn trên Hình 3.34, nội dung của một chứng chỉ số gồm nhiều trường thông
tin. Các trường thông tin cụ thể theo chuẩn chứng chỉ số X.509 gồm:
- Serial Number: Số nhận dạng của chứng chỉ số;
- Subject: Thông tin nhận dạng một cá nhân hoặc một tổ chức;
- Signature Algorithm: Giải thuật tạo chữ ký; lOMoARcPSD| 37054152 -
Signature Hash Algorithm: Giải thuật tạo chuỗi băm cho tạo chữ ký;
- Signature: Chữ ký của người/tổ chức cấp chứng chỉ;
- Issuer: Người/tổ chức có thẩm quyền/tin cậy cấp chứng chỉ;
- Valid-From: Ngày bắt ầu có hiệu lực của chứng chỉ;
- Valid-To: Ngày hết hạn sử dụng chứng chỉ;
- Key-Usage: Mục ịch sử dụng khóa (chữ ký số, mã hóa,…);
- Public Key: Khóa công khai của chủ thể;
- Thumbprint Algorithm: Giải thuật băm sử dụng ể tạo chuỗi băm cho khóa công khai;
- Thumbprint: Chuỗi băm tạo từ khóa công khai; Các mục thông tin của trường Subject gồm:
- CN (Common Name): Tên chung, nhưng một tên miền ược gán chứng chỉ;
- OU (Organisation Unit): Tên bộ phận/phòng ban;
- O (Organisation): Tổ chức/Cơ quan/công ty;
- L (Location): Địa iểm/Quận huyện; - S (State/Province): Bang/Tỉnh/Thành phố; - C (Country): Đất nước.
Hình 3.34. Nội dung chi tiết của một chứng chỉ số
3.4.2.3. Ứng dụng của chứng chỉ số lOMoARcPSD| 37054152 -
Chứng chỉ số ược sử dụng rộng rãi trong bảo mật thông tin truyền và xác thực thông
tin nhận dạng của các bên tham gia giao dịch iện tử, trao ổi khóa trong nhiều ứng dụng khác nhau. Cụ thể:
Sử dụng chứng chỉ số trong ảm bảo an toàn giao dịch trên nền web: với chứng chỉ
số, một website có thể ược cấu hình ể hoạt ộng theo chế ộ “an toàn” (HTTPS), trong
ó toàn bộ thông tin trao ổi giữa máy chủ và máy khách ược ảm bảo tính bí mật (sử
dụng mã hóa khóa ối xứng), tính toàn vẹn và xác thực (sử dụng hàm băm có khóa
MAC). Ngoài ra, các máy chủ và máy khách có thể xác thực thông tin nhận dạng
của nhau sử dụng chứng chỉ số.
- Chứng chỉ số cũng có thể ược sử dụng ể bảo mật thông tin truyền trong nhiều ứng
dụng khác, như email, truyền file,…
- Sử dụng chứng chỉ số có thể ngăn chặn hiệu quả dạng tấn công người ứng giữa do
các bên tham gia giao dịch có thể xác thực thông tin nhận dạng của nhau. Nếu các
bên sử dụng thêm chữ ký số thì có thể ngăn chặn việc sửa ổi các thông iệp trao ổi trên ường truyền.
- Chứng chỉ số có thể ược sử dụng trong trao ổi khóa.
3.4.3. PKI
Hạ tầng khóa công khai (Public-key infrastructure - PKI) là một tập các phần cứng,
phần mềm, nhân lực, chính sách và các thủ tục ể tạo, quản lý, phân phối, sử dụng, lưu trữ
và thu hồi các chứng chỉ số. Một PKI gồm các thành phần sau:
- Certificate Authority (CA): Cơ quan cấp và kiểm tra chứng chỉ số;
- Registration Authority (RA): Bộ phận tiếp nhận, kiểm tra thông tin nhận dạng của
người dùng theo yêu cầu của CA;
- Validation Authority (VA): Cơ quan xác nhận thông tin nhận dạng của người dùng thay mặt CA;
- Central Directory (CD): Là nơi lưu danh mục và lập chỉ số các khóa; - Certificate
Management System: Hệ thống quản lý chứng chỉ; - Certificate Policy: Chính sách về chứng chỉ.
Hình 3.35 biểu diễn lưu ồ cấp và sử dụng chứng chỉ số trong PKI gồm 2 khâu chính: lOMoARcPSD| 37054152 -
Hình 3.35. Lưu ồ cấp và sử dụng chứng chỉ số trong PKI
Đăng ký, xét duyệt và cấp chứng chỉ số:
+ Người dùng có yêu cầu cấp chứng chỉ số tạo một cặp khóa, gồm 1 khóa công khai và 1 khóa riêng;
+ Người dùng tạo yêu cầu cấp chứng chỉ số (Certificate request), trong ó tích hợp
khóa công khai và thông tin ịnh danh của mình. Yêu cầu cấp chứng chỉ số thường
ược lưu dưới dạng 1 file văn bản theo ịnh dạng của chuẩn X.509;
+ Người dùng gửi yêu cầu cấp chứng chỉ số ến Bộ phận tiếp nhận (RA). RA kiểm
tra các thông tin trong yêu cầu cấp chứng chỉ số, nếu hợp lệ thì chuyển yêu cầu
ến Cơ quan cấp chứng chỉ (CA);
+ CA sẽ thực hiện việc xác minh các thông tin nhận dạng của chủ thể và nếu xác
minh thành công thì cấp chứng chỉ số cho người yêu cầu. Chứng chỉ số ược CA
ký bằng khóa riêng của mình ể ảm bảo tính xác thực và toàn vẹn và thường ược
lưu dưới dạng 1 file văn bản theo ịnh dạng của chuẩn X.509;
+ Sau khi phát hành chứng chỉ số cho người dùng, CA chuyển thông tin về chứng
chỉ số ã cấp cho thành phần VA ể xác nhận thông tin nhận dạng theo yêu cầu;
+ Người dùng cài ặt chứng chỉ số vào hệ thống và có thể bắt ầu sử dụng trong các ứng dụng của mình.
- Sử dụng và kiểm tra chứng chỉ số:
+ Người dùng tạo ơn hàng, ký vào ơn hàng bằng khóa riêng, gửi ơn hàng ã ký và
chứng chỉ số cho nhà cung cấp;
+ Nhà cung cấp chuyển chứng chỉ số của người dùng cho VA ể kiểm tra, nếu chứng
chỉ số hợp lệ thì tiến hành xác thực chữ ký số của người dùng sử dụng khóa công
khai của người dùng lấy từ chứng chỉ số. Nếu chữ ký của người dùng xác thực
thành công thì ơn hàng ược duyệt. lOMoAR cPSD| 37054152 -
3.5. Quản lý khóa và phân phối khóa
3.5.1. Giới thiệu
3.5.1.1. Một số khái niệm
Quan hệ khóa (Keying relationship) là trạng thái mà trong ó các bên tham gia truyền
thông chia sẻ dữ liệu chia sẻ (thường là khóa hoặc thành phần tạo ra khóa) ể sử dụng cho
các kỹ thuật mã hóa. Các dữ liệu chia sẻ có thể gồm: - Khóa bí mật - Khóa công khai
- Các giá trị khởi tạo
- Các tham số bổ sung không bí mật.
Quản lý khóa (Key management) là một tập các kỹ thuật cho phép thiết lập và duy trì
các quan hệ khóa giữ các bên có thẩm quyền. Cụ thể, quản lý khóa gồm các kỹ thuật và thủ tục cho phép:
- Khởi tạo các người dùng hệ thống (system users) trong một vùng (domain);
Sinh khóa, phân phối và cài ặt các dữ liệu khóa;
- Kiểm soát việc sử dụng các dữ liệu khóa;
- Cập nhật, thu hồi và hủy các dữ liệu khóa; - Lưu, sao lưu/khôi phục và lưu trữ các dữ liệu khóa.
Phân phối khóa (Key distribution) là một thành phần của quản lý khóa, trong ó các
khóa mật mã ược vận chuyển, hoặc trao ổi giữa các thực thể trong một hệ thống, hay giữa
các bên tham gia phiên truyền thông.
3.5.1.2. Vai trò và các nguy cơ mất an toàn quản lý khóa
Quản lý khóa là một khâu có vai trò quan trọng trong việc ảm bảo tính bí mật, toàn
vẹn, xác thực, không thể chối bỏ và dịch vụ chữ ký số của một hệ mã hóa. Khâu quản lý
khóa ược thực hiện phù hợp sẽ ảm bảo cho các thông tin khóa ược an toàn, ặc biệt khi có
nhiều thực thể tham gia truyền thông. Các thông tin khóa ược ảm bảo an toàn là yếu tố tiên
quyết cho việc ảm bảo tính an toàn của hệ mã hóa.
Đứng trên góc ộ quản lý, vấn ề quản lý khóa phải luôn ược thực hiện trong khuôn khổ
chính sách an ninh cụ thể. Chính sách an ninh của cơ quan, tổ chức cần có các nội dung
mô tả về quản lý khóa, bao gồm:
- Các thực tế và thủ tục cần thực hiện trong các khía cạnh kỹ thuật và quản trị khóa
tự ộng hoặc thủ công;
- Trách nhiệm của các bên có liên quan;
- Các bản ghi dữ liệu cần phải lưu ể tạo các báo cáo về các vấn ề có liên quan ến an toàn khóa. lOMoAR cPSD| 37054152 -
Ngoài ra, việc phân tích, nhận dạng các nguy cơ e dọa an toàn của khâu quản lý khóa
là một việc cần thiết, từ ó có thể ề ra và áp dụng các biện pháp ảm bảo an toàn phù hợp.
Các nguy cơ ối với quản lý khóa bao gồm:
- Các khóa bí mật bị lộ;
- Tính xác thực của các khóa bí mật và công khai bị thỏa hiệp. Tính xác thực bao
gồm các hiểu biết và việc kiểm chứng thông tin nhận dạng của một bên mà khóa ược chia sẻ;
- Sử dụng trái phép các khóa bí mật và công khai: + Sử dụng các khóa ã hết hiệu lực;
+ Sử dụng các khóa sai mục ích.
3.5.1.3. Phân loại khóa
Các khóa/chìa mật mã có thể ược phân loại theo (1) khả năng sử dụng và (2) thời gian
sử dụng. Theo khả năng sử dụng, có thể chia các khóa thành 3 lớp: - Khóa chủ (Master key):
+ Là các khóa ở mức cao nhất và không ược bảo vệ bằng các kỹ thuật mật mã.
+ Các khóa chủ thường ược chuyển giao trực tiếp và ược bảo vệ bằng các cơ chế kiểm soát vật lý.
Khóa dùng cho trao ổi khóa (Key – encrypting key):
+ Là những khóa ược sử dụng ể vận chuyển hoặc lưu trữ các khóa khác.
+ Các khóa này cũng có thể ược bảo vệ bằng khóa khác.
- Khóa dữ liệu (Data keys):
+ Là các khóa ược sử dụng ể mã hóa dữ liệu cho người dùng. +
Thường là các khóa ngắn hạn.
Theo thời gian sử dụng, có thể chia các khóa thành 2 lớp:
- Khóa dài hạn (long-term key):
+ Là các khóa ược sử dụng trong một khoảng thời gian dài;
+ Gồm khóa chủ, khóa dùng cho trao ổi khóa, hoặc khóa dùng cho thỏa thuận khóa. - Khóa ngắn hạn:
+ Là các khóa ược sử dụng trong một khoảng thời gian ngắn hoặc chỉ trong một phiên làm việc;
+ Gồm các khóa ược trao ổi trong quá trình trao ổi khóa, thỏa thuận khóa; +
Thường ược dùng ể mã hóa dữ liệu của người dùng.
3.5.2. Phân phối khóa bí mật
3.5.2.1. Đặt vấn ề
Như ã ề cập trong mục 3.3.1, các hệ mã hóa khóa ối xứng, hay khóa bí mật có ưu iểm
là ộ an toàn cao và tốc ộ xử lý nhanh do kích thước khóa tương ối nhỏ. Tuy nhiên, hạn chế lOMoARcPSD| 37054152 -
lớn nhất của chúng là khó khăn trong quản lý và phân phối khóa bí mật – các khóa bí mật
dùng chung phải ược phân phối, chia sẻ an toàn ến các bên tham gia trước khi có thể thực
hiện phiên truyền thông an toàn.
Vấn ề phân phối khóa bí mật ược khái quát hóa thành bài toán phân phối n2 khóa. Bài
toán này phát biểu như sau: Nếu một hệ thống có n người dùng tham gia truyền thông sử
dụng kỹ thuật mã hóa khóa ối xứng và mỗi cặp người dùng cần trao ổi thông tin an toàn,
thì mỗi cặp người dùng cần chia sẻ một khóa bí mật duy nhất. Như vậy, mỗi người dùng
cần sở hữu n-1 khóa bí mật và tổng số khóa cần quản lý trong hệ thống là n(n-1)/2 n2.
Ví dụ, nếu hệ thống có 10 người dùng, tổng số khóa cần quản lý là 10×9/2 = 45 khóa; với
100 người dùng, số khóa là 100×99/2 = 4.950 khóa; và với 1000 người dùng, số khóa là
1000×999/2 = 499.500 khóa. Số khóa cần quản lý sẽ rất lớn nếu số người dùng lớn và việc
quản lý số lượng lớn khóa ảm bảo an toàn là rất khó khăn.
Để giải quyết bài toán phân phối n2 khóa và ảm bảo an toàn trong phân phối các khóa
bí mật, một số mô hình và kỹ thuật phân phối khóa bí mật ược ề xuất và ứng dụng, bao gồm:
- Phân phối khóa iểm – iểm (Point-to-point key distribution)
- Trung tâm phân phối khóa (Key distribution center – KDC)
- Trung tâm dịch khóa (Key translation center – KTC)
Sử dụng mã hóa khóa công khai ể phân phối khóa bí mật.
Các mục tiếp theo mô tả chi tiết các mô hình và kỹ thuật phân phối khóa bí mật.
3.5.2.2. Phân phối khóa iểm – iểm
Phân phối khóa iểm – iểm (Point-to-point key distribution) là hình thức phân phối khóa
chỉ liên quan trực tiếp ến 2 thực thể tham gia truyền thông, như minh họa trên Hình 3.36.
Hình thức phân phối khóa iểm – iểm có thể thực hiện thông qua các kênh tin cậy, như kênh
truyền thuê riêng, hoặc thư bảo ảm. Phương pháp này có thể sử dụng với các trao ổi không
thường xuyên và thích hợp với các hệ thống cỡ nhỏ hoặc óng kín. Nhược iểm của phương
pháp này là trễ có thể lớn (như sử dụng thư bảo ảm) và các kênh tin cậy dùng riêng thường ắt tiền.
Hình 3.36. Phân phối khóa iểm – iểm
3.5.2.3. Trung tâm phân phối khóa a. Giới thiệu
Trung tâm phân phối khóa (Key distribution center – KDC) là một trong các kỹ thuật
ược sử dụng rộng rãi ể giải quyết bài toán n2 khóa trong hệ thống có n người dùng. Mục
tiêu là KDC tạo và phân phối khóa bí mật an toàn ến các thực thể trong hệ thống và giảm
thiểu số lượng khóa dài hạn mà mỗi thực thể và KDC phải quản lý. Hình 3.37 biểu diễn lOMoARcPSD| 37054152 -
mô hình hoạt ộng của hệ thống KDC gồm 3 thực thể: Trung tâm phân phối khóa KDC ký
hiệu là T và 2 thực thể thành viên tham gia trao ổi khóa là A và B. Khóa bí mật cần trao
ổi là K. Hoạt ộng của hệ thống KDC gồm 2 khâu: (1) Khởi tạo – thiết lập môi trường và
các tham số hoạt ộng và (2) Thủ tục phân phối khóa sử dụng KDC.
Hình 3.37. Mô hình hoạt ộng của trung tâm phân phối khóa – KDC b. Khởi tạo
Trong quá trình khởi tạo, thực thể A sở hữu khóa dài hạn KAT và A chia sẻ KAT với
KDC T. Thực thể B sở hữu khóa dài hạn KBT và B chia sẻ KBT với KDC T. Trung tâm
phân phối khóa T là một máy chủ tin cậy, cho phép hai bên A và B không trực tiếp chia sẻ
thông tin khóa thiết lập kênh truyền thông an toàn sử dụng hai khóa dài hạn KAT và KBT. lOMoARcPSD| 37054152
c. Thủ tục phân phối khóa
Theo mô hình hoạt ộng của trung tâm phân phối khóa biểu diễn trên Hình 3.37, gọi E là
hàm mã hóa, D là hàm giải mã, thủ tục phân phối khóa sử dụng KDC T như sau: -
A yêu cầu chia sẻ khóa với B; -
T sẽ tạo ra hoặc lấy khóa có sẵn K và mã hóa K thành EKAT(K) và gửi cho A; -
T cũng có thể gửi khóa cho B dưới dạng EKBT(K) thông qua A (hình i); -
T cũng có thể gửi khóa trực tiếp cho B dưới dạng EKBT(K) (hình ii); -
A nhận ược EKAT(K), giải mã sử dụng KAT ể có ược K: DKAT(EKAT(K)) = K -
B nhận ược EKBT(K), giải mã sử dụng KBT ể có ược K: DKBT(EKBT(K)) = K
3.5.2.4. Trung tâm dịch khóa a. Giới thiệu
Trung tâm dịch chuyển khóa (Key translation center – KTC) là một trong các kỹ thuật
ược sử dụng rộng rãi ể giải quyết bài toán n2 khóa trong hệ thống có n người dùng. Vai trò
của KTC tương tự KDC, tuy nhiên một bên tham gia truyền thông sẽ cung cấp khóa trao
ổi. Mục tiêu là KTC chuyển khóa bí mật an toàn ến các thực thể còn lại tham gia truyền
thông trong hệ thống và giảm thiểu số lượng khóa dài hạn mà mỗi thực thể và KTC phải
quản lý. Điểm khác biệt của KTC so với KDC là KTC cho phép sinh khóa phân tán (các
thực thể tự sinh khóa), còn KDC cho phép sinh khóa tập trung (KDC sinh khóa). Hình 3.38
biểu diễn mô hình hoạt ộng của hệ thống KTC gồm 3 thực thể: Trung tâm dịch chuyển khóa
KTC ký hiệu là T và 2 thực thể thành viên tham gia trao ổi khóa là A và B. Khóa bí mật
cần trao ổi là K. Hoạt ộng của hệ thống KTC gồm 2 khâu: (1) Khởi tạo – thiết lập môi
trường và các tham số hoạt ộng và (2) Thủ tục phân phối khóa sử dụng KTC.
Hình 3.38. Mô hình hoạt ộng của trung tâm dịch chuyển khóa – KTC b. Khởi tạo
Trong quá trình khởi tạo, thực thể A sở hữu khóa dài hạn KAT và A chia sẻ KAT với KTC
T. Thực thể B sở hữu khóa dài hạn KBT và B chia sẻ KBT với KTC T. Trung tâm phân phối
khóa T là một máy chủ tin cậy, cho phép hai bên A và B không trực tiếp chia sẻ thông tin
khóa thiết lập kênh truyền thông an toàn sử dụng hai khóa dài hạn KAT và KBT.
c. Thủ tục phân phối khóa lOMoAR cPSD| 37054152
Theo mô hình hoạt ộng của trung tâm dịch chuyển khóa biểu diễn trên Hình 3.38, gọi E
là hàm mã hóa, D là hàm giải mã, thủ tục phân phối khóa sử dụng KTC T như sau:
- A tạo ra khóa K và mã hóa K thành EKAT(K) và gửi cho T;
- T nhận ược EKAT(K), giải mã sử dụng KAT thu ược K: DKAT(EKAT(K)) = K
- Sau ó, T mã hóa khóa K sử dụng KBT ể có EKBT(K);
- T có thể gửi khóa cho B dưới dạng EKBT(K) thông qua A (hình i);
- T cũng có thể gửi khóa trực tiếp cho B dưới dạng EKBT(K) (hình ii);
- B nhận ược EKBT(K), giải mã sử dụng KBT ể có ược K: DKBT(EKBT(K)) = K
d. Ưu iểm và nhược iểm của quản lý khóa tập trung (KDC và KTC) - Ưu iểm:
+ Hiệu quả trong lưu trữ khóa: mỗi bên chỉ cần duy trì một khóa bí mật dài hạn với
bên tin cậy (không phải với bên trao ổi thông tin); + Tổng số khóa dài hạn cần lưu
trữ là n khóa (so với n2 khóa). - Nhược iểm:
+ Cả hệ thống có thể bị mất an toàn nếu trung tâm quản lý khóa bị thỏa hiệp (bị iều khiển);
+ Trung tâm quản lý khóa có thể thành iểm nút cổ chai;
+ Dịch vụ sẽ phải ngừng nếu trung tâm quản lý khóa gặp trục trặc; +
Cần có một máy chủ tin cậy ở chế ộ trực tuyến.
3.5.2.5. Sử dụng mã hóa khóa công khai ể phân phối khóa bí mật
Do các hệ mã hóa khóa công khai có ưu iểm là phân phối khóa công khai dễ dàng, có
thể sử dụng mã hóa khóa công khai ể phân phối khóa bí mật. Giả thiết bên A cần chuyển
khóa bí mật Ks cho bên B. Các bước hai bên A và B cần thực hiện ể chuyển khóa bí mật
Ks từ A ến B sử dụng mã hóa khóa công khai như sau:
- B tạo cặp khóa, khóa công khai Kp và khóa riêng Kr;
- B gửi khóa công khai Kp của mình cho A (cần ảm bảo tính xác thực và toàn vẹn); -
A sử dụng Kp ể mã hóa khóa bí mật Ks tạo bản mã Cs và gửi cho B; - B sử dụng
khóa riêng Kr ể giải mã Cs ể khôi phục khóa bí mật Ks.
Trên thực tế, các giao thức SSL/TLS và PGP ều sử dụng mã hóa khóa công khai một
cách hiệu quả ể trao ổi khóa bí mật, hoặc dữ liệu khóa bí mật cho phiên làm việc. Chi tiết
về các giao thức này ược ề cập ở mục 3.6.
3.5.3. Phân phối khóa công khai
3.5.3.1. Giới thiệu
Khác với khóa bí mật, việc phân phối khóa công khai thuận lợi hơn do khóa công khai
có thể trao ổi công khai giữa các thực thể tham gia truyền thông. Tuy nhiên, việc phân phối
khóa công khai phải ảm bảo tính xác thực (authentic public keys). Tính xác thực của khóa
công khai thể hiện ở 2 yếu tố: (1) tính toàn vẹn và chủ thể luôn xác ịnh. Các phương pháp
phân phối khóa công khai ược sử dụng rộng rãi bao gồm: lOMoAR cPSD| 37054152
- Trao ổi kiểu iểm-iểm thông qua kênh tin cậy;
- Truy nhập trực tiếp vào danh mục công cộng (public-key registry);
- Sử dụng một máy chủ trực tuyến tin cậy;
- Sử dụng một máy chủ không trực tuyến và chứng chỉ.
Phương pháp trao ổi khóa công khai kiểu iểm-iểm thông qua kênh tin cậy ược thực hiện
tương tự như phương pháp trao ổi khóa bí mật kiểu iểm-iểm ã ược trình bày ở mục 3.5.2.2.
Các phương pháp phân phối khóa công khai còn lại ược trình bày trong các mục tiếp theo.
3.5.3.2. Truy nhập trực tiếp vào danh mục công cộng (public-key registry)
Trong phương pháp này, một cơ sở dữ liệu công cộng tin cậy ược thiết lập, trong ó mỗi
bản ghi gồm tên người dùng và khóa công khai tương ứng. Cơ sở dữ liệu công cộng này
có thể ược vận hành bởi 1 bên tin cậy và người dùng có thể truy nhập khóa công khai từ
cơ sở dữ liệu này nếu biết tên người dùng. Một phương pháp thực hiện ược sử dụng phổ
biến là cây xác thực khóa công khai (Tree authentication of public keys).
3.5.3.3. Sử dụng một máy chủ trực tuyến tin cậy
Trong phương pháp này, một máy chủ trực tuyến tin cậy ược sử dụng ể cung cấp truy
nhập ến cơ sở dữ liệu công cộng các khóa công khai. Khóa công khai cần phân phối ược ký
sử dụng khóa riêng của máy chủ và gửi cho bên yêu cầu. Phương pháp này không òi hỏi
phải sử dụng kênh truyền bí mật. Bên yêu cầu sử dụng khóa công khai của máy chủ ể xác
thực chữ ký của máy chủ và qua ó kiểm tra tính xác thực, toàn vẹn của khóa. Phương pháp
này có nhược iểm là máy chủ phải luôn trực tuyến ể hệ thống có thể hoạt ộng và bản thân
máy chủ có thể trở thành iểm nút cổ chai trong hệ thống.
3.5.3.4. Sử dụng một máy chủ không trực tuyến và chứng chỉ
Đây là phương pháp phân phối khóa dựa trên chứng chỉ khóa công khai (Public key
certificate) ược sử dụng rất rộng rãi trong bảo mật thông tin truyền trên mạng Internet. Các
bước thực hiện của phương pháp này gồm:
- Bên A liên hệ với một bên tin cậy ( ược gọi là Cơ quan cấp chứng chỉ - Certification
Authority (CA)) ể ăng ký khóa công khai của mình và nhận ược chữ ký xác nhận khóa công khai của CA;
- CA cấp một chứng chỉ (Certificate) cho khóa công khai của A, trong ó kết hợp khóa
công khai của A với thông tin ịnh danh của A sử dụng chữ ký số của CA;
- Khi A ã có chứng chỉ khóa công khai (Public key certificate), A có thể gửi khóa công
khai cho các bên có liên quan bằng cách gửi chứng chỉ khóa công khai.
- Chứng chỉ khóa công khai cũng có thể ược ưa vào danh mục công cộng và người
dùng khác có thể truy nhập.
Chi tiết về chứng chỉ khóa công khai và quá trình cấp phát – sử dụng chứng chỉ ã ược ề
cập ở các mục 3.4.2 và 3.4.3.
3.6. Một số giao thức ảm bảo ATTT dựa trên mã hóa
3.6.1. SSL/TLS
3.6.1.1. Giới thiệu lOMoARcPSD| 37054152
SSL (Secure Socket Layer) là giao thức bảo mật do công ty Netscape phát minh năm
1993. Các phiên bản SSL ược phát triển bao gồm: phiên bản 1.0 phát hành năm 1993, phiên
bản 2.0 phát hành năm 1995 và phiên bản 3.0 phát hành năm 1996. Sau phiên bản 3.0, SSL
chính thức dừng phát triển. SSL hiện ít ược sử dụng do có nhiều lỗi và không ược cập nhật.
TLS (Transport Layer Security) ược phát triển vào năm 1999 dựa trên SSL 3.0 do tổ
chức IETF phê chuẩn. Các phiên bản của TLS gồm: phiên bản 1.0 phát hành năm 1999,
phiên bản 1.1 phát hành năm 2005, phiên bản 1.2 phát hành năm 2008, phiên bản 1.3 ược
phát hành chính thức cho vào tháng 10 năm 2017. Hiện nay phiên bản TLS 1.3 ược sử dụng
rộng rãi nhất, còn SSL chỉ ược giữ lại tên với lý do lịch sử.
Hình 3.39 biểu diễn vị trí của giao thức SSL/TLS trong chồng giao thức TCP/IP. Có thể
thấy SSL/TLS hoàn toàn ộc lập với các giao thức tầng ứng dụng nên nó có thể ược sử dụng
ể bảo mật thông tin truyền cho nhiều giao thức ứng dụng khác nhau, như HTTP, SMTP và
FTP. Chẳng hạn, giao thức bảo mật web HTTPS = HTTP + SSL/TLS, có nghĩa là HTTPS
tạo ra bởi HTTP chạy trên nền SSL/TLS. Một trong các iều kiện ể SSL/TLS có thể hoạt
ộng là ít nhất một thực thể (thường là máy chủ) tham gia phiên truyền thông phải có chứng
chỉ số cho khoá công khai (Public key certificate).
Hình 3.39. SSL/TLS trong bộ giao thức TCP/IP
Hình 3.40. Các giao thức con của SSL/TLS
SSL/TLS là một bộ gồm có 4 giao thức con, như minh họa trên Hình 3.40. Các giao
thức con của SSL/TLS gồm:
- SSL Handshake Protocol: Giao thức bắt tay của SSL có nhiệm vụ trao ổi các thông
iệp xác thực thực thể và thiết lập các thông số cho phiên làm việc;
- SSL Change Cipher Spec Protocol: Giao thức thiết lập việc sử dụng các bộ mã hóa
ược hỗ trợ bởi cả 2 bên tham gia phiên truyền thông; lOMoARcPSD| 37054152
- SSL Alert Protocol: Giao thức cảnh bảo của SSL;
- SSL Record Protocol: Giao thức bản ghi của SSL có nhiệm vụ tạo ường hầm an toàn
ể chuyển thông tin ảm bảo tín bí mật, toàn vẹn và xác thực.
3.6.1.2. Hoạt ộng của SSL/TS
Hình 3.41 biểu diễn mô hình một phiên truyền thông giữa máy chủ web (Web Server)
và máy khách web (Browser) dựa trên SSL/TLS. Theo ó, giao thức Bắt tay (Handshake)
khởi tạo phiên làm việc (có sự hỗ trợ của giao thức Change Cipher Spec), giao thức Bản
ghi (Record) vận chuyển dữ liệu an toàn và giao thức Cảnh báo (Alert) gửi các cảnh báo
khi xảy ra lỗi, hoặc một sự kiện ặc biệt.
Hình 3.41. Mô hình truyền thông giữa Web Server và Browser dựa trên SSL/TLS
a. Khởi tạo phiên làm việc
Quá trình khởi tạo phiên làm việc trong SSL/TLS ược thực hiện bởi giao thức SSL
Handshake với sự hỗ trợ của giao thức SSL Change Cipher Spec. Các nhiệm vụ ược các
bên tham gia truyền thông thực hiện trong quá trình này bao gồm: (1) xác thực thông tin
nhận dạng, (2) àm phán thống nhất các bộ mã hóa sử dụng và (3) trao ổi khóa và các thông
số khác cho phiên truyền thông.
Quá trình khởi tạo phiên làm việc biểu diễn trên Hình 3.42 giữa SSL Client (máy khách)
và SSL Server (máy chủ) gồm các bước sau:
1. SSL Client gửi thông iệp “client hello” và thông tin mã hóa (Cryptographic information) ến SSL Server;
2. SSL Server gửi thông iệp “server hello”, các bộ mã hóa hỗ trợ (CipherSuite) và
chứng chỉ máy chủ (Server certificate) ến SSL Client. SSL Server cũng có thể gửi
yêu cầu máy khách cung cấp chứng chỉ máy khách (Client certificate) nếu cần thiết;
3. Nhận ược yêu cầu, SSL Client kiểm tra chứng chỉ máy chủ và kiểm tra các tham số
mã hóa. Hai bên thống nhất sử dụng các bộ mã hóa tốt nhất cùng hỗ trợ cho phiên
làm việc. Nếu chứng chỉ máy chủ không hợp lệ quá trình quá trình khởi tạo phiên
kết thúc không thành công. Nếu chứng chỉ máy chủ hợp lệ tiếp tục bước tiếp theo;
4. Trao ổi khóa máy khách (Client key exchange). SSL Client sinh khóa phiên (hoặc
các tham số mã hóa cho phiên), mã hóa khóa phiên sử dụng khóa công khai của SSL
Server lấy từ chứng chỉ máy chủ và gửi cho SSL Server;
5. SSL Client cũng có thể gửi chứng chỉ máy khách cho máy chủ nếu ược yêu cầu; lOMoARcPSD| 37054152
6. SSL Server sử dụng khóa riêng của mình ể giải mã khôi phục khóa phiên gửi từ SSL
Client. SSL Server cũng có thể kiểm tra chứng chỉ máy khách nếu cần thiết;
7. Client gửi thông iệp kết thúc khởi tạo phiên “Finished”;
8. Server gửi thông iệp kết thúc khởi tạo phiên “Finished”.
Hình 3.42. Khởi tạo phiên làm việc trong SSL/TLS
Sau khi quá trình khởi tạo thành công, hai bên SSL Client và SSL Server xác thực ược
các thông tin nhận dạng của nhau sử dụng chứng chỉ số, thống nhất các bộ mã hóa tốt nhất
sử dụng và trao ổi ược các khóa phiên, hoặc các tham số mã hóa phiên, hai bên thiết lập
thành công kênh bảo mật cho truyền dữ liệu trong phiên. b. Vận chuyển dữ liệu an toàn
Quá trình vận chuyển dữ liệu an toàn thực hiện bởi giao thức SSL Record sau khi khởi
tạo phiên làm việc thành công. Giao thức SSL Record sử dụng các tham số mã hóa và các
bộ mã hóa thiết lập trong quá trình khởi tạo ể tạo ường hầm vận chuyển dữ liệu an toàn.
SSL Record ảm bảo tính bí mật cho khối dữ liệu sử dụng mã hóa ối xứng với khóa phiên,
và ảm bảo tính toàn vẹn và xác thực cho khối dữ liệu sử dụng hàm băm có khóa (MAC).
Hình 3.43 biểu diễn quá trình xử lý dữ liệu bởi SSL Record tại bên gửi, gồm các bước: lOMoARcPSD| 37054152 Hình
3.43. Quá trình xử lý dữ liệu bởi SSL Record tại bên gửi
- Phân mảnh dữ liệu (Fragment): Dữ liệu từ ứng dụng (Application Data) ược phân
mảnh thành các khối cho phù hợp với việc óng gói và truyền của các lớp giao thức tầng thấp hơn;
- Nén dữ liệu (Compress): Từng khối dữ liệu ược ược nén ể giảm kích thước. Bước
nén dữ liệu là không bắt buộc;
- Thêm MAC (Add MAC): Tính toán giá trị MAC (sử dụng hàm băm có khóa) cho
khối dữ liệu nén và ghép giá trị MAC vào khối dữ liệu. Việc thêm MAC và kiểm tra
MAC ở bên nhận ể ảm bảo tính toàn vẹn và xác thực khối dữ liệu;
- Mã hóa (Encrypt): Mã hóa khối dữ liệu (gồm khối dữ liệu nén và MAC) ể ảm bảo
tính bí mật sử dụng mã hóa khóa ối xứng với khóa phiên;
- Thêm ề mục của SSL Record (Append SSL Record Header): thêm ề mục của SSL
Record vào khối dữ liệu ã mã hóa và chuyển xuống tầng giao vận ể chuyển sang bên nhận.
Quá trình xử lý dữ liệu khối dữ liệu nhận ược tại bên nhận ược thực hiện bởi SSL Record
theo trình tự ngược lại, gồm các bước: Tách ề mục của SSL Record, Giải mã, Tách và kiểm
tra MAC, Giải nén và Ghép các mảnh dữ liệu thành chuỗi dữ liệu ể chuyển cho lớp ứng dụng.
3.6.2. SET
SET (Secure Electronic Transaction) là giao thức cho phép thanh toán iện tử an toàn sử
dụng thẻ tín dụng do 2 công ty Visa International và MasterCard (Hoa Kỳ) phát triển. SET
có khả năng ảm bảo các thuộc tính bí mật, toàn vẹn thông tin truyền, xác thực tài khoản
chủ thẻ và xác thực nhà cung cấp.
Hình 3.44 biểu diễn một mô hình tương tác giữa các thực thể tham gia thực hiện SET.
Các thực thể tham gia mô hình này gồm: Chủ thẻ/Khách hàng (Cardholder), Nhà cung cấp
dịch vụ/Người bán hàng (Merchant), Cổng thanh toán (Payment Gateway), Ngân hàng của
nhà cung cấp/Ngân hàng của người bán (Acquirer), Ngân hàng của chủ thẻ/Ngân hàng của lOMoARcPSD| 37054152
người mua (Issuer) và Nhà cung cấp chứng chỉ (Certificate Authority). Tất cả các bên tham
gia quá trình xử lý giao dịch thanh toán (Cardholder, Merchant, Payment Gateway,
Acquirer, Issuer) ều phải ăng ký với Nhà cung cấp chứng chỉ và ược cấp chứng chỉ khóa
công khai. Các chứng chỉ khóa công khai ược các bên sử dụng ể xác thực thông tin nhận
dạng của nhau và hỗ trợ trao ổi khóa. Quá trình thực hiện một giao dịch dựa trên SET gồm các bước sau:
Hình 3.44. Một mô hình tương tác giữa các thực thể tham gia SET
1. Khách hàng xem các sản phẩm trên website của Người bán hàng và quyết ịnh các mặt hàng sẽ mua;
2. Khách hàng gửi thông iệp gồm thông tin ơn hàng và thanh toán gồm 2 phần: (i) Đơn
hàng – dành cho Người bán hàng và (ii) Thông tin thẻ - dành cho hệ thống thanh toán;
3. Người bán hàng chuyển thông tin thẻ cho Cổng thanh toán. Cổng thanh toán chuyển
tiếp cho Ngân hàng của người bán;
4. Ngân hàng của người bán gửi yêu cầu xác thực giao dịch thanh toán ến Ngân hàng của người mua;
5. Ngân hàng của người mua gửi xác nhận giao dịch ến Ngân hàng của người bán;
6. Ngân hàng của người bán gửi xác nhận giao dịch ến Người bán hàng;
7. Người bán hàng hoàn tất ơn hàng và gửi xác nhận ơn hàng ến Khách hàng;
8. Người bán hàng ghi nhận giao dịch theo thông tin từ Ngân hàng người bán cung cấp;
9. Ngân hàng của người mua in hóa ơn giao dịch cho thẻ tín dụng của Khách hàng.
3.6.3. PGP a. Giới thiệu
PGP (Pretty Good Privacy) là phương pháp bảo mật do Philip Zimmermann phát triển
năm 1991 có khả năng cung cấp tính riêng tư và tính xác thực các thông iệp truyền. PGP
ược sử dụng rộng rãi và ã ược thừa nhận thành chuẩn thực tế (RFC 3156). PGP hỗ trợ mã lOMoARcPSD| 37054152
hoá dữ liệu sử dụng mã hoá khoá bí mật và mã hóa khoá công khai, ồng thời cho phép tạo
và kiểm tra chữ ký số.
PGP ược sử dụng rộng rãi ể truyền email và file an toàn. PGP hỗ trợ hầu hết các giải
thuật mã hóa hiện ại như 3DES, AES, IDEA, RSA, ElGamal. Có nhiều bản cài ặt PGP trên
thực tế như OpenPGP, GnuPG, Gpg4win,…. b. Hoạt ộng của PGP
PGP hỗ trợ 3 mô hình hoạt ộng, bao gồm (1) Mô hình PGP chỉ ảm bảo tính xác thực
thông iệp, (2) Mô hình PGP chỉ ảm bảo tính bí mật thông iệp và (3) Mô hình PGP ảm bảo
tính bí mật và xác thực thông iệp. Để thuận tiện cho mô tả hoạt ộng của các mô hình PGP,
gọi H là hàm băm một chiều, EC là hàm mã hóa khóa ối xứng, DC là hàm giải mã khóa ối
xứng, EP là hàm mã hóa khóa bất ối xứng, DP là hàm giải mã khóa bất ối xứng, Z là hàm
nén, Z-1 là hàm giải nén, PUa là khóa công khai của bên A, PRa là khóa riêng của bên A,
PUb là khóa công khai của bên B, PRb là khóa riêng của bên B và Ks là khóa phiên. Phần
tiếp theo trình bày chi tiết về hoạt ộng của các mô hình này. Bên gửi ====> Bên nhận
Hình 3.45. Mô hình PGP chỉ ảm bảo tính xác thực thông iệp
Hình 3.45 biểu diễn mô hình PGP chỉ ảm bảo tính xác thực thông iệp truyền. Theo ó,
mô hình này sử dụng chữ ký số ể xác thực tính toàn vẹn và chủ thể gửi thông iệp. Điều kiện
thực hiện mô hình này là bên gửi A phải sở hữu cặp khóa (khóa công khai PUa và khóa
riêng PRa). Quá trình thực hiện gửi/nhận thông iệp M ảm bảo tính xác thực tại mỗi bên như sau: - Bên gửi A:
+ Tính toán giá trị băm (giá trị ại diện) của thông iệp M sử dụng hàm băm H;
+ Sử dụng khóa riêng PRa ể mã hóa (ký) giá trị băm của M tạo thành chữ ký số; +
Ghép chữ ký số vào thông iệp M;
+ Nén thông iệp và chữ ký số sử dụng hàm nén Z; +
Gửi bản dữ liệu ã nén cho người nhận. - Bên nhận B:
+ Giải nén dữ liệu nhận ược sử dụng hàm Z-1;
+ Tách chữ ký số khỏi thông iệp M và sử dụng khóa công khai của bên gửi PUa ể
kiểm tra (giải mã) chữ ký số ể khôi phục giá trị băm h1. Bên gửi A có thể sử dụng
các phương pháp trao ổi khóa công khai ã nêu ở mục 3.5.3 ể chuyển khóa công khai PUa cho bên nhận; lOMoARcPSD| 37054152
+ Tính toán giá trị băm h2 của thông iệp M sử dụng hàm băm H;
+ So sánh 2 giá trị băm h1 và h2, nếu h1 = h2 thì thông iệp truyền là toàn vẹn và
thông iệp ược gửi bởi bên gửi A. Nếu h1 ≠ h2 thì thông iệp M có thể ã bị sửa ổi,
hoặc không ược ký và gửi bởi bên gửi A. Bên gửi ====> Bên nhận
Hình 3.46. Mô hình PGP chỉ ảm bảo tính bí mật thông iệp
Hình 3.46 biểu diễn mô hình PGP chỉ ảm bảo tính bí mật thông iệp truyền. Theo ó, mô
hình này sử dụng kết hợp giữa mã hóa khóa ối xứng và mã hóa khóa bất ối xứng ể ảm bảo
tính bí mật của thông iệp. Điều kiện thực hiện mô hình này là bên nhận B phải sở hữu cặp
khóa (khóa công khai PUb và khóa riêng PRb). Quá trình thực hiện gửi/nhận thông iệp M
ảm bảo tính bí mật tại mỗi bên như sau: - Bên gửi A:
+ Nén thông iệp M sử dụng hàm nén Z;
+ Sinh khóa phiên Ks và sử dụng khóa Ks ể mã hóa thông iệp M sử dụng hàm mã hóa ối xứng EC;
+ Sử dụng khóa công khai PUb của bên nhận B ể mã hóa khóa phiên Ks sử dụng hàm
mã hóa bất ối xứng EP. Bên nhận B có thể sử dụng các phương pháp trao ổi khóa
công khai ã nêu ở mục 3.5.3 ể chuyển khóa công khai PUb cho bên gửi;
+ Ghép chữ bản mã của Ks vào bản mã của thông iệp M; +
Gửi bản mã dữ liệu cho người nhận. - Bên nhận B:
+ Tách bản mã của Ks vào bản mã của thông iệp M;
+ Giải mã bản mã Ks sử dụng hàm giải mã khóa bất ối xứng DP và khóa riêng PRb ể khôi phục Ks;
+ Sử dụng khóa phiên Ks và hàm giải mã khóa ối xứng DC ể giải mã khôi phục thông iệp ã nén M;
+ Giải nén khôi phục thông iệp M sử dụng hàm Z-1; lOMoARcPSD| 37054152 Bên gửi ===> Bên nhận
Hình 3.47. Mô hình PGP ảm bảo tính bí mật và xác thực thông iệp
Hình 3.47 biểu diễn mô hình PGP ảm bảo tính xác thực và bí mật thông iệp truyền. Theo
ó, mô hình này sử dụng chữ ký số ể xác thực tính toàn vẹn và chủ thể gửi thông iệp. Đồng
thời mô hình sử dụng kết hợp giữa mã hóa khóa ối xứng và mã hóa khóa bất ối xứng ể ảm
bảo tính bí mật của thông iệp. Điều kiện thực hiện mô hình này là bên gửi A phải sở hữu
cặp khóa (khóa công khai PUa và khóa riêng PRa) và bên nhận B phải sở hữu cặp khóa
(khóa công khai PUb và khóa riêng PRb). Mô hình này là sự kết hợp của mô hình PGP chỉ
ảm bảo tính xác thực và mô hình PGP chỉ ảm bảo tính bí mật. Theo ó, bên gửi A thực hiện
ký và mã hóa thông iệp, còn bên nhận B thực hiện giải mã và kiểm tra chữ ký của thông iệp.
3.7. Câu hỏi ôn tập
1) Mã hóa thông tin là gì? Nêu vai trò của mã hóa.
2) Mô tả các thành phần của một hệ mã hóa.
3) Mô tả các phương pháp mã hóa dòng và mã hóa khối.
4) Nêu các ứng dụng của mã hóa.
5) Mô tả phương pháp mã hóa thay thế (substitution).
6) Mô tả phương pháp mã hóa hoán vị (permutation).
7) Mô tả phương pháp mã hóa XOR.
8) Vẽ sơ ồ hoạt ộng và nêu các ặc iểm hệ mã hóa khóa ối xứng.
9) Vẽ sơ ồ hoạt ộng và nêu các ặc iểm hệ mã hóa khóa bất ối xứng.
10) Nêu các ặc iểm và mô tả các bước xử lý dữ liệu của giải thuật mã hóa DES.
11) Nêu các ặc iểm và mô tả các bước xử lý dữ liệu của giải thuật mã hóa AES.
12) Nêu các ặc iểm, thủ tục sinh khóa, mã hóa và giải mã của giải thuật mã hóa RSA.
13) Nêu các yêu cầu ảm bảo an toàn của quá trình sinh khóa RSA.
14) Nêu các ặc iểm và mô tả các bước xử lý dữ liệu của giải thuật băm MD5.
15) Nêu các ặc iểm và mô tả các bước xử lý dữ liệu của giải thuật băm SHA1.
16) Chữ ký số là gì? Mô tả quá trình tạo chữ ký và kiểm tra chữ ký của một thông iệp.
17) Chứng chỉ số khóa công khai là gì? Nêu 3 thành phần quan trọng nhất của 1 chứng chỉ
số khóa công khai. Nêu các ứng dụng của chứng chỉ số khóa công khai. lOMoARcPSD| 37054152
18) PKI là gì? Nêu các thành phần và mô tả lưu ồ cấp và sử dụng chứng chỉ trong PKI. 19)
Mô tả cơ chế hoạt ộng của phương pháp phân phối khóa dựa trên KDC, KTC.
20) Mô tả quá trình khởi tạo phiên làm việc trong SSL/TLS.
21) Mô tả quá trình xử lý dữ liệu bởi SSL Record tại bên gửi và bên nhận.
22) Mô tả hoạt ộng của mô hình PGP chỉ ảm bảo tính xác thực và mô hình PGP chỉ ảm bảo tính bí mật. lOMoARcPSD| 37054152
CHƯƠNG 4. CÁC KỸ THUẬT VÀ CÔNG NGHỆ ĐẢM BẢO AN TOÀN THÔNG TIN
Chương 4 giới thiệu khái quát về các kỹ thuật và công nghệ ảm bảo an toàn thông tin,
vấn ề kiểm soát truy cập, các biện pháp kiểm soát truy cập và một số công nghệ kiểm soát
truy cập ược sử dụng trên thực tế. Phần tiếp theo của chương giới thiệu về tường lửa – một
trong những kỹ thuật ược sử dụng rất phổ biến trong ảm bảo an toàn cho hệ thống máy
tính và mạng. Phần cuối của chương giới thiệu về các hệ thống phát hiện và ngăn chặn xâm nhập.

4.1. Khái quát về các kỹ thuật và công nghệ ảm bảo ATTT
Trong an toàn thông tin, có nhiều kỹ thuật và công nghệ ảm bảo an toàn cho thông tin,
hệ thống và mạng trong các lĩnh vực khác nhau của an toàn thông tin, như minh họa trên Hình 4.1.
Hình 4.1. Các kỹ thuật và công nghệ bảo mật trong các lĩnh vực của ATTT
Theo ó, các kỹ thuật, công nghệ và giải pháp ảm bảo an toàn thông tin bao gồm:
- Trong lĩnh vực an ninh mạng (Network Security):
+ An toàn ứng dụng (Application Security)
+ Kỹ nghệ an toàn (Security Engineering)
+ Kiểm thử lỗ hổng (Vulnerability Testing)
+ Kiểm thử xâm nhập (Penentration Testing)
+ Các hệ thống phát hiện xâm nhập (Intrusion Detection Systems) + Tường lửa (Firewalls).
- Trong lĩnh vực an ninh thiết bị ầu cuối (End Point Security): lOMoAR cPSD| 37054152 + Kiểm soát truy cập
+ Bảo mật email (Email Security) + Mạng VPNs + Mã hóa (Encryption)
+ Quét và ngăn chặn phần mềm ộc hại (Anti-Malware).
- Trong lĩnh vực an ninh Internet (Internet Security):
+ Secure HTTP (HTTPS) + Chứng
chỉ SSL (SSL Certificate) + Chuẩn xác thực mở (OAuth 2.0).
- Trong lĩnh vực an ninh ám mây (Cloud Security): + Chuẩn xác thực mở (OAuth 2.0) + Web Sockets.
- Trong lĩnh vực an ninh mạng không dây (Wireless Security): + Mã hóa (Encryption) + Kiểm soát truy cập.
Chương 2 của tài liệu này ã ề cập ến một số kỹ thuật và giải pháp phân tích, kiểm thử lỗ
hổng bảo mật, kiểm thử xâm nhập và vấn ề rà quét và ngăn chặn phần mềm ộc hại. Chương
3 ã trình bày các kỹ thuật và giải pháp dựa trên mã hóa cho ảm bảo an toàn thông tin, bao
gồm chứng chỉ SSL, PGP cho bảo mật file và email, giao thức bảo mật SSL/TLS nền tảng
cho HTTPS. Trong phạm vi của môn học này, chương này tiếp tục trình bày một số kỹ
thuật, công nghệ và giải pháp quan trọng khác cho ảm bảo an toàn thông tin bao gồm, Kiểm
soát truy cập, Tường lửa và Các hệ thống phát hiện tấn công, xâm nhập.
4.2. Kiểm soát truy cập
4.2.1. Khái niệm kiểm soát truy cập
Kiểm soát truy cập (Access control) là quá trình mà trong ó người dùng ược nhận dạng
trao quyền truy nhập ến các thông tin, các hệ thống và tài nguyên. Một hệ thống kiểm
soát truy cập có thể ược cấu thành từ 3 dịch vụ: Xác thực (Authentication), Trao quyền,
hoặc cấp quyền (Authorization) và Quản trị (Administration).
Xác thực là quá trình xác minh tính chân thực của các thông tin nhận dạng mà người
dùng cung cấp. Đây là khâu ầu tiên cần thực hiện trong một hệ thống kiểm soát truy cập.
Cần nhớ rằng, xác thực chỉ có khả năng khẳng ịnh các thông tin nhận dạng mà người dùng
cung cấp tồn tại trong hệ thống mà thường không thể xác minh chủ thể thực sự của thông
tin ó. Sau khi người dùng ã ược xác thực, trao quyền xác ịnh các tài nguyên mà người dùng
ược phép truy cập dựa trên chính sách quản trị tài nguyên của cơ quan, tổ chức và vai trò
của người dùng trong hệ thống.
Quản trị là dịch vụ cung cấp khả năng thêm, bớt và sửa ổi các thông tin tài khoản người
dùng, cũng như quyền truy cập của người dùng trong hệ thống. Mặc dù quản trị không trực
tiếp tham gia vào quá trình xác thực và trao quyền cho người dùng, quản trị là dịch vụ
không thể thiếu trong một hệ thống kiểm soát truy cập. lOMoARcPSD| 37054152
Mục ích chính của kiểm soát truy cập là ể ảm bảo tính bí mật, toàn vẹn và sẵn dùng hoặc
khả dụng của thông tin, hệ thống và các tài nguyên. Đây cũng là các yêu cầu ảm bảo an
toàn thông tin và hệ thống thông tin ã ề cập trong CHƯƠNG 1.
4.2.2. Các biện pháp kiểm soát truy cập
Các biện pháp hay cơ chế (mechanism) kiểm soát truy cập là các phương pháp thực hiện
kiểm soát truy cập, gồm 4 loại chính:
- Kiểm soát truy cập tuỳ chọn – Discretionary Access Control (DAC)
- Kiểm soát truy cập bắt buộc – Mandatory Access Control (MAC)
- Kiểm soát truy cập dựa trên vai trò – Role-Based Access Control (RBAC) và - Kiểm
soát truy cập dựa trên luật – Rule-Based Access Control.
4.2.2.1. Kiểm soát truy cập tuỳ chọn
Kiểm soát truy cập tuỳ chọn (còn gọi là tùy quyền) ược ịnh nghĩa là các cơ chế hạn chế
truy cập ến các ối tượng dựa trên thông tin nhận dạng của các chủ thể, hoặc nhóm của các
chủ thể. Các thông tin nhận dạng chủ thể (còn gọi là các nhân tố - factor) có thể gồm:
- Bạn là ai? (CMND, bằng lái xe, vân tay,...)
- Những cái bạn biết (tên truy nhập, mật khẩu, số PIN...)
- Bạn có gì? (Thẻ ATM, thẻ tín dụng, ...)
Đặc iểm nổi bật của kiểm soát truy cập tuỳ chọn là cơ chế này cho phép người dùng có
thể cấp hoặc huỷ quyền truy cập cho các người dùng khác ến các ối tượng thuộc quyền iều
khiển của họ. Điều này cũng có nghĩa là chủ sở hữu của các ối tượng (owner of objects) là
người có toàn quyền iều khiển các ối tượng này. Chẳng hạn, trong một hệ thống nhiều người
dùng, mỗi người dùng ược cấp 1 thư mục riêng (home directory) và là chủ sở hữu của thư
mục này. Người dùng có quyền tạo, sửa ổi và xoá các file trong thư mục của riêng mình.
Người dùng cũng có khả năng cấp hoặc huỷ quyền truy cập vào các file của mình cho các người dùng khác.
Có nhiều kỹ thuật thực hiện cơ chế kiểm soát truy cập tuỳ chọn trên thực tế, trong ó 2
kỹ thuật ược sử dụng rộng rãi nhất là Ma trận kiểm soát truy cập (Access Control Matrix -
ACM) và Danh sách kiểm soát truy cập (Access Control List - ACL). Ma trận kiểm soát
truy cập là một phương pháp thực hiện kiểm soát truy cập thông qua 1 ma trận 2 chiều gồm
chủ thể (subject), ối tượng (object) và các quyền truy cập, như biểu diễn trên Hình 4.2. Các
ối tượng, hay khách thể (Objects) là các thực thể cần bảo vệ, ược ký hiệu là O1, O2, O3,....
Các ối tượng có thể là các file, các thư mục hay các tiến trình (process). Các chủ thể
(Subjects) là người dùng (users), hoặc các tiến trình tác ộng lên các ối tượng, ược ký hiệu
là S1, S2, S3,... Quyền truy cập là hành ộng mà chủ thể thực hiện trên ối tượng. Các quyền
bao gồm r (read – ọc), w (write - ghi), x (execute – thực hiện) và o (own – chủ sở hữu). lOMoARcPSD| 37054152
Hình 4.2. Mô hình ma trận kiểm soát truy cập
Ưu iểm của ma trận kiểm soát truy cập là ơn giản, trực quan và dễ sử dụng. Tuy nhiên,
khi số lượng các ối tượng và số lượng các chủ thể lớn, kích thước của ma trận sẽ rất lớn.
Hơn nữa, quyền truy cập của các chủ thể vào các ối tượng là khác nhau, trong ó một số chủ
thể không có quyền truy cập vào một số ối tượng, và như vậy ô nhớ chứa quyền truy cập
của chủ thể vào ối tượng là rỗng. Trong ma trận kiểm soát truy cập có thể tồn tại rất nhiều
ô rỗng và iều này làm giảm hiệu quả sử dụng bộ nhớ của phương pháp này. Do vậy, ma
trận kiểm soát truy cập ít ược sử dụng hiện nay trên thực tế.
Danh sách kiểm soát truy cập (ACL) là một danh sách các quyền truy cập của một chủ
thể ối với một ối tượng. Một danh sách kiểm soát truy cập chỉ ra các người dùng hoặc tiến
trình ược truy cập vào ối tượng nào và các thao tác cụ thể (hay quyền) ược thực hiện trên
ối tượng ó. Một bản ghi iển hình của ACL có dạng (subject, operation). Ví dụ bản ghi
(Alice, write) của 1 file có nghĩa là Alice có quyền ghi vào file ó. Khi chủ thể yêu cầu truy
cập, hệ iều hành sẽ kiểm tra ACL xem yêu cầu ó có ược phép hay không. ACL có thể ược
áp dụng cho một hoặc 1 nhóm ối tượng. lOMoARcPSD| 37054152 Profiles ACL C User A B space Kernel Files F1 A: RW; B: R ACL space F2 A: R; B: RW; C:R F3 B: RWX; C: RX Hình 4.3. Mô hình danh sách kiểm soát truy cập
Hình 4.3 biểu diễn mô hình danh sách kiểm soát truy cập trong không gian người dùng
(user space) và không gian nhân (kernel space) tổ chức bởi hệ iều hành. Mỗi file (F1, F2,
F3,...) có một danh sách kiểm soát truy cập (ACL) của riêng mình lưu trong hồ sơ (profile)
của file. Quyền truy cập vào file ược tổ chức thành một chuỗi gồm nhiều cặp (subject,
operation), với A, B, C là ký hiệu biểu diễn chủ thể (subject) và các thao tác (operation)
hay quyền gồm R (Read - ọc), W (Write - ghi), và X (eXecute - thực hiện). Chẳng hạn,
trong danh sách kiểm soát truy cập F1(A: RW; B: R) thì chủ thể A ược quyền ọc (R) và
ghi (W) ối với F1, còn chủ thể B chỉ có quyền ọc (R).
4.2.2.2. Kiểm soát truy cập bắt buộc
Điều khiển truy bắt buộc (MAC) ược ịnh nghĩa là các cơ chế hạn chế truy cập ến các ối
tượng dựa trên hai yếu tố chính:
- Tính nhạy cảm (sensitivity) của thông tin chứa trong các ối tượng, và
- Sự trao quyền chính thức (formal authorization) cho các chủ thể truy cập các thông tin nhạy cảm này.
Các thông tin nhạy cảm thường ược gán nhãn với các mức nhạy cảm (Sensitivity level).
Có nhiều phương pháp phân chia các mức nhạy cảm của các thông tin tùy thuộc vào chính
sách an toàn thông tin của các cơ quan, tổ chức. Các mức nhạy cảm thường ược sử dụng gồm:
- Tối mật (Top Secret - T): Được áp dụng với thông tin mà nếu bị lộ có thể dẫn ến
những thiệt hại trầm trọng ối với an ninh quốc gia.
- Tuyệt mật (Secret - S): Được áp dụng với thông tin mà nếu bị lộ có thể dẫn ến một
loạt thiệt hại ối với an ninh quốc gia.
- Mật (Confidential - C): Được áp dụng với thông tin mà nếu bị lộ có thể dẫn ến thiệt
hại ối với an ninh quốc gia.
- Không phân loại (Unclassified - U): Những thông tin không gây thiệt hại ối với an
ninh quốc gia nếu bị tiết lộ. lOMoARcPSD| 37054152
Đặc iểm nổi bật của cơ chế kiểm soát truy cập bắt buộc là nó không cho phép người tạo
ra các ối tượng (thông tin, hoặc tài nguyên) có toàn quyền truy cập các ối tượng này. Quyền
truy cập ến các ối tượng do người quản trị hệ thống ịnh ra trước trên cơ sở chính sách an
toàn thông tin của tổ chức ó. Đây cũng là iểm khác biệt hoàn toàn với cơ chế kiểm soát truy
cập tùy chọn, trong ó người tạo ra các ối tượng là chủ sở hữu và có toàn quyền ối với các
ối tượng họ tạo ra. Ví dụ như, một tài liệu ược tạo ra và ược óng dấu “Mật” thì chỉ những
người có trách nhiệm trong cơ quan, tổ chức mới ược quyền xem và phổ biến cho người
khác, còn bản thân tác giả của tài liệu không ược quyền phổ biến ến người khác. Cơ chế
kiểm soát truy cập bắt buộc thường ược sử dụng phổ biến trong các cơ quan an ninh, quân ội và ngân hàng.
Có nhiều kỹ thuật thực hiện cơ chế kiểm soát truy cập bắt buộc, trong ó mô hình kiểm
soát truy cập Bell-LaPadula là một trong các kỹ thuật ược sử dụng rộng rãi nhất. Mô hình
Bell-LaPadula là mô hình bảo mật a cấp thường ược sử dụng trong quân sự, nhưng nó cũng
có thể áp dụng cho các lĩnh vực khác. Theo mô hình này trong quân sự, các tài liệu ược gán
một mức ộ bảo mật, chẳng hạn như không phân loại, mật, bí mật và tối mật. Người dùng
cũng ược ấn ịnh các cấp ộ bảo mật, tùy thuộc vào những tài liệu mà họ ược phép xem.
Chẳng hạn, một vị tướng quân ội có thể ược phép xem tất cả các tài liệu, trong khi một
trung úy có thể bị hạn chế chỉ ược xem các tài liệu mật và thấp hơn. Đồng thời, một tiến
trình chạy nhân danh một người sử dụng có ược mức ộ bảo mật của người dùng ó.
Mô hình Bell-LaPadula sử dụng nguyên tắc “ọc xuống” (read down) và nguyên tắc “ghi
lên” (write up) ể ảm bảo an toàn trong việc cấp quyền truy cập cho người dùng ến các ối
tượng. Với nguyên tắc “ọc xuống”, một người dùng ở mức ộ bảo mật k chỉ có thể ọc các ối
tượng ở cùng mức bảo mật hoặc thấp hơn. Ví dụ, một vị tướng có thể ọc các tài liệu của
một trung úy, nhưng một trung úy không thể ọc các tài liệu của vị tướng ó. Ngược lại,
nguyên tắc “ghi lên” quy ịnh, một người dùng ở mức ộ bảo mật k chỉ có thể ghi các ối tượng
ở cùng mức bảo mật hoặc cao hơn. Ví dụ, một trung úy có thể nối thêm một tin nhắn vào
hộp thư của chung của ơn vị về tất cả mọi thứ ông biết, nhưng một vị tướng không thể ghi
thêm một tin nhắn vào hộp thư của trung úy với tất cả mọi thứ ông ấy biết vì vị tướng có
thể ã nhìn thấy các tài liệu có mức bảo mật cao mà không thể ược tiết lộ cho một trung úy. lOMoARcPSD| 37054152
Hình 4.4. Mô hình kiểm soát truy cập Bell-LaPadula
Hình 4.4 minh họa việc thực hiện các nguyên tắc “ọc xuống” và nguyên tắc “ghi lên
trong mô hình Bell-LaPadula. Trong ó, các tiến trình chạy bởi người dùng ược ký hiệu A,
B, C, D, E ược biểu diễn bởi các hình tròn và các ối tượng ược ánh số 1, 2, 3, 4, 5. Mũi tên
liền nét biểu diễn quyền ọc, mũi tên ứt nét biểu diễn quyền ghi và các mức bảo mật cho cả
tiến trình và ối tượng ược ánh số 1, 2, 3, 4. Theo mô hình này, tiến trình B có mức bảo mật
là 2 chỉ ược phép ọc các ối tượng số 1 và 2 – là các ối tượng có cùng mức bảo mật và thấp
hơn 2. B không ược phép ọc ối tượng số 3 do ối tượng này có mức bảo mật cao hơn. Ngược
lại, B có quyền ghi các ối tượng số 2 và 3 – là các ối tượng có cùng mức bảo mật và cao
hơn 2. Tuy nhiên, B không ược phép ghi ối tượng số 1 do ối tượng này có mức bảo mật thấp hơn.
4.2.2.3. Kiểm soát truy cập dựa trên vai trò
Kiểm soát truy cập dựa trên vai trò (RBAC) cho phép người dùng truy cập vào hệ thống
và thông tin dựa trên vai trò (role) của họ trong cơ quan, tổ chức ó. Kiểm soát truy cập dựa
trên vai trò có thể ược áp dụng cho một nhóm người dùng hoặc từng người dùng riêng lẻ.
Quyền truy cập vào các ối tượng trong hệ thống ược tập hợp thành các nhóm “vai trò” với
các mức quyền truy cập khác nhau. Các vai trò ược tổ chức thành một cây theo mô hình
phân cấp tự nhiên của các cơ quan, tổ chức. Ví dụ như, hệ thống thông tin trong một trường
học chia người dùng thành các nhóm gán sẵn quyền truy cập vào các phần trong hệ thống như sau:
- Nhóm Quản lý ược quyền truy cập vào tất cả các thông tin trong hệ thống;
- Nhóm Giáo viên ược truy cập vào cơ sở dữ liệu các môn học, bài báo khoa học, cập
nhật iểm các lớp do mỗi giáo viên phụ trách;
- Nhóm Sinh viên chỉ ược quyền xem nội dung các môn học, tải tài liệu học tập và xem iểm của mình. lOMoARcPSD| 37054152
Việc liên kết giữa người dùng và nhóm vai trò có thể ược tạo lập và huỷ bỏ dễ dàng và
ược thực hiện theo nguyên tắc: Người dùng ược cấp “thẻ thành viên” của các nhóm “vai
trò
” trên cơ sở năng lực và vai trò, cũng như trách nhiệm của họ trong một tổ chức. Trong
nhóm “vai trò”, người dùng ược cấp vừa ủ quyền ể thực hiện các thao tác cần thiết cho công
việc ược giao. Hình 4.5 minh họa một mô hình RBAC ơn giản, trong ó quyền truy cập vào
các ối tượng (PRMS) ược tập hợp thành các nhóm vai trò (Roles) và việc cấp quyền truy
cập các ối tượng cho người dùng (Users) ược thực hiện thông qua thao tác gán quyền (UA
– User Assignment). Việc cấp quyền truy cập các ối tượng cho người dùng có thể có hiệu
lực trong dài hạn, hoặc cũng có thể có hiệu lực trong ngắn hạn, như theo phiên làm việc (Session).
Hình 4.5. Một mô hình RBAC ơn giản
4.2.2.4. Kiểm soát truy cập dựa trên luật
Kiểm soát truy cập dựa trên luật (Rule-based Access Control) là cơ chế cho phép người
dùng truy cập vào hệ thống và thông tin dựa trên các luật (rules) ã ược ịnh nghĩa trước. Các
luật có thể ược thiết lập ể hệ thống cho phép truy cập ến các tài nguyên của mình cho người
dùng thuộc một tên miền, một mạng hay một dải ịa chỉ IP. Các tường lửa (firewalls), hoặc
proxies là ví dụ iển hình về việc thực hiện cơ chế kiểm soát truy cập dựa trên luật. Các luật
thực hiện kiểm soát truy cập sử dụng các thông tin trích xuất từ các gói tin, thông tin về nội
dung truy cập, có thể bao gồm:
- Địa chỉ IP nguồn và ích của các gói tin;
- Phần mở rộng các file ể lọc các mã ộc hại;
- Địa chỉ IP hoặc các tên miền ể lọc, hoặc chặn các website bị cấm; - Tập các từ khoá
ể lọc các nội dung bị cấm.
Hình 4.6 minh họa một số luật của tường lửa lọc gói tin. Theo ó, các thông tin của gói
tin ược sử dụng ể lọc bao gồm: giao thức (Protocol), ịa chỉ IP nguồn (Source IP), ịa chỉ IP
ích (Destination IP) và cổng ích (Dest.Port). Khi luật thỏa mãn, một hành ộng (Action) ược
thực thi. Các hành ộng hỗ trợ bao gồm chấp nhận (Accept) và từ chối (Deny). lOMoARcPSD| 37054152
Hình 4.6. Một số luật của tường lửa lọc gói tin
4.2.3. Một số công nghệ kiểm soát truy cập
Trên cơ sở các biện pháp, cơ chế kiểm soát truy cập ã trình bày, mục này mô tả một số
công nghệ kiểm soát truy cập ã và ang ược ứng dụng rộng rãi trên thực tế, trong ó nhấn
mạnh ến các thông tin, hoặc các phương tiện mang thông tin xác thực người dùng ược sử
dụng. Các công nghệ kiểm soát truy cập ược ề cập bao gồm:
- Kiểm soát truy cập dựa trên mật khẩu (password)
- Kiểm soát truy cập dựa trên các khoá mã (encrypted key)
- Kiểm soát truy cập dựa trên thẻ thông minh (smartcard)
- Kiểm soát truy cập dựa trên thẻ bài (token)
- Kiểm soát truy cập dựa trên các ặc iểm sinh trắc (biometric).
4.2.3.1. Kiểm soát truy cập dựa trên mật khẩu
Kiểm soát truy cập dựa trên mật khẩu là công nghệ kiểm soát truy cập ược sử dụng từ
lâu và vẫn ang ược sử dụng rộng rãi do tính dễ dùng và rẻ tiền. Thông thường, mỗi người
dùng ược cấp 1 tài khoản (account) ể truy cập vào hệ thống. Mỗi tài khoản người dùng
thường gồm 2 thành tố: tên người dùng (username) và mật khẩu (password), trong ó mật
khẩu cần ược giữ bí mật. Trong một số hệ thống, tên người dùng có thể ược thay thế bằng
ịa chỉ email, số iện thoại,... Mật khẩu có thể lưu trong hệ thống ở dạng rõ (plaintext) hoặc
dạng mã hóa (encrypted text - thường dưới dạng giá trị băm).
Tính bảo mật của kiểm soát truy cập sử dụng mật khẩu dựa trên 2 yếu tố: (1) ộ khó oán
của mật khẩu và (2) tuổi thọ của mật khẩu. Độ khó oán của mật khẩu lại phụ thuộc vào số
bộ ký tự sử dụng trong mật khẩu và ộ dài của mật khẩu. Nhìn chung, mật khẩu càng an toàn
nếu càng nhiều bộ ký tự ược sử dụng và có kích thước ủ lớn. Với các tài khoản của ứng
dụng thông thường, khuyến nghị nên sử dụng cả ký tự in thường, ký tự in hoa, chữ số và
ký tự ặc biệt trong mật khẩu với ộ dài từ 8 ký tự trở lên. Theo tuổi thọ, mật khẩu gồm 3
loại: không hết hạn, có thời hạn sống và mật khẩu sử dụng 1 lần. Để ảm bảo an toàn, khuyến
nghị ịnh kỳ ổi mật khẩu. Khoảng thời gian sống của mật khẩu có thể ược thiết lập từ 3 tháng
ến 6 tháng phụ thuộc chính sách an toàn thông tin của cơ quan, tổ chức.
Nhìn chung, kiểm soát truy cập dựa trên mật khẩu có ộ an toàn thấp do người dùng có
xu hướng chọn các từ ơn giản, dễ nhớ làm mật khẩu. Ngoài ra, mật khẩu có thể bị nghe lén
khi ược truyền trên môi trường mạng mở như Internet. Do vậy, ể ảm bảo an toàn, cần có
chính sách quản lý tài khoản và sử dụng mật khẩu phù hợp với từng hệ thống cụ thể. lOMoARcPSD| 37054152
4.2.3.2. Kiểm soát truy cập dựa trên các khoá mã
Kiểm soát truy cập dựa trên các khoá mã cho phép ảm bảo tính bí mật của thông tin và
ồng thời cho phép kiểm tra thông tin nhận dạng của các bên tham gia giao dịch. Một trong
các ứng dụng rộng rãi nhất của khóa mã là chứng chỉ số khóa công khai (Public Key Digital
Certificate). Một chứng chỉ số khóa công khai thường gồm 3 thông tin quan trọng nhất:
- Thông tin nhận dạng của chủ thể (Subject);
- Khoá công khai của chủ thể (Public key);
- Chữ ký số của nhà cung cấp chứng chỉ số (Certificate Authority – CA).
Hình 4.7 là giao diện kiểm tra thông tin của của một chứng chỉ số khóa công khai cấp
cho tên miền www.vietcombank.com.vn. Chứng chỉ số khóa công khai có thể ược sử dụng
ể xác thực các thực thể tham gia phiên truyền thông, ồng thời hỗ trợ trao ổi khóa cho các
khâu mã hóa – giải mã thông iệp, nhằm ảm bảo tính bí mật thông iệp truyền.
4.2.3.3. Kiểm soát truy cập dựa trên thẻ thông minh
Thẻ thông minh (Smartcard) là các thẻ nhựa có gắn các chip iện tử với khả năng tính
toán và các thông tin lưu trong thẻ ược mã hoá. Kiểm soát truy cập dựa trên thẻ thông minh
là phương pháp có ộ an toàn cao do smartcard sử dụng hai nhân tố (two-factors) ể xác thực
và nhận dạng chủ thể: (1) cái bạn có (what you have) - thẻ smartcard và (2) cái bạn biết
(what you know) - số PIN. Hình 4.8 là hình ảnh thẻ thông minh tiếp xúc (a) và thẻ thông minh không tiếp xúc (b). lOMoARcPSD| 37054152
Hình 4.7. Giao diện kiểm tra thông tin của một chứng chỉ số khóa công khai (a) (b)
Hình 4.8. Thẻ thông minh tiếp xúc (a) và thẻ không tiếp xúc (b)
4.2.3.4. Kiểm soát truy cập dựa trên thẻ bài
Các thẻ bài thường là các thiết bị cầm tay ược thiết kế nhỏ gọn ể có thể dễ dàng mang
theo. Khác với thẻ thông minh, thẻ bài ược tích hợp pin cung cấp nguồn nuôi. Thẻ bài có
thể ược sử dụng ể lưu mật khẩu, các thông tin cá nhân và các thông tin quan trọng khác.
Tương tự thẻ thông minh, thẻ bài thường ược trang bị cơ chế xác thực 2 nhân tố, gồm thẻ
bài và mật khẩu, hoặc PIN (thường dùng 1 lần). Ưu iểm của thẻ bài là có cơ chế xác thực
mạnh hơn thẻ thông minh do thẻ bài có CPU với năng lực xử lý cao hơn và bộ nhớ lưu trữ
lớn hơn. Hình 4.9, Hình 4.10 và Hình 4.11 minh họa một số thẻ bài của hãng RSA Security,
ví iện tử của cổng thanh toán trực tuyến Paypal và hệ thống ApplePay tích hợp vào iện thoại di ộng. lOMoARcPSD| 37054152
Hình 4.9. Một số thẻ bài (Token) của hãng RSA Security
Hình 4.10. Ví iện tử (một dạng thẻ bài) của cổng thanh toán trực tuyến Paypal
Hình 4.11. Hệ thống ApplePay tích hợp vào iện thoại di ộng
4.2.3.5. Kiểm soát truy cập dựa trên các ặc iểm sinh trắc
Các ặc iểm sinh trắc là các ặc iểm riêng có ể nhận dạng người dùng, bao gồm dấu vân
tay, tròng mắt, khuôn mặt, tiếng nói, chữ ký tay,... Kiểm soát truy cập sử dụng các ặc iểm
sinh trắc ể nhận dạng chủ thể là phương pháp có khả năng cung cấp ộ an toàn cao nhất và
cho phép xác thực chủ thể do các ặc iểm sinh trắc luôn i cùng chủ thể và khó bị ánh cắp
hoặc làm giả. Hình 4.12 minh họa (a) Khóa vân tay, (b) Khe xác thực vân tay trên laptop
và (c) Xác thực vân tay trên iện thoại thông minh Samsung. Hình 4.13 minh họa việc quét
võng mạc ể nhận dạng tròng mắt. lOMoARcPSD| 37054152 ( a) ( b) ( c)
Hình 4.12. (a) Khóa vân tay, (b) Khe xác thực vân tay trên laptop và (c)
Xác thực vân tay trên iện thoại thông minh Samsung
Hình 4.13. Quét võng mạc nhận dạng tròng mắt
Nhược iểm chính của kiểm soát truy cập sử dụng các ặc iểm sinh trắc là phương pháp
này yêu cầu chi phí ầu tư lớn cho các thiết bị quét, ọc và xử lý các ặc iểm sinh trắc. Ngoài
ra, phương pháp này tương ối chậm do thường liên quan ến xử lý ảnh – công việc òi hỏi
khối lượng tính toán rất lớn. Một vấn ề khác cần quan tâm là tỷ lệ nhận dạng sai cao do có
nhiều yếu tố nhiễu ảnh hưởng. Ngoài ra, cũng có một số lo ngại về tính riêng tư của người
dùng khi một lượng lớn dữ liệu sinh trắc ược thu thập có khả năng bị rò rỉ và lạm dụng. 4.3. Tường lửa
4.3.1. Giới thiệu tường lửa lOMoARcPSD| 37054152
Tường lửa (Firewall) là một trong các kỹ thuật ược sử dụng phổ biến nhất ể bảo hệ
thống và mạng cục bộ tránh các mối e dọa từ bên ngoài. Tường lửa có thể là một thiết bị
phần cứng chuyên dụng, hoặc mô un phần mềm chạy trên máy tính. Hình 4.14 là hình ảnh
một tường lửa phần cứng chuyên dụng của hãng Cisco.
Hình 4.14. Một tường lửa phần cứng chuyên dụng của Cisco
Để ảm bảo hiệu quả bảo vệ, tường lửa phải miễn dịch với các loại tấn công, xâm nhập
và thường ược ặt ở vị trí cổng vào của mạng nội bộ cơ quan hoặc tổ chức, như minh họa
trên Hình 4.15. Nhờ vị trí ặt ở cổng mạng, tất cả các gói tin từ trong ra và từ ngoài vào ều
phải i qua tường lửa và chỉ các gói tin hợp pháp ược phép i qua tường lửa. Việc xác ịnh một
gói tin là hợp pháp hay không ược thực hiện bởi thao tác lọc (filtering) dựa trên các luật
(rules). Tập các luật sử dụng cho việc lọc các gói tin ược tạo ra dựa trên chính sách an ninh của cơ quan, tổ chức.
Hình 4.16 biểu diễn sơ ồ mạng trong ó tường lửa ược sử dụng ể bảo vệ các máy chủ
dịch vụ email Microsoft Exchange. Tất cả các kết nối ến hệ thống máy chủ email ều phải i
qua tường lửa. Hình 4.17 sơ ồ mạng sử dụng 2 tưởng lửa ể bảo vệ, trong ó một tường lửa
phần cứng (Hardware Firewall) ược sử dụng tại cổng kết nối Internet ể bảo vệ các máy chủ
dịch vụ (dịch vụ web, dịch vụ FTP và dịch vụ DNS) và một tường lửa phần mềm (ISA
Firewall) ược sử dụng ể bảo vệ các máy chủ nội bộ và các máy trạm trong mạng LAN của
cơ quan, tổ chức. Hai tường lửa có chính sách kiểm soát truy cập và tập luật khác nhau phù
hợp với ối tượng bảo vệ khác nhau. lOMoARcPSD| 37054152
Hình 4.15. Tường lửa bảo vệ mạng gia ình hoặc văn phòng nhỏ
Hình 4.16. Tường lửa bảo vệ các máy chủ dịch vụ
Hình 4.17. Hệ thống tường lửa bảo vệ các máy chủ dịch vụ và máy trạm
4.3.2. Các loại tường lửa
Có nhiều phương pháp phân loại các tường lửa, chẳng hạn như dựa trên vị trí các lớp
giao thức mạng và khả năng lưu trạng thái của các kết nối mạng. Dựa trên vị trí các lớp
giao thức mạng, có thể chia tường lửa thành 3 loại: tường lửa lọc gói (Packet-filtering),
cổng ứng dụng (Application-level gateway) và cổng chuyển mạch (Circuit-level gateway).
Tường lửa lọc gói thường thực hiện việc lọc các gói tin IP, theo ó một tập, hoặc một nhóm
các luật ược áp dụng cho mỗi gói tin gửi i, hoặc chuyển ến ể quyết ịnh chuyển tiếp các gói
tin hợp pháp, hay loại bỏ gói tin bất hợp pháp. Cổng ứng dụng, còn gọi là máy chủ proxy
thường ược sử dụng ể phát lại lưu lượng mạng ở mức ứng dụng. Cổng ứng dụng thực hiện
việc lọc các yêu cầu, hoặc hồi áp (request/response) ở các giao thức ứng dụng phổ biến như
HTTP, SMTP, FTP,... Cổng chuyển mạch hoạt ộng ở mức thấp nhất, với cơ chế tương tự lOMoARcPSD| 37054152
như các bộ chuyển mạch (switch). Hình 4.18 minh họa mô hình tường lửa lọc gói (a), cổng
ứng dụng (b) và cổng chuyển mạch (c).
Hình 4.18. Mô hình tường lửa lọc gói (a), Cổng ứng dụng (b) và Cổng chuyển mạch (c)
Dựa trên khả năng lưu trạng thái của các kết nối mạng, tường lửa ược chia thành 2 loại:
tường lửa có trạng thái (Stateful firewall) và tường lửa không trạng thái (Stateless firewall).
Tường lửa có trạng thái có khả năng lưu trạng thái của các kết nối mạng i qua và ược lập
trình ể phân biệt các gói tin thuộc về các kết nối mạng khác nhau. Theo ó, chỉ những gói tin
thuộc một kết nối mạng ang hoạt ộng mới ược i qua tường lửa, còn các gói tin khác không
thuộc kết nối ang hoạt ộng sẽ bị chặn lại. Hình 4.19 minh hoạt một tường lửa có trạng thái
chặn các gói tin IP gửi từ người dùng ngoài (Outside User) ến ịa chỉ IP 200.1.1.10 do chúng
không thuộc kết nối ang hoạt ộng. Ngược lại, tường lửa không trạng thái thực hiện việc lọc
các gói tin riêng rẽ mà không quan tâm mỗi gói tin thuộc về kết nối mạng nào. Tường lửa
dạng này dễ bị tấn công bởi kỹ thuật giả mạo ịa chỉ, giả mạo nội dung gói tin do tường lửa
không có khả năng nhớ các gói tin i trước thuộc cùng một kết nối mạng. lOMoARcPSD| 37054152
Hình 4.19. Tường lửa có trạng thái chặn gói tin không thuộc kết nối ang hoạt ộng
4.3.3. Các kỹ thuật kiểm soát truy cập
Hầu hết các tường lửa hỗ trợ nhiều kỹ thuật kiểm soát truy cập, gồm kiểm soát dịch vụ,
kiểm soát hướng, kiểm soát người dùng và kiểm soát hành vi. Cụ thể:
- Kiểm soát dịch vụ xác ịnh dịch vụ nào có thể ược truy cập và thường ược thực hiện
thông qua việc mở hoặc óng một cổng dịch vụ nào ó. Chẳng hạn, ể cung cấp dịch vụ
web và cấm tất cả các dịch vụ khác, tường lửa mở cổng HTTP 80 và HTTPS 443,
còn óng tất cả các cổng dịch vụ khác.
- Kiểm soát hướng iều khiển hướng ược phép i của các gói tin của mỗi dịch vụ. Hướng
có thể gồm luồng từ mạng nội bộ i ra (outgoing) và luồng từ ngoài i vào mạng nội bộ (incoming).
- Kiểm soát người dùng xác ịnh người dùng nào ược quyền truy cập và thường áp dụng
cho người dùng mạng nội bộ.
- Kiểm soát hành vi thực hiện kiểm soát việc sử dụng các dịch vụ cụ thể. Ví dụ như,
tường lửa có thể ược cấu hình ể lọc loại bỏ các thư rác, hoặc hạn chế truy cập ến một
bộ phận thông tin của máy chủ web.
4.3.4. Các hạn chế của tường lửa
Mặc dù tường lửa ược sử dụng rộng rãi ể bảo vệ mạng nội bộ khỏi các cuộc tấn công,
xâm nhập, nhưng cũng như hầu hết các kỹ thuật và công cụ ảm bảo an toàn khác, tường lửa
cũng có những hạn chế. Các hạn chế của tường lửa gồm:
- Không thể chống lại các tấn công không i qua tường lửa. Đó có thể là các dạng tấn
công khai thác yếu tố con người, hoặc kẻ tấn công có thể xâm nhập trực tiếp vào hệ
thống mạng nội bộ mà không i qua tường lửa.
- Không thể chống lại các tấn công hướng dữ liệu, hoặc tấn công vào các lỗ hổng bảo
mật của các phần mềm. lOMoARcPSD| 37054152
- Không thể chống lại các hiểm hoạ từ bên trong, như từ người dùng trong mạng nội bộ.
- Không thể ngăn chặn việc vận chuyển các chương trình hoặc các file bị nhiễm vi rút
hoặc các phần mềm ộc hại (thường ở dạng nén hoặc mã hóa).
4.4. Các hệ thống phát hiện và ngăn chặn xâm nhập
4.4.1. Giới thiệu
Các hệ thống phát hiện, ngăn chặn tấn công, xâm nhập (IDS/IPS) là một lớp phòng vệ
quan trọng trong các lớp giải pháp ảm bảo an toàn cho hệ thống thông tin và mạng theo mô
hình phòng thủ theo chiều sâu. IDS (Intrusion Detection System) là hệ thống phát hiện tấn
công, xâm nhập và IPS (Intrusion Prevention System) là hệ thống ngăn chặn tấn công, xâm
nhập. Các hệ thống IDS/IPS có thể ược ặt trước hoặc sau tường lửa trong mô hình mạng,
tùy theo mục ích sử dụng. Hình 4.20 cung cấp vị trí các hệ thống IDS và IPS trong sơ ồ
mạng, trong ó IDS thường ược kết nối vào bộ switch phía sau tường lửa, còn IPS ược ghép
vào giữa ường truyền từ cổng mạng, phía sau tường lửa.
Hình 4.20. Vị trí các hệ thống IDS và IPS trong sơ ồ mạng
Nhiệm vụ chính của các hệ thống IDS/IPS bao gồm:
- Giám sát lưu lượng mạng hoặc các hành vi trên một hệ thống ể nhận dạng các dấu
hiệu của tấn công, xâm nhập;
- Khi phát hiện các hành vi tấn công, xâm nhập, thì ghi logs các hành vi này cho phân tích bổ sung sau này;
- Ngăn chặn hoặc dừng các hành vi tấn công, xâm nhập;
- Gửi thông báo cho người quản trị về các các hành vi tấn công, xâm nhập ã phát hiện ược.
Về cơ bản IPS và IDS giống nhau về chức năng giám sát lưu lượng mạng hoặc các sự
kiện trong hệ thống. Tuy nhiên, IPS thường ược ặt giữa ường truyền thông và có thể chủ
ộng ngăn chặn các tấn công, xâm nhập bị phát hiện. Trong khi ó, IDS thường ược kết nối lOMoARcPSD| 37054152
vào các bộ ịnh tuyến, switch, card mạng và chủ yếu làm nhiệm vụ giám sát và cảnh bảo,
không có khả năng chủ ộng ngăn chặn tấn công, xâm nhập.
4.4.2. Phân loại
Có 2 phương pháp phân loại chính các hệ thống IDS và IPS, gồm (1) phân loại theo
nguồn dữ liệu và (2) phân loại theo phương pháp phân tích dữ liệu. Theo nguồn dữ liệu, có
2 loại hệ thống phát hiện xâm nhập:
- Hệ thống phát hiện xâm nhập mạng (NIDS – Network-based IDS): NIDS phân tích
lưu lượng mạng ể phát hiện tấn công, xâm nhập cho cả mạng hoặc một phần mạng.
Hình 4.21 biểu diễn một sơ ồ mạng, trong ó các NIDS ược bố trí ể giám sát phát hiện
xâm nhập tại cổng vào và cho từng phân oạn mạng. Một số NIDS iển hình như Snort, Suricata...
Hình 4.21. Các NIDS ược bố trí ể giám sát phát hiện xâm nhập tại cổng vào và
cho từng phân oạn mạng
- Hệ thống phát hiện xâm nhập cho host (HIDS – Host-based IDS): HIDS phân tích các
sự kiện xảy ra trong hệ thống/dịch vụ ể phát hiện tấn công, xâm nhập cho hệ thống
ó. Hình 4.22 minh họa một sơ ồ mạng, trong ó sử dụng NIDS ể giám sát lưu lượng
tại cổng mạng và HIDS ể giám sát các host thông qua các IDS agent. Một trạm quản
lý (Management station) ược thiết lập ể thu nhập các thông tin từ các NIDS và HIDS
ể xử lý và ưa ra quyết ịnh cuối cùng. Một trong các HIDS tiêu biểu có thể kể ến là OSSEC. lOMoARcPSD| 37054152
Hình 4.22. Sử dụng kết hợp NIDS và HIDS ể giám sát lưu lượng mạng và các host
Theo phương pháp phân tích dữ liệu, có 2 kỹ thuật phân tích chính, gồm (1) phát hiện
xâm nhập dựa trên chữ ký/dấu hiệu, hoặc phát hiện sự lạm dụng (Signature-based / misuse
intrusion detection) và (2) phát hiện xâm nhập dựa trên các bất thường (Anomaly intrusion
detection). Mục tiếp theo trình bày chi tiết hơn về hai kỹ thuật phát hiện này.
4.4.3. Các kỹ thuật phát hiện xâm nhập
4.4.3.1. Phát hiện xâm nhập dựa trên chữ ký
Phát hiện xâm nhập dựa trên chữ ký trước hết cần xây dựng cơ sở dữ liệu các chữ ký,
hoặc các dấu hiệu của các loại tấn công, xâm nhập ã biết. Hầu hết các chữ ký, dấu hiệu ược
nhận dạng và mã hóa thủ công và dạng biểu diễn thường gặp là các luật phát hiện (Detection
rule). Bước tiếp theo là sử dụng cơ sở dữ liệu các chữ ký ể giám sát các hành vi của hệ
thống, hoặc mạng, và cảnh báo nếu phát hiện chữ ký của tấn công, xâm nhập. Hình 4.23
biểu diễn lưu ồ giám sát phát hiện tấn công, xâm nhập dựa trên chữ ký iển hình.
Ưu iểm lớn nhất của phát hiện xâm nhập dựa trên chữ ký là có khả năng phát hiện các
tấn công, xâm nhập ã biết một cách hiệu quả. Ngoài ra, phương pháp này cho tốc ộ xử lý
cao, ồng thời yêu cầu tài nguyên tính toán tương ối thấp. Nhờ vậy, các hệ thống phát hiện
xâm nhập dựa trên chữ ký ược ứng dụng rộng rãi trong thực tế. Tuy nhiên, nhược iểm chính
của phương pháp này là không có khả năng phát hiện các tấn công, xâm nhập mới, do chữ
ký của chúng chưa tồn tại trong cơ sở dữ liệu các chữ ký. Hơn nữa, nó cũng òi hỏi nhiều
công sức xây dựng và cập nhật cơ sở dữ liệu chữ ký, dấu hiệu của các tấn công, xâm nhập. lOMoARcPSD| 37054152
Hình 4.23. Lưu ồ giám sát phát hiện tấn công, xâm nhập dựa trên chữ ký
4.4.3.2. Phát hiện xâm nhập dựa trên bất thường
Phát hiện xâm nhập dựa trên bất thường dựa trên giả thiết: các hành vi tấn công, xâm
nhập thường có quan hệ chặt chẽ với các hành vi bất thường. Quá trình xây dựng và triển
khai một hệ thống phát hiện xâm nhập dựa trên bất thường gồm 2 giai oạn: (1) huấn luyện
và (2) phát hiện. Trong giai oạn huấn luyện, hồ sơ (profile) của ối tượng trong chế ộ làm
việc bình thường ược xây dựng. Để thực hiện giai oạn huấn luyện này, cần giám sát ối
tượng trong một khoảng thời gian ủ dài ể thu thập ược ầy ủ dữ liệu mô tả các hành vi của
ối tượng trong iều kiện bình thường làm dữ liệu huấn luyện. Tiếp theo, thực hiện huấn luyện
dữ liệu ể xây dựng mô hình phát hiện, hay hồ sơ của ối tượng. Trong giai oạn phát hiện,
thực hiện giám sát hành vi hiện tại của hệ thống và cảnh báo nếu có khác biệt rõ nét giữa
hành vi hiện tại và các hành vi lưu trong hồ sơ của ối tượng.
Hình 4.24 biểu diễn giá trị entropy của IP nguồn của các gói tin theo cửa sổ trượt từ lưu
lượng bình thường và entropy của IP nguồn của các gói tin từ lưu lượng tấn công DDoS.
Có thể thấy sự khác biệt rõ nét giữa giá trị entropy của lưu lượng bình thường và lưu lượng
tấn công và như vậy, nếu một ngưỡng entropy ược chọn phù hợp ta hoàn toàn có thể phát
hiện sự xuất hiện của cuộc tấn công DDoS dựa trên sự thay ổi ột biến của giá trị entropy.
Ưu iểm của phát hiện xâm nhập dựa trên bất thường là có tiềm năng phát hiện các loại
tấn công, xâm nhập mới mà không yêu cầu biết trước thông tin về chúng. Tuy nhiên, phương
pháp này có tỷ lệ cảnh báo sai tương ối cao so với phương pháp phát hiện dựa trên chữ ký.
Điều này làm giảm khả năng ứng dụng thực tế của phát hiện xâm nhập dựa trên bất thường.
Ngoài ra, nó cũng tiêu tốn nhiều tài nguyên hệ thống cho việc xây dựng hồ sơ ối tượng và
phân tích hành vi hiện tại. Mặc dù vậy, ây vẫn là một hướng nghiên cứu phát hiện xâm nhập
ang rất ược quan tâm nhằm cải thiện tỷ lệ phát hiện, giảm tỷ lệ cảnh báo sai và giảm yêu
cầu sử dụng tài nguyên tính toán, lưu trữ. lOMoARcPSD| 37054152
Hình 4.24. Giá trị entropy của IP nguồn của các gói tin từ lưu lượng hợp pháp (phần giá
trị cao, ều) và entropy của IP nguồn của các gói tin từ lưu lượng tấn công DDoS (phần giá trị thấp)
4.5. Câu hỏi ôn tập
1) Nêu khái niệm, các thành phần và mục ích của kiểm soát truy cập.
2) Nêu cơ chế hoạt ộng của mô hình (biện pháp) kiểm soát truy cập tùy chọn (DAC).
3) Nêu cơ chế hoạt ộng của mô hình (biện pháp) kiểm soát truy cập bắt buộc (MAC).
4) Nêu cơ chế hoạt ộng của mô hình (biện pháp) kiểm soát truy cập dựa trên vai trò (RBAC).
5) Nêu cơ chế hoạt ộng của mô hình (biện pháp) kiểm soát truy cập dựa trên luật (Rulebased access control).
6) So sánh 2 kỹ thuật thực hiện mô hình kiểm soát truy cập tùy chọn (DAC): ma trận kiểm
soát truy cập và danh sách kiểm soát truy cập.
7) Mô tả cơ chế hoạt ộng của mô hình bảo mật a cấp Bell-LaPadula.
8) Mô tả công nghệ kiểm soát truy cập dựa trên mật khẩu.
9) Trong các công nghệ kiểm soát truy cập: dựa trên mật khẩu, khóa mã, thẻ thông minh,
thẻ bài và các ặc iểm sinh trắc, công nghệ nào có khả năng cho ộ bảo mật cao nhất? Tại sao?
10) Tường lửa là gì? Nêu vai trò của tường lửa. Nêu các phương pháp phân loại tường lửa.
11) Nêu các kỹ thuật kiểm soát truy cập và các hạn chế của tường lửa.
12) Các hệ thống IDS/IPS là gì? Nêu các nhiệm vụ chính của IDS/IPS. IDS và IPS giống
và khác nhau ở những iểm nào?
13) Nêu các phương pháp phân loại IDS/IPS. Có thể sử dụng kết hợp NIDS và HIDS trong
cùng một mạng ược không?
14) Mô tả và nêu ưu nhược iểm của phương pháp phát hiện xâm nhập dựa trên chữ ký.
15) Mô tả phương pháp phát hiện xâm nhập dựa trên bất thường. Nêu ưu nhược iểm của phương pháp này. lOMoARcPSD| 37054152
16) Tại sao phát hiện xâm nhập dựa trên bất thường có khả năng phát hiện các tấn công
xâm nhập mới? Tại sao phát hiện xâm nhập dựa trên bất thường thường có tỷ lệ cảnh
báo sai cao hơn phát hiện xâm nhập dựa trên chữ ký? lOMoARcPSD| 37054152
CHƯƠNG 5. QUẢN LÝ, CHÍNH SÁCH VÀ PHÁP LUẬT AN TOÀN THÔNG TIN
Chương 6 giới thiệu một số khái niệm cơ bản trong quản lý an toàn thông tin, vấn ề ánh
giá rủi ro an toàn thông tin và thực thi quản lý an toàn thông tin. Nội dung tiếp theo của
chương ề cập ến các chuẩn quản lý an toàn thông tin, trong ó giới thiệu một số chuẩn của
bộ chuẩn ISO/IEC 27000. Phần cuối của chương giới thiệu khái quát về các vấn ề chính
sách, pháp luật và ạo ức an toàn thông tin.

5.1. Quản lý an toàn thông tin
5.1.1. Khái quát về quản lý an toàn thông tin
Chúng ta bắt ầu mục này với khái niệm Tài sản (Asset) trong lĩnh vực an toàn thông tin,
gọi tắt là Tài sản an toàn thông tin. Tài sản an toàn thông tin là thông tin, thiết bị, hoặc các
thành phần khác hỗ trợ các hoạt ộng có liên quan ến thông tin. Tài sản an toàn thông tin có thể gồm:
- Phần cứng (máy chủ, các thiết bị mạng,…);
- Phần mềm (hệ iều hành, các phần mềm máy chủ dịch vụ,…); và
- Thông tin (thông tin khách hàng, nhà cung cấp, hoạt ộng kinh doanh,…).
Khái niệm tiếp theo là Quản lý an toàn thông tin (Information security management).
Quản lý an toàn thông tin là một tiến trình nhằm ảm bảo các tài sản an toàn thông tin quan
trọng của cơ quan, tổ chức, doanh nghiệp ược bảo vệ ầy ủ với chi phí phù hợp.
Quản lý an toàn thông tin là một thành phần rất quan trọng trong an toàn thông tin và
nó phải trả lời ược 3 câu hỏi:
1. Những tài sản nào cần ược bảo vệ?
2. Những mối e dọa nào có thể có ối với các tài sản này?
3. Những biện pháp có thể thực hiện ể ứng phó với các mối e dọa ó? Quản lý an toàn
thông tin có thể ược thực hiện theo 3 khâu chính sau:
- Khâu 1: Xác ịnh rõ mục ích ảm bảo an toàn thông tin và hồ sơ tổng hợp về các rủi ro;
- Khâu 2: Đánh giá rủi ro với từng tài sản an toàn thông tin cần bảo vệ; và
- Khâu 3: Xác ịnh và triển khai các biện pháp quản lý, kỹ thuật kiểm soát, giảm rủi ro
về mức chấp nhận ược.
Một iểm quan trọng cần lưu ý là, quá trình quản lý an toàn thông tin cần ược thực hiện
liên tục theo chu trình do sự thay ổi nhanh chóng của công nghệ và môi trường xuất hiện
rủi ro. Hình 5.1 mô tả mô hình hệ thống quản lý an toàn thông tin theo chuẩn ISO 27001.
Theo ó, phần việc Phân tích rủi ro ược thực hiện trong các khâu 1 và khâu 2, và các phần
việc Lựa chọn các kiểm soát và Thực thi các kiểm soát ược thực hiện trong khâu 3. Khi các
kiểm soát ược triển khai sẽ có khả năng thay ổi mức rủi ro ối với các tài sản an toàn thông tin. lOMoARcPSD| 37054152
Hình 5.1. Quan hệ giữa các khâu trong quản lý an toàn thông tin
5.1.2. Đánh giá rủi ro an toàn thông tin
5.1.2.1. Giới thiệu
Đánh giá rủi ro an toàn thông tin (Security risk assessment) là một bộ phận quan trọng
của vấn ề quản lý rủi ro an toàn thông tin. Theo ó, mỗi tài sản của tổ chức cần ược xem xét,
nhận dạng các rủi ro có thể có và ánh giá mức rủi ro. Đánh giá rủi ro là một trong các cơ sở
ể xác ịnh mức rủi ro chấp nhận ược với từng loại tài sản. Trên cơ sở xác ịnh mức rủi ro, có
thể ề ra các biện pháp xử lý, kiểm soát rủi ro trong mức chấp nhận ược, với mức chi phí phù hợp.
Hình 5.2 minh hoạ mô hình ánh giá rủi ro an toàn thông tin, trong ó 3 nhân tố chính liên
quan trực tiếp cần ược xem xét gồm: (1) Tài sản an toàn thông tin cần ược bảo vệ, (2) Các
mối e doạ ối với các tài sản an toàn thông tin và (3) Các lỗ hổng bảo mật tồn tại trong các
tài sản an toàn thông tin. Như vậy, việc ánh giá rủi ro an toàn thông tin cần phải xem xét
toàn diện cả vấn ề bên trong của tài sản an toàn thông tin (lỗ hổng bảo mật) và vấn ề bên ngoài (mối e doạ).
Hình 5.2. Mô hình ánh giá rủi ro an toàn thông tin
Có 4 phương pháp tiếp cận ánh giá rủi ro: phương pháp ường cơ sở (Baseline approach),
phương pháp không chính thức (Informal approach), phương pháp phân tích chi tiết rủi ro
(Detailed risk analysis) và phương pháp kết hợp (Combined approach). Tùy theo quy mô
của hệ thống thông tin của ơn vị và tài sản an toàn thông tin cần ược bảo vệ, ơn vị có thể
xem xét lựa chọn phương pháp ánh giá rủi ro cho phù hợp. Mục tiếp theo mô tả chi tiết về
các phương pháp ánh giá rủi ro kể trên. lOMoAR cPSD| 37054152
5.1.2.2. Các phương pháp ánh giá rủi ro
a. Phương pháp ánh giá rủi ro ường cơ sở
Phương pháp ánh giá rủi ro ường cơ sở là phương pháp ơn giản nhất. Mục ích của
phương pháp này là thực thi các kiểm soát an ninh ở mức cơ bản dựa trên các tài liệu cơ
bản, các quy tắc thực hành và các thực tế tốt nhất của ngành ã ược áp dụng. Phương pháp
ường cơ sở có ưu iểm là không òi hỏi các chi phí cho các tài nguyên bổ sung sử dụng trong
ánh giá rủi ro chính thức và cùng nhóm các biện pháp có thể triển khai trên nhiều hệ thống.
Tuy nhiên, nhược iểm của nó là không xem xét kỹ ến các iều kiện nảy sinh các rủi ro ở các
hệ thống của các tổ chức khác nhau. Một vấn ề khác của phương pháp này là mức ường cơ
sở ược xác ịnh chung nên có thể không phù hợp với từng tổ chức cụ thể. Nếu chọn mức quá
cao có thể gây tốn kém, nhưng nếu chọn mức quá thấp có thể gây mất an toàn. Nhìn chung,
phương pháp ường cơ sở phù hợp với các tổ chức với hệ thống công nghệ thông tin có quy
mô nhỏ, có nguồn lực hạn chế. b. Phương pháp không chính thức
Phương pháp không chính thức là phương pháp tiếp cận ánh giá rủi ro tiếp theo. Phương
pháp không chính thức liên quan ến việc thực hiện các nội dung sau:
- Thực hiện một số dạng phân tích rủi ro hệ thống công nghệ thông tin của tổ chức một cách không chính thức,
- Sử dụng kiến thức chuyên gia của các nhân viên bên trong tổ chức, hoặc các nhà tư vấn từ bên ngoài, và
- Không thực hiện ánh giá toàn diện các rủi ro ối với tất cả các tài sản công nghệ thông tin của tổ chức.
Phương pháp này có ưu iểm là không òi hỏi các nhân viên phân tích rủi ro có các kỹ
năng bổ sung, nên có thể thực hiện nhanh với chi phí thấp, và việc có phân tích hệ thống
công nghệ thông tin của tổ chức giúp cho việc ánh giá rủi ro, lỗ hổng chính xác hơn và các
biện pháp kiểm soát ưa ra cũng phù hợp hơn phương pháp ường cơ sở. Phương pháp không
chính thức có các nhược iểm là:
- Do ánh giá rủi ro không ược thực hiện toàn diện nên có thể một rủi ro không ược
xem xét kỹ, nên có thể ể lại nguy cơ cao cho tổ chức, và
- Kết quả ánh giá dễ phục thuộc vào quan iểm của các cá nhân.
Trên thực tế phương pháp không chính thức phù hợp với các tổ chức với hệ thống công
nghệ thông tin có quy mô nhỏ và vừa, có nguồn lực tương ối hạn chế. c. Phương pháp phân tích chi tiết rủi ro
Phương pháp phân tích chi tiết rủi ro là phương pháp ánh giá toàn diện, ược thực hiện
một cách chính thức và ược chia thành nhiều giai oạn, bao gồm:
- Nhận dạng các tài sản,
- Nhận dạng các mối e dọa và lổ hổng ối với các tài sản này,
- Xác ịnh xác suất xuất hiện các rủi ro và các hậu quả có thể có nếu rủi ro xảy ra với cơ quan, tổ chức, và lOMoAR cPSD| 37054152
- Lựa chọn các biện pháp xử lý rủi ro dựa trên kết quả ánh giá rủi ro của các giai oạn trên.
Ưu iểm của phương pháp này là cho phép xem xét chi tiết các rủi ro ối với hệ thống
công nghệ thông tin của tổ chức, và lý giải rõ ràng các chi phí cho các biện pháp kiểm soát
rủi do ề xuất. Đồng thời, nó cung cấp thông tin tốt nhất cho việc tiếp tục quản lý vấn ề an
ninh của các hệ thống công nghệ thông tin khi chúng ược nâng cấp, sửa ổi. Tuy nhiên,
phương pháp này có 2 nhược iểm là:
- Chi phí lớn về thời gian, các nguồn lực và yêu cầu kiến thức chuyên gia có trình ộ cao, và
- Có thể dẫn ến chậm trễ trong việc ưa ra các biện pháp xử lý, kiểm soát rủi ro phù hợp.
Phương pháp phân tích chi tiết rủi ro phù hợp với các tổ chức chính phủ cung cấp các
dịch vụ thiết yếu cho người dân và doanh nghiệp, hoặc các tổ chức có hệ thống công nghệ
thông tin quy mô lớn, hoặc các tổ chức cung cấp nền tảng hạ tầng truyền thông cho quốc gia. d. Phương pháp kết hợp
Phương pháp kết hợp là phương pháp tiếp cận ánh giá rủi ro cuối cùng. Phương pháp
này kết hợp các thành phần của 3 phương pháp ường cơ sở, không chính thức và phân tích
chi tiết, với các mục tiêu là cung cấp mức bảo vệ hợp lý càng nhanh càng tốt và sau ó kiểm
tra và iều chỉnh các biện pháp bảo vệ trên các hệ thống chính theo thời gian. Phương pháp
kết hợp ược thực hiện theo 3 bước:
- Thực hiện phương pháp ường cơ sở với tất cả các thành phần của hệ thống công nghệ thông tin của tổ chức;
- Tiếp theo, các thành phần có mức rủi ro cao, hoặc trọng yếu ược xem xét ánh giá
theo phương pháp không chính thức;
- Cuối cùng hệ thống ược xem xét ánh giá toàn diện rủi ro ở mức chi tiết.
Các ưu iểm của phương pháp kết hợp là việc bắt ầu bằng việc ánh giá rủi ro ở mức cao
dễ nhận ược sự ủng hộ của cấp quản lý, thuận lợi cho việc lập kế hoạch quản lý an toàn
thông tin, ồng thời có thể giúp sớm triển khai các biện pháp xử lý và kiểm soát rủi ro ngay
từ giai oạn ầu, cũng như có thể giúp giảm chi phí với a số các tổ chức. Tuy nhiên, phương
pháp kết hợp có nhược iểm là nếu ánh giá ở mức cao trong giai oạn ầu không chính xác có
thể dẫn ến áp dụng các biện pháp kiểm soát không phù hợp, hệ thống có thể gặp rủi ro trong
thời gian chờ ánh giá chi tiết. Nói chung, phương pháp kết hợp phù hợp các tổ chức với hệ
thống công nghệ thông tin quy mô vừa và lớn.
5.1.3. Phân tích chi tiết rủi ro an toàn thông tin
5.1.3.1. Giới thiệu
Phân tích chi tiết rủi ro an toàn thông tin là phương pháp xem xét, phân tích toàn diện
các rủi ro của từng thành phần trong hệ thống công nghệ thông tin của cơ quan, tổ chức.
Phân tích chi tiết rủi ro an toàn thông tin gồm nhiều hoạt ộng ược chia thành 9 bước:
1. Mô tả ặc iểm hệ thống lOMoAR cPSD| 37054152
2. Nhận dạng các mối e dọa
3. Nhận dạng các lỗ hổng bảo mật
4. Phân tích các kiểm soát
5. Xác ịnh xác suất rủi ro
6. Phân tích các ảnh hưởng 7. Xác ịnh các rủi ro
8. Đề xuất các kiểm soát
9. Viết tài liệu kết quả phân tích.
5.1.3.2. Nội dung phân tích chi tiết rủi ro
Nội dung cụ thể từng bước của phân tích chi tiết rủi ro an toàn thông tin như sau.
Bước 1: Mô tả ặc iểm hệ thống - Đầu vào:
Các thành phần của hệ thống:
+ Phần cứng, phần mềm, giao diện + Dữ liệu và thông tin + Con người
+ Sứ mệnh của hệ thống. - Đầu ra:
+ Ranh giới và chức năng hệ thống;
+ Tính trọng yếu của dữ liệu và hệ thống; + Tính nhạy cảm
Bước 2: Nhận dạng các mối e dọa - Đầu vào:
+ Lịch sử tấn công vào hệ thống
+ Dữ liệu từ các tổ chức chuyên về an toàn thông tin +
Dữ liệu từ các phương tiện thông tin ại chúng. - Đầu ra:
+ Báo cáo về các mối e dọa ối với hệ thống
Bước 3: Nhận dạng các lỗ hổng bảo mật - Đầu vào:
+ Các báo cáo ánh giá rủi ro ã có
+ Các nhận xét kiểm toán hệ thống
+ Các yêu cầu an ninh, an toàn + Các
kết quả kiểm tra an ninh, an toàn - Đầu ra:
+ Danh sách các lỗ hổng bảo mật tiềm tàng. lOMoAR cPSD| 37054152
Bước 4: Phân tích các kiểm soát (control) - Đầu vào:
+ Các kiểm soát hiện có
+ Các kiểm soát ược lập kế hoạch - Đầu ra:
+ Danh sách các kiểm soát hiện có và ược lập kế hoạch.
Bước 5: Xác ịnh xác suất rủi ro - Đầu vào:
+ Động cơ của các nguồn e dọa + Khả năng của e dọa
+ Bản chất của lỗ hổng bảo mật
+ Các kiểm soát hiện có - Đầu ra:
+ Đánh giá xác suất rủi ro.
Bước 6: Phân tích các ảnh hưởng (liên quan sự vi phạm tính toàn vẹn, sẵn dùng và bí
mật của các tài sản hệ thống) - Đầu vào:
+ Phân tích ảnh hưởng sứ mệnh
+ Đánh giá tầm quan trọng của tài sản
+ Tầm quan trọng của dữ liệu
+ Tính nhạy cảm của dữ liệu - Đầu ra:
+ Đánh giá các ảnh hưởng.
Bước 7: Xác ịnh các rủi ro - Đầu vào:
+ Khả năng bị mối e dọa khai thác
+ Tầm quan trọng của ảnh hưởng
+ Sự phù hợp của các kiểm soát theo kế hoạch, hoặc hiện có - Đầu ra:
+ Các rủi ro và các mức rủi ro có liên quan.
Bước 8: Đề xuất các kiểm soát - Đầu vào: Không
- Đầu ra: Đề xuất các biện pháp xử lý, kiểm soát rủi ro
Bước 9: Viết tài liệu kết quả phân tích - Đầu vào: Không lOMoAR cPSD| 37054152
- Đầu ra: Báo cáo ánh giá rủi ro.
5.1.4. Thực thi quản lý an toàn thông tin
5.1.4.1. Giới thiệu
Thực thi quản lý an toàn thông tin là bước tiếp theo của khâu ánh giá rủi ro, nhằm triển
khai, thực thi các kiểm soát (control) nhằm ảm bảo an toàn thông tin cho hệ thống công
nghệ thông tin của tổ chức. Các nội dung chính của thực thi quản lý an toàn thông tin gồm:
- Thực thi (Implementation): Thực thi các kiểm soát, và nâng cao ý thức và ào tạo an toàn thông tin.
- Thực thi tiếp tục (Implementation follow-up): Bảo trì, kiểm tra hợp chuẩn, quản lý
thay ổi và xử lý sự cố.
Kiểm soát (control), ảm bảo an toàn (safeguard), hoặc biện pháp ối phó
(countermeasure) là các thuật ngữ có thể ược sử dụng tương ương, hoặc tráo ổi cho nhau
trong quản lý an toàn thông tin. Kiểm soát là phương tiện ể quản lý rủi ro, bao gồm các
chính sách, thủ tục, các hướng dẫn, các thực tế, hoặc cấu trúc tổ chức. Kiểm soát có thể là
vấn ề quản lý hành chính hoặc kỹ thuật, hoặc có bản chất luật pháp.
Các kiểm soát ược thực thi trong quản lý an toàn thông tin có thể gồm 6 loại:
- Kiểm soát quản lý (Management controls)
- Kiểm soát vận hành (Operational controls) - Kiểm soát kỹ thuật (Technical controls)
- Kiểm soát hỗ trợ (Supportive controls)
- Kiểm soát ngăn ngừa (Preventive controls)
- Kiểm soát phát hiện và phục hồi (Detection and recovery controls).
5.1.4.2. Các loại kiểm soát
Kiểm soát quản lý bao gồm các nội dung:
- Tập trung vào các chính sách, lập kế hoạch, hướng dẫn và chuẩn an toàn thông tin;
- Các kiểm soát có ảnh hưởng ến việc lựa chọn các kiểm soát vận hành và kiểm soát
kỹ thuật nhằm giảm tổn thất do rủi ro và bảo vệ sứ mệnh của tổ chức;
- Các kiểm soát tham chiếu ến các vấn ề ược giải quyết thông qua lĩnh vực quản lý.
Kiểm soát vận hành bao gồm các nội dung:
- Giải quyết vấn ề thực thi chính xác và sử dụng các chính sách và chuẩn an toàn thông
tin, ảm bảo tính nhất quán trong vận hành an toàn thông tin và khắc phục các khiếm
khuyết vận hành ã ược nhận dạng;
- Các kiểm soát này liên quan ến các cơ chế và thủ tục ược thực thi chủ yếu bởi con
người, hơn là bởi hệ thống;
- Được sử dụng ể tăng cường an ninh cho một hệ thống hoặc một nhóm các hệ thống.
Kiểm soát kỹ thuật bao gồm các nội dung: lOMoAR cPSD| 37054152
- Liên quan ến việc sử dụng úng ắn các biện pháp ảm bảo an ninh bằng phần cứng và
phần mềm trong hệ thống;
- Bao gồm các biện pháp từ ơn giản ến phức tạp ể ảm bảo an toàn cho các thông tin
nhạy cảm và các chức năng trọng yếu của các hệ thống;
- Một số kiểm soát kỹ thuật: xác thực, trao quyền và thực thi kiểm soát truy cập,...
Kiểm soát hỗ trợ là các kiểm soát chung ở lớp dưới, có quan hệ với và ược sử dụng bởi nhiều kiểm soát khác.
Kiểm soát ngăn ngừa là kiểm soát tập trung vào việc ngăn ngừa việc xảy ra các vi phạm
an ninh, bằng cách khắc chế các nỗ lực vi phạm chính sách an ninh hoặc khai thác các lỗ hổng bảo mật.
Kiểm soát phát hiện và phục hồi là kiểm soát tập trung vào việc áp trả vi phạm an ninh
bằng cách ưa ra cảnh báo vi phạm, hoặc các nỗ lực vi phạm chính sách an ninh, hoặc khai
thác các lỗ hổng bảo mật, ồng thời cung cấp các biện pháp phục hồi các tài nguyên tính
toán bị ảnh hưởng do vi phạm an ninh.
5.1.4.3. Xây dựng kế hoạch ảm bảo an toàn
Kế hoạch ảm bảo an toàn (Security plan) là một tài liệu chỉ rõ các phần việc sẽ ược thực
hiện, các tài nguyên cần sử dụng và những người, hoặc nhân viên chịu trách nhiệm thực
hiện. Mục ích của Kế hoạch ảm bảo an toàn là cung cấp chi tiết về các hành ộng cần thiết ể
cải thiện các vấn ề ã ược nhận dạng trong hồ sơ ánh giá rủi ro một cách nhanh chóng. Kế
hoạch ảm bảo an toàn nên gồm các thông tin chi tiết sau (theo chuẩn hướng dẫn quản lý rủi ro năm 2002 của NIST):
- Các rủi ro (sự kế hợp của tài sản/mối e dọa/lỗ hổng)
- Các kiểm soát ược khuyến nghị (từ ánh giá rủi ro)
- Các hành ộng ưu tiên cho mỗi rủi ro
- Các kiểm soát ược chọn (dựa trên phân tích lợi ích – chi phí)
- Các tài nguyên cần có cho thực thi các kiểm soát ã chọn
- Nhân sự chịu trách nhiệm
- Ngày bắt ầu và kết thúc việc thực thi - Các yêu cầu bảo trì và các nhận xét khác.
5.1.4.4. Nội dung thực thi quản lý an toàn thông tin
Như ã ề cập trong mục 5.1.4.1, việc thực thi quản lý an toàn thông tin gồm 2 khâu là (1)
thực thi (Implementation) và (2) thực thi tiếp tục (Implementation follow-up). Khâu thực
thi
gồm 2 phần việc là thực thi các kiểm soát, và nâng cao ý thức và ào tạo an toàn thông
tin. Thực thi các kiểm soát là phần việc tiếp theo cần thực hiện trong kế hoạch ảm bảo an
toàn của tiến trình quản lý an toàn thông tin. Thực thi các kiểm soát có liên hệ mật thiết với
việc ào tạo nâng cao ý thức an toàn thông tin cho nhân viên nói chung và ào tạo chuyên sâu
về an toàn thông tin cho nhân viên an toàn thông tin trong tổ chức.
Khâu thực thi tiếp tục là việc cần lặp lại trong chu trình quản lý an toàn thông tin ể áp
ứng sự thay ổi trong môi trường công nghệ thông tin và môi trường rủi ro. Trong ó, các
kiểm soát ã ược thực thi cần ược giám sát ể ảm bảo tính hiệu quả, và bất kỳ một sự thay ổi lOMoAR cPSD| 37054152
trên hệ thống cần ược xem xét vấn ề an ninh và hồ sơ rủi ro của hệ thống bị ảnh hưởng cần
ược xem xét nếu cần thiết. Giai oạn thực thi tiếp tục bao gồm các khía cạnh: bảo trì các
kiểm soát an ninh, kiểm tra hợp chuẩn an ninh, quản lý thay ổi và cấu hình và xử lý các sự cố.
Bảo trì các kiểm soát an ninh gồm các phần việc phải ảm bảo các yêu cầu sau:
- Các kiểm soát ược xem xét ịnh kỳ ể ảm bảo chúng hoạt ộng như mong muốn;
- Các kiểm soát cần ược nâng cấp khi các yêu cầu mới ược pháp hiện;
- Các thay ổi với hệ thống không ược có các ảnh hưởng tiêu cực ến các kiểm soát;
- Các mối e dọa mới hoặc các lỗ hổng ã không trở thành ược biết ến.
Kiểm tra hợp chuẩn an ninh là quá trình kiểm toán việc quản lý an toàn thông tin của tổ
chức nhằm ảm bảo tính phù hợp với kế hoạch ảm bảo an ninh. Việc kiểm toán có thể ược
thực hiện bởi nhân sự bên trong hoặc bên ngoài tổ chức. Cần sử dụng danh sách kiểm tra
(checklist) các vấn ề: các chính sách và kế hoạch an ninh ược tạo ra, các kiểm soát phù hợp
ược lựa chọn và các kiểm soát ược sử dụng và bảo trì phù hợp.
Quản lý thay ổi và cấu hình là tiến trình ược sử dụng ể xem xét các thay ổi ược ề xuất
cho hệ thống trong quá trình sử dụng. Các thay ổi với các hệ thống hiện có là cần thiết do
nhiều lý do, như hệ thống có trục trặc, hoặc sự xuất hiện của các mối e dọa hoặc lỗ hổng
mới, sự xuất hiện của yêu cầu mới, nhiệm vụ mới,… Các thay ổi cần ược xem xét kỹ lưỡng
cả vấn ề vận hành, tính năng và vấn ề an toàn,… Quản lý cấu hình liên quan ến việc lưu vết
các cấu hình của mỗi hệ thống khi chúng ược nâng cấp, thay ổi. Việc này bao gồm danh
sách các phiên bản của phần cứng, phần mềm cài ặt trong mỗi hệ thống, và thông tin quản
lý cấu hình hữu ích ể khôi phục hệ thống khi việc thay ổi hoặc nâng cấp thất bại.
Xử lý các sự cố bao gồm các thủ tục ược sử dụng ể phản ứng lại các sự cố an ninh. Xử
lý sự cố có liên quan ến vấn ề ào tạo nâng cao ý thức an toàn thông tin cho người dùng và
ào tạo chuyên sâu cho chuyên viên an toàn thông tin.
5.2. Các chuẩn quản lý an toàn thông tin
5.2.1. Giới thiệu
Trong các chuẩn quản lý an toàn thông tin, bộ chuẩn NIST SP 800 của Viện tiêu chuẩn
và công nghệ Mỹ và bộ chuẩn quốc tế ISO/IEC 27000 ược tham chiếu và sử dụng rộng rãi
nhất. Nhiều quốc gia, trong ó có Việt Nam ã dịch và chấp thuận nguyên vẹn một số chuẩn
trong bộ chuẩn quốc tế ISO/IEC 27000 làm chuẩn quản lý an toàn thông tin quốc gia. Theo
ó, bộ chuẩn ISO/IEC 27000:2014 ược Việt Nam dịch và chấp thuận nguyên vẹn thành chuẩn
TCVN 11238:2015. Trong phạm vi của môn học, mục này giới thiệu khái quát về bộ chuẩn
quản lý an toàn thông tin ISO/IEC 27000.
Chuẩn ISO/IEC 27000: 2009 giới thiệu khái quát về bộ chuẩn ISO/IEC 27000 và ịnh
nghĩa các thuật ngữ và từ vựng sử dụng cho toàn bộ các chuẩn con trong bộ chuẩn ISO/IEC 27000.
Chuẩn ISO/IEC 17799 ược soạn thảo năm 2000 bởi International Organization for
Standardization (ISO) và International Electrotechnical Commission (IEC) là tiền thân của lOMoARcPSD| 37054152
ISO 27000. Năm 2005, ISO 17799 ược chỉnh sửa và trở thành ISO 17799:2005. Năm 2007,
ISO 17799:2005 ược ổi tên thành ISO 27002 song hành với ISO 27001.
Chuẩn ISO/IEC 27001:2005 chuyên về hệ thống quản lý an toàn thông tin (Information
Security Management System - ISMS). Chuẩn này cung cấp các thông tin ể thực thi các
yêu cầu của ISO/IEC 27002 và cài ặt một hệ thống quản lý an toàn thông tin. Trong việc
xây dựng hệ thống ISMS, chuẩn cung cấp các chi tiết cho thực hiện chu kỳ Lập kế hoạch
– Thực hiện – Giám sát – Hành ộng (Plan-Do-Check-Act). Một iểm cần lưu ý là ISO/IEC
27001 chỉ tập trung vào các phần việc phải thực hiện mà không chỉ dẫn cách thức thực hiện.
Chuẩn ISO/IEC 27002 gồm 127 iều, cung cấp cái nhìn tổng quan về nhiều lĩnh vực
trong an toàn thông tin. Nó ề ra các khuyến nghị về quản lý an toàn thông tin cho những
người thực hiện việc khởi tạo, thực hiện và duy trì an ninh an toàn trong tổ chức của họ.
Chuẩn này ược thiết kế ể cung cấp nền tảng cơ sở giúp ề ra các chuẩn an toàn thông tin cho
tổ chức và các thực tế quản lý an toàn thông tin một cách hiệu quả.
Chuẩn ISO/IEC 27005: 2009 chuyên về quản lý rủi ro cho hệ thống quản lý an toàn
thông tin. Chuẩn này hỗ trợ ISO/IEC 27001, nhưng nó không ề cập ến phương pháp kiểm soát rủi ro cụ thể.
5.2.2. Chu trình Plan-Do-Check-Act
Chuẩn ISO/IEC 27001:2005 chuyên về hệ thống quản lý an toàn thông tin cung cấp các
chi tiết cho thực hiện chu kỳ Plan-Do-Check-Act gồm 4 pha: Plan - Lập kế hoạch, Do –
Thực hiện kế hoạch, Check – Giám sát việc thực hiện và Act – Thực hiện các cải tiến, hiệu
chỉnh, như biểu diễn trên Hình 5.3. Theo ó, chi tiết 4 pha trong chu trình này như sau:
Hình 5.3. Chu trình Plan-Do-Check-Act của ISO/IEC 27001:2005
Pha Plan gồm các nội dung:
- Đề ra phạm vi của ISMS;
- Đề ra chính sách của ISMS;
- Đề ra hướng tiếp cận ánh giá rủi ro;
- Nhận dạng các rủi ro; - Đánh giá rủi ro;
- Nhận dạng và ánh giá các lựa chọn phương pháp xử lý rủi ro; - Lựa chọn các mục
tiêu kiểm soát và biện pháp kiểm soát; - Chuẩn bị tuyến bố, báo cáo áp dụng.
Pha Do gồm các nội dung: lOMoAR cPSD| 37054152
- Xây dựng kế hoạch xử lý rủi ro;
- Thực thi kế hoạch xử lý rủi ro;
- Thực thi các kiểm soát;
- Thực thi các chương trình ào tạo chuyên môn và giáo dục ý thức;
- Quản lý các hoạt ộng;
- Quản lý các tài nguyên;
- Thực thi các thủ tục phát hiện và phản ứng lại các sự cố an ninh.
Pha Check gồm các nội dung:
- Thực thi các thủ tục giám sát;
- Thực thi việc ánh giá thường xuyên tính hiệu quả của ISMS;
- Thực hiện việc kiểm toán (audits) nội bộ với ISMS;
- Thực thi việc ánh giá thường xuyên với ISMS bởi bộ phận quản lý; - Ghi lại các hành
ộng và sự kiện ảnh hưởng ến ISMS.
Pha Act gồm các nội dung:
- Thực hiện các cải tiến ã ược nhận dạng;
- Thực hiện các hành ộng sửa chữa và ngăn chặn;
- Áp dụng các bài ã ược học;
- Thảo luận kết quả với các bên quan tâm; - Đảm bảo các cải tiến ạt ược các mục tiêu.
5.3. Pháp luật và chính sách an toàn thông tin
5.3.1. Giới thiệu về pháp luật và chính sách an toàn thông tin
Các chính sách và pháp luật an toàn thông tin có vai trò rất quan trọng trong việc ảm
bảo an toàn cho thông tin, hệ thống và mạng. Trong ó, vai trò của nhân viên ảm bảo an toàn
thông tin là rất quan trọng trong việc giảm thiểu rủi ro, ảm bảo an toàn cho thông tin, hệ
thống và mạng và giảm thiệt hại nếu xảy ra sự cố. Các nhân viên ảm bảo an toàn cho thông
tin phải hiểu rõ những khía cạnh pháp lý và ạo ức an toàn thông tin. Theo ó, họ phải luôn
nắm vững môi trường pháp lý hiện tại (các luật và các quy ịnh luật pháp) và luôn thực hiện
công việc nằm trong khuôn khổ cho phép của luật pháp. Ngoài ra, cần thực hiện việc giáo
dục ý thức về luật pháp và ạo ức an toàn thông tin cho cán bộ quản lý và nhân viên trong tổ
chức, ảm bảo sử dụng úng mục ích các công nghệ ảm bảo an toàn thông tin.
Chính sách (Policy - còn gọi là quy ịnh, nội quy) là các quy ịnh về các hành vi chấp
nhận ược của các nhân viên trong tổ chức tại nơi làm việc. Chính sách là các "luật" của tổ
chức có giá trị thực thi trong nội bộ, gồm một tập các quy ịnh và các chế tài xử phạt bắt
buộc phải thực hiện. Các chính sách, hoặc nội quy cần ược nghiên cứu, soạn thảo kỹ lưỡng.
Đồng thời, chính sách cần ầy ủ, úng ắn và áp dụng công bằng với mọi nhân viên. Điểm
khác biệt giữa luật và chính sách là Luật luôn bắt buộc, còn với Chính sách, việc thiếu hiểu
biết chính sách là 1 cách bào chữa chấp nhận ược.
Cần có phân biệt rõ ràng giữa luật (Law) và ạo ức (Ethic). Luật gồm những iều khoản
bắt buộc hoặc cấm những hành vi cụ thể. Các iều luật thường ược xây dựng từ các vấn ề ạo lOMoAR cPSD| 37054152
ức. Trong khi ó, ạo ức ịnh nghĩa những hành vi xã hội chấp nhận ược. Đạo ức thường dựa
trên các ặc iểm văn hóa. Do ó, hành vi ạo ức giữa các dân tộc, các nhóm người khác nhau
là khác nhau. Một số hành vi vi phạm ạo ức ược luật hóa trên toàn thế giới, như trộm, cướp,
cưỡng dâm, bạo hành trẻ em,... Khác biệt giữa luật và ạo ức thể hiện ở chỗ luật ược thực thi
bởi các cơ quan chính quyền, còn ạo ức không ược thực thi bởi các cơ quan chính quyền.
Để các chính sách có thể ược áp dụng hiệu quả, chúng phải ạt ược các yêu cầu sau:
- Có khả năng phổ biến rộng rãi, bằng tài liệu giấy hoặc iện tử;
- Nhân viên có thể xem, hiểu ược – cần thực hiện trên nhiều ngôn ngữ, ví dụ bằng tiếng
Anh và tiếng ịa phương;
- Chính sách cần rõ ràng dễ hiểu – tổ chức cần có các iều tra/khảo sát về mức ộ hiểu
biết/nắm bắt các chính sách của nhân viên;
- Cần có biện pháp ể nhân viên cam kết thực hiện – thông qua ký văn bản cam kết hoặc
tick vào ô xác nhận tuân thủ;
- Chính sách cần ược thực hiện ồng ều, bình ẳng, nhất quán, không có ưu tiên với bất
kỳ nhân viên nào, kể cả người quản lý.
5.3.2. Luật quốc tế về an toàn thông tin
Mục này ề cập ến một số luật và văn bản có liên quan ến an toàn thông tin của Mỹ và
Châu Âu – là những nước và khu vực ã phát triển và có hệ thống luật pháp về an toàn
thông tin tương ối hoàn thiện.
Có thể nói hệ thống luật pháp về an toàn thông tin của nước Mỹ khá ầy ủ và ược chia
thành các nhóm: các luật tội phạm máy tính, các luật về sự riêng tư, luật xuất khẩu và chống
gián iệp, luật bản quyền và luật tự do thông tin. Các luật về tội phạm máy tính và tội phạm mạng gồm:
- Computer Fraud and Abuse Act of 1986 (CFA Act): quy ịnh về các tội phạm lừa ảo và lạm dụng máy tính;
- Computer Security Act, 1987: ề ra các nguyên tắc ảm bảo an toàn cho hệ thống máy tính;
- National Information Infrastructure Protection Act of 1996: là bản sửa ổi của CFA
Act, tăng khung hình phạt một số tội phạm máy tính ến 20 năm tù;
- USA PATRIOT Act, 2001: cho phép các cơ quan nhà nước một số quyền theo dõi,
giám sát các hoạt ộng trên mạng nhằm phòng chống khủng bố hiệu quả hơn;
- USA PATRIOT Improvement and Reauthorization Act: Mở rộng của USA
PATRIOT Act, 2001, cấp cho các cơ quan nhà nước nhiều quyền hạn hơn cho nhiệm
vụ phòng chống khủng bố.
Các luật về sự riêng tư nhằm bảo vệ quyền riêng tư của người dùng, bảo vệ các thông
tin cá nhân của người dùng, gồm:
- Federal Privacy Act, 1974: luật Liên bang Mỹ bảo vệ quyền riêng tư của người dùng;
- Electronic Communications Privacy Act , 1986: luật bảo vệ quyền riêng tư trong các giao tiếp iện tử; lOMoAR cPSD| 37054152
- Health Insurance Portability and Accountability Act, 1996 (HIPAA): bảo vệ tính bí
mật và an toàn của các dữ liệu y tế của người bệnh. Tổ chức, hoặc cá nhân vi phạm
có thể bị phạt ến 250.000 USD hoặc 10 năm tù;
- Financial Services Modernization Act or Gramm-Leach-Bliley Act, 1999: iều chỉnh
các hoạt ộng liên quan ến nhà nước của các ngân hàng, bảo hiểm và các hãng an ninh.
Luật xuất khẩu và chống gián iệp hạn chế việc xuất khẩu các công nghệ và hệ thống xử
lý thông tin và phòng chống gián iệp kinh tế, gồm:
- Economic Espionage Act, 1996: phòng chống việc thực hiện giao dịch có liên quan
ến bí mật kinh tế và công nghệ;
- Security and Freedom through Encryption Act, 1999: quy ịnh về các vấn ề có liên
quan ến sử dụng mã hóa trong ảm bảo an toàn và tự do thông tin.
U.S. Copyright Law là Luật bản quyền của Mỹ, iều chỉnh các vấn ề có liên quan ến xuất
bản, quyền tác giả của các tài liệu, phần mềm, bao gồm cả các tài liệu số. Freedom of
Information Act, 1966 (FOIA) là Luật tự do thông tin nêu rõ các cá nhân ược truy cập các
thông tin không gây tổn hại ến an ninh quốc gia.
Các tổ chức và luật quốc tế có liên quan ến an toàn thông tin, gồm:
- Hội ồng Châu Âu về chống tội phạm mạng (Council of Europe Convention on Cybercrime);
- Hiệp ước về chống tội phạm mạng ược Hội ồng châu Âu phê chuẩn vào năm 2001;
- Hiệp ước bảo vệ quyền sở hữu trí tuệ (Agreement on Trade-Related Aspects of
Intellectual Property Rights (TRIPS)): do Tổ chức Thương mại thế giới WTO chủ trì
àm phán trong giai oạn 1986–1994;
- Digital Millennium Copyright Act (DMCA): Luật bản quyền số Thiên niên kỷ.
5.3.3. Luật Việt Nam về an toàn thông tin
Luật an toàn thông tin mạng là bộ luật ầu tiên về lĩnh vực an toàn thông ược Quốc hội
thông qua vào tháng 11 năm 2015 và chính thức có hiệu lực từ ngày 01/7/2016. Tiếp theo
Luật an toàn thông tin mạng, Luật an ninh mạng ược Quốc hội thông qua vào ngày
12/6/2018 và chính thức có hiệu lực từ ngày 01/01/2019. Đây là các cơ sở pháp lý rất quan
trọng cho việc quản lý các hoạt ộng liên quan ến an toàn thông tin, an toàn không gian mạng
ở Việt Nam. Ngoài hai bộ luật trên, ã có nhiều văn bản có liên quan ến công nghệ thông tin
và an toàn thông tin ược Quốc Hội, Chính Phủ và các cơ quan nhà nước ban hành như:
- Luật công nghệ thông tin số 67/2006/QH11 của Quốc hội, ngày 12/07/2006.
- Nghị ịnh số 90/2008/NÐ-CP của Chính Phủ "Về chống thư rác", ngày 13/08/2008.
- Quyết ịnh số 59/2008/QÐ-BTTTT của Bộ Thông tin và Truyền thông "Ban hành
Danh mục tiêu chuẩn bắt buộc áp dụng về chữ ký số và dịch vụ chứng thực chữ ký số", ngày 31/12/2008.
- Quyết ịnh 63/QÐ-TTg của Thủ tướng CP "Phê duyệt Quy hoạch phát triển an toàn
thông tin số quốc gia ến năm 2020", ngày 13/01/2010. lOMoAR cPSD| 37054152
- Chỉ thị số 897/CT-TTg của Thủ tướng CP "V/v tăng cường triển khai các hoạt ộng
ảm bảo an toàn thông tin số", 10/06/2011.
- Thông tư số 23/2011/TT-BTTTT của Bộ TT&TT "Quy ịnh về việc quản lý, vận hành,
sử dụng và bảo ảm an toàn thông tin trên Mạng truyền số liệu chuyên dùng của các
cơ quan Đảng, Nhà nước", ngày 11/08/2011.
- Nghị ịnh số 77/2012/NĐ-CP của Chính Phủ "Sửa ổi, bổ sung một số iều của Nghị
ịnh số 90/2008/NĐ-CP ngày 13 tháng 8 năm 2008 của Chính phủ về chống thư rác", ngày 05/10/2012.
- Nghị ịnh 72/2013/NĐ-CP của Chính Phủ về Quản lý, cung cấp, sử dụng dịch vụ
internet và thông tin trên mạng; quy ịnh về việc chia sẻ thông tin trên các trang mạng xã hội.
5.4. Vấn ề ạo ức an toàn thông tin
5.4.1. Sự cần thiết của ạo ức an toàn thông tin
Vấn ề ạo ức nghề nghiệp (Professional ethic) hay quy tắc ứng xử (Code of conduct) ược
ề cập trong ngành công nghệ thông tin nói chung và an toàn thông tin nói riêng do các công
việc liên quan ến an toàn thông tin có thể liên quan ến các thông tin nhạy cảm, như thông
tin, hệ thống bí mật quốc gia, thông tin bí mật của các cơ quan, tổ chức, hoặc bí mật công
nghệ, bí mật kinh doanh của các công ty. Nếu các thông tin nhạy cảm bị rò rỉ, hoặc bị ánh
cắp và lạm dụng có thể ảnh hưởng nghiêm trọng ến an ninh quốc gia, hoặc ảnh hưởng xấu
ến các cơ quan, tổ chức và người dùng. Do vậy, người làm trong lĩnh vực an toàn thông tin
cần có hiểu biết về chính sách, pháp luật và có thái ộ và hành ộng úng ắn trong khi thực thi nhiệm vụ.
5.4.2. Một số bộ quy tắc ứng xử trong CNTT và ATTT
Nhiều tổ chức xã hội nghề nghiệp ã ban hành các quy tắc ứng xử bắt buộc tại nơi làm
việc, như với luật sư, bác sỹ và các vận ộng viên thể thao. Nếu vi phạm nghiêm trọng các
quy tắc ứng xử tại nơi làm việc có thể bị cấm hành nghề có thời hạn, hoặc vĩnh viễn. Trong
lĩnh vực công nghệ thông tin và an toàn thông tin, hiện không có bộ quy tắc ứng xử bắt
buộc. Một số tổ chức xã hội nghề nghiệp như ACM (Association for Computing Machinery)
và ISSA (Information Systems Security Association) hợp tác ể ề ra các quy tắc ứng xử trong
an toàn thông tin. Tuy nhiên, các quy tắc ứng xử trong an toàn thông tin chỉ có tính khuyến
nghị do các tổ chức trên không có thẩm quyền buộc phải thực hiện.
Hiệp hội an toàn thông tin Việt Nam ã công bố Bộ Qui tắc ứng xử an toàn thông tin vào
ầu năm 2015, ưa ra một số quy tắc và khuyến nghị về những việc không ược làm cho các
thành viên và các nhân viên của các tổ chức hoạt ộng trong lĩnh vực an toàn thông tin. Ở
bình diện quốc tế, Viện ạo ức máy tính, Mỹ ưa ra Bộ Quy tắc ứng xử 10 iểm (Ten
Commandments of Computer Ethics) như sau:
1. Không ược sử dụng máy tính ể gây hại cho người khác;
2. Không ược can thiệp vào công việc của người khác trên máy tính;
3. Không trộm cắp các file trên máy tính của người khác;
4. Không ược sử dụng máy tính ể trộm cắp; lOMoAR cPSD| 37054152
5. Không ược sử dụng máy tính ể tạo bằng chứng giả;
6. Không sao chép hoặc sử dụng phần mềm không có bản quyền;
7. Không sử dụng các tài nguyên máy tính của người khác khi không ược phép hoặc
không có bồi thường thỏa áng;
8. Không chiếm oạn tài sản trí tuệ của người khác;
9. Nên suy nghĩ về các hậu quả xã hội của chương trình mình ang xây dựng hoặc hệ thống ang thiết kế;
10. Nên sử dụng máy tính một cách có trách nhiệm, ảm bảo sự quan tâm và tôn trọng ến ồng bào của mình.
5.4.3. Một số vấn ề khác
Liên quan ến vấn ề ạo ức trong an toàn thông tin, có một số vấn ề khác cần lưu ý là (1)
sự khác biệt về vấn ề ạo ức giữa các nền văn hóa, (2) vấn ề vi phạm bản quyền phần mềm
và (3) vấn ề lạm dụng các tài nguyên của cơ quan, tổ chức.
Trên thực tế, có sự khác biệt khá lớn về vấn ề ạo ức giữa các nền văn hóa. Trong ó, nhận
thức về vấn ề ạo ức trong sử dụng các tài nguyên của cơ quan, tổ chức là rất khác biệt giữa
các quốc gia có nền văn hóa khác nhau. Trong nhiều trong hợp, một hành vi ược phép của
một số cá nhân trong một quốc gia lại vi phạm quy tắc ạo ức của quốc gia khác. Chẳng hạn,
hành vi tiết lộ thông tin cá nhân và ặc biệt là mức thu nhập của người khác ược coi là bình
thường ở Việt Nam, nhưng ây là hành vi vi phạm quyền riêng tư ở các nước phát triển như Mỹ và châu Âu.
Vấn ề vi phạm bản quyền phần mềm là rất nghiêm trọng, ặc biệt là ở các nước ang phát
triển ở châu Á và châu Phi. Đa số người dùng có hiểu biết về vấn ề bản quyền phần mềm,
nhưng coi việc sử dụng phần mềm bất hợp pháp là bình thường vì nhiều nước chưa có quy
ịnh hoặc không xử lý nghiêm vi phạm. Tỷ lệ vi phạm bản quyền phần mềm ở Việt Nam
hiện rất cao, ến khoảng 90% do thiếu các chế tài xử lý vi phạm.
Vấn ề lạm dụng các tài nguyên của công ty, tổ chức xảy ra tương ối phổ biến và cần có
các quy ịnh và chế tài ể kiểm soát. Một số cơ quan, tổ chức chưa có các quy ịnh cấm nhân
viên sử dụng các tài nguyên của cơ quan, tổ chức vào việc riêng. Một số ơn vị khác có quy
ịnh nhưng chưa ược thực thi chặt chẽ và chưa có chế tài xử phạt nghiêm minh. Các hành
vi lạm dụng thường gặp, gồm: - In ấn tài liệu riêng;
- Sử dụng email cá nhân cho việc riêng;
- Tải các tài liệu, file không ược phép;
- Cài ặt và chạy các chương trình, phần mềm không ược phép;
- Sử dụng máy tính công ty làm việc riêng;
- Sử dụng các phương tiện làm việc khác như iện thoại công ty quá mức vào việc riêng.
5.5. Câu hỏi ôn tập
1) Nêu khái niệm tài sản an toàn thông tin, khái niệm quản lý an toàn thông tin. Nêu vai
trò và các khâu cần thực hiện của quản lý an toàn thông tin. lOMoAR cPSD| 37054152
2) Đánh giá rủi ro an toàn thông tin là gì? Mô tả vắn tắt các phương pháp tiếp cận ánh giá rủi ro an toàn thông tin.
3) Mô tả vắn tắt các bước của phân tích chi tiết rủi ro an toàn thông tin.
4) Mô tả các loại kiểm soát trong thực thi quản lý an toàn thông tin.
5) Mô tả nội dung thực thi quản lý an toàn thông tin.
6) Mô tả vắn tắt các chuẩn ISO/IEC 27000, ISO/IEC 27001, ISO/IEC 27002 và ISO/IEC 27005.
7) Mô tả chu trình Plan-Do-Check-Act của chuẩn ISO/IEC 27001.
8) Phân biệt pháp luật và chính sách. Nêu các yêu cầu của chính sách có thể ược áp dụng hiệu quả.
9) Mô tả vắn tắt các văn bản luật có liên quan ến an toàn thông tin của Việt Nam.
10) Nêu sự cần thiết của vấn ề ạo ức an toàn thông tin. Nêu bộ qui tắc ứng xử của Viện ạo ức máy tính (Mỹ).
TÀI LIỆU THAM KHẢO
[1] Michael E. Whitman, Herbert J. Mattord, Principles of information security, 4th
edition, Course Technology, Cengage Learning, 2012.
[2] David Kim, Michael G. Solomon, Fundamentals of Information Systems Security,
Jones & Bartlettlearning, 2012.
[3] Statista.com, Internet of Things (IoT) connected devices installed base worldwide from
2015 to 2025, https://www.statista.com/statistics/471264/iot-number-ofconnected-
devices-worldwide/, truy cập tháng 11.2021.
[4] Statista.com, Number of cyber security incident reports by federal agencies in the
United States from FY 2006 to 2018, https://www.statista.com/statistics/677015/
number-cyber-incident-reported-usa-gov/, truy cập tháng 11.2021.
[5] Tập oàn Bkav, Tổng kết an ninh mạng 2019 và dự báo xu hướng 2020,
https://m.bkav.com.vn/tin_tuc_noi_bat/-/chi_tiet/669034/tong-ket-an-ninh-mangnam-
2019-va-du-bao-2020, truy cập tháng 11.2021.
[6] US National Vulnerability Database, https://nvd.nist.gov, truy cập tháng 11.2021.
[7] Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone, Handbook of Applied
Cryptography, CRC Press, Fifth Printing, August 2001.
[8] Bruce Schneier, Applied Cryptography, 2nd edition, John Wiley & Sons, 1996.
[9] Schneier, B. (2000). Secrets and lies: digital security in a networked world. New York: John Wiley and Sons.
[10] Webster's Online Dictionary, http://www.websters-online-dictionary.org, truy cập tháng 11.2021.
[11] The Free Online Dictionary of Computing, http://foldoc.org, truy cập tháng 11.2021. lOMoAR cPSD| 37054152
[12] Eric Code, Advanced Persistent Threat: Understanding the Danger and How to Protect
Your Organization, Elsevier, USA, 2013.