Đề cương khóa học

Ngày 1

  • Bảo mật IT và mã hóa an toàn
    • Tính 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 về rủi ro
    • Các khía cạnh khác nhau của bảo mật IT
    • Nhu cầu của các lĩnh vực ứng dụng khác nhau
    • Bảo mật IT so với mã hóa an toàn
    • Từ lỗ hổng đến botnet và tội phạm mạng
      • Tính chất của lỗi bảo mật
      • Lý do 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
      • Bộ phân loại của Landwehr
      • Bảy Vương quốc Pernicious
      • OWASP Top Ten 2013
      • OWASP So sánh Top Ten từ 2003 đến 2013
  • Giới thiệu về Microsoft® Security Development Lifecycle (SDL)
    • Bản trình bày
    • Các ứng dụng đang bị tấn công...
      • Phát triển tội phạm mạng
      • Tấn công tập trung vào các ứng dụng
      • Hầu hết lỗi là trong các ứng dụng ISV nhỏ hơn
    • Nguồn gốc của Microsoft SDL...
      • Lịch sử bảo mật tại Microsoft...
      • Các ứng dụng nào cần tuân theo SDL?
    • Microsoft Security Development Lifecycle (SDL)
      • Microsoft Security Development Lifecycle (SDL)
      • Yêu cầu trước 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 nhận
      • Giai đoạn Năm: Phát hành – Kế hoạch phản hồi
      • Giai đoạn Năm: Phát hành – Kiểm tra bảo mật cuối cùng
      • Giai đoạn Năm: Phát hành – Lưu trữ
      • Yêu cầu sau SDL: Phản hồi
      • Hướng dẫn quá trình SDL cho các ứng dụng LOB
      • Hướng dẫn SDL cho Agile Methodologies
      • Piển phát phần mềm an toàn yêu cầu cải tiến quy trình
  • Nguyên tắc thiết kế an toàn
    • Mặt phẳng tấn công
      • Giảm thiểu mặt phẳng tấn công
      • Ví dụ về mặt phẳng tấn công
      • Phân tích mặt phẳng tấn công
      • Giảm thiểu mặt phẳng tấn công – ví dụ
    • Quyền riêng tư
      • Quyền riêng tư
      • Hiểu ứng dụng hành vi và mối quan tâm
    • Bảo vệ nhiều lớp
      • Nguyên tắc cơ bản của SDL: Bảo vệ Nhiều Lớp
      • Bảo vệ nhiều lớp – ví dụ
    • Nguyên tắc quyền hạn tối thiểu
      • Ví dụ về quyền hạn tối thiểu
    • Mặc định an toàn
      • Ví dụ về mặc định an toàn
  • Nguyên tắc triển khai an toàn
    • Bản trình bày
    • Microsoft Security Development Lifecycle (SDL)
    • Cơ bản về tràn bộ đệm
      • Chuẩn 80x86 của Intel – các đăng ký chính
      • Sắp xếp địa chỉ bộ nhớ
      • Mechanism 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ố trí ngăn xếp
        • Bài tập BOFIntro – một khai thác đơn giản
    • Đề phòng đầu vào
      • Các khái niệm về kiểm tra đầu vào
      • Vấn đề số nguyên
        • Biểu diễn các số nguyên âm
        • Tàn số nguyên
        • Tàn số học – đoán kết quả!
        • Bài tập IntOverflow
        • Giá trị của Math.Abs(int.MinValue) là gì?
      • Cải thiện vấn đề số nguyên
        • Cải thiện vấn đề số nguyên
        • Tránh tràn số học – cộng
        • Tránh tràn số học – nhân
        • Detecting overflow with the checked keyword in C#
        • Bài tập – Sử dụng từ khóa checked trong C#
        • Lỗi được kích hoạt bởi tràn số trong C#
      • Ví dụ về vấn đề tàn số nguyên trong .NET
        • Một lỗi tàn số nguyên thực tế
        • Khai thác lỗ hổng tàn số nguyên
      • Lỗ hổng duyệt đường dẫn
        • Giảm thiểu lỗ hổng duyệt đường dẫn

