Cảm ơn bạn đã gửi yêu cầu! Một thành viên trong đội ngũ của chúng tôi sẽ liên hệ với bạn ngay lập tức.
Cảm ơn bạn đã gửi đặt chỗ! Một thành viên trong đội ngũ của chúng tôi sẽ liên hệ với bạn ngay lập tức.
Đề cương khóa học
Ngày 1
Bảo mật IT và lập trình an toàn
- Bản chất của bảo mật
- Các thuật ngữ liên quan đến bảo mật IT
- Định nghĩa rủi ro
- Các khía cạnh khác nhau của bảo mật IT
- Yêu cầu của các lĩnh vực ứng dụng khác nhau
- Bảo mật IT so với lập trình an toàn
-
Từ các lỗ hổng đến mạng botnet và tội phạm mạng
- Bản chất của các lỗi bảo mật
- Nguyên nhân gây khó khăn
- Từ máy tính bị nhiễm đến các cuộc tấn công có mục tiêu
-
Phân loại các lỗi bảo mật
- Hệ thống phân loại của Landwehr
- Bảy Vương quốc Hủy hoại
- OWASP Top Ten 2013
- So sánh OWASP Top Ten 2003 – 2013
Giới thiệu về Chu kỳ Phát triển Bảo mật của Microsoft® (SDL)
- Nội dung chương trình
-
Các ứng dụng dưới sự tấn công...
- Sự tiến hóa của tội phạm mạng
- Các cuộc tấn công tập trung vào ứng dụng
- Hầu hết các lỗ hổng nằm trong các ứng dụng ISV nhỏ hơn
-
Nguồn gốc của SDL Microsoft...
- Bảng thời gian bảo mật tại Microsoft...
- Ứng dụng nào bắt buộc phải tuân theo SDL?
-
Chu kỳ Phát triển Bảo mật của Microsoft (SDL)
- Chu kỳ Phát triển Bảo mật của Microsoft (SDL)
- Yêu cầu tiền SDL: Đào tạo Bảo mật
- Giai đoạn một: Yêu cầu
- Giai đoạn hai: Thiết kế
- Giai đoạn ba: Triển khai
- Giai đoạn bốn: Xác minh
- Giai đoạn năm: Phát hành – Kế hoạch Phản ứng
- Giai đoạn năm: Phát hành – Đánh giá Bảo mật Cuối cùng
- Giai đoạn năm: Phát hành – Lưu trữ
- Yêu cầu hậu SDL: Phản ứng
- Hướng dẫn Quy trình SDL cho ứng dụng LOB
- Hướng dẫn SDL cho phương pháp Agile
- Phát triển phần mềm an toàn đòi hỏi cải tiến quy trình
Nguyên tắc thiết kế an toàn
-
Bề mặt tấn công
- Giảm thiểu bề mặt tấn công
- Bề mặt tấn công – một ví dụ
- Phân tích bề mặt tấn công
- Giảm thiểu bề mặt tấn công – các ví dụ
-
Quyền riêng tư
- Quyền riêng tư
- Hiểu các hành vi và mối quan tâm của ứng dụng
-
Phòng thủ nhiều lớp
- Nguyên tắc cốt lõi của SDL: Phòng thủ Nhiều Lớp
- Phòng thủ nhiều lớp – ví dụ
-
Nguyên tắc đặc quyền tối thiểu
- Đặc quyền tối thiểu – ví dụ
-
Cài đặt mặc định an toàn
- Cài đặt mặc định an toàn – các ví dụ
Nguyên tắc triển khai an toàn
- Nội dung chương trình
- Chu kỳ Phát triển Bảo mật của Microsoft (SDL)
-
Cơ bản về tràn bộ đệm
- Bộ xử lý Intel 80x86 – các thanh ghi chính
- Bố cục địa chỉ bộ nhớ
- Cơ chế gọi hàm trong C/C++ trên x86
- Các biến cục bộ và khung ngăn xếp
-
Tràn ngăn xếp
- Tràn bộ đệm trên ngăn xếp
- Bài tập – giới thiệu
- Bài tập BOFIntro
- Bài tập BOFIntro – xác định bố cục ngăn xếp
- Bài tập BOFIntro – một cuộc khai thác đơn giản
-
Xác minh đầu vào
- Các khái niệm về xác minh đầu vào
-
Các vấn đề về số nguyên
- Biểu diễn số nguyên âm
- Tràn số nguyên
- Tràn số học – đoán kết quả!
- Bài tập IntOverflow
- Giá trị của Math.Abs(int.MinValue) là gì?
-
Giảm thiểu các vấn đề về số nguyên
- Giảm thiểu các vấn đề về số nguyên
- Tránh tràn số học – phép cộng
- Tránh tràn số học – phép nhân
- Phát hiện tràn với từ khóa checked trong C#
- Bài tập – Sử dụng từ khóa checked trong C#
- Các ngoại lệ được kích hoạt do tràn trong C#
-
Nghiên cứu tình huống – Tràn số nguyên trong .NET
- Lỗ hổng tràn số nguyên trong thế giới thực
- Khai thác lỗ hổng tràn số nguyên
-
Lỗ hổng vượt quyền đường dẫn (Path traversal)
- Giảm thiểu lỗ hổng vượt quyền đường dẫn
Ngày 2
Nguyên tắc triển khai an toàn
-
Lỗi tiêm (Injection)
- Các phương pháp tấn công tiêm SQL điển hình
- Tiêm SQL mù và dựa trên thời gian
- Các phương pháp bảo vệ chống tiêm SQL
- Lỗi tiêm lệnh (Command injection)
-
Xác thực bị hỏng - Quản lý mật khẩu
- Bài tập – Điểm yếu của mật khẩu băm (hashed passwords)
- Quản lý và lưu trữ mật khẩu
- Các thuật toán băm chuyên dụng cho lưu trữ mật khẩu
-
Lỗi script xuyên trang (Cross-Site Scripting - XSS)
- Lỗi script xuyên trang (XSS)
- Lỗi tiêm CSS
- Khai thác: tiêm thông qua các thẻ HTML khác
- Phòng chống XSS
-
Thiếu kiểm soát truy cập ở cấp hàm
- Lọc các tệp được tải lên
-
Mật mã học thực tiễn
- Cung cấp tính bí mật bằng mật mã đối xứng
- Các thuật toán mã hóa đối xứng
- Mã khối – các chế độ hoạt động
- Băm thông điệp (Hash or message digest)
- Các thuật toán băm
- Mã xác thực thông điệp (MAC)
- Cung cấp tính toàn vẹn và tính xác thực bằng khóa đối xứng
- Cung cấp tính bí mật bằng mã hóa khóa công khai
- Quy tắc kinh nghiệm – sở hữu khóa bí mật
- Những sai lầm điển hình trong quản lý mật khẩu
- Bài tập – Mật khẩu cứng (Hard coded passwords)
- Kết luận
Nguyên tắc xác minh an toàn
- Kiểm thử chức năng so với kiểm thử bảo mật
- Các lỗ hổng bảo mật
- Ưu tiên hóa
- Kiểm thử bảo mật trong SDLC
- Các bước lập kế hoạch kiểm thử (phân tích rủi ro)
-
Phạm vi và thu thập thông tin
- Các bên liên quan
- Tài sản
- Bề mặt tấn công
- Mục tiêu bảo mật cho kiểm thử
-
Mô hình hóa mối đe dọa
- Mô hình hóa mối đe dọa
- Hồ sơ kẻ tấn công
- Mô hình hóa mối đe dọa dựa trên cây tấn công
- Mô hình hóa mối đe dọa dựa trên các trường hợp sử dụng/sai dụng
- Các trường hợp sử dụng/sai dụng – ví dụ cửa hàng Web đơn giản
- Phương pháp tiếp cận STRIDE theo phần tử cho mô hình hóa mối đe dọa – MS SDL
- Xác định các mục tiêu bảo mật
- Sơ đồ hóa – các ví dụ về yếu tố DFD
- Sơ đồ luồng dữ liệu – ví dụ
- Liệt kê mối đe dọa – STRIDE và các yếu tố DFD của MS SDL
- Phân tích rủi ro – phân loại các mối đe dọa
- Mô hình xếp hạng mối đe dọa/rủi ro DREAD
-
Kỹ thuật và công cụ kiểm thử bảo mật
- Các phương pháp tiếp cận kiểm thử chung
- Kỹ thuật cho các bước khác nhau của SDLC
-
Xem xét mã nguồn (Code review)
- Xem xét mã nguồn cho bảo mật phần mềm
- Phân tích nhiễm (Taint analysis)
- Heuristics
-
Phân tích mã tĩnh
- Phân tích mã tĩnh
- Bài tập – Sử dụng công cụ phân tích mã tĩnh
-
Kiểm thử triển khai
- Xác minh thời gian chạy thủ công
- Kiểm thử bảo mật thủ công so với tự động
- Kiểm thử xâm nhập (Penetration testing)
- Kiểm thử tải (Stress tests)
-
Fuzzing
- Kiểm thử bảo mật tự động - fuzzing
- Các thách thức của fuzzing
-
Trình quét lỗ hổng Web
- Bài tập – Sử dụng trình quét lỗ hổng
-
Kiểm tra và gia cố môi trường
- Hệ thống chấm điểm lỗ hổng phổ biến – CVSS
- Trình quét lỗ hổng
- Cơ sở dữ liệu công cộng
-
Nghiên cứu tình huống – Vượt qua Xác thực Biểu mẫu (Forms Authentication Bypass)
- Lỗ hổng kết thúc bằng byte NULL
- Lỗ hổng Vượt qua Xác thực Biểu mẫu trong mã nguồn
- Khai thác lỗ hổng Vượt qua Xác thực Biểu mẫu
Nguồn kiến thức
- Các nguồn về lập trình an toàn – bộ công cụ khởi đầu
- Cơ sở dữ liệu lỗ hổng
- Hướng dẫn lập trình an toàn .NET trên MSDN
- Các bảng tra nhanh lập trình an toàn .NET
- Sách được đề xuất – .NET và ASP.NET
14 Giờ
Đánh giá (3)
Kinh nghiệm chia sẻ, đó là kiến thức và sự quý giá của người thầy.
Carey Fan - Logitech
Khóa học - C/C++ Secure Coding
Dịch thuật bằng máy
kiến thức của người huấn luyện rất cao - ông ấy biết rõ về nội dung đang nói và có thể trả lời các câu hỏi của chúng tôi
Adam - Fireup.PRO
Khóa học - Advanced Java Security
Dịch thuật bằng máy
Chủ đề đang cập nhật và tôi cần được cập nhật
Damilano Marco - SIAP s.r.l.
Khóa học - Secure Developer Java (Inc OWASP)
Dịch thuật bằng máy