Công Nghệ Thông Tin, it, phầm mềm, website, web, mobile app, trí tuệ nhân tạo, blockchain, AI, machine learning - Công Nghệ Thông Tin, it, phầm mềm, website, web, mobile app, trí tuệ nhân tạo, blockchain, AI, machine learning - Công nghệ thông tin 1 TRƯỜNG ĐH NGOẠI NGỮ - TIN HỌC TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Khoa CÔNG NGHỆ THÔNG TIN Độc Lập - Tự Do - Hạnh Phúc CHƯƠNG TRÌNH GIÁO DỤC ĐẠI HỌC Trình độ đào tạo: Đại học Ngành: Công nghệ thông tin Mã số: 7480201 ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN 1. Thông tin chung về HP 1.1 Mã học phần: 1250104 1.2 Tên học phần: Lập trình an toàn 1.3 Ký hiệu học phần: 1.4 Tên tiếng Anh: Programming Security 1.5 Số tín chỉ: 4 (3 + 1) 1.6 Phân bố thời gian: - Lý thuyết: 45 tiết - Thực hành: 30 tiết - Tự học: 60 giờ 1.7 Các giảng viên phụ trách học phần: - Giảng viên phụ trách chính: ThS. Phạm Đình Thắng - Danh sách giảng viên cùng giảng dạy: ThS. Đinh Xuân Lâm ThS. Cao Tiến Thành ThS. Đỗ Phi Hưng ThS. Nguyễn Anh Vũ 1.8 Điều kiện tham gia học phần: - Học phần tiên quyết: Không có - Học phần học trước: Mạng máy tính - Học phần song hành: Không yêu cầu 2. Mục tiêu HP 2.1. Mục tiêu chung Học phần cung cấp khả năng tổng quan về các tấn công trong ứng dụng. Các kiến thức về tấn công, khai thác lỗ hổng và bảo mật về mặt lập trình. Từ kiến thức về tấn công, khai thác phổ biến, lập trình viên có thể phòng chống lỗi cơ bản và chú trọng trong từng chi tiết lập trình nhằm tránh lỗi về bảo mật. 2.2. Mục tiêu HP cụ thể 2.2.1. Về kiến thức: Nắm được các tính năng bảo mật và nguyên tắc mã hóa an toàn. Nắm được kỹ thuật phòng thủ cho các cuộc tấn công SQL Injection Hiểu được kỹ thuật phòng thủ cho các cuộc tấn công canonicalization và ACL Nắm được các kỹ thuật phòng thủ chống lại các cuộc tấn công phiên, cookie Hiểu rõ tầm quan trọng của lập trình an toàn và các kỹ năng cần thiết để lập trình an toàn. Phân loại các kỹ thuật tấn công và phòng thủ trong lập trình an toàn. 2.2.2. Về kỹ năng: Lập trình với các quy tắc an toàn Lập trình chống các cuộc tấn công thông thường Có kỹ năng xử lý, phòng thủ và giảm thiểu lỗ hổng trong lập trình. Có khả năng thực hiện mã hóa đầu ra để ngăn chặn các cuộc tấn công xác nhận đầu vào. 2 2.2.3. Về thái độ Năng lực tự chủ và trách nhiệm. 3. Chuẩn đầu ra của HP “Lập trình an toàn” Bảng 3.1. Chuẩn đầu ra (CĐR) của HP Sau khi học xong học phần, SV có khả năng: Ký hiệu CĐR HP Nội dung CĐR HP (CLO) CLO1 Nắm vững các tính năng bảo mật và nguyên tắc mã hóa an toán CLO2 Có khả năng lập trình chú trọng yếu tố an toàn trên code, cookie, đầu vào, đầu ra CLO3 Có năng lực lập trình chống các cuộc tấn công thông thường CLO4 Áp dụng được kiến thức lập trình an toàn để xử lý lỗi, phòng thủ và giảm thiểu lỗ hổng trong lập trình CLO5 Có khả năng tự giải quyết một số vấn đề thực tế. Có năng lực đọc hiểu giáo trình, bài giảng bằng tiếng Anh. CLO6 Chuyên cần, có ý thức rèn luyện kỹ năng làm việc cẩn thận, chuyên nghiệp và sáng tạo.. 4. Mối liên hệ giữa CĐR HP (CLO) với CĐR CTĐT (PLO) Mức độ đóng góp của CLO vào PLO được xác định cụ thể: Mức 1 – CLO có đóng góp vừa vào PLO Mức 2 – CLO có đóng góp nhiều vào PLO Chú thích: 2 - Cao, 1 - Thấp - phụ thuộc vào mức hỗ trợ của CLO đối với PLO ở mức bắt đầu (1) hoặc mức nâng cao hơn mức bắt đầu, có nhiều cơ hội được thực hành, thí nghiệm, thực tế,…(2) Bảng 4.1.Mối liên hệ của CĐR HP (CLO) đến CĐR của CTĐT (PLO) PLO (1) (2) (3) (4) (5) (6) (7a) (8a) (9a) (10a) (11a) CLO 1 1 2 1 1 CLO 2 2 1 2 2 1 CLO 3 2 1 2 CLO 4 2 1 2 1 CLO 5 2 2 1 2 CLO 6 2 Tổng hợp học phần 2 2 2 1 2 1 2 1 5. Đánh giá HP a. Phương pháp, hình thức kiểm tra - đánh giá của HP Bảng 5.1. Phương pháp, hình thức kiểm tra - đánh giá kết quả học tập của SV ở HP Thphần đánh giá Trọng số Bài đánh giá Trọng số con Rubric Lquan đến CĐR nào ở bảng 3.1 HD PP đánh giá (1) (2) (3) (4) (5) (6) (7) A1. Kiểm tra thường xuyên (KTTX) 20 A1.1. Từng buổi học 30 R1 CLO 6 - Điểm danh - Đánh giá hoạt động trên lớp A1.2. Tuần 10: Kiểm tra trên lớp 20 R3 CLO 1 CLO 2 CLO 4 CLO 5 - Đánh giá kết quả hiểu và vận dụng kiến thức A1.3. Tuần 14: Làm việc nhóm trên case study 50 R3 CLO 1 CLO 2 CLO 5 A2. Đánh giá phần thực hành 30 Sinh viên hoàn thành bài thực hành trong buổi thực hành 100 R3 R7 CLO 2 CLO 3 CLO 4 - GV giao bài thực hành vào đầu mỗi buổi thực hành - GV chấm kết quả vào cuối buổi thực hành A3. Đánh giá cuối kỳ 50 Kiểm tra cuối kỳ. 100 Kiểm tra viết CLO 1 CLO 2 - Trắc nghiệm - Bài tập 3 CLO 4 CLO 5 b. Chính sách đối với HP 6. Kế hoạch và nội dung giảng dạy HP Bảng 6.1. Kế hoạch và nội dung giảng dạy của HP theo tuần Tuần Buổi (3 tiếtb) Các nội dung cơ bản của bài học (chương) (đến 3 số) Số tiết (LT TH TT) CĐR của bài học (chương) chủ đề Lquan đến CĐR nào ở bảng 3.1 PP giảng dạy đạt CĐR Hoạt động học của SV() Tên bài đánh giá (ở cột 3 bảng 5.1 (1) (2) (3) (4) (5) (6) (7) (8) 1 Chương 1: Giới thiệu lập trình an toàn 1.1 Khái niệm về lập trình an toàn 1.2 Các loại tấn công dựa trên lỗi lập trình 3 LT + Nắm được các khái niệm về lập trình an toàn, các loại tấn công dựa trên lỗi lập trình. CLO1 1.1. Thuyết giảng 1.2. Đặt câu hỏi gợi mở để sinh viên trả lời 1.3. Liên hệ với những kiến thức thực tế - Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 2,3 cuốn 1 và phần 1 cuốn 3 - Ghi chú, tham gia các hoạt động trên lớp A1.1 2 Chương 2: .Net framework security 2.1 .Net runtime security 2.2 .Net Class libraries security 3 + Nắm được các kỹ thuật giúp bảo mật trên nền tảng lập trình .net, + Nắm được các runtime và các lớp thư viện bảo mật trên nền tảng .net CLO1 CLO6 2.1. Thuyết giảng 2.2. Đặt câu hỏi gợi mở để sinh viên trả lời 2.3. Cho bài tập - Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 4,5 cuốn 1 và chương và phần 2 cuốn 2 - Ghi chú, tham gia các hoạt động trên lớp (nghe giảng, trả lời câu hỏi, làm bài tập) A1.1 3 Chương 2: .Net framework security (tiếp theo) 2.3 .Net assembly security 2.4 .Net security tools 3 + Nắm được các kỹ thuật giúp bảo mật trên nền tảng lập trình .net, + Nắm được các runtime và các lớp thư viện bảo mật trên nền tảng .net CLO1, CLO6 3.1. Thuyết giảng 3.2. Đặt câu hỏi 3.3. Demo 3.4. Cho bài tập - Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 4,5 cuốn 1 và chương và phần 2 cuốn 2 - Ghi chú, tham gia các hoạt động trên lớp A1.1 4 Chương 3: Kiểm tra nhập xuất 3.1 Các tấn công trên lỗi 3 + Nắm được các vấn đề liên quan CLO1 CLO6 4.1. Thuyết giảng 4.2. Đặt câu - Phần chuẩn bị ở nhà: Đọc trước nội A1.1 4 lập trình nhập xuất 3.2 Lọc đến nhập xuất trong lập trình và tầm quan trọng của kiểm tra nhập xuất + Vận dụng tấn công dựa trên các lỗi lập trình nhập xuất hỏi 4.3. Demo 4.4. Cho bài tập vận dụng dung ở chương 6,7 cuốn 1 và chương 9,10 cuốn 3 - Ghi chú, tham gia các hoạt động trên lớp 5 Chương 3: Kiểm tra nhập xuất (tiếp theo) 3.3 Lọc (tiếp theo) 3.4 Sandboxing 3 + Nắm được các vấn đề liên quan đến nhập xuất trong lập trình và tầm quan trọng của kiểm tra nhập xuất + Vận dụng tấn công dựa trên các lỗi lập trình nhập xuất CLO1, CLO2, CLO4, CLO6 5.1. Thuyết giảng 5.2 Đặt câu hỏi 5.3. Cho bài tập vận dụng kiến thức 5.4 Demo - Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 6,7 cuốn 1 và chương 9,10 cuốn 3 - Ghi chú, tham gia các hoạt động trên lớp A1.1 6 Chương 4: Authorization và Authentication 4.1 Authorization và Authentication 4.2 Lỗ hổng liên quan Authorization và Authentication 3 + Nắm được các khái niệm về ủy quyền (authorizati on) và xác thực (authenticati on) + Phân loại xác thực và ủy quyền và vận dụng tấn công dựa các lỗ hổng liên quan. + Làm quen với cách tổ chức nhóm trên case study CLO2 CLO3, CLO5, CLO6 6.1. Thuyết giảng 6,2, Demo 6.3. Đặt câu hỏi 6.4. Cho bài tập vận dụng kiến thức mạng 6.5. Làm việc nhóm - Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 8 cuốn 1, chương 5 cuốn 4 - Ghi chú, tham gia các hoạt động trên lớp - Thành lập nhóm A1.1 7 Chương 4: Authorization và Authentication (tiếp theo) 4.3 Lỗ hổng liên quan Authorization và Authentication (tiếp theo) 4.4 Bảo mật đường truyền 3 + Nắm được các khái niệm về ủy quyền (authorizati on) và xác thực (authenticati on) + Phân loại xác thực và ủy quyền và CLO1, CLO2, CLO3, CLO6 7.1. Thuyết giảng 7.2. Đặt câu hỏi 7....
Trang 1TRƯỜNG ĐH NGOẠI NGỮ -
TIN HỌC TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Khoa CÔNG NGHỆ THÔNG TIN Độc Lập - Tự Do - Hạnh Phúc
CHƯƠNG TRÌNH GIÁO DỤC ĐẠI HỌC Trình độ đào tạo: Đại học Ngành: Công nghệ thông tin Mã số: 7480201
ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN
1 Thông tin chung về HP
1.1 Mã học phần: 1250104 1.2 Tên học phần: Lập trình an toàn
1.3 Ký hiệu học phần: 1.4 Tên tiếng Anh: Programming Security
1.6 Phân bố thời gian:
1.7 Các giảng viên phụ trách học phần:
- Giảng viên phụ trách chính: ThS Phạm Đình Thắng
- Danh sách giảng viên cùng giảng dạy: ThS Đinh Xuân Lâm
ThS Cao Tiến Thành ThS Đỗ Phi Hưng ThS Nguyễn Anh Vũ
1.8 Điều kiện tham gia học phần:
2 Mục tiêu HP
2.1 Mục tiêu chung
Học phần cung cấp khả năng tổng quan về các tấn công trong ứng dụng Các kiến thức về tấn công, khai thác lỗ hổng và bảo mật về mặt lập trình Từ kiến thức về tấn công, khai thác phổ biến, lập trình viên có thể phòng chống lỗi cơ bản và chú trọng trong từng chi tiết lập trình nhằm tránh lỗi về bảo mật.
2.2 Mục tiêu HP cụ thể
2.2.1 Về kiến thức:
Nắm được các tính năng bảo mật và nguyên tắc mã hóa an toàn
Nắm được kỹ thuật phòng thủ cho các cuộc tấn công SQL Injection
Hiểu được kỹ thuật phòng thủ cho các cuộc tấn công canonicalization và ACL
Nắm được các kỹ thuật phòng thủ chống lại các cuộc tấn công phiên, cookie
Hiểu rõ tầm quan trọng của lập trình an toàn và các kỹ năng cần thiết để lập trình an toàn
Phân loại các kỹ thuật tấn công và phòng thủ trong lập trình an toàn
2.2.2 Về kỹ năng:
Lập trình với các quy tắc an toàn
Lập trình chống các cuộc tấn công thông thường
Có kỹ năng xử lý, phòng thủ và giảm thiểu lỗ hổng trong lập trình
Có khả năng thực hiện mã hóa đầu ra để ngăn chặn các cuộc tấn công xác nhận đầu vào
Trang 22.2.3 Về thái độ
Năng lực tự chủ và trách nhiệm
3 Chuẩn đầu ra của HP “Lập trình an toàn”
Bảng 3.1 Chuẩn đầu ra (CĐR) của HP
Sau khi học xong học phần, SV có khả năng:
CLO1 Nắm vững các tính năng bảo mật và nguyên tắc mã hóa an toán
CLO2 Có khả năng lập trình chú trọng yếu tố an toàn trên code, cookie, đầu vào,
đầu ra CLO3 Có năng lực lập trình chống các cuộc tấn công thông thường
CLO4 Áp dụng được kiến thức lập trình an toàn để xử lý lỗi, phòng thủ và giảm
thiểu lỗ hổng trong lập trình CLO5 Có khả năng tự giải quyết một số vấn đề thực tế Có năng lực đọc hiểu
giáo trình, bài giảng bằng tiếng Anh
CLO6 Chuyên cần, có ý thức rèn luyện kỹ năng làm việc cẩn thận, chuyên
nghiệp và sáng tạo
4 Mối liên hệ giữa CĐR HP (CLO) với CĐR CTĐT (PLO)
Mức độ đóng góp của CLO vào PLO được xác định cụ thể:
Mức 1 – CLO có đóng góp vừa vào PLO
Mức 2 – CLO có đóng góp nhiều vào PLO
Chú thích: 2 - Cao, 1 - Thấp - phụ thuộc vào mức hỗ trợ của CLO đối với PLO ở mức bắt đầu (1) hoặc mức nâng cao hơn mức bắt đầu, có nhiều cơ hội được thực hành, thí nghiệm, thực tế,…(2)
Bảng 4.1.Mối liên hệ của CĐR HP (CLO) đến CĐR của CTĐT (PLO)
PLO (1) (2) (3) (4) (5) (6) (7a) (8a) (9a) (10a) (11a)
Tổng hợp
học phần 2 2 2 1 2 1 2 1
5 Đánh giá HP
Bảng 5.1 Phương pháp, hình thức kiểm tra - đánh giá kết quả học tập của SV ở HP
Th/phần
đánh giá Trọng số Bài đánh giá Trọng số con
Rubric Lquan đến
CĐR nào ở bảng 3.1
HD PP đánh giá
A1 Kiểm
tra thường
xuyên
(KTTX)
20%
A1.1 Từng buổi học 30%
R1 CLO 6 - Điểm danh
- Đánh giá hoạt động trên lớp
A1.2 Tuần 10: Kiểm tra trên lớp
20%
R3 CLO 1
CLO 2 CLO 4 CLO 5
- Đánh giá kết quả hiểu và vận dụng kiến thức
A1.3 Tuần 14: Làm việc nhóm trên case study
50%
R3 CLO 1
CLO 2 CLO 5 A2 Đánh
giá phần
thực hành
30%
Sinh viên hoàn thành bài thực hành trong buổi thực hành
100%
R3 R7
CLO 2 CLO 3 CLO 4
- GV giao bài thực hành vào đầu mỗi buổi thực hành
- GV chấm kết quả vào cuối buổi thực hành A3 Đánh
giá cuối kỳ 50% Kiểm tra cuối kỳ 100%
Kiểm tra viết
CLO 1 CLO 2 - Trắc nghiệm
- Bài tập
Trang 3CLO 4 CLO 5
6 Kế hoạch và nội dung giảng dạy HP
Bảng 6.1 Kế hoạch và nội dung giảng dạy của HP theo tuần
Tuần/
Buổi
(3
tiết/b)
Các nội dung cơ bản của bài
học (chương) (đến 3 số)
Số tiết (LT/
TH/
TT)
CĐR của bài học (chương)/
chủ đề
Lquan đến CĐR nào ở bảng 3.1
PP giảng dạy đạt CĐR
Hoạt động học của SV(*) Tên bài đánh
giá
(ở cột 3 bảng
5.1
(1) (2) (3) (4) (5) (6) (7) (8)
1 Chương 1: Giới thiệu lập
trình an toàn
1.1 Khái niệm về lập
trình an toàn
1.2 Các loại tấn công
dựa trên lỗi lập trình
3 LT + Nắm được
các khái niệm về lập trình an toàn, các loại tấn công dựa trên lỗi lập trình
CLO1 1.1 Thuyết
giảng
1.2 Đặt câu hỏi gợi mở để sinh viên trả lời
1.3 Liên hệ với những kiến thức thực
tế
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 2,3 cuốn [1] và phần 1 cuốn [3]
- Ghi chú, tham gia các hoạt động trên lớp
A1.1
2 Chương 2: Net
framework security
2.1 Net runtime security
2.2 Net Class libraries
security
3 + Nắm được các kỹ thuật giúp bảo mật trên nền tảng lập trình net,
+ Nắm được các runtime
và các lớp thư viện bảo mật trên nền tảng net
CLO1 CLO6
2.1 Thuyết giảng
2.2 Đặt câu hỏi gợi mở để sinh viên trả lời
2.3 Cho bài tập
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 4,5 cuốn [1] và chương và phần 2 cuốn [2]
- Ghi chú, tham gia các hoạt động trên lớp (nghe giảng, trả lời câu hỏi, làm bài tập)
A1.1
3 Chương 2: Net
framework security (tiếp
theo)
2.3 Net assembly
security
2.4 Net security tools
3 + Nắm được các kỹ thuật giúp bảo mật trên nền tảng lập trình net,
+ Nắm được các runtime
và các lớp thư viện bảo mật trên nền tảng net
CLO1, CLO6
3.1 Thuyết giảng 3.2 Đặt câu hỏi
3.3 Demo 3.4 Cho bài tập
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 4,5 cuốn [1] và chương và phần 2 cuốn [2]
- Ghi chú, tham gia các hoạt động trên lớp
A1.1
4 Chương 3: Kiểm tra nhập
xuất
3.1 Các tấn công trên lỗi
3 + Nắm được các vấn đề liên quan
CLO1 CLO6
4.1 Thuyết giảng 4.2 Đặt câu
- Phần chuẩn
bị ở nhà:
Đọc trước nội
A1.1
Trang 4lập trình nhập xuất
3.2 Lọc
đến nhập xuất trong lập trình và tầm quan trọng của kiểm tra nhập xuất + Vận dụng tấn công dựa trên các lỗi lập trình nhập xuất
hỏi 4.3 Demo 4.4 Cho bài tập vận dụng
dung ở chương 6,7 cuốn [1] và chương 9,10 cuốn [3]
- Ghi chú, tham gia các hoạt động trên lớp
5 Chương 3: Kiểm tra nhập
xuất (tiếp theo)
3.3 Lọc (tiếp theo)
3.4 Sandboxing
3 + Nắm được các vấn đề liên quan đến nhập xuất trong lập trình và tầm quan trọng của kiểm tra nhập xuất + Vận dụng tấn công dựa trên các lỗi lập trình nhập xuất
CLO1, CLO2, CLO4, CLO6
5.1 Thuyết giảng 5.2 Đặt câu hỏi
5.3 Cho bài tập vận dụng kiến thức 5.4 Demo
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 6,7 cuốn [1] và chương 9,10 cuốn [3]
- Ghi chú, tham gia các hoạt động trên lớp
A1.1
6 Chương 4: Authorization
và Authentication
4.1 Authorization và
Authentication
4.2 Lỗ hổng liên quan
Authorization và Authentication
3 + Nắm được các khái niệm về ủy quyền (authorizati on) và xác thực (authenticati on)
+ Phân loại xác thực và
ủy quyền và vận dụng tấn công dựa các lỗ hổng liên quan
+ Làm quen với cách tổ chức nhóm trên case study
CLO2 CLO3, CLO5, CLO6
6.1 Thuyết giảng 6,2, Demo 6.3 Đặt câu hỏi
6.4 Cho bài tập vận dụng kiến thức mạng 6.5 Làm việc nhóm
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 8 cuốn [1], chương 5 cuốn [4]
- Ghi chú, tham gia các hoạt động trên lớp
- Thành lập nhóm
A1.1
7 Chương 4: Authorization
và Authentication (tiếp
theo)
4.3 Lỗ hổng liên quan
Authorization và Authentication (tiếp theo)
4.4 Bảo mật đường
truyền
3 + Nắm được các khái niệm về ủy quyền (authorizati on) và xác thực (authenticati on)
+ Phân loại xác thực và
ủy quyền và
CLO1, CLO2, CLO3, CLO6
7.1 Thuyết giảng 7.2 Đặt câu hỏi
7.3 Demo 7.4 Cho bài tập
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 8 cuốn [1], chương 5 cuốn [4]
- Ghi chú, tham gia các hoạt động trên lớp
A1.1
Trang 5vận dụng tấn công dựa các lỗ hổng liên quan
8 Chương 5: Bảo mật
Session và State
Management
5.1 Khái niệm Session
Management và công nghệ Session Management
3 + Nắm được khái niệm
về bảo mật session và state managemen
t
CLO1, CLO2, CLO3, CLO6
8.1 Thuyết giảng 8.2 Đặt câu hỏi
8.3 Demo 8.4 Cho bài tập
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 9 cuốn [1] và phần 3 cuốn [2]
- Ghi chú, tham gia các hoạt động trên lớp
A1.1
9 Chương 5: Bảo mật
Session và State
Management
5.2 Các loại tấn công
trên Session Management
3 + Nắm được các loại tấn công trên Session Managemen
t
CLO1 CLO3, CLO6
9.1 Thuyết giảng 9.2 Đặt câu hỏi
9.3 Cho bài tập
9.4 Ôn lại kiến thức đã học
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 9 cuốn [1] và phần 3 cuốn [2]
- Ghi chú, tham gia các hoạt động trên lớp
- Ôn lại kiến thức đã học
A1.1
10 Chương 6: Error
Handling, Auditing, and
Logging
6.1 Error Handling
6.2 Exception Handling
3 + Nắm được các khái niệm, kỹ thuật kiểm soát, bắt lỗi
và phân tích lỗi
CLO1, CLO2, CLO4, CLO5, CLO6
10.1 Thuyết giảng 10.2 Đặt câu hỏi
10.3 Cho bài kiểm tra
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 15 cuốn [1] và chương 7 cuốn [4]
- Ghi chú, tham gia các hoạt động trên lớp
- Làm bài kiểm tra
- Vận dụng sáng tạo kiến thức đã học vào vấn đề thực tế
- Báo cáo phần việc đã được thực hiện trong nhóm
A1.1, A1.2
11 Chương 6: Error
Handling, Auditing, and
Logging (tiếp theo)
6.3 Auditing và Logging
3 + Nắm được các khái niệm, kỹ thuật kiểm soát và
CLO1 CLO2, CLO4, CLO6
11.1 Thuyết giảng 11.2 Đặt câu hỏi
11.3 Cho bài
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 15
A1.1
Trang 6phân tích lỗi tập
11.4 Demo
cuốn [1] và chương 7 cuốn [4]
- Ghi chú, tham gia các hoạt động trên lớp
12 Chương 7: An Toàn File
7.1 File Handling
7.2 Tấn công trên File
3 + Nắm được các khái niệm về an toàn file + Có khả năng vận dụng kiến thức để giải case study
CLO2, CLO4, CLO5, CLO6
12.1 Thuyết giảng 12.2 Đặt câu hỏi
12.3 Nhận xét đánh giá kết quả làm việc nhóm trên case study
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 16 cuốn [1]
- Ghi chú, tham gia các hoạt động trên lớp
- Rút kinh nghiệm từ các nhận xét của giảng viên
- Rút kinh nghiệm từ lỗi của các nhóm khác
A1.1
13 Chương 7: An Toàn File
(tiếp theo)
7.3 Tấn công trên File
(tiếp theo)
7.4 Bảo mật cho tấn
công trên File
3 + Nắm được các kỹ thuật tấn công trên file + Vận dụng kiến thức để thực hiện bảo mật, phòng chống tấn công trên file
CLO2, CLO4, CLO6
13.1 Thuyết giảng 13.2 Đặt câu hỏi
13.3 Demo 13.4 Cho bài tập
- Phần chuẩn
bị ở nhà:
Đọc trước nội dung ở chương 16 cuốn [1]
- Ghi chú, tham gia các hoạt động trên lớp
A1.1
14 Chương 8: Cấu hình quản
lý và bảo mật code
8.1 Cấu hình quản lý hệ
thống
8.2 Cầu hình quản lý
File
8.3 Cấu hình quản lý
Application
8.4 Bảo mật code
3 + Nắm được các kỹ thuật cấu hình quản lý hệ thống, ứng dụng, tập tin
và bảo mật code
CLO2, CLO4, CLO5, CLO6
14.1 Thuyết giảng 14.2 Đặt câu hỏi
- Phần chuẩn
bị ở nhà:
Thảo luận và đóng góp ý kiến vào bài giải case study
Hoàn tất phần việc đã được phân công trong nhóm Đọc trước nội dung ở chương 18 cuốn [1] và phần 5 cuốn [3]
- Ghi chú, tham gia các hoạt động trên lớp
- Nộp báo cáo case stydy của môn học
A1.1
Trang 7kiến thức đã được học chuẩn bị thi cuối kỳ
CLO1, CLO2, CLO4, CLO5, CLO6
15.1 Ôn tập kiến thức 15.2 Nhận xét, đánh giá
và công bố kết quả làm việc nhóm trên case study
- Ghi chú, tham gia các hoạt động trên lớp
- Rút kinh nghiệm từ các case study
A1.1, A1.3
Theo
lịch
thi
- Học phần thực hành:
Bảng 6.2 Kế hoạch và nội dung giảng dạy của HP thực hành theo tuần
Tuần/
Buổi
(3
tiết/b)
Các nội dung cơ bản
của bài học (chương)
(đến 3 số)
Số tiết (LT/
TH/
TT)
CĐR của bài học (chương)/
chủ đề
Lquan đến CĐR nào ở bảng 3.1
PP giảng dạy đạt CĐR
Hoạt động học của SV(*) Tên bài
đánh giá
(ở cột
3 bảng
5.1
(1) (2) (3) (4) (5) (6) (7) (8)
1 Chương 1: Cài đặt môi
trường lập trình an toàn
3 TH + Nắm được cách
cài đặt môi trường lập trình
an toàn
CLO2 CLO3
- Thuyết giảng
- Hướng dẫn sinh viên thực hiện
- Đặt câu hỏi
- Nghe giảng, ghi chú
- Trả lời câu hỏi
- Làm bài tập trên máy
A2
2 Chương 2: Net
framework security
3 + Nắm được các runtime và thư viện lập trình an toàn
CLO3 CLO6
- Thuyết giảng
- Hướng dẫn sinh viên thực hiện
- Đặt câu hỏi
- Nghe giảng, ghi chú
- Trả lời câu hỏi
- Làm bài tập trên máy
A2
3 Chương 3: Kiểm tra nhập
+ Năm được tầm quan trọng của kiểm tra nhập xuật và các kỹ thuật tấn công lỗi lập trình nhập xuất
CLO3 CLO6
- Thuyết giảng
- Hướng dẫn sinh viên thực hiện
- Đặt câu hỏi
- Nghe giảng, ghi chú
- Trả lời câu hỏi
- Làm bài tập trên máy
A2
4 Chương 4:
Authorization và
Authentication
3 + Nắm được các
kỹ thuật tấn công dựa trên lỗi lập trình liên quan đến ủy quyền và xác thực
CLO3 CLO6
- Thuyết giảng
- Hướng dẫn sinh viên thực hiện
- Đặt câu hỏi
- Nghe giảng, ghi chú
- Trả lời câu hỏi
- Làm bài tập trên máy
A2
5 Chương 5: Bảo mật
Session và State
3 + Nắm được kỹ thuật bảo mật CLO2 CLO3
Trang 8Management phiên và quản lý
trạng thái CLO6 - giảng Hướng dẫn
sinh viên thực hiện
- Đặt câu hỏi
giảng, ghi chú
- Trả lời câu hỏi
- Làm bài tập trên máy
6 Chương 6: Error
Handling, Auditing, and
Logging
3 + Nắm được các
kỹ thuật bắt lỗi, điều tra, phân tích lỗi trong lập trình an toàn
CLO2 CLO4 CLO6
- Thuyết giảng
- Hướng dẫn sinh viên thực hiện
- Đặt câu hỏi
- Nghe giảng, ghi chú
- Trả lời câu hỏi
- Làm bài tập trên máy
A2
7 Chương 7: An Toàn File 3 + Nắm được kỹ
thuật tấn công và bảo mật trên file
CLO2 CLO6
- Thuyết giảng
- Hướng dẫn sinh viên thực hiện
- Đặt câu hỏi
- Nghe giảng, ghi chú
- Trả lời câu hỏi
- Làm bài tập trên máy
A2
8 Chương 8: Cấu hình
quản lý và bảo mật
code
3 + Nắm được kỹ thuật cấu hình quản lý và bảo mật code
CLO4 CLO6
- Thuyết giảng
- Hướng dẫn sinh viên thực hiện
- Đặt câu hỏi
- Nghe giảng, ghi chú
- Trả lời câu hỏi
- Làm bài tập trên máy
A2
9 Chương 8: Cấu hình
quản lý và bảo mật
code (tiếp theo)
3 + Nắm được kỹ thuật cấu hình quản lý và bảo mật code
CLO2 CLO4 CLO6
- Thuyết giảng
- Hướng dẫn sinh viên thực hiện
- Đặt câu hỏi
- Nghe giảng, ghi chú
- Trả lời câu hỏi
- Làm bài tập trên máy
A2
10 Thi thực hành 3 CLO2
CLO3 CLO4 CLO5
- Coi thi và chấm điểm - Làm bài thi A2
(*) Ghi chú:
- (3) Số tiết (LT/TH/TT): Xác định số tiết lý thuyết, thực hành, thực tập của từng chương
- (6) PP giảng dạy đạt CĐR: Nêu tên các PP giảng dạy sử dụng trong từng chương để đạt CĐR
- (7) Hoạt động học của SV: Xác định các nội dung SV cần chuẩn bị tại nhà (đọc tài liệu nào, từ trang thứ mấy, LVN để giải quyết BT, làm dự án …… ); Hoạt động tại lớp (thảo luận nhóm, làm BT thường
xuyên số.…)
7 Học liệu:
Bảng 7.1 Sách, giáo trình, tài liệu tham khảo
XB
Tên sách, giáo trình, tên bài báo, văn bản
NXB, tên tạp chí/ nơi ban hành VB Giáo trình chính
Freeman
O'Reilly Media
Sách, giáo trình tham khảo
3 Jason Andress, Ryan
Linn
2016 Coding for Penetration Testers, 2nd
Edition
Syngress
Trang 94 Ankit Mishra 2015 Secure Your Spring-Based Applications Packt Publishing
Bảng 7.2 Danh mục địa chỉ web hữu ích cho HP
nhật
1
8 Cơ sở vật chất phục vụ giảng dạy:
Bảng 8.1 Cơ sở vật chất giảng dạy của HP
TT
Tên giảng đường,
PTN, xưởng, cơ sở
TH
Danh mục trang thiết bị, phần mềm chính
phục vụ TN,TH Phục vụ cho nội dung Bài học/Chương Tên thiết bị, dụng cụ, phần
mềm,…
Số lượng
1 Phòng máy Khoa CNTT Phần mềm VMWare Workstation
Các máy ảo Windows Server 2012, Windows Server 2008, Windows 7, Windows 10
1 Tất cả buổi thực hành
2
ThS Cao Tiến Thành
TPHCM Ngày …/…/…