inflearn logo

Thực hành bảo mật máy chủ dành cho lập trình viên backend: Từ phòng chống hack đến ngăn chặn rò rỉ thông tin

Nếu bạn phụ trách máy chủ nhưng không biết nên bắt đầu bảo mật từ đâu, hãy quan sát trực tiếp luồng tấn công và tự mình ngăn chặn từng bước trên máy chủ cũng như trong mã Spring·Express. Hoàn thành qua 54 bài thực hành, từ tăng cường bảo mật SSH đến phòng chống injection, xác thực, ngăn rò rỉ thông tin và ứng phó sự cố.

1 học viên đang tham gia khóa học này

Độ khó Cơ bản

Thời gian Không giới hạn

security training
security training
Linux
Linux
Spring Security
Spring Security
owasp
owasp
Express
Express
security training
security training
Linux
Linux
Spring Security
Spring Security
owasp
owasp
Express
Express

Bạn sẽ nhận được điều này sau khi học.

  • Khả năng hardening máy chủ của tôi đang mở trên Internet bằng xác thực khóa SSH, tự động vá lỗi, tường lửa và nhật ký tập trung

  • Khả năng trực tiếp tái hiện các cuộc tấn công SQL·NoSQL Injection, SSRF, tải tệp lên và ngăn chặn chúng bằng mã Spring·Express

  • Khả năng thiết kế an toàn session, JWT, OAuth(PKCE), passkey và tìm, khắc phục các lỗ hổng phân quyền như IDOR

  • Tiêu chuẩn phát triển ngăn ngừa rò rỉ thông tin cá nhân bằng Secret, mã hóa KMS, che giấu nhật ký và sao lưu

  • Kiểm thử tái hiện tấn công và kiểm tra bảo mật CI (SAST·SCA·DAST) để ngăn các lỗ hổng đã được khắc phục tái xuất hiện

  • Quy trình ứng phó trong giờ đầu tiên khi xảy ra sự cố xâm phạm và quy trình vận hành để cập nhật các lỗ hổng đang bị khai thác (KEV) trong vòng 72 giờ

  • Checklist theo từng bài học · Tổng hợp lệnh · Hướng dẫn thực hành theo từng bước, kho lưu trữ các ví dụ chạy được ngay lập tức

Tôi được giao phụ trách máy chủ, vậy nên bắt đầu bảo mật từ đâu?


Mở nhật ký ra, tôi thấy hàng nghìn lần thử đăng nhập từ những địa chỉ IP chưa từng thấy. Trong báo cáo kiểm tra bảo mật, hàng loạt mục như "Có khả năng bị SQL injection", "Mở các cổng không cần thiết" được liệt kê, nhưng chẳng ai nói chính xác tôi phải sửa dòng nào trong mã nguồn của mình.


Khóa học này biến sự mơ hồ đó thành 54 bài thực hành theo một trình tự rõ ràng. Bạn sẽ tận mắt quan sát luồng tấn công diễn ra, trực tiếp ngăn chặn từng vấn đề trên máy chủ và trong mã Spring·Express của mình, rồi lưu lại bằng các bài kiểm thử để chứng minh rằng chúng đã được chặn.


- Tôi mới phụ trách máy chủ nên không biết phải bắt đầu với SSH, tường lửa và việc vá lỗi từ đâu.

- Các khóa học về hack web đứng ở góc nhìn của kẻ tấn công nên khó áp dụng ngay cho dịch vụ của tôi

- Không biết phải khắc phục các vấn đề được chỉ ra trong quá trình kiểm tra bảo mật và ISMS-P từ phía phát triển như thế nào

- Khi xảy ra sự cố, không biết nên bắt đầu từ đâu và phải báo cáo trong thời hạn nào

Nếu bạn thuộc dù chỉ một trường hợp, khóa học này sẽ bắt đầu ngay từ điểm đó.


Tại sao an ninh máy chủ lại quan trọng ngay lúc này?

Vào tháng 8 năm 2025, một sự cố hack thẻ SIM của nhà mạng đã bị phạt 134,79 tỷ won, còn vào tháng 6 năm 2026, một sự cố thương mại làm rò rỉ thông tin cá nhân của khoảng 37,5 triệu người đã bị phạt 624,681 tỷ won (bao gồm cả các vi phạm liên quan).

Luật Bảo vệ Thông tin Cá nhân sửa đổi, có hiệu lực từ ngày 11 tháng 9 năm 2026, ngoài mức trần theo nguyên tắc (3% tổng doanh thu) còn cho phép áp dụng mức phạt lên đến 10% đối với các vi phạm nghiêm trọng hoặc tái diễn. Nếu được công nhận là đã đầu tư trước vào các biện pháp bảo vệ, mức phạt sẽ được giảm tối đa 40% (không áp dụng trong trường hợp cố ý hoặc sơ suất nghiêm trọng). Nghĩa vụ thông báo cũng được bổ sung, theo đó phải thông báo ngay cả khi chỉ xác nhận được khả năng xảy ra rò rỉ.

Tuy nhiên, phần lớn sự cố nghiêm trọng cũng bắt đầu từ những sơ hở cơ bản. SSH được mở bằng mật khẩu, dịch vụ cập nhật bản vá chậm trễ, các cổng mở không cần thiết, đoạn mã gắn trực tiếp dữ liệu đầu vào vào truy vấn, các khóa còn lưu lại trong kho mã nguồn. Khóa học này hướng dẫn cách để chính các nhà phát triển backend khắc phục những điểm cơ bản đó.


Đặc điểm của khóa học này

1. Quan sát luồng tấn công bằng mắt thường

Trong mỗi bài học về xử lý tấn công, mọi thứ sẽ diễn ra theo từng bước trên cùng một sơ đồ: yêu cầu bình thường → bắt đầu tấn công → phát sinh thiệt hại → áp dụng biện pháp phòng thủ → cuộc tấn công tương tự thất bại. Bạn có thể thấy ngay lập tức cuộc tấn công đã xuyên qua ở đâu và bị chặn lại ở đâu.


2. So sánh Spring và Express song song

So sánh song song mã dễ bị tấn công và mã đã được sửa để thấy Spring Security bật sẵn các giá trị mặc định bảo mật (Spring Boot 4) và Express 5, nơi bạn tự lắp ráp các middleware cần thiết, ứng phó khác nhau như thế nào trước cùng một cuộc tấn công.


3. Kho lưu trữ ví dụ có thể làm theo đúng như trong video

Trong kho lưu trữ ví dụ trên GitHub có cả mã trước khi sửa (/lab), nơi cuộc tấn công có thể thực hiện được, và mã đã được sửa (/api). Bạn có thể tái hiện cuộc tấn công giống như trong video trên máy tính của mình, đồng thời trực tiếp xác nhận rằng cùng một yêu cầu bị chặn ở mã đã sửa. Các lệnh trong video đã được chạy thử và kiểm chứng trên thực tế.


4. Máy chủ và mã nguồn trong cùng một khóa học

Từ hardening máy chủ như SSH·patch·tường lửa·log·tiêu chuẩn hệ điều hành·nginx đến bảo mật ứng dụng như injection·xác thực·API·bảo vệ dữ liệu, rồi tiếp nối đến kiểm tra lỗ hổng·chuỗi cung ứng·container·Kubernetes·đám mây·ứng phó sự cố bảo mật — khóa học bao quát nguyên vẹn phạm vi công việc mà một nhà phát triển backend thực sự đảm nhiệm.


5. Dùng kiểm thử để chứng minh rằng đã ngăn chặn được漏洞

Tạo các bài kiểm thử tái hiện cuộc tấn công (JUnit·MockMvc, Jest·supertest) và tích hợp chúng vào CI để nếu cùng một lỗ hổng xuất hiện trở lại do tái cấu trúc, nó sẽ được phát hiện trước khi hợp nhất. Đồng thời, khóa học cũng hướng dẫn cách tích hợp SAST·SCA·DAST vào PR và môi trường staging.


6. Danh sách kiểm tra có thể sử dụng ngay và thói quen vận hành

Mọi bài học đều kết thúc bằng một checklist, và trong bài học cuối cùng, bạn sẽ đánh giá mức độ hiện tại của dịch vụ theo bốn cấp độ: cơ bản, trung cấp, nâng cao và vận hành. Bạn cũng sẽ xây dựng quy trình vận hành để phản ánh các lỗ hổng đang bị khai thác trên thực tế (KEV) trong vòng 72 giờ, cùng với cả script đối chiếu tự động.


Tổng quan chương trình học

Gồm 8 phần, 54 bài học, tổng thời lượng 5 giờ 9 phút. Mỗi bài kéo dài từ 3–8 phút, vừa đủ để theo dõi trọn vẹn một chủ đề mà không bị gián đoạn.

- 0. Định hướng (22 phút): Các con đường tấn công trong những vụ rò rỉ dữ liệu gần đây, Luật Bảo vệ Thông tin Cá nhân sửa đổi, mô hình hóa mối đe dọa, môi trường thực hành

- 1. Tăng cường bảo mật máy chủ (48 phút): Xác thực bằng khóa SSH, tài khoản·sudo, tự động hóa việc vá lỗi, tường lửa, nhật ký, tăng cường bảo mật theo tiêu chuẩn hệ điều hành, nginx, webshell PHP

- 2. Hãy nghi ngờ mọi đầu vào (43 phút): Bản đồ OWASP, xác thực đầu vào, SQL·NoSQL injection, command injection·thao túng đường dẫn, tải tệp lên, SSRF, giải tuần tự hóa, kiểm thử tái hiện cuộc tấn công

- 3. Xác thực và phân quyền (40 phút): Lưu trữ mật khẩu, phiên vs JWT, OAuth·OIDC, IDOR·BOLA, tấn công vét cạn, MFA·passkey, kiểm thử phân quyền

- 4. Bảo mật API (27 phút): Mass assignment và kiểm tra xác thực backend di động, XSS·CSP, chữ ký webhook, Rate limiting·khóa idempotency, CORS·CSRF

- 5. Bảo vệ dữ liệu và ngăn chặn rò rỉ thông tin (41 phút): TLS, mã hóa KMS, quản lý secret, tiêu chuẩn phát triển bảo vệ thông tin cá nhân, kiểm soát egress, sao lưu, tái dựng sự cố rò rỉ dữ liệu

- 6. Phát hiện·chuỗi cung ứng·đám mây·ứng phó sự cố (1 giờ 7 phút): Kiểm tra lỗ hổng, phát hiện bất thường·tự động chặn, SAST·SCA·DAST, chuỗi cung ứng, container·Kubernetes, IAM đám mây, săn lùng mối đe dọa, ứng phó và báo cáo sự cố xâm nhập

- 7. Vận hành (22 phút): Đăng ký nguồn thông tin bảo mật (KISA·CVE·KEV·EPSS), quy trình cập nhật trong 72 giờ, tập lệnh tự động đối chiếu KEV, chẩn đoán cấp độ


Tài liệu học viên

- Kho lưu trữ ví dụ (GitHub): Dịch vụ mẫu Spring Boot 4·Java 25 / Express 5·Node 24 (bảng tin·tải tệp lên·webhook thanh toán·đăng nhập). Bao gồm mã trước khi sửa, mã đã sửa, các bài kiểm thử tái hiện cuộc tấn công và tập lệnh vận hành.

- Hướng dẫn thực hành theo từng bước (PDF): Chuyển các lệnh trong video thành các lệnh dùng trên PC và máy ảo thực hành của bạn, hướng dẫn theo từng bước. Bao gồm kết quả dự kiến, các điểm cần kiểm tra và những chỗ thường gặp khó khăn.

- Danh sách kiểm tra theo từng bài học (PDF): 8 quyển theo từng phần + bản tổng hợp đầy đủ, ở đầu có danh sách kiểm tra đánh giá cấp độ

- Tra cứu nhanh lệnh (PDF): Các lệnh xuất hiện trong video theo thứ tự bài học

- Tài liệu tóm tắt (PDF): Tổng hợp những nội dung cốt lõi theo từng bài học, nội dung bài giảng, mã nguồn và cấu hình

- Câu đố giữa các phần (PDF): 37 câu hỏi, bao gồm đáp án và phần giải thích


Vui lòng kiểm tra trước khi tham gia khóa học

- Kiến thức nền tảng: Có kinh nghiệm sử dụng các lệnh cơ bản trong terminal Linux và từng tạo API đơn giản bằng Spring Boot hoặc Express. Nếu có kinh nghiệm với Docker (Compose) thì càng tốt.

- Môi trường thực hành: Một máy tính có thể chạy Docker và máy chủ ảo dùng để thực hành (Ubuntu 24.04, dòng RHEL 9, mỗi máy khoảng 2 lõi CPU và 4GB RAM). Cách chuẩn bị sẽ được hướng dẫn trong bài học 0-5. Không cần có tài khoản AWS; một số bài thực hành trên đám mây chỉ có thể thực hiện tùy chọn khi bạn có tài khoản.

- Thực hành an toàn: Mã trước khi chỉnh sửa trong ví dụ là mã được cố ý tạo ra lỗ hổng. Chỉ chạy trên máy tính cá nhân hoặc máy chủ thực hành do bạn quản lý. Việc thử nghiệm các cuộc tấn công trong bài học lên hệ thống chưa được cấp phép là bất hợp pháp.

- Nội dung liên quan đến pháp luật: Luật bảo vệ thông tin cá nhân và nghĩa vụ báo cáo được giải thích trong phạm vi mà nhà phát triển cần biết. Đây không phải là tư vấn pháp lý; trước khi áp dụng, hãy kiểm tra văn bản gốc của các luật và thông báo mới nhất.

- Giọng nói AI: Phần thuyết minh của khóa học này được tạo bằng giọng nói AI. Màn hình, kịch bản và mã ví dụ do người chia sẻ kiến thức trực tiếp thiết kế và kiểm chứng bằng cách chạy thực tế.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Là một lập trình viên backend vừa được giao phụ trách máy chủ nhưng không biết nên bắt đầu từ SSH, tường lửa hay bản vá.

  • Nhà phát triển bị nhắc nhở trong quá trình kiểm tra bảo mật và ISMS-P nhưng không biết cần sửa chỗ nào trong mã nguồn của mình

  • Những người đã học khóa học về hack web nhưng vì chỉ tiếp cận từ góc nhìn của kẻ tấn công nên chưa thể áp dụng vào dịch vụ Spring·Express của mình

  • Dành cho những ai lo lắng không biết phải làm sao nếu xảy ra sự cố khi một mình phụ trách cơ sở hạ tầng và backend trong startup hoặc đội nhóm nhỏ.

  • Những người không biết với tư cách là nhà phát triển thì nên chuẩn bị gì trước tiên cho Luật Bảo vệ thông tin cá nhân sửa đổi và việc thông báo rò rỉ trong vòng 72 giờ

Cần biết trước khi bắt đầu?

  • Bạn cần có khả năng sử dụng các lệnh cơ bản trong terminal Linux (cd, ls, sudo, trình soạn thảo).

  • Cần có kinh nghiệm tạo một API đơn giản bằng Spring Boot hoặc Express.

  • Sẽ tốt nếu bạn có kinh nghiệm khởi chạy container bằng Docker (Compose).

Xin chào
Đây là brunoleebi8302

Xác minh sự nghiệp

Trong thời kỳ Y2K đầy biến động của ngành CNTT, tôi bắt đầu sự nghiệp với vai trò nhà phát triển máy chủ. Sau đó, tại các hiện trường thuộc nhiều ngành nghề khác nhau, tôi đảm nhiệm đan xen vai trò nhà phát triển và kỹ sư hạ tầng, trực tiếp lĩnh hội mọi thứ từ nền tảng công nghệ đến hệ sinh thái hạ tầng phức tạp. Dựa trên kinh nghiệm xây dựng và tinh chỉnh vô số hệ thống, gần đây tôi đang tạo ra những giá trị mới trong lĩnh vực an ninh CNTT và công nghệ hội tụ.
Thêm

Chương trình giảng dạy

Tất cả

54 bài giảng ∙ (5giờ 6phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Chưa có đủ đánh giá.
Hãy trở thành tác giả của một đánh giá giúp mọi người!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!

Ưu đãi có thời hạn

19.800 ₫

70%

1.375.899 ₫