Ngày 2

  • Nguyên tắc triển khai an toàn
    • Tích hợp
      • Các phương pháp tấn công tích hợp thông thường SQL
      • Tích hợp mù và dựa trên thời gian SQL
      • Các phương pháp bảo vệ tích hợp SQL
      • Tích hợp lệnh
    • Đăng nhập bị hỏng - quản lý mật khẩu
      • Bài tập – Đánh giá độ yếu của mật khẩu được mã hóa
      • Quản lý và lưu trữ mật khẩu
      • Các thuật toán băm đặc biệt cho việc lưu trữ mật khẩu
    • XSS (Cross-Site Scripting)
      • Cross-Site Scripting (XSS)
      • CSS tích hợp
      • Khai thác: tích hợp thông qua các thẻ HTML khác
      • Phòng ngừa XSS
    • Truy cập cấp độ chức năng bị thiếu
      • Lọc tải tệp tin
    • Cryptography thực tế
      • Cung cấp bí mật với mã hóa đối xứng
      • Các thuật toán mã hóa đối xứng
      • Máy mã hóa khối – các chế độ hoạt động
      • Hash hoặc bản tóm tắt tin nhắn
      • Thuật toán hash
      • Tin nhắn xác thực (MAC)
      • Cung cấp tính chính xác và tính hợp pháp với khóa đối xứng
      • Cung cấp bí mật với mã hóa khóa công khai
      • Nghị quyết cơ bản – sở hữu khóa cá nhân
      • Sai lầm thông thường trong quản lý mật khẩu
      • Bài tập – Mật khẩu được viết cố định
      • Kết luận
  • Nguyên tắc xác minh an toàn
    • Thử nghiệm chức năng so với thử nghiệm bảo mật
    • Lỗ hổng bảo mật
    • Sắp xếp ưu tiên
    • Thử nghiệm bảo mật trong vòng đời phát triển phần mềm (SDLC)
    • Bước của kế hoạch thử nghiệm (phân tích rủi ro)
    • Xác định phạm vi và thu thập thông tin
      • Những người liên quan
      • Tài sản
      • Mặt phẳng tấn công
      • Các mục tiêu bảo mật cho thử nghiệm
    • Lập mô hình mối đe dọa
      • Lập mô hình mối đe dọa
      • Profil người tấn công
      • Lập mô hình mối đe dọa dựa trên cây tấn công
      • Lập mô hình mối đe dọa dựa trên trường hợp lạm dụng/misuse
      • Các trường hợp lạm dụng – một ví dụ đơn giản về cửa hàng web
      • Phương pháp tiếp cận STRIDE theo từng phần tử - MS SDL
      • Xác định mục tiêu bảo mật
      • Vẽ sơ đồ – ví dụ về các yếu tố DFD
      • Bản vẽ biểu đồ dòng dữ liệu – ví dụ
      • Đánh số mối đe dọa – STRIDE và các phần tử của MS SDL DFD
      • Phân tích rủi ro – phân loại mối đe dọa
      • Các mô hình đánh giá mối đe dọa/risk – DREAD
    • Công cụ và kỹ thuật thử nghiệm bảo mật
      • Các phương pháp tiếp cận kiểm tra chung
      • Kỹ thuật cho các bước khác nhau của vòng đời phát triển phần mềm (SDLC)
    • Đánh giá mã nguồn
      • Đánh giá mã nguồn cho bảo mật phần mềm
      • Taint analysis
      • Hướng dẫn heuristics
    • Kiểm tra tĩnh về mã nguồn
      • Kiểm tra tĩnh về mã nguồn
      • Kiểm tra tĩnh về mã nguồn
      • Bài tập – Sử dụng công cụ kiểm tra tĩnh về mã nguồn
    • Thử nghiệm triển khai
      • Xác nhận chạy thủ công
      • Thử nghiệm bảo mật thủ công so với tự động hóa
      • Các cuộc tấn công đột nhập (Penetration testing)
      • Các bài kiểm tra stress
    • Fuzzing
      • Thử nghiệm an toàn tự động - fuzzing
      • Kiểm thử tự động với fuzzing gặp phải các thách thức gì?
    • Dò tìm lỗ hổng web
      • Bài tập – Sử dụng công cụ dò tìm lỗ hổng
    • Phân tích và tăng cường môi trường
      • Công nghệ chấm điểm mối đe dọa chung - CVSS
      • Các công cụ dò tìm lỗ hổng
      • Các cơ sở dữ liệu công cộng
    • Ví dụ về việc đi quanh xác thực biểu mẫu
      • Lỗi chấm dừng byte NULL
      • Lỗ hổng Bypass xác thực biểu mẫu trong mã
      • Khai thác Lỗ hổng xác thực biểu mẫu Bypass
  • Nguồn kiến thức
    • Các nguồn mã hóa an toàn – bộ công cụ khởi đầu
    • Cơ sở dữ liệu lỗ hổng
    • Hướng dẫn mã hóa an toàn .NET trên MSDN
    • Bộ lưu đồ nhanh về mã hóa an toàn .NET
    • Sách được khuyên đọc – .NET và ASP.NET
 14 Hours

Number of participants


Price per participant

Testimonials (5)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories