Bài 20. Threat vector từ chuỗi cung ứng: nhà cung cấp, MSP, SaaS provider
Khóa học CompTIA Security+ SY0-801 · Phần 2: Mối đe dọa, lỗ hổng và tấn công · Bài 20 · 🎯 Objective 2.3 · ⏱️ Đọc khoảng 13 phút · 🧪 Không cần lab · 📝 5 câu bài tập cuối bài
🎯 Mục tiêu bài học
- Giải thích tấn công chuỗi cung ứng (supply chain attack) và vì sao nó hiệu quả.
- Phân biệt rủi ro từ nhà cung cấp phần mềm, phần cứng, MSP và SaaS.
- Biết các biện pháp kỹ thuật: xác minh bản cập nhật, SBOM, quyền tối thiểu cho nhà cung cấp.
- Hiểu vòng đời quản lý rủi ro bên thứ ba: trước, trong và sau khi hợp tác.
📎 Vị trí trong đề thi: Bài 18 và Bài 19 nói về các đường tới người dùng và thiết bị. Bài này nói về đường tới tổ chức thông qua bên thứ ba. Đề thi thường hỏi vì sao tấn công chuỗi cung ứng nguy hiểm và nên quản lý nhà cung cấp thế nào.
💡 Liên hệ thực tế: một thông báo từ nhà cung cấp
Thứ Hai, 08:20. Công ty chị Lan nhận email từ nhà cung cấp phần mềm kế toán: "Hệ thống phát hành bản cập nhật của chúng tôi bị truy cập trái phép. Bản 4.2.1 phát hành tuần trước có thể chứa mã lạ. Vui lòng gỡ bản này và cài bản 4.2.2." Đây là tình huống minh họa, không phải vụ việc có thật.
Chị Lan hỏi: "Máy mình có bị ai tấn công đâu, sao lại liên quan?" Nam giải thích: kẻ tấn công không cần đánh vào công ty chị, họ đánh vào nơi phát hành bản cập nhật. Công ty chị tự tải và cài vì tin vào nhà cung cấp.
Nam rà ra ba mối quan hệ cần xem xét:
| Mối quan hệ | Họ chạm được gì | Nam kiểm tra |
|---|---|---|
| Nhà cung cấp phần mềm kế toán | Mã chạy trên máy kế toán qua bản cập nhật | Máy nào đã cài 4.2.1, so hash tệp cài đặt với giá trị nhà cung cấp công bố, cô lập các máy đó |
| Công ty thuê ngoài quản trị CNTT (MSP) | Quyền quản trị từ xa tới máy chủ | Tài khoản của họ có MFA không, quyền rộng đến đâu |
| Dịch vụ tính lương trên đám mây (SaaS) | Dữ liệu lương nhân viên nằm ở bên họ | Những ứng dụng nào được cấp quyền, nhật ký đăng nhập có gì lạ không |
Ba mối quan hệ này đều là kênh tin cậy: mã hoặc quyền truy cập đi vào bằng con đường hợp pháp. Vì vậy chúng nằm ngoài tầm lọc của tường lửa và bộ lọc thư thông thường.
🔗 Hình 20a. Nhà cung cấp thường là mắt xích yếu nhất trong chuỗi, nên là lối vào dễ nhất.
📘 Kiến thức cốt lõi
🔗 Chuỗi cung ứng là gì?
Chuỗi cung ứng (supply chain) gồm mọi bên cung cấp cho tổ chức: phần cứng, phần mềm, dịch vụ, nhân sự và dữ liệu. Mỗi nhà cung cấp là một mắt xích. Nếu một mắt xích bị phá, các mắt xích liền kề cũng bị ảnh hưởng.
Tấn công chuỗi cung ứng nhắm vào nhà cung cấp, thường là bên có phòng thủ yếu hơn, để tiếp cận khách hàng của họ. Nhóm tấn công có nguồn lực lớn, như nation-state ở Bài 16, rất hay dùng cách này.
Vì sao hiệu quả?
- Tin cậy ngầm: khách hàng tin nhà cung cấp, nên mã hay quyền truy cập từ họ ít bị nghi ngờ. Điều này trái với nguyên tắc Zero Trust ở Bài 6.
- Một tác động, nhiều nạn nhân: xâm nhập một nhà cung cấp có thể chạm tới hàng trăm hay hàng nghìn khách hàng cùng lúc.
- Quyền cao sẵn có: nhà cung cấp thường được cấp quyền rộng để làm việc.
🧰 Bốn kiểu quan hệ thường gặp
| Kiểu | Họ chạm được gì | Kẻ tấn công lợi dụng thế nào |
|---|---|---|
| Nhà cung cấp phần mềm | Mã chạy trong hệ thống của bạn | Chèn mã lạ vào bản cập nhật, hoặc vào thư viện mã nguồn mở mà phần mềm sử dụng. Có thể dùng gói giả tên (typosquatting) để dụ nhà phát triển cài nhầm |
| Nhà cung cấp phần cứng | Thiết bị và phần sụn (firmware) | Thiết bị giả mạo, hoặc bị can thiệp trên đường vận chuyển, trước khi tới tay bạn |
| MSP (Managed Service Provider) | Quyền quản trị từ xa tới nhiều khách hàng | Chiếm công cụ quản trị của MSP để đi vào từng khách hàng. Nhà cung cấp dịch vụ giám sát bảo mật (MSSP) cũng có rủi ro tương tự |
| SaaS provider | Dữ liệu và tích hợp nằm ở phía nhà cung cấp | Xâm nhập nhà cung cấp để tiếp cận dữ liệu nhiều khách hàng, hoặc lạm dụng quyền của các ứng dụng tích hợp |
Ngoài ra còn có nhà thầu và đối tác có kết nối trực tiếp vào mạng, ví dụ đơn vị bảo trì thiết bị được cấp VPN. Nếu tài khoản của họ bị lộ thì kẻ tấn công đi vào qua cửa đó.
💾 Chuỗi cung ứng phần mềm
Phần mềm hiện đại ghép từ rất nhiều thành phần, nhiều thứ do bên khác viết. Để giảm rủi ro:
- Xác minh bản cập nhật: so sánh hash hoặc kiểm tra chữ ký số của nhà cung cấp, như đã học ở Bài 10. Nếu hash không khớp, tệp đã bị thay đổi.
- Chỉ tải từ nguồn chính thức và kênh phát hành đã được xác thực.
- SBOM (Software Bill of Materials): danh mục các thành phần cấu tạo nên phần mềm. Khi một thư viện bị phát hiện lỗ hổng, SBOM giúp bạn biết phần mềm nào đang dùng nó.
- Vá có kiểm soát: thử bản cập nhật ở một nhóm nhỏ trước khi triển khai rộng, theo quy trình quản lý thay đổi ở Bài 7.
Lưu ý: chữ ký số chỉ chứng minh bản cập nhật do bên giữ khóa ký phát hành. Nếu chính hệ thống ký của nhà cung cấp bị chiếm, bản độc hại vẫn được ký hợp lệ. Vì thế cần thêm giám sát và phân đoạn sau khi cài.
🛠️ MSP và SaaS: quyền và dữ liệu nằm ở bên ngoài
MSP có quyền quản trị tới nhiều khách hàng, nên bản thân MSP là mục tiêu giá trị. Kiểm soát nên dùng:
- Tài khoản riêng cho từng người của MSP, bật MFA, không dùng chung.
- Quyền tối thiểu và có thời hạn (Bài 5), chỉ đủ cho việc đang làm.
- Phân đoạn mạng để đường truy cập của MSP không đi tới mọi nơi.
- Ghi nhật ký và giám sát phiên truy cập của MSP.
SaaS nghĩa là dữ liệu của bạn nằm trên hệ thống của nhà cung cấp. Nhà cung cấp lo hạ tầng, còn bạn vẫn chịu trách nhiệm về tài khoản, quyền truy cập và cấu hình của mình.
- Dùng SSO và MFA cho dịch vụ.
- Rà soát các ứng dụng tích hợp đã được cấp quyền và thu hồi cái không cần.
- Xem báo cáo kiểm toán độc lập hoặc chứng nhận của nhà cung cấp (ví dụ SOC 2, ISO/IEC 27001).
- Có bản sao lưu dữ liệu riêng phòng khi nhà cung cấp gặp sự cố.
🔄 Quản lý rủi ro bên thứ ba qua vòng đời
🧭 Hình 20b. Rủi ro nhà cung cấp phải được quản lý suốt vòng đời, không chỉ lúc ký hợp đồng.
| Giai đoạn | Việc cần làm |
|---|---|
| Trước khi ký | Đánh giá an ninh của nhà cung cấp (due diligence), dùng bảng câu hỏi và chứng nhận, đưa vào hợp đồng điều khoản bảo mật, thông báo sự cố và quyền kiểm toán, xác định dữ liệu họ được chạm |
| Trong thời gian hợp tác | Quyền tối thiểu và có thời hạn, phân đoạn mạng, MFA, ghi nhật ký, xác minh bản cập nhật, đánh giá lại định kỳ |
| Khi kết thúc | Thu hồi tài khoản và khóa, đổi mật khẩu dùng chung, lấy lại hoặc xóa dữ liệu và có xác nhận bằng văn bản |
Hai khái niệm đáng nhớ:
- Rủi ro tập trung (concentration risk): phụ thuộc vào một nhà cung cấp duy nhất. Nếu họ gặp sự cố thì hoạt động của bạn bị ảnh hưởng nặng.
- Bên thứ tư: nhà cung cấp của nhà cung cấp. Bạn không ký hợp đồng với họ nhưng rủi ro vẫn lan tới bạn, nên cần hỏi nhà cung cấp về cách họ quản lý.
🎯 Mẹo làm bài: nhìn từ khóa. "Đi qua một nhà cung cấp tin cậy" hoặc "nhắm vào mắt xích yếu" là tấn công chuỗi cung ứng. "Một đơn vị quản trị có quyền tới nhiều khách hàng" nghĩ tới MSP. "Danh mục thành phần của phần mềm" là SBOM. "Kiểm tra bản cập nhật có bị sửa không" là hash và chữ ký số. "Nhà cung cấp cần truy cập từ xa" thì nghĩ quyền tối thiểu, có thời hạn, MFA, ghi nhật ký.
🧠 Áp vào câu chuyện của Nam
| Câu hỏi của chị Lan | Khái niệm trả lời |
|---|---|
| "Mình đâu bị tấn công, sao lại liên quan?" | Tấn công chuỗi cung ứng: đi vào qua nhà cung cấp tin cậy |
| "Làm sao biết bản cài có bị sửa?" | So hash hoặc kiểm tra chữ ký số với giá trị nhà cung cấp công bố |
| "Bên thuê ngoài CNTT có đáng lo không?" | MSP có quyền tới nhiều khách hàng, cần MFA, quyền tối thiểu, giám sát |
| "Dữ liệu lương nằm trên đám mây thì ai lo?" | Nhà cung cấp lo hạ tầng, mình vẫn lo tài khoản, quyền và tích hợp |
| "Từ giờ nên làm gì?" | Đánh giá nhà cung cấp trước, giám sát trong, thu hồi quyền khi kết thúc |
📖 Thuật ngữ cần nhớ
| Thuật ngữ | Nghĩa |
|---|---|
| Supply chain attack | Tấn công qua nhà cung cấp hoặc bên thứ ba để tới mục tiêu. |
| MSP | Nhà cung cấp dịch vụ quản trị CNTT, thường có quyền từ xa tới khách hàng. |
| MSSP | Nhà cung cấp dịch vụ bảo mật được quản lý. |
| SaaS | Phần mềm dưới dạng dịch vụ, dữ liệu nằm ở nhà cung cấp. |
| SBOM | Danh mục các thành phần cấu tạo nên phần mềm. |
| Typosquatting | Gói hoặc tên miền giả tên gần giống để dụ cài nhầm. |
| Due diligence | Việc đánh giá kỹ nhà cung cấp trước khi hợp tác. |
| Concentration risk | Rủi ro khi phụ thuộc vào một nhà cung cấp duy nhất. |
| Bên thứ tư | Nhà cung cấp của nhà cung cấp. |
📌 Tóm tắt nhanh
- Tấn công chuỗi cung ứng nhắm vào mắt xích yếu để tới nhiều khách hàng qua kênh tin cậy.
- Bốn kiểu quan hệ: phần mềm, phần cứng, MSP và SaaS. Nhà thầu có kết nối mạng cũng cần được kiểm soát.
- Xác minh bản cập nhật bằng hash hoặc chữ ký số, dùng SBOM để biết mình đang dùng thành phần nào.
- MSP và nhà cung cấp cần quyền tối thiểu, có thời hạn, MFA và ghi nhật ký.
- Quản lý rủi ro qua ba giai đoạn: trước khi ký, trong hợp tác và khi kết thúc.
💬 Hỏi & Đáp nhanh
❓ Nếu bản cập nhật đã có chữ ký số hợp lệ thì có chắc an toàn không? Không tuyệt đối. Chữ ký chứng minh bản cập nhật do bên giữ khóa ký phát hành. Nếu hệ thống ký của nhà cung cấp bị chiếm thì bản độc hại vẫn được ký. Vì vậy cần thêm giám sát, thử nghiệm ở nhóm nhỏ và phân đoạn mạng.
❓ Công ty nhỏ có cần quản lý nhà cung cấp bài bản không? Cần, nhưng ở mức vừa sức: danh sách nhà cung cấp quan trọng, biết ai có quyền truy cập gì, bật MFA, thu hồi quyền khi kết thúc hợp tác và đọc kỹ điều khoản bảo mật.
❓ SBOM khác gì danh sách phần mềm đã cài? Danh sách phần mềm cho biết máy bạn có chương trình nào. SBOM đi sâu hơn: cho biết mỗi chương trình được ghép từ những thành phần nào, kể cả thư viện bên thứ ba.
📝 Bài tập đánh giá
Tự chọn đáp án cho từng câu, rồi đối chiếu với phần đáp án ở cuối bài.
Câu 1. Kẻ tấn công chiếm hệ thống phát hành bản cập nhật của một nhà cung cấp phần mềm để đưa mã độc tới nhiều khách hàng. Đây là kiểu tấn công nào?
- A. Tấn công chuỗi cung ứng
- B. Từ chối dịch vụ
- C. Tấn công vật lý
- D. Chèn mã SQL
Câu 2. Vì sao một MSP bị xâm nhập thường gây rủi ro lớn?
- A. Vì MSP không dùng được mật khẩu
- B. Vì MSP thường có quyền quản trị từ xa tới nhiều khách hàng cùng lúc
- C. Vì MSP luôn lưu dữ liệu không mã hóa
- D. Vì MSP chỉ phục vụ một khách hàng
Câu 3. Cách nào giúp phát hiện một tệp cài đặt đã bị thay đổi so với bản gốc nhà cung cấp phát hành?
- A. So sánh hash hoặc kiểm tra chữ ký số với giá trị nhà cung cấp công bố
- B. Đổi tên tệp
- C. Nén tệp lại
- D. Chạy tệp trên nhiều máy
Câu 4. SBOM là gì?
- A. Bảng giá của nhà cung cấp
- B. Danh mục các thành phần cấu tạo nên một phần mềm
- C. Bản sao lưu dữ liệu
- D. Hợp đồng bảo trì
Câu 5. Một nhà cung cấp bảo trì cần truy cập từ xa vào một máy chủ. Cách nào giảm rủi ro nhiều nhất?
- A. Cấp tài khoản quản trị chung và dùng lâu dài
- B. Cấp tài khoản riêng quyền tối thiểu, có thời hạn, bật MFA và ghi nhật ký
- C. Gửi mật khẩu quản trị qua tin nhắn
- D. Tắt tường lửa trong thời gian họ làm việc
👉 Đáp án
Câu 1: A — Nhắm vào nhà cung cấp để tới khách hàng qua kênh tin cậy là tấn công chuỗi cung ứng.
Câu 2: B — MSP thường có quyền quản trị tới nhiều khách hàng, nên xâm nhập một MSP có thể ảnh hưởng nhiều tổ chức cùng lúc.
Câu 3: A — Hash hoặc chữ ký số cho biết tệp có bị sửa đổi so với bản gốc hay không (Bài 10).
Câu 4: B — SBOM là danh mục các thành phần cấu tạo nên phần mềm, giúp biết phần mềm nào dùng thư viện bị lỗi.
Câu 5: B — Tài khoản riêng, quyền tối thiểu, có thời hạn, MFA và ghi nhật ký là bộ kiểm soát phù hợp cho truy cập của nhà cung cấp.
📚 Bài viết thuộc khóa học CompTIA Security+ của VNExperts