Các nhà nghiên cứu an ninh mạng vừa phát hiện một gói NuGet độc hại giả mạo bộ công cụ phát triển phần mềm (SDK) C# cho Sicoob, một trong những hệ thống tài chính hợp tác lớn nhất Brazil, nhằm đánh cắp client ID và chứng chỉ PFX.
Theo báo cáo từ Socket, các phiên bản từ 2.0.0 đến 2.0.4 của "Sicoob.Sdk" chứa chức năng trích xuất trái phép (exfiltrate) thông tin nhạy cảm, bao gồm các chứng chỉ PFX vốn được sử dụng để xác thực doanh nghiệp với mạng lưới ngân hàng Sicoob. Điều này giúp tự động hóa các hoạt động ngân hàng như xử lý thanh toán tức thời và tạo mã Pix QR động. Gói này ước tính đã được tải xuống gần 500 lần.
"Khi một lập trình viên khởi tạo SicoobClient với client ID, đường dẫn tệp PFX và mật khẩu PFX, gói này sẽ đọc tệp PFX từ đĩa, mã hóa nội dung bằng Base64 và gửi client ID, mật khẩu PFX cùng dữ liệu PFX đã mã hóa đến một endpoint Sentry của bên thứ ba được mã hóa cứng," nhà nghiên cứu bảo mật Kirill Boychenko cho biết.
Ngoài ra, gói này còn được thiết kế để thu thập các phản hồi API Boleto thô thông qua một đường dẫn Sentry riêng biệt. Boleto là phương thức thanh toán tiền mặt phổ biến tại Brazil. Hành động này có thể làm lộ chi tiết giao dịch nhạy cảm, trạng thái thanh toán, số tiền, ngày hạn, mã định danh và dữ liệu của người trả hoặc người nhận tiền.
Socket bổ sung rằng dữ liệu bị đánh cắp có thể mở đường cho những rủi ro nghiêm trọng, vì kẻ tấn công có thể lạm dụng nó để mạo danh tích hợp API ngân hàng Sicoob của nạn nhân. Sau khi được thông báo, NuGet đã chặn gói này. Hồ sơ đứng sau gói này, mang tên "sicoob", cũng liệt kê 11 gói NuGet khác với tổng cộng khoảng 6.000 lượt tải xuống.
Công ty bảo mật ứng dụng này cũng cho biết gói này đã xuất hiện trong chế độ AI Mode của Google Search như một thư viện C# hợp lệ, từ đó vô tình quảng bá gói độc hại đến những lập trình viên đang tìm kiếm thư viện tương tác với API của Sicoob.
Sự khác biệt giữa mã nguồn GitHub và gói NuGet
Một khía cạnh quan trọng khác của cuộc tấn công là sự không khớp giữa kho lưu trữ GitHub được liên kết và tệp tin thực tế được phân phối qua NuGet. Người ta nghi ngờ rằng kho lưu trữ GitHub được giữ "sạch" để tạo vẻ ngoài uy tín, trong khi chức năng đánh cắp dữ liệu độc hại chỉ được đưa vào gói tải lên registry.
Việc rò rỉ tài liệu xác thực API Sicoob cũng gây ra rủi ro gián tiếp cho người dùng cuối, vì nó có thể làm rò rỉ dữ liệu tài chính hạ nguồn hoặc cho phép lạm dụng thanh toán.
Các tổ chức đã cài đặt "Sicoob.Sdk" được khuyến nghị gỡ bỏ gói ngay lập tức, coi các tài liệu PFX là đã bị lộ, thay thế chứng chỉ PFX, thay đổi mật khẩu PFX và vô hiệu hóa các client ID bị ảnh hưởng. Đồng thời, cần kiểm tra nhật ký xác thực và API của Sicoob để tìm dấu hiệu hoạt động bất thường.
Hàng loạt gói npm nhắm mục tiêu vào bí mật Cloud và CI/CD
Sự việc này diễn ra cùng thời điểm với việc phát hiện 14 gói npm độc hại sử dụng kỹ thuật typosquatting (giả mạo tên các thư viện nổi tiếng) như OpenSearch, ElasticSearch, DevOps để thu thập thông tin xác thực AWS, token HashiCorp Vault, token npm và các bí mật CI/CD từ môi trường máy chủ thông qua một trình thu thập thông tin được kích hoạt từ preinstall hook.
Theo Microsoft Defender Security Research Team, các gói này được phát hành bởi một thực thể đe dọa có tên "vpmdhaj" vào ngày 28 tháng 5 năm 2026. Danh sách bao gồm:
- @vpmdhaj/devops-tools
- @vpmdhaj/elastic-helper
- @vpmdhaj/opensearch-setup
- app-config-utility
- elastic-opensearch-helper
- env-config-manager
- opensearch-security-scanner
- ...và nhiều gói khác liên quan đến cấu hình tìm kiếm.
Sự tiến hóa của các cuộc tấn công chuỗi cung ứng
Trong những ngày qua, nhiều chiến dịch tấn công chuỗi cung ứng phần mềm khác cũng đã được báo cáo:
- 164 gói npm độc hại: Chứa payload thực thi sau khi cài đặt để gửi biến môi trường của nạn nhân đến máy chủ của kẻ tấn công.
- 141 gói npm độc hại: Lạm dụng npm làm nơi lưu trữ tĩnh miễn phí cho các proxy web chứa quảng cáo.
- forge-jsxy: Gói npm có khả năng ghi phím (keylogging), theo dõi clipboard, quét tệp .env và đánh cắp lịch sử shell.
- 176 gói npm sử dụng Dependency Confusion: Sử dụng số phiên bản cực cao (99.99.99) để đánh lừa hệ thống cài đặt mã độc thay vì thư viện nội bộ.
Trong một báo cáo mới, Sonatype nhận định rằng những kẻ tấn công đã vượt xa kỹ thuật typosquatting cổ điển. Thay vì chỉ viết sai tên, chúng sử dụng các tên gọi trông có vẻ thuyết phục và phù hợp với quy trình làm việc thực tế của lập trình viên để đánh cắp dữ liệu.
Các kỹ thuật phổ biến bao gồm thêm tiền tố/hậu tố, mạo danh phiên bản, hoặc sử dụng các tên gọi giống hệt chức năng của gói phần mềm hợp lệ. Thuật ngữ "typosquatting" giờ đây được coi là quá hẹp để mô tả các hành vi này. Các chuyên gia gọi đây là "sự hợp lệ nhân tạo" (manufactured legitimacy).
Những sự cố này cũng liên quan đến chuỗi thỏa hiệp phần mềm của nhóm TeamPCP (còn gọi là Replicating Marauder), nhóm này đã trở thành một thế lực đáng gờm bằng cách đầu độc các công cụ phát triển phổ biến trên npm, PyPI, Docker Hub và Packagist theo phương thức giống như sâu máy tính (worm-like).
"Replicating Marauder không chỉ chèn mã độc vào các gói mà còn khai thác tính năng tự động hóa và sự tin tưởng có sẵn trong quy trình CI/CD để đẩy sự thỏa hiệp đi xa hơn xuống hạ nguồn," nhà nghiên cứu Michael Warren từ BlueVoyant chia sẻ.