Các nhà nghiên cứu bảo mật từSocketđã phát hiện ra một cái bẫy kỹ thuật số nhắm vào người dùng sử dụng tiếng Nga trong các gói JavaScript.
Họ tìm thấy hai gói npm – với cái tên khá bình thường là @link-loom/ui-sdk và @link-loom-react-sdk – trông có vẻ bình thường bề ngoài.
Chúng được thiết kế để giúp các nhà phát triển tạo các thông báo pop-up đẹp mắt trong ứng dụng web.
Tuy nhiên, ẩn sau vẻ ngoài hữu ích này là một thứ mang tính chính trị hơn.
Nếu bạn đang duyệt web với ngôn ngữ đặt là tiếng Nga và truy cập một trang web sử dụng các gói JavaScript này, bạn sẽ gặp bất ngờ:
trang web đóng băng – bạn không thể nhấp vào bất cứ thứ gì, cuộn trang hay tương tác theo bất kỳ cách nào – trong khi bản quốc ca Ukraine phát lặp đi lặp lại.
Các gói bị ảnh hưởng đã được tải xuống hàng nghìn lần, nghĩa là rất nhiều nhà phát triển có thể đã nhúng mã này vào dự án của họ.
Gói ban đầu (@link-loom/ui-sdk) đã đạt hơn 7.000 lượt tải trước khi bị ngừng hỗ trợ, mặc dù phiên bản kế tiếp vẫn tiếp tục chức năng ẩn tương tự.
Điều khiến điều này trở nên khéo léo – hoặc đáng lo ngại, tùy theo góc nhìn của bạn – là cách mã này được ẩn giấu rất kỹ.
Các gói này chứa hơn 100.000 dòng mã, với phần gây rắc rối nằm sâu khoảng 5.000 dòng.
Mã trong các gói JavaScript này khá tinh vi trong việc nhắm mục tiêu.
Nó không kích hoạt với bất kỳ ai, bạn cần phải sử dụng cài đặt ngôn ngữ tiếng Nga, truy cập một trang web của Nga hoặc Belarus, và phải là ít nhất lần thứ hai bạn truy cập trang web với ba ngày đã trôi qua kể từ lần đầu tiên.
Một số người có thể xem đây là một tuyên bố chính trị vô hại, nhưng nó làm dấy lên thêm lo ngại về bảo mật chuỗi cung ứng phần mềm.
Hãy tưởng tượng bạn điều hành một cửa hàng trực tuyến hoặc dịch vụ thiết yếu và phát hiện ra rằng một phần người dùng không thể sử dụng trang web của bạn chỉ vì mã mà bạn không viết và không biết tồn tại trong các phụ thuộc của mình.
Người tạo gói đã loại bỏ chức năng này khỏi các phiên bản mới hơn, nhưng điều đó không giúp ích cho các trang web vẫn đang sử dụng các gói JavaScript cũ hơn, bị xâm phạm.
Nếu bạn là một nhà phát triển, đây là một lời nhắc nhở khác về lý do tại sao chúng ta cần cẩn thận với các gói mà chúng ta đưa vào dự án.
Mã của bên thứ ba có thể tiết kiệm thời gian và công sức, nhưng nó cũng mang lại những rủi ro không thể bỏ qua và có thể khiến bạn phải trả giá nhiều hơn về lâu dài.
Khi căng thẳng địa chính trị tiếp tục diễn ra trên toàn cầu, chúng ta đang chứng kiến ngày càng nhiều trường hợp các nhà phát triển sử dụng kỹ năng của họ để đưa ra các tuyên bố chính trị thông qua mã như trong các gói JavaScript này.
Dù bạn xem đây là một hành động phản đối hợp pháp hay một hành động phá hoại không phù hợp có lẽ phụ thuộc vào khuynh hướng chính trị của chính bạn.
(Ảnh bởiSean Foster)
Xem thêm:Vibe coding:
Tương lai của phát triển hay là lối tắt rủi ro?

Muốn tìm hiểu thêm về bảo mật mạng và điện toán đám mây từ các chuyên gia hàng đầu?Hãy xemCyber Security & Cloud Expodiễn ra tại Amsterdam, California và London.
Sự kiện toàn diện này được tổ chức cùng với các sự kiện hàng đầu khác bao gồmDigital Transformation Week,IoT Tech Expo,Blockchain Expo, vàAI & Big Data Expo.
Khám phá các sự kiện công nghệ doanh nghiệp và hội thảo trực tuyến sắp tới được cung cấp bởi TechForgetại đây.
Thẻ:coding , cybersecurity , development , infosec , javascript , npm , open-source , packages , programming , russia , security , ukraine