Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 411 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
411
Dung lượng
14,82 MB
Nội dung
ỦY BAN NHÂN DÂN THÀNH PHỐ HỒ CHÍ MINH SỞ KHOA HỌC VÀ CÔNG NGHỆ ĐẠI HỌC QUỐC GIA TPHCM TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN CHƯƠNG TRÌNH KHOA HỌC VÀ CÔNG NGHỆ CẤP THÀNH PHỐ BÁO CÁO TỔNG HỢP KẾT QUẢ NHIỆM VỤ NGHIÊN CỨU KHOA HỌC VÀ CƠNG NGHỆ GIẢI PHÁP HỆ THỐNG PHỊNG THỰC HÀNH ẢO HỖ TRỢ ĐÀO TẠO MỘT SỐ MÔN CÔNG NGHỆ THÔNG TIN Cơ quan chủ trì nhiệm vụ: Trường Đại học Công nghệ Thông tin, ĐHQG TP.HCM Chủ nhiệm nhiệm vụ: TS Phạm Văn Hậu Thành phố Hồ Chí Minh - 2023 ỦY BAN NHÂN DÂN THÀNH PHỐ HỒ CHÍ MINH SỞ KHOA HỌC VÀ CÔNG NGHỆ ĐẠI HỌC QUỐC GIA TPHCM TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN CHƯƠNG TRÌNH KHOA HỌC VÀ CÔNG NGHỆ CẤP THÀNH PHỐ BÁO CÁO TỔNG HỢP KẾT QUẢ NHIỆM VỤ NGHIÊN CỨU KHOA HỌC VÀ CƠNG NGHỆ GIẢI PHÁP HỆ THỐNG PHỊNG THỰC HÀNH ẢO HỖ TRỢ ĐÀO TẠO MỘT SỐ MÔN CÔNG NGHỆ THÔNG TIN Chủ nhiệm nhiệm vụ Phạm Văn Hậu Cơ quan chủ trì nhiệm vụ (ký tên đóng dấu) Thành phố Hồ Chí Minh - 2023 ỦY BAN NHÂN DÂN ĐẠI HỌC QUỐC GIA TPHCM THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN SỞ KHOA HỌC VÀ CƠNG NGHỆ CHƯƠNG TRÌNH KHOA HỌC VÀ CƠNG NGHỆ CẤP THÀNH PHỐ BÁO CÁO THỐNG KÊ KẾT QUẢ NHIỆM VỤ NGHIÊN CỨU KHOA HỌC VÀ CÔNG NGHỆ GIẢI PHÁP HỆ THỐNG PHÒNG THỰC HÀNH ẢO HỖ TRỢ ĐÀO TẠO MỘT SỐ MÔN CÔNG NGHỆ THÔNG TIN Cơ quan chủ trì nhiệm vụ: Trường Đại học Cơng nghệ Thơng tin, ĐHQG TP.HCM Chủ nhiệm nhiệm vụ: TS Phạm Văn Hậu Thành phố Hồ Chí Minh - 2023 ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc TP HCM, ngày tháng năm 2023 BÁO CÁO THỐNG KÊ KẾT QUẢ THỰC HIỆN NHIỆM VỤ NGHIÊN CỨU KH&CN I THÔNG TIN CHUNG Tên nhiệm vụ: Giải pháp hệ thống phòng thực hành ảo hỗ trợ đào tạo số môn công nghệ thơng tin Thuộc: Chương trình/lĩnh vực (tên chương trình/lĩnh vực): Kỹ thuật công nghệ Chủ nhiệm nhiệm vụ: Họ tên: PHẠM VĂN HẬU Ngày, tháng, năm sinh: 29/03/1980 Nam/ Nữ: Nam Học hàm, học vị: Tiến sỹ Chức danh khoa học: Chức vụ: Giảng viên, Trưởng Bộ mơn An tồn thơng tin, Khoa Mạng máy tính & truyền thơng, Trưởng phịng thí nghiệm An tồn thơng tin Điện thoại: Tổ chức: (028) 372 52002 Nhà riêng: Fax: (028) 372 52148 Mobile: 0915727282 E-mail: haupv@uit.edu.vn Tên tổ chức công tác: Trường Đại học Công nghệ Thông tin, ĐHQG TP.HCM Địa tổ chức: Khu phố 6, Phường Linh Trung, Quận Thủ Đức Địa nhà riêng: 12A-14 Chung cư Ngọc Lan, Đường Phú Thuận, Phường Phú Thuận, Q.7, TP HCM Tổ chức chủ trì nhiệm vụ: Tên tổ chức chủ trì nhiệm vụ: Trường Đại học Công nghệ Thông tin, ĐHQG Tp.HCM Điện thoại: (028) 372 52002 Fax: (028) 372 52148 E-mail: info@uit.edu.vn Website: https://uit.edu.vn Địa chỉ: Khu phố 6, P.Linh Trung, Q.Thủ Đức, Tp.Hồ Chí Minh Họ tên thủ trưởng tổ chức: PGS TS Nguyễn Hoàng Tú Anh Số tài khoản: 3713.0.1056918.00000 Kho bạc: Kho bạc Nhà nước TP HCM, TP HCM Tên quan chủ quản đề tài: Đại học Quốc gia Tp HCM i II TÌNH HÌNH THỰC HIỆN Thời gian thực nhiệm vụ: - Theo Hợp đồng ký kết: từ tháng 03/2021 đến tháng 03/2023 - Thực tế thực hiện: từ tháng 03/2021 đến tháng 03/2023 - Được gia hạn (nếu có): - Lần từ tháng… năm… đến tháng… năm… Kinh phí sử dụng kinh phí: a) Tổng số kinh phí thực hiện: 2.264 triệu đồng, đó: + Kinh phí hỗ trợ từ ngân sách khoa học: 2.264 triệu đồng + Kinh phí từ nguồn khác: triệu đồng b) Tình hình cấp sử dụng kinh phí từ nguồn ngân sách khoa học: Theo kế hoạch Số Thực tế đạt TT Thời gian (Tháng, năm) Kinh phí (Tr.đ) Thời gian (Tháng, năm) Kinh phí (Tr.đ) Đợt 1.132 03/2021 1.132 Đợt 906 07/2022 906 Đợt 226 Ghi (Số đề nghị toán) 210,332 c) Kết sử dụng kinh phí theo khoản chi: Đối với đề tài: Đơn vị tính: Triệu đồng Số TT Nội dung khoản chi Theo kế hoạch Tổng Trả công lao động (khoa học, phổ 2.154,437 thông) Nguyên, vật liệu, lượng Thiết bị, máy móc Xây dựng, sửa chữa nhỏ 109,563 Chi khác 2.264 Tổng cộng Thực tế đạt NSKH Nguồn khác Tổng NSKH Nguồn khác 2.154,437 2.154,437 2.154,437 0 0 0 0 0 0 0 0 109,563 2.264 0 93,895 2.248,332 93,895 2.248,332 0 - Lý thay đổi (nếu có): ii Đối với dự án: Đơn vị tính: Triệu đồng Số TT Nội dung khoản chi Thiết bị, máy móc mua Nhà xưởng xây dựng mới, cải tạo Kinh phí hỗ trợ cơng nghệ Chi phí lao động Nguyên vật liệu, lượng Thuê thiết bị, nhà xưởng Khác Tổng cộng Theo kế hoạch Nguồn Tổng NSKH khác Thực tế đạt Nguồn Tổng NSKH khác - Lý thay đổi (nếu có): Các văn hành q trình thực đề tài/dự án: (Liệt kê định, văn quan quản lý từ công đoạn xét duyệt, phê duyệt kinh phí, hợp đồng, điều chỉnh (thời gian, nội dung, kinh phí thực có); văn tổ chức chủ trì nhiệm vụ (đơn, kiến nghị điều chỉnh có) Số Số, thời gian ban hành Tên văn Ghi TT văn 1382/QĐ-SKHCN ngày Quyết định việc phê duyệt nhiệm vụ 08/12/2020 nghiên cứu khoa học công nghệ 06/2021/HĐ-QKHCN Hợp đồng thực nhiệm vụ nghiên cứu ngày 10/03/2021 khoa học công nghệ 884/QĐ-ĐHCNTT ngày Về việc thay đổi thành viên tham gia đề tài 31/12/2021 nghiên cứu khoa học 08/ĐHCNTT-KHCN ngày Về việc kiến nghị thay sản phẩm nhiệm 21/02/2023 vụ khoa học công nghệ Về việc điều chỉnh sản phẩm nhiệm vụ 1015/SKHCN-QLKH khoa học công nghệ “Giải pháp hệ thống ngày 24/03/2023 phòng thực hành ảo hỗ trợ đào tạo số môn công nghệ thông tin” Tổ chức phối hợp thực nhiệm vụ: Số TT Tên tổ chức đăng ký theo Thuyết minh Tên tổ chức tham gia thực Nội dung tham gia chủ yếu - Lý thay đổi (nếu có): iii Sản phẩm chủ yếu đạt Ghi chú* Cá nhân tham gia thực nhiệm vụ: (Người tham gia thực đề tài thuộc tổ chức chủ trì quan phối hợp, không 10 người kể chủ nhiệm) Số TT Tên cá nhân đăng ký theo Thuyết minh Tên cá nhân tham gia thực Phạm Văn Hậu Phạm Văn Hậu Nguyễn Kim Thuỳ Nguyễn Kim Thuỳ Phan Thế Duy Phan Thế Duy Nguyễn Tấn Cầm Nguyễn Tấn Cầm Đỗ Hoàng Hiển Đỗ Hoàng Hiển Nghi Hoàng Khoa Nghi Hoàng Khoa Đỗ Thị Thu Hiền Đỗ Thị Thu Hiền Ngô Khánh Khoa Ngô Khánh Khoa Nguyễn Hữu Hân Nguyễn Hữu Hân 10 Trịnh Nguyên Bác Trịnh Nguyên Bác Nội dung tham gia Sản phẩm chủ yếu đạt Ghi chú* - Lý thay đổi ( có): Tình hình hợp tác quốc tế: Số TT Theo kế hoạch (Nội dung, thời gian, kinh phí, địa điểm, tên tổ chức hợp tác, số đồn, số lượng người tham gia ) Thực tế đạt (Nội dung, thời gian, kinh phí, địa điểm, tên tổ chức hợp tác, số đoàn, số lượng người tham gia ) Ghi chú* - Lý thay đổi (nếu có): Tình hình tổ chức hội thảo, hội nghị: Số TT Theo kế hoạch (Nội dung, thời gian, kinh phí, địa điểm ) Thực tế đạt (Nội dung, thời gian, kinh phí, địa điểm ) Ghi chú* - Lý thay đổi (nếu có): Tóm tắt nội dung, công việc chủ yếu: (Nêu mục 15 thuyết minh, không bao gồm: Hội thảo khoa học, điều tra khảo sát nước nước ngoài) iv Số TT Thời gian (Bắt đầu, kết thúc - tháng … năm) Theo kế Thực tế hoạch đạt Các nội dung, công việc chủ yếu (Các mốc đánh giá chủ yếu) Nội dung 1: Lựa chọn triển khai hạ tầng điện tốn đám mây Cơng việc 1.1: Khảo sát, lựa chọn tảng điện toán đám mây triển khai Cơng việc 1.2: Khảo sát tìm hiểu tài nguyên mà hệ thống điện toán đám mây cung cấp (router, network, subnet, máy ảo, ip động…) Cơng việc 1.3: Tìm hiểu tương tác với hệ thống điện tốn đám mây ngơn ngữ lập trình Cơng việc 1.4: Triển khai hệ thống đám mây Cơng việc 1.5: Nghiên cứu, tìm hiểu triển khai images nhằm phục vụ cho việc phát triển kịch thực hành Nội dung 2: Nghiên cứu chế, phương thức tạo triển khai kịch thực hành Công việc 2.1: Nghiên cứu, phát triển template biểu diễn kịch thực hành (phần liên quan đến tài nguyên hệ thống điện toán đám mây router, network, subnet, máy ảo) Công việc 2.2: Nghiên cứu, tìm hiểu cơng cụ triển khai cấu hình tự động Cơng việc 2.3: Triển khai chế quản lý cấu hình tự động cho loại image khác nhằm triển khai phầm mềm, cấu hình phần mềm cho kịch thực hành Công việc 2.4: Xây dựng mơ hình repo cục nhằm tăng tốc trình triển khai cấu hình tự động Nội dung 3: Nghiên cứu triển khai hệ thống Quản lý truy cập giám sát Công việc 3.1: Thiết kế sơ đồ mạng đảm bảo cho người dùng truy cập vào kịch thực hành với tải lớn Công việc 3.2: Khảo sát, lựa chọn công nghệ truy cập vào máy ảo tảng điện toán đám mây Công việc 3.3: Triển khai hệ thống quản lý truy cập Công việc 3.4: Khảo sát lựa chọn công nghệ cân tải cho truy cập vào phần mềm quản lý Công việc 3.5: Triển khai chế cân tải cho truy cập vào phần mềm quản lý v 03/2021 – 03/2022 03/2021 – 03/2022 03/2021 – 03/2022 03/2021 – 03/2022 03/2021 – 03/2022 03/2021 – 03/2022 03/2021 – 03/2022 03/2021 – 03/2022 03/2021 – 03/2022 03/2021 – 03/2022 03/2021 – 12/2022 03/2021 – 03/2022 03/2021 – 12/2022 03/2021 – 03/2022 03/2021 – 12/2022 03/2021 – 03/2022 03/2021 – 12/2022 03/2021 – 03/2022 05/2021 – 01/2023 05/2021 – 03/2022 05/2021 – 01/2023 05/2021 – 01/2023 05/2021 – 01/2023 05/2021 – 01/2023 05/2021 – 03/2022 05/2021 – 03/2022 05/2021 – 03/2022 05/2021 – 03/2022 Người, quan thực [21] "OpenStack Docs: DevStack," [Online] Available: https://docs.openstack.org/devstack/pike/ [22] "OpenStack docs: Introduction to Fuel," [Online] Available: https://docs.openstack.org/fueldocs/mitaka/userdocs/fuel-install-guide/intro/intro_fuel_intro.html [23] "Ansible is simple IT automation," [Online] Available: https://www.ansible.com/ [24] "OpenStack docs: Welcome to Kolla Ansible," [Online] Available: https://docs.openstack.org/kollaansible/latest/ [25] "AWS CLI Command Reference," [Online] Available: https://docs.aws.amazon.com/cli/latest/reference/ec2/create-launch-template.html [26] "Creating a Basic Configuration | Google Cloud," [Online] Available: https://cloud.google.com/deployment-manager/docs/configuration/create-basic-configuration [27] "Cloud SDK | Google Cloud," [Online] Available: https://cloud.google.com/sdk [28] "API Reference | Google Cloud," [Online] Available: https://cloud.google.com/deploymentmanager/docs/reference/latest [29] "Salt Project," [Online] Available: https://saltproject.io/ [30] "Cloud-init - The standard for customising cloud instances," [Online] Available: https://cloud-init.io/ [31] "cloudbase-init," [Online] Available: https://github.com/cloudbase/cloudbase-init [32] "Cloud config examples," [Online] Available: https://cloudinit.readthedocs.io/en/latest/topics/examples.html [33] "cloudbase-init's document," [Online] Available: https://cloudbase- init.readthedocs.io/en/latest/index.html [34] "Windows Imaging Tools," [Online] Available: https://github.com/cloudbase/windows-imaging-tools [35] "Developing Puppet code," [Online] Available: https://puppet.com/docs/puppet/7/developing_code.html [36] "Puppet Resource Type: File," [Online] Available: https://puppet.com/docs/puppet/7/types/file.html [37] Do Thi Thu Hien, H D Hoang, P T Duy, D T H Lan and V.-H Pham, "A Method for Flexible Definition and Automatic Implementation of Laboratory Environment in Online Training Platforms," in RIVF International Conference on Computing and Communication Technologies (RIVF), Ho Chi Minh City, Vietnam, 2022 [38] F Calzolari, S Arezzini, A Ciampa, E Mazzoni, A Domenici and G Vaglini, "High availability using virtualization," in 17th International Conference on Computing in High Energy and Nuclear Physics, 2010 [39] "MeshCentral," [Online] Available: https://www.meshcommander.com/meshcentral2 [40] "Apache Guacamole," [Online] Available: https://guacamole.apache.org/ [41] Y Saint-Hilaire, "MeshCentral2 - Design & Architecture," 2019 [Online] Available: https://info.meshcentral.com/downloads/MeshCentral2/MeshCentral2DesignArchitecture.pdf 366 [42] M K Aguiler, W Chen and S Toue, "Heartbeat: A Timeout-Free Failure Detector for Quiescent Reliable Communication," Cornell UniversityPO Box 250, 124 Roberts Place Ithaca, NYUnited States, 1997 [43] F Calzolari, "A new approach to High Availability," in Enabling Grids for E-sciencE EGEE, Open Grid Forum OGF - 4th EGEE User Forum/OGF 25 and OGF Europe's 2nd International Event, 2009 [44] H Bryhni, E Klovning and O Kure, "A comparison of load balancing techniques for scalable Web servers," IEEE Network, vol 14, no 4, pp 58 - 64, 2000 [45] V Cardellini, M Colajanni and P Yu, "Dynamic load balancing on Web-server systems," IEEE Internet Computing, vol 3, no 3, pp 28 - 39, 1999 [46] "HAProxy - The Reliable, High Performance TCP/HTTP Load Balancer," [Online] Available: https://www.haproxy.org/ [47] "nginx," [Online] Available: https://nginx.org/en/ [48] NetCraft, "December 2021 Web Server Survey," December 2021 [Online] Available: https://news.netcraft.com/archives/2021/12/22/december-2021-web-server-survey.html [49] "Apache Web Server Project," [Online] Available: https://httpd.apache.org/ [50] "PostgreSQL 14.1 Documentation," The PostgreSQL Global Development Group, [Online] Available: https://www.postgresql.org/files/documentation/pdf/14/postgresql-14-A4.pdf [51] M Data, D P Kartikasari and A Bhawiyuga, "The Design of High Availability Dynamic Web Server Cluster," in International Conference on Sustainable Information Engineering and Technology (SIET), Lombok, Indonesia, 2019 [52] "Keepalived for Linux," [Online] Available: https://www.keepalived.org/ [53] "Patroni: A Template for PostgreSQL HA with ZooKeeper, etcd or Consul," [Online] Available: https://github.com/zalando/patroni [54] "etcd," [Online] Available: https://github.com/etcd-io/etcd [55] S Li, J Du and J Sun, "Unfolding the learning behaviour patterns of MOOC learners with different levels of achievement," International Journal of Educational Technology in Higher Education, 2022 [56] M Wen and C P Rose, "Identifying Latent Study Habits by Mining Learner Behavior Patterns in Massive Open Online Courses," in Proceedings of the 23rd ACM International Conference on Conference on Information and Knowledge Management, 2014 [57] R Venant, K Sharma, P Vidal, P Dillenbourg and J Broisin, "Using Sequential Pattern Mining to Explore Learners’ Behaviors and Evaluate Their Correlation with Performance in Inquiry-Based Learning," in European Conference on Technology Enhanced Learning, 2017 [58] Y j Park, J Hyun Yu and I.-H Jo, "Clustering blended learning courses by online behavior data: A case study in a Korean higher education institute," The Internet and Higher Education, 2016 367 [59] J Maldonado-Mahauad, M Pérez-Sanagustín, R F.Kizilcec, N Morales and J Munoz-Gama, "Mining theory-based patterns from Big data: Identifying self-regulated learning strategies in Massive Open Online Courses," Computers in Human Behavior, 2018 [60] D T T Hien, P T Duy, H D Hoang, N H Khoa and V.-H Pham, "A case study for evaluating learners’ behaviors from online cybersecurity training platform on digital forensics subject," in International Conference on Advanced Technologies for Communications (ATC 2022), 2022 [61] D Popovič, "Clustering of command histories from cybersecurity training," 2021 [62] M Ankerst, M M Breunig, H.-P Kriegel and J Sander, "OPTICS: ordering points to identify the clustering structure," in SIGMOD 1999, 1999 [63] K Kailing, H.-P Kriegel, P Kröger and S Wanka, "Ranking Interesting Subspaces for Clustering High Dimensional Data," in PKDD, 2003 [64] R.-D ȘUȘTIC, A MORARU and A.-B R V DOBROTA, "Performance Evaluation of ELK Stack versus Graylog as Open-source Log Management Tools," Acta Technica Napocensis - Electronics and Telecommunications, vol 62, 2022 [65] S J Son and Y Kwon, "Performance of ELK Stack and Commercial System in Security Log Analysis," in IEEE 13th Malaysia International Conference on Communications (MICC), 2017 [66] A Razzaq, A Hur, Sidra Shahbaz, M Masood and H F Ahmad, "Critical Analysis on Web Application Firewall Solutions," in IEEE Eleventh International Symposiumon Autonomous DecentralizedSystems (ISADS), 2013 [67] T D Sobola, P Zavarsky and S Butakov, "Experimental Study of ModSecurity Web Application Firewalls," in 2020 International Conference on Big Data Security on Cloud, 2020 [68] Robinson, M Akbar and M F Ridha, "SQL Injection and Cross Site Scripting Prevention using OWASP ModSecurity Web Application Firewall," International Journal on Informatics Visualization, 2018 [69] R A Muzaki, O C Briliyant, M A Hasditama and H Ritchi, "Improving Security of Web-Based Application Using ModSecurity and Reverse Proxy in Web Application Firewall," in 2020 International Workshop on BigData and Information Security, 2020 368 PHỤ LỤC CÁC CẤU HÌNH KỊCH BẢN THỰC HÀNH TỰ XÂY DỰNG Phụ lục mô tả chi tiết 06 cấu hình kịch thực hành xây dựng để phục vụ việc kiểm tra chức đánh giá hiệu suất hệ thống vLab 1.1 Kịch thực hành mẫu an toàn thông tin liên quan ứng dụng web a) Giới thiệu Hiện nay, nguy tiềm ẩn ứng dụng web vấn đề lo ngại cho cơng ty, tổ chức phủ Việc bảo mật cho ứng dụng web điều cần thiết quan tâm nhiều Các ứng dụng web phổ biến Internet nhiều truy cập ngày Sự thay đổi nhanh chóng cơng nghệ góp phần cho ứng dụng web cải tiến phát triển không ngừng Do đó, vấn đề bảo mật cho ứng dụng web cần phải đặt lên hàng đầu Một ứng dụng web có lỗ hổng bị cơng Kẻ cơng chiếm quyền điều khiển, quyền quản trị trang web, đánh cắp liệu thơng tin người dùng,… Vì vậy, để nâng cao hiểu biết lỗ hổng web kỹ lập trình an tồn ứng dụng web ưu tiên hàng đầu cho nhà phát triển việc giảng dạy mơn học lập trình web Một ứng dụng web bật để đào tạo việc khai thác lỗ hổng ứng dụng web Damn Vulnerable Web Application (DVWA)8 Đây ứng dụng web mã nguồn mở chứa lỗ hổng, viết PHP chạy sở liệu MySQL Nó thiết kế để giúp chuyên gia bảo mật luyện tập kỹ thử nghiệm công cụ mơi trường hợp pháp Bên cạnh đó, giúp nhà phát triển, học viên giáo viên hiểu rõ quy trình bảo mật thực lập trình an toàn ứng dụng web DVWA cung cấp thực hành lỗ hổng phổ biến nhất, với nhiều mức độ khác từ dễ đến khó Chúng ta dễ dàng truy cập vào thực hành tuỳ chỉnh mức độ theo mong muốn Yêu cầu kịch thực hành - Máy ảo cài đặt sẵn chương trình cần thiết ứng dụng DVWA https://github.com/digininja/DVWA 369 - Học viên truy cập vào thực hành thơng qua đường link cung cấp để truy cập đến ứng dụng web DVWA - Học viên truy cập đến máy ảo để cài đặt thêm gói/phần mềm cấu hình lại ứng dụng web b) Các bước cần thực để triển khai kịch thực hành • Yêu cầu triển khai DVWA DVWA triển khai tảng Windows Linux Sau có hệ điều hành, ta cần tải mã nguồn DVWA thực cấu hình để hoạt động Trong kịch xây dựng, DVWA cài đặt hệ điều hành Linux với web server Apache, PHP MySQL Cấu hình phần cứng máy Tên máy vm Image Ubuntu Desktop for LAMP Stack CPU Bộ nhớ (GB) Bộ lưu trữ (GB) 2 10 Bảng địa IP thiết bị Tên thiết bị vm • - Địa IP DHCP Netmask - Gateway - Các bước triển khai thủ cơng ứng dụng web DVWA Cài đặt gói cần thiết trước cài DVWA, bao gồm: Apache, MySQL (hoặc MariaDB) PHP sudo apt-get -y install apache2 mariadb-server php php-mysqli php-gd libapache2-mod-php - Đổi tên tập tin cấu hình mặc định Apache thành /etc/apache2/sitesenabled/dvwa-apache2.conf - chỉnh sửa phần DocumentRoot bên Khởi động lại dịch vụ Apache2 sudo service apache2 start - Tải mã nguồn DVWA máy git clone https://github.com/digininja/DVWA.git - Sao chép mã nguồn DVWA qua thư mục /var/www/html/ 370 sudo cp -r DVWA /var/www/html/ - Chỉnh sửa tập tin cấu hình /etc/php/7.4/apache2/php.ini bật tuỳ chọn allow_url_fopen allow_url_include tập tin cấu hình - Cấu hình tài khoản sở liệu tập tin cấu hình DVWA /var/www/html/dvwa/config/config.inc.php Nếu có reCAPTCHA cấu hình - Cấp quyền cho thư mục /var/www/html/dvwa/hackable/uploads/ thư mục /var/www/html/dvwa/external/phpids/0.6/lib/IDS/tmp/phpids_log.txt sudo chmod 777 -R /var/www/html/dvwa/hackable/uploads/ sudo chmod 777 /var/www/html/dvwa/external/phpids/0.6/lib/IDS/tmp/phpids_log.txt - Vào MySQL lệnh mysql -u root -p để tạo sở liệu tạo tài khoản cho DVWA mysql> mysql> mysql> mysql> mysql> create database dvwa; create user dvwa@localhost; ALTER USER dvwa@localhost IDENTIFIED BY 'p@ssw0rd'; grant all on dvwa.* to dvwa@localhost; flush privileges; 371 - Vào đăng nhập vào giao diện DVWA với tài khoản mặc định admin mật password bấm nút Create/Reset Database DVWA tự cấu hình sở liệu hồn tất q trình cài đặt Sau đó, ta nhận kết sau: Như vậy, hồn thành bước cấu hình thủ công cho DVWA c) Hiện thực bước triển khai hệ thống vLab Với yêu cầu đặt ra, kịch thực hành cài đặt tảng Ubuntu 20.04 (hệ điều hành Linux) có đường link cơng khai để truy cập từ Internet - Khai báo thông tin chung cho kịch thực hành hệ thống vLab Trong phần tạo kịch thực hành, mục Student instruction ta cần khai báo tuỳ chọn sau: • Để công khai đường dẫn để truy cập vào ứng dụng web DVWA, ta truy cập khai báo đoạn mã http://[[vm|80]] Trong đó, vm tên máy ảo thực hành chứa ứng dụng web (sẽ khai báo phần tiếp theo, 80 cổng máy chủ web • Để truy cập vào máy ảo chứa ứng dụng web DVWA, ta thêm đoạn [[topo]] Khai báo giúp người dùng truy cập vào máy ảo sau triển khai 372 - Khai báo mơ hình mạng máy ảo cho kịch thực hành Bước tiếp theo, cần khai báo mơ hình mạng máy ảo cho kịch thực hành Theo yêu cầu đề ra, mơ hình mạng kịch thực hành cần máy ảo Linux Do đó, ta cần tạo máy ảo (trường hợp tác giả chọn hệ điều hành Ubuntu 20) Để thuận tiện cho người sử dụng, hệ thống tự động tạo thêm router, lớp mạng IP để kết nối vào máy ảo người dùng khai báo máy ảo mà không khai báo thành phần khác Trong phần khai báo máy ảo, ta cần cấu hình phần sau: • Server name: phần khai báo tên máy ảo, đây, phải khai báo vm để khớp với khai báo phần trước • Server Image: phần khai báo image để khởi tạo máy ảo Image Ubuntu 20 Desktop for LAMP Stack image nhóm tạo cho kịch sử dung LAMP Stack Image chạy hệ điều hành Ubuntu 20, cài đặt sẵn cơng cụ Apache2, MySQL, PHP • Deployment Priority: thứ tự triển khai máy ảo, sử dụng trường hợp có máy cần triển khai trước có máy cần triển khai sau • Server flavor: chọn cấu hình phần cứng ảo Tuỳ thuộc vào yêu cầu thực hành, chọn phần cứng ảo cho phù hợp Trong kịch không cần nhiều tài nguyên chạy ứng dụng web, nên ta chọn phần cứng cho máy ảo là: nhân CPU, 2GB nhớ 10GB lưu trữ - Viết mã puppet để tự động hố q trình cài đặt cấu hình máy ảo 373 Dựa vào bước thực thủ công, viết mã puppet cấu hình để tự động hố q trình cài đặt cấu hình cho máy ảo • Bước 1: Cài đặt gói cần thiết trước cài DVWA, bao gồm: Apache, MySQL (hoặc MariaDB) PHP • Bước 2: Xố cấu hình mặc định Apache để tránh sung đột với tập tin cấu hình • Bước 3: Tải tập tin cấu hình Apache2 (có thể lấy tập tin cấu hình bước làm thủ cơng) lên Puppet Server, sau đó, khai báo tài nguyên tập tin Puppet rõ đường dẫn tạo máy ảo Phần hệ thống hỗ trợ giao diện, người dùng cần tải tập tin kéo thả, đoạn mã puppet sinh tự động • Bước 4: Tải mã nguồn DVWA máy ảo Từ mã nguồn DVWA cài đặt thủ công, ta nén mã nguồn lại thành tập tin dvwa.tar.gz, tải lên hệ thống viết mã Puppet để tải tập tin máy ảo giải nén vào thư mục /var/www/html/ • Bước 5: Cấu hình tập tin /etc/php/7.4/apache2/php.ini 374 Ta lấy tập tin PHP.INI cấu hình trước tải lên hệ thống viết mã Puppet để tải tập tin đường dẫn /etc/php/7.4/apache2/php.ini máy ảo • Bước 6: Để tạo sở liệu cho DVWA, ta xuất (export) liệu từ sở liệu MySQL làm trước đó, tải lên hệ thống nạp (import) vào MySQL Ở đây, tập tin xuất từ CSDL dvwa-dump.sql • Bước 7: Cấp quyền cho thư mục /var/www/html/dvwa/hackable/uploads/ /var/www/html/dvwa/external/phpids/0.6/lib/IDS/tmp/phpids_log.txt • Bước 8: Khởi động lại dịch vụ Apache2 đảm bảo MySQL hoạt động d) Kết triển khai thực hành Sau tạo xong cấu hình kịch thực hành, ta thử triển khai thực hành với cấu hình tạo xem kết - Kiểm tra dịch vụ Apache MySQL máy ảo 375 - Chúng ta truy cập vào máy ảo đường dẫn cơng khai để truy cập DVWA từ Internet hình bên - Thử truy cập vào đường link ta truy cập vào ứng dụng DVWA - Bấm vào Remote link(s) máy ảo, kết nối đến máy ảo thông qua Console SSH 376 1.2 Kịch thực hành mẫu an tồn thơng tin liên quan đến hệ thống a) Giới thiệu Đối với môi trường doanh nghiệp, việc quản lý người dùng máy tính cách đơn lẻ không hiệu thiếu bảo mật Thông thường hộ gia đình doanh nghiệp nhỏ, máy tính quản lý trong mơi trường Workgroup Trong mơi trường workgroup này, máy tính ngang hàng với nhau, khơng có quản lý tập trung máy tính với Mỗi máy tính có tài khoản riêng để truy cập tài khoản khơng thể sử dụng máy tính khác Do đó, việc quản lý người dùng máy tính mơi trường workgroup không hiệu Khi quản lý máy tính với mơ hình domain, có nhiều máy tính máy chủ Các máy chủ quản trị viên sử dụng để kiểm soát máy tính khác Tài khoản người dùng mơi trường domain khai báo máy chủ domain controller Bằng cách quản lý này, người dùng đăng nhập vào tài khoản máy tính tham gia vào domain mà không cần tài khoản riêng máy Bài thực hành giúp học viên hiểu rõ môi trường workgroup môi trường domain, tham gia máy tính vào domain, phân quyền quản người dùng môi trường domain Yêu cầu kịch thực hành • Cần tạo lớp mạng khác để đặt máy chủ máy khách giống môi trường thực tế • Máy chủ Domain Controller cần phải cài đặt trước để học viên tương tác tham gia máy khách vào domain • Một máy chủ đặt chế độ Workgroup để học viên truy cập thực hành mơi trường Workgroup • Học viên truy cập đến máy ảo để tham gia máy vào máy chủ cài đặt domain controller b) Các bước cần thực để triển khai kịch thực hành • Yêu cầu triển khai kịch thực hành Học viên cung cấp máy ảo bao gồm: 01 máy domain controller, 01 máy client 01 máy server lớp mạng khác để thực thực hành giống môi trường thực tế Mô hình mạng yêu cầu hình 377 Trong kịch này, máy chạy hệ điều hành Windows, cụ thể: máy Client chạy hệ điều hành Windows 7, máy Server máy AD chạy hệ điều hành Windows Server 2019 Máy AD domain controller, cài đặt chương trình Active Directory Tác giả chọn domain inseclab.local để cài đặt cho kịch Cấu hình phần cứng máy Tên máy Image AD Windows Server 2019 Standard Server Windows Server 2019 Standard Client Windows Ultimate Bảng địa IP thiết bị Tên thiết bị AD Server Client Địa IP 192.168.1.50 172.16.0.50 10.2.0.100 CPU Bộ nhớ (GB) 6 2 Netmask 255.255.255.0 255.255.255.0 255.255.255.0 Bộ lưu trữ (GB) 40 40 40 Gateway 192.168.1.1 172.16.0.1 10.2.0.1 • Các bước triển khai thủ công thực hành - Tạo mơ hình mạng theo u cầu Tuỳ thuộc vào tảng mà học viên triển khai thực hành có cách làm khác để tạo lớp mạng Trong phần này, tác giả bỏ qua phần tạo lớp mạng triển khai thủ công, tác giả tập trung vào việc cài đặt phần mềm Active Directory máy AD theo mơ hình - Cài dịch vụ Active Directory máy AD + + + + + + Vào Server Manager > Manage > Add Roles and Features Chọn Next bước Before You Begin, Installation Type, Server Selection Tại bước Server Roles, chọn Active Directory Domain Services Ở bước Features, chọn Group Policy Management Ở bước AD DS, chọn Next Ở bước Confirmation, xác nhận lại thông tin chọn Install 378 - + Chờ q trình cài đặt hồn thành chọn Close để kết thúc Nâng cấp máy chủ AD lên Domain Controller + Vào Server Manager thấy biểu tượng cảnh báo, nhấn vào chọn Promote this server to a domain controller + Chọn Add new forest gõ domain inseclab.local vào mục Root domain + Tiếp theo, thiết lập DSRM password thiết lập bên + Thiết lập NetBIOS domain name + Giữ nguyên tùy chỉnh mặc định mục Paths + Thực bước Prerequisites Check hồn thành, sau chọn Install chờ q trình nâng cấp hồn tất Sau hồn tất trình này, máy chủ Active Directory khởi động lại hồn tất q trình nâng cấp thành Domain Controller Như vậy, hoàn thành bước cấu hình thủ cơng cho dịch vụ Active Directory máy AD c) Hiện thực bước triển khai hệ thống vLab Với yêu cầu đặt ra, máy tính triển khai nhiều lớp mạng khác theo mơ hình u cầu Các máy chạy tảng Windows người dùng truy cập vào máy tính - Khai báo thông tin chung cho kịch thực hành hệ thống vLab 379 Trong phần tạo kịch thực hành, mục Student instruction ta cần khai báo tuỳ chọn sau: • Để xem mơ hình mạng truy cập vào máy ảo, ta thêm đoạn [[topo]] Khai báo giúp người dùng truy cập vào máy ảo sau triển khai • Viết đoạn mô tả tài khoản để học viên đăng nhập vào máy ảo - Khai báo mơ hình mạng máy ảo cho kịch thực hành Bước tiếp theo, cần khai báo mơ hình mạng máy ảo cho kịch thực hành Đầu tiên, khai báo router R1 R2 với thông số tên gateway có Do R1 cần Internet nên ta khai báo gateway cho R2 khơng cần nên ta bỏ tuỳ chọn Kế tiếp, ta khai báo lớp mạng Với mơ hình mạng tại, có 04 lớp mạng, nên ta khai báo 04 lớp mạng hệ thống 03 lớp mạng kết nối với máy chủ máy khách, ta khai báo giống mơ hình u cầu Riêng với lớp mạng R1 R2, tác giả khai báo lớp mạng 192.168.12.0/24 Dưới khai báo R1, lớp mạng khác ta khai báo tương tự Các tham số cần khai báo cho lớp mạng bao gồm: • Network Name: tên lớp mạng, lớp mạng khác khơng có tên • CIDR: Lớp mạng prefix length • IP Pool: Nếu muốn giới hạn địa IP động cấp khai báo • Gateway IP: Địa gateway để cấp cho client • Enable DHCP: Tuỳ chọn để bật tắt DHCP Server lớp mạng 380