CTO của Ledger, Charles Guillemet, đã báo cáo trên X về một cuộc tấn công chuỗi cung ứng liên quan đến các gói NPM được sử dụng rộng rãi.
Có một cuộc tấn công chuỗi cung ứng quy mô lớn đang diễn ra: tài khoản NPM của một nhà phát triển uy tín đã bị xâm phạm. Các gói bị ảnh hưởng đã được tải xuống hơn 1 tỷ lần, có nghĩa là toàn bộ hệ sinh thái JavaScript có thể đang gặp rủi ro.
Mã độc hoạt động...
— Charles Guillemet (@P3b7_) 8 tháng 9, 2025
Theo một báo cáo của CoinDesk, một số phiên bản bị xâm phạm – tổng cộng hơn 1 tỷ lượt tải xuống – bao gồm mã có khả năng thay thế, "trên đường đi", các địa chỉ đích trong các giao dịch tiền điện tử, chuyển hướng quỹ đến các ví do kẻ tấn công kiểm soát. Kịch bản này phù hợp với các khuyến nghị bảo vệ chuỗi cung ứng được công bố bởi các tổ chức trong ngành như OWASP, nhấn mạnh cách mà các sự cố chuỗi cung ứng có thể có tác động quy mô lớn.
Theo dữ liệu do nhóm tình báo mối đe dọa của chúng tôi thu thập trong 24 giờ qua, các chỉ báo về sự xâm phạm đã xuất hiện nhất quán với kỹ thuật được mô tả trong nhiều kho lưu trữ và quy trình xây dựng. Các nhà phân tích mà chúng tôi hợp tác cũng nhấn mạnh rằng quy mô của sự cố được khuếch đại bởi các phụ thuộc tạm thời và kích thước của kho lưu trữ: kho lưu trữ NPM chứa hơn 2 triệu gói, làm tăng khả năng lây lan của một mô-đun bị xâm phạm.
Cơ chế tấn công: Địa chỉ đã thay đổi "Trong khi đang diễn ra"
Điều đó cho thấy, mã độc có thể kích hoạt cả trong các hoạt động on-chain và vào thời điểm tạo hoặc ký giao dịch. Trên thực tế, mã độc chặn địa chỉ người nhận và thay thế nó bằng một địa chỉ thuộc về những kẻ xấu. Người dùng, khi nhìn thấy một màn hình có vẻ "sạch", có thể không nhận ra rằng giao dịch cuối cùng gửi tiền đến một địa chỉ khác – một động thái cũng được The Block xác nhận. Cần lưu ý rằng việc thao tác này nhằm mục đích giữ cho nó vô hình cho đến bước xác nhận cuối cùng.
Cập nhật về cuộc tấn công NPM: Cuộc tấn công may mắn đã thất bại, với gần như không có nạn nhân.
Nó bắt đầu với một email lừa đảo từ một miền hỗ trợ npm giả mạo đã đánh cắp thông tin đăng nhập và cho phép kẻ tấn công truy cập để phát hành các bản cập nhật gói độc hại. Mã được chèn nhắm vào hoạt động mã hóa web,… pic.twitter.com/lOik6k7Dkp
— Charles Guillemet (@P3b7_) 9 tháng 9, 2025
Các gói liên quan: số, tên tạm thời và phân phối
Các phân tích ban đầu chỉ ra rằng việc xâm phạm đã xảy ra bằng cách khai thác tài khoản của một người bảo trì có quyền truy cập vào các thư viện được sử dụng rộng rãi. Trong số các tên được lưu hành có, chẳng hạn, gói error-ex – mà hồ sơ chính thức của nó có thể được xem trên npmjs.com – mặc dù các danh sách chính thức vẫn đang được cập nhật. Tác động được khuếch đại bởi hiệu ứng dây chuyền do các phụ thuộc: một mô-đun bị xâm phạm duy nhất có thể lan truyền đến hàng trăm dự án, nhờ vào các chuỗi nhập. Thật vậy, bản chất mô-đun của mã JavaScript khiến cho vấn đề dễ dàng lan rộng khi các phụ thuộc được lồng ghép sâu.
Quy mô tiếp xúc: hơn 1 tỷ lượt tải xuống tích lũy của các phiên bản có khả năng gặp rủi ro.
Vector: các ấn phẩm trên NPM thông qua thông tin đăng nhập bị đánh cắp hoặc pipeline bị xâm phạm.
Phạm vi: các thư viện lõi được sử dụng trong các dự án web và ví.
Danh sách chính thức các gói và phiên bản bị ảnh hưởng là không đầy đủ; nên theo dõi các thông báo của NPM và các kho lưu trữ của người bảo trì. Tuy nhiên, cho đến khi có thông báo chính thức, vẫn nên thận trọng xem xét toàn bộ chuỗi phụ thuộc có nguy cơ.
Tác động đến người dùng và doanh nghiệp
Trộm cắp tiền điện tử trực tiếp sau khi thay thế địa chỉ một cách lén lút.
Tính toàn vẹn của ứng dụng bị xâm phạm trong dApp, tiện ích mở rộng và ví máy tính/web.
Rủi ro uy tín cho các dự án tích hợp các gói bị ô nhiễm.
Những việc cần làm ngay lập tức: Danh sách kiểm tra khẩn cấp
Đối với người dùng cuối (crypto)
Ưu tiên các ví hiển thị rõ ràng thông tin giao dịch ( màn hình và chữ ký rõ ràng – Chữ ký rõ ràng ), xác minh địa chỉ và số tiền trên thiết bị trước khi xác nhận. Để hướng dẫn thực tế, hãy xem hướng dẫn của chúng tôi về việc kiểm tra ví phần cứng.
Tránh ký mù và hạn chế việc sử dụng mã QR chưa xác minh.
So sánh địa chỉ hiển thị với một bản sao an toàn và sử dụng danh sách trắng cho các người nhận thường xuyên.
Biện pháp này rất quan trọng vì việc xác nhận trên ví phần cứng cho thấy dữ liệu mà thực sự đang được ký, khiến bất kỳ sự thay thế địa chỉ nào bởi phần mềm máy chủ đều trở nên rõ ràng. Trong bối cảnh này, việc xác minh trên màn hình của thiết bị giảm khả năng xảy ra lỗi hoặc thao tác ở phía trên.
Dành cho các nhóm phát triển
Tạm thời đình chỉ cập nhật tự động của các phụ thuộc quan trọng.
Thực hiện kiểm toán và phục hồi các phiên bản đã phát hành trong thời gian đáng ngờ.
Quay vòng các token NPM và làm cho việc kích hoạt 2FA trở thành bắt buộc đối với các nhà duy trì và phát hành (xem ở đây).
Kích hoạt hệ thống nguồn gốc cho các ấn phẩm và ký các sản phẩm xây dựng.
Cách xác minh xem một dự án có bị lộ hay không
Việc nhanh chóng xác định các phụ thuộc đáng ngờ và các khoảng phiên bản đã cài đặt là rất quan trọng: việc trinh sát kịp thời giới hạn hiệu ứng domino trong các pipeline.
Liệt kê các phiên bản đã cài đặt và chuỗi phụ thuộc
npm ls error-ex
Kiểm tra các lỗ hổng và thông báo đã biết
npm audit –production
npm audit –json > audit.json
Chặn các cập nhật không xác định trong CI
npm ci –ignore-scripts
Đặt ngưỡng kiểm toán nghiêm ngặt hơn
npm config set audit-level=cao
Kiểm tra các phiên bản có sẵn và ngày phát hành
npm view error-ex versions –json
npm view error-ex time –json
Trong bối cảnh CI, việc thiết lập ignore-scripts=true giúp giảm thiểu rủi ro thực thi các script độc hại sau khi cài đặt. Tuy nhiên, nên thiết lập một cơ sở có thể tái tạo ngay lập tức để tránh những sai lệch không mong muốn. Để biết thêm danh sách kiểm tra mở rộng về các xác minh CI, hãy tham khảo trang của chúng tôi về các thực tiễn tốt nhất trong chuỗi cung ứng.
Củng cố chuỗi cung ứng: đề xuất các biện pháp phòng thủ kỹ thuật
Sử dụng một tệp khóa xác định (package-lock.json) và triển khai với npm ci để đảm bảo tính tái sản xuất.
Bật 2FA trên NPM cho các ấn phẩm và truy cập quan trọng, sử dụng mã thông báo với phạm vi hạn chế (automation so với publish).
Thực hiện đánh giá mã bắt buộc và sử dụng một pipeline CI tách biệt với việc ký xác nhận artifact.
Áp dụng hệ thống xuất xứ, tham khảo tài liệu chính thức về xuất xứ gói npm và các tiêu chuẩn như SLSA.
Sử dụng các công cụ quét và cập nhật được kiểm soát, chẳng hạn như Dependabot, Renovate và sigstore/cosign, khi có thể.
Áp dụng nguyên tắc quyền hạn tối thiểu cho các tài khoản của các nhà bảo trì và bot phát hành.
Thời gian và Tình trạng Điều tra
Cảnh báo đã được công bố hôm nay, ngày 8 tháng 9 năm 2025, và hiện tại đang tiến hành xác minh. Các thông báo chính thức và danh sách cập nhật các gói và phiên bản bị xâm phạm sẽ được công bố dần dần. Do đó, khuyến nghị nên duy trì một cách tiếp cận thận trọng, đình chỉ các cập nhật không cần thiết cho đến khi có các chỉ báo về sự xâm phạm được củng cố. Chờ phản hồi thêm, ưu tiên vẫn là kiểm soát mức độ tiếp xúc và cẩn thận ghi chép mọi thay đổi.
Góc Quan Trọng: Một Chuỗi Niềm Tin Vẫn Mỏng Manh
Chuỗi cung ứng mã nguồn mở vẫn dễ bị tổn thương khi việc truy cập tài khoản và các quy trình xuất bản không được bảo vệ đầy đủ. Vấn đề trở nên cấp bách hơn khi, vào năm 2025, nhiều ấn phẩm vẫn diễn ra mà không có sự áp dụng hệ thống các biện pháp như 2FA, nguồn gốc và các đánh giá nghiêm ngặt.
Miễn là lòng tin được coi là điều hiển nhiên, mọi dự án sẽ tiếp tục phải đối mặt với rủi ro do người khác tạo ra. Tuy nhiên, ngay cả những cải tiến nhỏ trong quy trình cũng có thể giảm đáng kể bề mặt tấn công.
Điểm
Tập này làm nổi bật tầm quan trọng của việc bảo mật chuỗi cung ứng trong phần mềm nguồn mở. Miễn là các cuộc điều tra đang diễn ra, ưu tiên sẽ là giới hạn bề mặt tấn công, xác minh kỹ lưỡng dữ liệu giao dịch trên màn hình và hợp nhất các quy trình xuất bản thông qua việc áp dụng 2FA, lockfile và hệ thống nguồn gốc.
Sự minh bạch của các thông báo, như nhiều chuyên gia đã chỉ ra, sẽ rất quan trọng trong việc đo lường tác động thực sự và khôi phục niềm tin vào hệ sinh thái. Trong bối cảnh này, việc tuân thủ các thực hành tốt nhất vẫn là biện pháp bảo vệ ngay lập tức duy nhất.
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
NPM bị tấn công: các gói JavaScript bị xâm phạm, địa chỉ crypto bị chiếm đoạt. Cảnh báo từ Ledger...
CTO của Ledger, Charles Guillemet, đã báo cáo trên X về một cuộc tấn công chuỗi cung ứng liên quan đến các gói NPM được sử dụng rộng rãi.
Có một cuộc tấn công chuỗi cung ứng quy mô lớn đang diễn ra: tài khoản NPM của một nhà phát triển uy tín đã bị xâm phạm. Các gói bị ảnh hưởng đã được tải xuống hơn 1 tỷ lần, có nghĩa là toàn bộ hệ sinh thái JavaScript có thể đang gặp rủi ro.
Mã độc hoạt động...
— Charles Guillemet (@P3b7_) 8 tháng 9, 2025
Theo một báo cáo của CoinDesk, một số phiên bản bị xâm phạm – tổng cộng hơn 1 tỷ lượt tải xuống – bao gồm mã có khả năng thay thế, "trên đường đi", các địa chỉ đích trong các giao dịch tiền điện tử, chuyển hướng quỹ đến các ví do kẻ tấn công kiểm soát. Kịch bản này phù hợp với các khuyến nghị bảo vệ chuỗi cung ứng được công bố bởi các tổ chức trong ngành như OWASP, nhấn mạnh cách mà các sự cố chuỗi cung ứng có thể có tác động quy mô lớn.
Theo dữ liệu do nhóm tình báo mối đe dọa của chúng tôi thu thập trong 24 giờ qua, các chỉ báo về sự xâm phạm đã xuất hiện nhất quán với kỹ thuật được mô tả trong nhiều kho lưu trữ và quy trình xây dựng. Các nhà phân tích mà chúng tôi hợp tác cũng nhấn mạnh rằng quy mô của sự cố được khuếch đại bởi các phụ thuộc tạm thời và kích thước của kho lưu trữ: kho lưu trữ NPM chứa hơn 2 triệu gói, làm tăng khả năng lây lan của một mô-đun bị xâm phạm.
Cơ chế tấn công: Địa chỉ đã thay đổi "Trong khi đang diễn ra"
Điều đó cho thấy, mã độc có thể kích hoạt cả trong các hoạt động on-chain và vào thời điểm tạo hoặc ký giao dịch. Trên thực tế, mã độc chặn địa chỉ người nhận và thay thế nó bằng một địa chỉ thuộc về những kẻ xấu. Người dùng, khi nhìn thấy một màn hình có vẻ "sạch", có thể không nhận ra rằng giao dịch cuối cùng gửi tiền đến một địa chỉ khác – một động thái cũng được The Block xác nhận. Cần lưu ý rằng việc thao tác này nhằm mục đích giữ cho nó vô hình cho đến bước xác nhận cuối cùng.
Cập nhật về cuộc tấn công NPM: Cuộc tấn công may mắn đã thất bại, với gần như không có nạn nhân.
Nó bắt đầu với một email lừa đảo từ một miền hỗ trợ npm giả mạo đã đánh cắp thông tin đăng nhập và cho phép kẻ tấn công truy cập để phát hành các bản cập nhật gói độc hại. Mã được chèn nhắm vào hoạt động mã hóa web,… pic.twitter.com/lOik6k7Dkp
— Charles Guillemet (@P3b7_) 9 tháng 9, 2025
Các gói liên quan: số, tên tạm thời và phân phối
Các phân tích ban đầu chỉ ra rằng việc xâm phạm đã xảy ra bằng cách khai thác tài khoản của một người bảo trì có quyền truy cập vào các thư viện được sử dụng rộng rãi. Trong số các tên được lưu hành có, chẳng hạn, gói error-ex – mà hồ sơ chính thức của nó có thể được xem trên npmjs.com – mặc dù các danh sách chính thức vẫn đang được cập nhật. Tác động được khuếch đại bởi hiệu ứng dây chuyền do các phụ thuộc: một mô-đun bị xâm phạm duy nhất có thể lan truyền đến hàng trăm dự án, nhờ vào các chuỗi nhập. Thật vậy, bản chất mô-đun của mã JavaScript khiến cho vấn đề dễ dàng lan rộng khi các phụ thuộc được lồng ghép sâu.
Quy mô tiếp xúc: hơn 1 tỷ lượt tải xuống tích lũy của các phiên bản có khả năng gặp rủi ro.
Vector: các ấn phẩm trên NPM thông qua thông tin đăng nhập bị đánh cắp hoặc pipeline bị xâm phạm.
Phạm vi: các thư viện lõi được sử dụng trong các dự án web và ví.
Danh sách chính thức các gói và phiên bản bị ảnh hưởng là không đầy đủ; nên theo dõi các thông báo của NPM và các kho lưu trữ của người bảo trì. Tuy nhiên, cho đến khi có thông báo chính thức, vẫn nên thận trọng xem xét toàn bộ chuỗi phụ thuộc có nguy cơ.
Tác động đến người dùng và doanh nghiệp
Trộm cắp tiền điện tử trực tiếp sau khi thay thế địa chỉ một cách lén lút.
Tính toàn vẹn của ứng dụng bị xâm phạm trong dApp, tiện ích mở rộng và ví máy tính/web.
Rủi ro uy tín cho các dự án tích hợp các gói bị ô nhiễm.
Những việc cần làm ngay lập tức: Danh sách kiểm tra khẩn cấp
Đối với người dùng cuối (crypto)
Ưu tiên các ví hiển thị rõ ràng thông tin giao dịch ( màn hình và chữ ký rõ ràng – Chữ ký rõ ràng ), xác minh địa chỉ và số tiền trên thiết bị trước khi xác nhận. Để hướng dẫn thực tế, hãy xem hướng dẫn của chúng tôi về việc kiểm tra ví phần cứng.
Tránh ký mù và hạn chế việc sử dụng mã QR chưa xác minh.
So sánh địa chỉ hiển thị với một bản sao an toàn và sử dụng danh sách trắng cho các người nhận thường xuyên.
Biện pháp này rất quan trọng vì việc xác nhận trên ví phần cứng cho thấy dữ liệu mà thực sự đang được ký, khiến bất kỳ sự thay thế địa chỉ nào bởi phần mềm máy chủ đều trở nên rõ ràng. Trong bối cảnh này, việc xác minh trên màn hình của thiết bị giảm khả năng xảy ra lỗi hoặc thao tác ở phía trên.
Dành cho các nhóm phát triển
Tạm thời đình chỉ cập nhật tự động của các phụ thuộc quan trọng.
Thực hiện kiểm toán và phục hồi các phiên bản đã phát hành trong thời gian đáng ngờ.
Quay vòng các token NPM và làm cho việc kích hoạt 2FA trở thành bắt buộc đối với các nhà duy trì và phát hành (xem ở đây).
Kích hoạt hệ thống nguồn gốc cho các ấn phẩm và ký các sản phẩm xây dựng.
Cách xác minh xem một dự án có bị lộ hay không
Việc nhanh chóng xác định các phụ thuộc đáng ngờ và các khoảng phiên bản đã cài đặt là rất quan trọng: việc trinh sát kịp thời giới hạn hiệu ứng domino trong các pipeline.
Liệt kê các phiên bản đã cài đặt và chuỗi phụ thuộc
npm ls error-ex
Kiểm tra các lỗ hổng và thông báo đã biết
npm audit –production
npm audit –json > audit.json
Chặn các cập nhật không xác định trong CI
npm ci –ignore-scripts
Đặt ngưỡng kiểm toán nghiêm ngặt hơn
npm config set audit-level=cao
Kiểm tra các phiên bản có sẵn và ngày phát hành
npm view error-ex versions –json
npm view error-ex time –json
Trong bối cảnh CI, việc thiết lập ignore-scripts=true giúp giảm thiểu rủi ro thực thi các script độc hại sau khi cài đặt. Tuy nhiên, nên thiết lập một cơ sở có thể tái tạo ngay lập tức để tránh những sai lệch không mong muốn. Để biết thêm danh sách kiểm tra mở rộng về các xác minh CI, hãy tham khảo trang của chúng tôi về các thực tiễn tốt nhất trong chuỗi cung ứng.
Củng cố chuỗi cung ứng: đề xuất các biện pháp phòng thủ kỹ thuật
Sử dụng một tệp khóa xác định (package-lock.json) và triển khai với npm ci để đảm bảo tính tái sản xuất.
Bật 2FA trên NPM cho các ấn phẩm và truy cập quan trọng, sử dụng mã thông báo với phạm vi hạn chế (automation so với publish).
Thực hiện đánh giá mã bắt buộc và sử dụng một pipeline CI tách biệt với việc ký xác nhận artifact.
Áp dụng hệ thống xuất xứ, tham khảo tài liệu chính thức về xuất xứ gói npm và các tiêu chuẩn như SLSA.
Sử dụng các công cụ quét và cập nhật được kiểm soát, chẳng hạn như Dependabot, Renovate và sigstore/cosign, khi có thể.
Áp dụng nguyên tắc quyền hạn tối thiểu cho các tài khoản của các nhà bảo trì và bot phát hành.
Thời gian và Tình trạng Điều tra
Cảnh báo đã được công bố hôm nay, ngày 8 tháng 9 năm 2025, và hiện tại đang tiến hành xác minh. Các thông báo chính thức và danh sách cập nhật các gói và phiên bản bị xâm phạm sẽ được công bố dần dần. Do đó, khuyến nghị nên duy trì một cách tiếp cận thận trọng, đình chỉ các cập nhật không cần thiết cho đến khi có các chỉ báo về sự xâm phạm được củng cố. Chờ phản hồi thêm, ưu tiên vẫn là kiểm soát mức độ tiếp xúc và cẩn thận ghi chép mọi thay đổi.
Góc Quan Trọng: Một Chuỗi Niềm Tin Vẫn Mỏng Manh
Chuỗi cung ứng mã nguồn mở vẫn dễ bị tổn thương khi việc truy cập tài khoản và các quy trình xuất bản không được bảo vệ đầy đủ. Vấn đề trở nên cấp bách hơn khi, vào năm 2025, nhiều ấn phẩm vẫn diễn ra mà không có sự áp dụng hệ thống các biện pháp như 2FA, nguồn gốc và các đánh giá nghiêm ngặt.
Miễn là lòng tin được coi là điều hiển nhiên, mọi dự án sẽ tiếp tục phải đối mặt với rủi ro do người khác tạo ra. Tuy nhiên, ngay cả những cải tiến nhỏ trong quy trình cũng có thể giảm đáng kể bề mặt tấn công.
Điểm
Tập này làm nổi bật tầm quan trọng của việc bảo mật chuỗi cung ứng trong phần mềm nguồn mở. Miễn là các cuộc điều tra đang diễn ra, ưu tiên sẽ là giới hạn bề mặt tấn công, xác minh kỹ lưỡng dữ liệu giao dịch trên màn hình và hợp nhất các quy trình xuất bản thông qua việc áp dụng 2FA, lockfile và hệ thống nguồn gốc.
Sự minh bạch của các thông báo, như nhiều chuyên gia đã chỉ ra, sẽ rất quan trọng trong việc đo lường tác động thực sự và khôi phục niềm tin vào hệ sinh thái. Trong bối cảnh này, việc tuân thủ các thực hành tốt nhất vẫn là biện pháp bảo vệ ngay lập tức duy nhất.