Tấn công chuỗi cung ứng Packagist lây nhiễm 8 gói phần mềm bằng malware Linux trên GitHub

Một chiến dịch tấn công chuỗi cung ứng mới đã nhắm mục tiêu vào 8 gói phần mềm trên Packagist, chèn mã độc để tải và thực thi một binary Linux từ GitHub.

Một chiến dịch tấn công chuỗi cung ứng mới, được mô tả là “phối hợp”, đã ảnh hưởng đến 8 gói phần mềm trên Packagist. Kẻ tấn công đã chèn mã độc được thiết kế để chạy một binary Linux, được tải về từ một URL GitHub Releases.

Theo phân tích từ Socket, mã độc không được thêm vào tệp composer.json như thường lệ đối với các gói Composer. Thay vào đó, nó được chèn vào tệp package.json, nhắm mục tiêu vào các dự án sử dụng cả công cụ xây dựng JavaScript và mã PHP. Việc đặt mã độc “đa hệ sinh thái” này khiến cuộc tấn công trở nên đáng chú ý, bởi các nhà phát triển và đội ngũ bảo mật khi quét các dependency PHP có thể chỉ tập trung vào metadata liên quan đến Composer, bỏ qua các hook lifecycle trong package.json được đóng gói cùng với gói phần mềm. Các phiên bản độc hại này đã nhanh chóng được gỡ bỏ khỏi Packagist.

Phân tích sâu hơn các gói bị ảnh hưởng cho thấy các kho lưu trữ upstream của chúng đã bị sửa đổi để bao gồm một script postinstall. Script này cố gắng tải xuống một binary Linux từ URL GitHub Releases (github[.]com/parikhpreyash4/systemd-network-helper-aa5c751f), lưu nó vào thư mục /tmp/.sshd, thay đổi quyền bằng lệnh chmod để cấp quyền thực thi cho tất cả người dùng, và sau đó chạy nó ở chế độ nền.

Các gói phần mềm và phiên bản bị ảnh hưởng bao gồm:

  • moritz-sauer-13/silverstripe-cms-theme (dev-master)
  • crosiersource/crosierlib-base (dev-master)
  • devdojo/wave (dev-main)
  • devdojo/genesis (dev-main)
  • katanaui/katana (dev-main)
  • elitedevsquad/sidecar-laravel (3.x-dev)
  • r2luna/brain (dev-main)
  • baskarcm/tzi-chat-ui (dev-main)

Cuộc điều tra của Socket cũng phát hiện ra các tham chiếu đến cùng một payload trên 777 tệp khác nhau trên GitHub, cho thấy đây có thể là một phần của một chiến dịch rộng lớn hơn. Trong ít nhất hai trường hợp, payload này đã được thêm vào một GitHub workflow. Tuy nhiên, hiện vẫn chưa rõ có bao nhiêu trong số này là các sự cố thỏa hiệp riêng biệt, các fork, các artifact gói trùng lặp hay các tham chiếu được lưu trữ.

Socket nhận định: “Điều này cho thấy kẻ tấn công không chỉ dựa vào một cơ chế thực thi duy nhất. Trong các artifact gói, payload được kích hoạt thông qua các script postinstall của package.json. Trong các tệp workflow, nó được định vị để chạy trong các job của GitHub Actions.”

Hiện tại, bản chất chính xác của payload được tải xuống từ GitHub vẫn chưa rõ ràng, do tài khoản GitHub liên quan đến kho lưu trữ chứa nó không còn khả dụng. Việc lựa chọn tên “gvfsd-network” cho malware cũng đáng chú ý, vì nó đề cập đến một daemon của GNOME Virtual File System (GVfs) chịu trách nhiệm quản lý và duyệt các chia sẻ mạng.

Socket nhấn mạnh: “Ngay cả khi không có binary giai đoạn hai, trình cài đặt độc hại cũng đủ để bị chặn. Nó cung cấp khả năng thực thi mã từ xa trong quá trình cài đặt hoặc các workflow xây dựng, và cố gắng che giấu hoạt động của mình bằng cách vô hiệu hóa xác minh TLS, loại bỏ lỗi và chạy một binary đã tải xuống ở chế độ nền.”


Nguồn tham khảo: The Hacker News

Nguyen Hung

Nguyen Hung

Keep in touch with our news & offers

Subscribe to Our Newsletter

Comments

Leave a Reply

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *