Nguy hiểm: Tấn công chuỗi cung ứng qua mã độc NuGet

Một cuộc tấn công chuỗi cung ứng tinh vi đã xâm phạm các hệ thống kiểm soát công nghiệp (ICS) quan trọng. Vụ việc này được thực hiện thông qua chín gói NuGet độc hại, được thiết kế để tiêm tải trọng phá hoại có độ trễ thời gian vào các hoạt động cơ sở dữ liệu và môi trường sản xuất.
Tổng quan về Cuộc Tấn công Chuỗi Cung ứng NuGet
Đội ngũ nghiên cứu mối đe dọa của Socket đã xác định các gói mã độc này. Chúng được công bố dưới biệt danh shanhai666 trong khoảng thời gian từ năm 2023 đến 2024. Trước khi được báo cáo lên NuGet vào ngày 5 tháng 11 năm 2023, các gói này đã tích lũy tổng cộng 9.488 lượt tải xuống.
Chiến dịch tấn công thể hiện mức độ tinh vi chưa từng có. Kẻ tấn công kết hợp 99% chức năng hợp pháp làm mã vỏ bọc. Trong đó, chúng ẩn giấu các tải trọng độc hại kích hoạt việc chấm dứt tiến trình. Điều này xảy ra với xác suất 20% trên mỗi truy vấn cơ sở dữ liệu, sau các ngày cụ thể trong năm 2027 và 2028.
Phân tích Kỹ thuật các Gói Mã độc
Gói Sharp7Extend và Mục tiêu ICS
Gói nguy hiểm nhất, Sharp7Extend, nhắm mục tiêu vào các bộ điều khiển logic khả trình (PLC) công nghiệp của Siemens. Kỹ thuật typosquatting (đặt tên gần giống) đã được sử dụng. Bằng cách thêm “Extend” vào tên thư viện Sharp7 đáng tin cậy, kẻ tấn công đã lợi dụng các nhà phát triển tìm kiếm các cải tiến về giao tiếp PLC.
Gói này tích hợp thư viện Sharp7 hợp pháp, hoàn chỉnh và không bị sửa đổi (phiên bản 1.1.79). Điều này khiến việc phát hiện trong quá trình đánh giá mã gần như không thể.
Cơ chế Tấn công Kép của Sharp7Extend
Sharp7Extend triển khai logic kích hoạt đảo ngược so với các gói tập trung vào cơ sở dữ liệu. Thay vì kích hoạt trì hoãn, nó chấm dứt các tiến trình với xác suất 20% trên mỗi hoạt động PLC ngay lập tức sau khi cài đặt. Trạng thái này duy trì cho đến ngày 6 tháng 6 năm 2028.
Sau đó, một cơ chế phá hoại thứ hai được kích hoạt. Cơ chế này âm thầm làm hỏng các hoạt động ghi dữ liệu với xác suất 80%. Cuộc tấn công kép này tạo ra các lỗi ngày càng nghiêm trọng.
Trong 30-90 phút đầu tiên, chỉ có cơ chế chấm dứt tiến trình hoạt động. Điều này gây ra các sự cố ngẫu nhiên có thể bị quy cho các vấn đề mạng. Sau khi hết thời gian ân hạn, cả hai cơ chế hoạt động đồng thời. Điều này dẫn đến lỗi hệ thống tầng tầng và hỏng dữ liệu, mô phỏng lỗi phần cứng không liên tục thay vì các cuộc tấn công có hệ thống.
Các Gói Khác và Cơ chế Kích hoạt Trì hoãn
Các gói NuGet độc hại còn lại cũng cung cấp mã hợp pháp đầy đủ chức năng. Chúng triển khai các mẫu kho lưu trữ cơ sở dữ liệu, hỗ trợ LINQ, phân trang, hoạt động không đồng bộ và ánh xạ thực thể. Chức năng hợp pháp này có nhiều mục đích. Nó giúp xây dựng lòng tin của nhà phát triển, vượt qua các đánh giá mã và khuyến khích việc áp dụng.
Quan trọng hơn, nó chôn vùi khoảng 20 dòng tải trọng độc hại trong hàng nghìn dòng mã hợp pháp.
Ảnh hưởng và Hậu quả của Cuộc Tấn công
Tác động lên Hệ thống Công nghiệp
Đối với các môi trường sản xuất thực hiện mười hoạt động PLC mỗi phút, các sự cố sản xuất trở nên không thể tránh khỏi trong vòng 30 giây. Các lỗi ghi hoạt động 80% ảnh hưởng nghiêm trọng đến các hệ thống an toàn quan trọng. Các hệ thống điều khiển công nghiệp chạy Sharp7Extend có thể đã trải qua các lỗi không liên tục, bị quy cho các vấn đề giao tiếp PLC. Trong khi đó, các lỗi ghi âm thầm làm hỏng các hoạt động sản xuất quan trọng.
Rủi ro cho Nền tảng Thương mại Điện tử và Tài chính
Sự thiên tài của cuộc tấn công nằm ở sự không thể tránh khỏi về mặt toán học, bị che giấu bởi việc thực thi xác suất. Các ứng dụng thực hiện hàng trăm truy vấn cơ sở dữ liệu mỗi giờ sẽ gặp sự cố trong vòng vài giây đến vài phút.
- Một nền tảng thương mại điện tử xử lý 100 truy vấn mỗi phút sẽ gặp sự cố giữa giao dịch trong khoảng ba giây.
- Hệ thống chăm sóc sức khỏe hoạt động ở 50 truy vấn mỗi phút sẽ gặp tình trạng ngừng hoạt động hoàn toàn trong vòng sáu giây.
- Các nền tảng tài chính giao dịch ở 500 truy vấn mỗi phút phải đối mặt với lỗi nền tảng hoàn toàn trong chưa đầy một giây.
Điểm Kỹ thuật Nổi bật của Mã độc
Chức năng Hợp pháp Làm Vỏ bọc
Tất cả chín gói độc hại đều cung cấp mã hợp pháp đầy đủ chức năng. Điều này xây dựng lòng tin của nhà phát triển và giúp gói vượt qua các quá trình đánh giá mã.
Kỹ thuật Injection Mở rộng Phương thức (Extension Method Injection)
Kẻ tấn công đã vũ khí hóa các tính năng ngôn ngữ C#. Kỹ thuật tiêm phương thức mở rộng (extension method injection) tiêm logic độc hại một cách minh bạch vào mọi hoạt động cơ sở dữ liệu và PLC. Phần mềm độc hại này thêm các phương thức mở rộng .Exec() vào các loại lệnh cơ sở dữ liệu và phương thức .BeginTran() vào các đối tượng S7Client. Điều này cho phép thực thi tự động với mỗi hoạt động.
Tối ưu Bảo mật Hoạt động của Kẻ Tấn công
Kẻ tấn công đã thể hiện sự tinh vi trong bảo mật hoạt động bằng cách duy trì sự không nhất quán về siêu dữ liệu trên các gói. Chúng hiển thị các tên tác giả khác nhau mặc dù xuất bản dưới cùng một biệt danh shanhai666. Điều này được thiết kế để né tránh các hệ thống phát hiện gắn cờ các gói từ cùng một tác giả.
Phân tích tệp chữ ký đã tiết lộ các cấu trúc bị lỗi, các chuỗi nhúng và nhiều chỉ số cho thấy nguồn gốc từ Trung Quốc. Bao gồm các thông báo lỗi bằng tiếng Trung và tiếng lóng internet trong toàn bộ mã.
Chỉ số Nhận dạng Sự cố (IOCs)
Dựa trên phân tích kỹ thuật, các chỉ số nhận dạng sự cố chính bao gồm:
- Tên tác giả (alias): shanhai666
- Tên gói độc hại được xác định: Sharp7Extend
- Các gói NuGet bị ảnh hưởng: Toàn bộ 9 gói được công bố dưới biệt danh shanhai666 (cần kiểm tra danh sách đầy đủ từ nguồn Socket Threat Research để có thông tin chi tiết).
- Phiên bản thư viện Sharp7 bị đóng gói: 1.1.79 (trong Sharp7Extend)
Phát hiện và Các Bước Khắc phục An Ninh Mạng
Tính đến thời điểm xuất bản bài viết, các gói độc hại vẫn tồn tại trên kho lưu trữ NuGet mặc dù đã có báo cáo của Socket vào ngày 5 tháng 11 năm 2023. NuGet đã xác nhận nỗ lực điều tra và gỡ bỏ.
Tuy nhiên, các cơ chế kích hoạt trì hoãn đã làm ảnh hưởng đến vô số hệ thống sản xuất. Các tổ chức phải ngay lập tức kiểm toán các phần phụ thuộc cho tất cả chín gói và xem xét tất cả các hệ thống bị ảnh hưởng là đã bị xâm phạm hoàn toàn để tăng cường an ninh mạng.









