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
1. Bảo mật IT và lập trình an toàn
- Các nguyên tắc bảo mật cơ bản: Tính bảo mật, toàn vẹn và khả dụng (CIA) trong bối cảnh ứng dụng Java.
- Vòng đời phát triển phần mềm an toàn (SSDLC): Tích hợp bảo mật từ yêu cầu đến triển khai.
- Các mô hình lập trình an toàn: Phòng thủ theo chiều sâu, đặc quyền tối thiểu và mặc định an toàn khi gặp lỗi.
- Các phân loại lỗ hổng tiêu chuẩn: Hiểu CWE (Common Weakness Enumeration) và OWASP.
2. Bảo mật ứng dụng web
- Đi sâu vào OWASP Top Ten: Phân tích chi tiết về Chèn mã (Injection), Xác thực bị lỗi và R exposure dữ liệu nhạy cảm.
- Tấn công kịch bản mã hóa qua máy chủ (XSS): Các kịch bản XSS phản chiếu, lưu trữ và dựa trên DOM trong Java/JSP.
- Tấn công giả mạo yêu cầu liên trang (CSRF): Cơ chế tấn công và triển khai token chống CSRF.
- Quản lý phiên: Bảo mật cookie, cố định phiên và quản lý thời gian chờ.
- Bảo mật API: Bảo vệ các điểm cuối REST và SOAP khỏi bị lạm dụng.
3. Bảo mật dịch vụ web
- Dịch vụ web so với ứng dụng web truyền thống: Sự khác biệt về bề mặt tấn công.
- Bảo mật lớp vận chuyển: Cấu hình SSL/TLS cho các máy khách và máy chủ Java.
- Bảo mật tin nhắn: Toàn vẹn và bảo mật ở mức tải trọng.
- Các tiêu chuẩn xác thực: OAuth 2.0, OpenID Connect và triển khai JWT (JSON Web Tokens).
4. Bảo mật XML
- Các lỗ hổng phân tích cú pháp XML: Ngăn chặn tấn công Thực thể bên ngoài XML (XXE).
- Xác thực lược đồ XML: Các thực hành tốt nhất để thực thi lược đồ nghiêm ngặt.
- Chữ ký số XML: Triển khai chữ ký để đảm bảo tính không thoái thác.
- Mã hóa XML: Các phương pháp tiếp cận tiêu chuẩn để mã hóa nội dung XML.
5. Nền tảng bảo mật Java
- Kiến trúc bảo mật Java: Gói
java.securityvà kiến trúc nhà cung cấp. - Nhà cung cấp bảo mật: Cài đặt và cấu hình các nhà cung cấp như Bouncy Castle.
- Điều khiển truy cập: Các tệp chính sách, Phân quyền và Quản lý Bảo mật (Cổ điển vs. Hiện đại).
- Quản lý Kho khóa: Tạo và quản lý kho khóa (keystores) và kho tin cậy (truststores) cho chứng thư số.
6. Mật mã học thực tiễn
- Các thuật toán mật mã: Tổng quan về các thuật toán Đối xứng (AES), Bất đối xứng (RSA, ECC) và Mã hóa một chiều (SHA-256/512).
- Sinh số ngẫu nhiên: Những nguy hiểm của
java.util.Randomso vớijava.security.SecureRandom. - Quản lý khóa: Các chiến lược tạo khóa, lưu trữ và xoay vòng khóa.
- Kiến trúc Mật mã Java (JCA): Sử dụng các lớp
Cipher,MessageDigestvàMac. - Phần mở rộng Mật mã Java (JCE): Hiểu các tệp chính sách và quyền hạn sức mạnh không giới hạn.
7. Các dịch vụ bảo mật Java
- SSL/TLS trong Java: Sử dụng
SSLSocketFactoryvàHttpsURLConnection. - Quản lý tin cậy: Tùy chỉnh xác minh tin cậy cho môi trường PKI nội bộ.
- Trình xác thực: Xác thực lập trình bằng
Authenticator.getDefault(). - Phân tích chứng thư số: Đọc và phân tích các chứng thư số X.509 theo chương trình.
8. Bảo mật Java EE
- Bảo mật khai báo: Điều khiển truy cập dựa trên vai trò (RBAC) sử dụng
web.xmlvà chú thích (annotations). - Bảo mật lập trình: Sử dụng
HttpServletRequest.isUserInRole()vàgetRemoteUser(). - JAAS (Dịch vụ Xác thực và Ủy quyền Java): Cấu hình
login.confvà triển khaiLoginModule. - Bảo mật Servlet: Các ràng buộc bảo mật do vùng chứa quản lý và các phương thức xác thực (FORM, BASIC, DIGEST).
9. Lỗi và lỗ hổng lập trình phổ biến
- Giải đối tượng không an toàn: Những rủi ro của
ObjectInputStreamvà việc bỏ qua các kiểm tra bảo mật. - Chèn lệnh: Giảm thiểu lỗ hổng thực thi ở cấp độ hệ điều hành.
- Duyệt qua đường dẫn: Làm sạch các đầu vào của hệ thống tệp để ngăn chặn duyệt thư mục.
- Lạm dụng phản chiếu: Các rủi ro liên quan đến
java.lang.reflectvà việc bỏ qua điều khiển truy cập. - Tên người dùng và mật khẩu cứng: Nhận diện và loại bỏ các dữ liệu bí mật khỏi mã nguồn.
- Lỗi triển khai mật mã: Sử dụng chế độ ECB, khóa yếu hoặc IV tĩnh.
10. Nguồn kiến thức
- Công cụ phân tích tĩnh: Sử dụng SonarQube, Checkmarx và Fortify cho việc quét tự động.
- Công cụ phân tích động: Tổng quan về Burp Suite và OWASP ZAP.
- Cơ sở dữ liệu CVE: Cách theo dõi và phản ứng với các lỗ hổng mới trong khung công tác Java.
- Tài liệu khuyến nghị: Danh sách các sách, tài liệu hướng dẫn và danh sách kiểm tra lập trình an toàn.
Yêu cầu
Không yêu cầu
21 Giờ
Đánh giá (4)
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
Bài tập thực hành
Olek - Fireup.PRO
Khóa học - Advanced Java Security
Dịch thuật bằng máy
bài tập lập trình
Mirek - Fireup.PRO
Khóa học - Advanced Java Security
Dịch thuật bằng máy
Nó mở rộng rất nhiều và cung cấp nhiều thông tin về bảo mật
Nolbabalo Tshotsho - Vodacom SA
Khóa học - Advanced Java Security
Dịch thuật bằng máy