Đề cương chi tiết học phần Lập trình an toàn (Programming Security)
lượt xem 2
download
Đề cương chi tiết học phần Lập trình an toàn (Programming Security) cung cấp các thông tin về môn học, điều kiện tiên quyết, mục tiêu của học phần, mô tả tóm tắt nội dung học phần, nhiệm vụ của sinh viên; các thang điểm và nội dung chi tiết học phần.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Đề cương chi tiết học phần Lập trình an toàn (Programming Security)
- BM01.QT02/ĐNT-ĐT 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 ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN 1. Thông tin chung về học phần - Tên học phần : Lập trình an toàn (Programming Security) - Mã số học phần : 1250104 - Số tín chỉ học phần : 4 (3+1) tín chỉ - Thuộc chương trình đào tạo của bậc, ngành: Bậc Đại học, ngành Công nghệ thông tin - Số tiết học phần : Nghe giảng lý thuyết : 45 tiết Làm bài tập trên lớp : 0 tiết Thảo luận : 0 tiết Thực hành : 30 tiết Hoạt động theo nhóm : 0 tiết Thực tế: : 0 tiết Tự học : 120 giờ - Đơn vị phụ trách học phần: Bộ môn Mạng máy tính / Khoa Công nghệ thông tin 2. Học phần trước: - Lập trình trên Windows 3. Mục tiêu của học phần: 1. Tính năng bảo mật và nguyên tắc mã hóa an toàn 2. Kỹ thuật phòng thủ cho các cuộc tấn công SQL injection 3. Mã hóa đầu ra để ngăn chặn các cuộc tấn công xác nhận đầu vào 4. Kỹ thuật phòng thủ chống lại các cuộc tấn công phiên, cookie 5. Giảm thiểu các lỗ hổng trong lớp mức độ xử lý ngoại lệ 6. Kỹ thuật phòng thủ chống lại các cuộc tấn công canonicalization và ACL 7. Tầm quan trọng của lập trình an toàn và các kỹ năng cần thiết thiết lập trình an toàn 4. Chuẩn đầu ra: Nội dung Đáp ứng CĐR CTĐT Kiến thức 4.1.1. Lập trình chú trọng yếu tố an toàn trên K1 code, cookie, đầu vào, đầu ra 4.1.2. Kỹ thuật tấn công trên lỗ hổng lập trình K2, K3 Kỹ năng 4.2.1 Lập trình với quy tắc an toàn S1 4.2.2 Lập trình chống tấn công thông thường S2, S3 1
- 4.2.3 Giảm thiểu lỗ hổng trong các mức tấn S2, S3 công Thái độ 4.3.1. Ý thức được tầm quan trọng của lập trình A1 an toàn trong công tác lập trình 4.3.2. Chuẩn bị bài trước khi đến lớp. Đi học A2, A3 đầy đủ. Tham gia tích cực trong giờ học. 5. Mô tả tóm tắt nội dung học phần: 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
- 6. Nội dung và lịch trình giảng dạy: - Các học phần lý thuyết: Buổi/ Hoạt động của Hoạt động của Giáo trình Tài liệu Nội dung Ghi chú Tiết giảng viên sinh viên chính tham khảo 1/ Chương 1: Giới thiệu lập trình - Giới thiệu đề cương - Nghe giảng, ghi chú [1] Chương 2,3 [3] Phần 1 Giải quyết (3) an toàn chi tiết - Trả lời câu hỏi mục tiêu 1. Khái niệm về lập trình an toàn - Thuyết giảng ngắn 4.1.1 2. Các loại tấn công dựa trên lỗi - Đặt câu hỏi lập trình - Nhấn mạnh những điểm chính 2-3/ Chương 2: .Net framework - Thuyết giảng ngắn - Nghe giảng, ghi chú [1] Chương 4,5 [2] Phần 2 Giải quyết (6) security - Đặt câu hỏi - Trả lời câu hỏi mục tiêu 1. .Net runtime security - Cho bài tập - Làm bài tập 4.1.1 2. .Net Class libraries security - Nhấn mạnh những 4.2.1 3. .Net assembly security điểm chính 4.3 4. .Net security tools - Yêu cầu chuẩn bị buổi học sau 4-5/(6) Chương 3: Kiểm tra nhập xuất [1] Chương 6,7 [3] Chương Giải quyết 1. Các tấn công trên lỗi lập trình - Đặt vấn đề - Nghe giảng, ghi chú 9,10 mục tiêu nhập xuất - Thuyết giảng ngắn - Trả lời câu hỏi 4.1.1 2. Lọc - Đặt câu hỏi - Làm bài tập 4.2.1 3. Sandboxing - Cho bài tập 4.3 - Nhấn mạnh những điểm chính - Yêu cầu chuẩn bị buổi học sau 6-7/(6) Chương 4: Authorization và [1] Chương 8 Giải quyết Authentication - Đặt vấn đề - Nghe giảng, ghi chú mục tiêu 1. Authorization và - Thuyết giảng ngắn - Trả lời câu hỏi 4.1.1 Authentication - Đặt câu hỏi - Làm bài tập 4.2.1 - Cho bài tập 4.3 3
- 2. Lỗ hổng liên quan - Nhấn mạnh những Authorization và điểm chính Authentication - Yêu cầu chuẩn bị 3. Bảo mật đường truyền buổi học sau 8,9/(6) Chương 5: Bảo mật Session và [1] Chương 9 [2] Phần 3 Giải quyết State Management - Đặt vấn đề - Nghe giảng, ghi chú mục tiêu 1. Khái niệm Session - Thuyết giảng ngắn - Trả lời câu hỏi 4.1.1 Management và công nghệ - Đặt câu hỏi - Làm bài tập 4.2.1 Session Management - Cho bài tập 4.3 2. Các loại tấn công trên Session - Nhấn mạnh những Management điểm chính - Yêu cầu chuẩn bị buổi học sau 10,11/(6) Chương 6: Error Handling, [1] Chương 15 Giải quyết Auditing, and Logging - Đặt vấn đề - Nghe giảng, ghi chú mục tiêu 1. Error Handling - Thuyết giảng ngắn - Trả lời câu hỏi 4.1.1 2. Exception Handling - Đặt câu hỏi - Làm bài tập 4.2.1 3. Auditing và Logging - Cho bài tập 4.3 - Nhấn mạnh những điểm chính - Yêu cầu chuẩn bị buổi học sau 12,13/(6) Chương 7: An Toàn File [1] Chương 16 Giải quyết 1. File Handling - Đặt vấn đề - Nghe giảng, ghi chú mục tiêu 2. Tấn công trên File - Thuyết giảng ngắn - Trả lời câu hỏi 4.1.1 3. Bảo mật cho tấn công trên File - Đặt câu hỏi - Làm bài tập 4.2.1 - Cho bài tập 4.3 - Nhấn mạnh những điểm chính - Yêu cầu chuẩn bị buổi học sau 4
- 14/(3) Chương 8: Cấu hình quản lý và - Đặt vấn đề - Nghe giảng, ghi chú [1] Chương 18 [2] Phần 5 Giải quyết bảo mật code - Thuyết giảng ngắn - Trả lời câu hỏi mục tiêu 1. Cấu hình quản lý hệ thống - Đặt câu hỏi - Làm bài tập 4.1.1 2. Cầu hình quản lý File - Cho bài tập 4.2.1 3. Cấu hình quản lý Application - Nhấn mạnh những 4.3 4. Bảo mật code điểm chính - Yêu cầu chuẩn bị buổi học sau 15/(3) - - Ôn tập Ghi chú: 1 buổi: 3 tiết - Các học phần thực hành: Buổi/ Hoạt động của Hoạt động của Giáo trình Tài liệu Nội dung Ghi chú Tiết giảng viên sinh viên chính tham khảo 1/(3) Chương 1: Cài đặt môi trường - Review điểm chính - Nghe giảng, ghi chú Bài tập thực hành [3] Phần 1 Giải quyết lập trình an toàn - Hướng dẫn sinh viên - Đặt câu hỏi mục tiêu thực hiện - Làm bài tập 4.2, 4.3 - Trả lời câu hỏi của SV 2/(3) Chương 2: .Net framework - Review điểm chính - Nghe giảng, ghi chú Bài tập thực hành [2] Phần 2 Giải quyết security - Hướng dẫn sinh viên - Đặt câu hỏi mục tiêu thực hiện - Làm bài tập 4.2, 4.3 - Trả lời câu hỏi của SV 3/(3) Chương 3: Kiểm tra nhập - Review điểm chính - Nghe giảng, ghi chú Bài tập thực hành [3] Chương 9,10 Giải quyết xuất - Hướng dẫn sinh viên - Đặt câu hỏi mục tiêu thực hiện - Làm bài tập 4.2, 4.3 - Trả lời câu hỏi của SV 4/(3) Chương 4: Authorization và - Review điểm chính - Nghe giảng, ghi chú Bài tập thực hành Giải quyết Authentication - Hướng dẫn sinh viên - Đặt câu hỏi mục tiêu 5
- thực hiện - Làm bài tập 4.2, 4.3 - Trả lời câu hỏi của SV 5/(3) Chương 5: Bảo mật Session - Review điểm chính - Nghe giảng, ghi chú Bài tập thực hành [2] Phần 3 Giải quyết và State Management - Hướng dẫn sinh viên - Đặt câu hỏi mục tiêu thực hiện - Làm bài tập 4.2, 4.3 - Trả lời câu hỏi của SV 6/(3) Chương 6: Error Handling, - Review điểm chính - Nghe giảng, ghi chú Bài tập thực hành Giải quyết Auditing, and Logging - Hướng dẫn sinh viên - Đặt câu hỏi mục tiêu thực hiện - Làm bài tập 4.2, 4.3 - Trả lời câu hỏi của SV 7/(3) Chương 7: An Toàn File - Review điểm chính - Nghe giảng, ghi chú Bài tập thực hành Giải quyết - Hướng dẫn sinh viên - Đặt câu hỏi mục tiêu thực hiện - Làm bài tập 4.2, 4.3 - Trả lời câu hỏi của SV 8,9/(6) Chương 8: Cấu hình quản lý - Review điểm chính - Nghe giảng, ghi chú Bài tập thực hành [2] Phần 5 Giải quyết và bảo mật code - Hướng dẫn sinh viên - Đặt câu hỏi mục tiêu thực hiện - Làm bài tập 4.2, 4.3 - Trả lời câu hỏi của SV 10/(3) Thi Coi thi và chấm điểm Làm bài thi 6
- 7. Nhiệm vụ của sinh viên: Sinh viên phải thực hiện các nhiệm vụ như sau: - Tham dự tối thiểu 80% số tiết học lý thuyết. - Tham dự tối thiểu 50% giờ thực hành và giải tất cả bài tập. - Tham dự kiểm tra thực hành. - Tham dự thi kết thúc học phần. - Chủ động tổ chức thực hiện giờ tự học. 8. Đánh giá kết quả học tập của sinh viên: 8.1. Cách đánh giá Sinh viên được đánh giá tích lũy học phần như sau: TT Thành Điểm thành Quy định Trọng Trọng số Mục phần phần số điểm thành tiêu phần Điểm - Tham dự ít nhất chuyên cần 70% số tiết học và số 30% 4.3.2 Thực 1 bài tập được giao 30% hành Điểm thi - Thực hành trên máy 4.2 70% thực hành Điểm thi kết - Thi viết (60 phút) 4.1 Lý 2 thúc học 70% 4.2.1 thuyết phần 8.2. Cách tính điểm - Điểm đánh giá thành phần và điểm thi kết thúc học phần được chấm theo thang điểm 10 (từ 0 đến 10), làm tròn đến 0.5. - Điểm học phần là tổng điểm của tất cả các điểm đánh giá thành phần của học phần nhân với trọng số tương ứng. Điểm học phần theo thang điểm 10 làm tròn đến một chữ số thập phân. 9. Tài liệu học tập: 9.1. Giáo trình/Tài liệu chính: [1] Programming .NET Security- Adam Freeman, O'Reilly, 2003 9.2. Tài liệu tham khảo: [2] Security for Web Developers, John Paul Mueller, O'Reilly Media, 2016 [3] Coding for Penetration Testers, 2nd Edition, Jason Andress, Ryan Linn, Syngress, 2017 7
- 10. Hướng dẫn sinh viên tự học: Tuần/ Lý Nội dung thuyết Nhiệm vụ của sinh viên Buổi (tiết) 1/1 Chương 1: Cài đặt môi 3 -Nghiên cứu trước: trường lập trình an toàn [1] Chương 2,3 1/1 Chương 2: .Net 3 -Nghiên cứu trước: framework security [1] Chương 4,5 1/1 Chương 3: Kiểm tra nhập 3 -Nghiên cứu trước: xuất [1] Chương 6,7 1/1 Chương 4: Authorization 3 -Nghiên cứu trước: và Authentication [8] Chương 8 1/1 Chương 5: Bảo mật 3 -Nghiên cứu trước: Session và State [1] Chương 9 Management 1/1 Chương 6: Error 3 -Nghiên cứu trước: Handling, Auditing, and [1] Chương 15 Logging 1/1 Chương 7: An Toàn File 3 -Nghiên cứu trước: [1] Chương 16 2/1 Chương 8: Cấu hình 6 -Nghiên cứu trước: quản lý và bảo mật code [1] Chương 18 1/1 Ôn tập 3 Thực hành: Sinh viên làm trước các bài tập có hướng dẫn trong tài liệu thực hành ở nhà theo bảng lịch trình giảng dạy phía trên, tham khảo thêm tài liệu [1] các nội dung tương ứng để có thể làm bài tốt hơn. Ngày… tháng…. Năm 201 Ngày… tháng…. Năm 201 Ngày… tháng…. Năm 201 Trưởng khoa Trưởng Bộ môn Người biên soạn (Ký và ghi rõ họ tên) (Ký và ghi rõ họ tên) (Ký và ghi rõ họ tên) Phạm Đình Thắng Trần Phương Tuấn Ngày… tháng…. Năm 201 Ban giám hiệu 8
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Đề cương chi tiết học phần Thiết kế đồ họa (Graphic Designer)
12 p | 118 | 17
-
Đề cương chi tiết học phần: Thiết kế sản phẩm với CAD-MEC 421
55 p | 86 | 11
-
Đề cương chi tiết học phần Quản lý dự án phần mềm (Software Project Management)
9 p | 76 | 10
-
Đề cương chi tiết học phần Lập trình Game (Game Programming)
10 p | 87 | 5
-
Đề cương chi tiết học phần Công nghệ phần mềm nâng cao (Advanced Software Engineering)
9 p | 46 | 5
-
Đề cương chi tiết học phần Lập trình Java (Java Programming) bậc đại học
13 p | 61 | 5
-
Đề cương chi tiết học phần Tin học đại cương (Introduction to General of Information)
10 p | 59 | 4
-
Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Data structures and algorithms) bậc đại học
10 p | 54 | 4
-
Đề cương chi tiết học phần Điều tra tấn công (Computer Hacking Forensic Investigator)
9 p | 51 | 4
-
Đề cương chi tiết học phần Mẫu thiết kế cho phần mềm (Design pattern)
12 p | 55 | 4
-
Đề cương chi tiết học phần Tin học đại cương
12 p | 10 | 3
-
Đề cương chi tiết học phần Tin học quản lý (Information Management)
8 p | 58 | 3
-
Đề cương chi tiết học phần Lập trình web (Web Programming)
12 p | 75 | 3
-
Đề cương chi tiết học phần Tin học ứng dụng
9 p | 16 | 2
-
Đề cương chi tiết học phần (Học phần lý thuyết hoặc lý thuyết và thực hành): Tin học đại cương
10 p | 71 | 2
-
Đề cương chi tiết học phần Lập trình Java EE
12 p | 48 | 2
-
Đề cương chi tiết học phần Hệ thống Scada (Mã học phần: 010123961)
14 p | 7 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn