Phân tích cuộc tấn công chuỗi cung ứng để cài đặt backdoor nhắm vào các hệ thống Linux

13:00 | 20/09/2023 | CÔNG NGHỆ PKI
Trong vài năm qua, các máy chủ Linux đã ngày càng trở thành mục tiêu nổi bật của các tác nhân đe dọa. Mới đây, Kaspersky đã tiết lộ một chiến dịch độc hại trong đó một trình cài đặt phần mềm có tên “Free Download Manager” được các tin tặc sử dụng để cài đặt backdoor trên các máy chủ Linux kéo dài trong suốt 3 năm qua. Các nhà nghiên cứu phát hiện ra rằng nạn nhân đã bị lây nhiễm khi họ tải xuống phần mềm từ trang web chính thức, cho thấy đây có thể là một cuộc tấn công chuỗi cung ứng. Các biến thể của phần mềm độc hại được sử dụng trong chiến dịch này lần đầu tiên được xác định vào năm 2013.

Sử dụng phần mềm Free Download Manager để cài đặt backdoor trên Linux

Các nhà nghiên cứu của Kaspersky đã xác định một chiến dịch độc hại mới nhắm mục tiêu vào các hệ thống Linux, trong đó các tin tặc đã triển khai backdoor - một loại Trojan vào thiết bị của nạn nhân bằng cách sử dụng phiên bản bị lây nhiễm của một phần mềm miễn phí phổ biến: Free Download Manager.

Các nhà nghiên cứu đã tiến hành phân tích một nhóm tên miền đáng ngờ có thể là nơi chứa phần mềm độc hại sử dụng thuật toán tạo miền cho liên lạc máy chủ C2, cụ thể là tên miền “fdmpkg[.]org”.

Kho lưu trữ Debian độc hại

Hình 1. Tên miền deb[.]fdmpkg[.]org

Theo đề xuất của trang, tên miền “deb[.]fdmpkg[.]org” sẽ lưu trữ kho lưu trữ Debian của phần mềm Free Download Manager. Các nhà nghiên cứu còn phát hiện thêm gói Debian của phần mềm này có sẵn để tải xuống từ URL “https://deb.fdmpkg[.]org/freedownloadmanager.deb”. Sau khi phân tích thì gói này chứa tập lệnh “postinst” bị nhiễm được thực thi khi cài đặt. Tập lệnh này đã nhúng hai tệp ELF vào đường dẫn “/var/tmp/crond” và “/var/tmp/bs”. Sau đó, nó thiết lập tính bền vững bằng cách tạo một tác vụ “cron” (được lưu trong tệp “/etc/cron.d/collect”) để khởi chạy tệp “/var/tmp/crond” cứ sau 10 phút.

Phiên bản Free Download Manager bị nhiễm cài đặt mã độc đã được phát hành vào ngày 24/1/2020. Trong khi đó, tập lệnh postinst chứa các nhận xét bằng tiếng Nga và tiếng Ukraina, bao gồm thông tin về các cải tiến được thực hiện đối với phần mềm độc hại cũng như các tuyên bố của nhà hoạt động.

Backdoor dựa trên DNS

Sau khi cài đặt gói độc hại, tệp thực thi “/var/tmp/crond” sẽ được khởi chạy mỗi lần khởi động thông qua cron. Tệp thực thi này là backdoor và nó không nhập bất kỳ chức năng nào từ các thư viện bên ngoài.

Khi khởi động, backdoor này tạo một bản ghi A đối với tên miền “<chuỗi 20 byte được mã hóa hex>.u.fdmpkg[.]org”. Để đáp ứng yêu cầu này, backdoor nhận được hai địa chỉ IP mã hóa địa chỉ và cổng của máy chủ C2 thứ cấp, bao gồm: 172[.]111[.]48[.]101 và 172[.]1[.]0[.]80.

Địa chỉ IP đầu tiên trong danh sách trên là địa chỉ của máy chủ C2 thứ cấp, trong khi địa chỉ thứ hai chứa cổng kết nối (được mã hóa trong octet thứ ba và thứ tư) và loại kết nối (được mã hóa trong octet thứ hai).

Sau khi phân tích phản hồi của yêu cầu DNS, backdoor sẽ khởi chạy một tập lệnh Reverse Shell sử dụng máy chủ C2 thứ cấp để liên lạc. Giao thức truyền thông, tùy thuộc vào loại kết nối, có thể là SSL hoặc TCP. Trong trường hợp SSL, backdoor crond khởi chạy tệp thực thi “/var/tmp/bs” và ủy quyền tất cả các thông tin liên lạc tiếp theo cho nó. Ngược lại, Reverse Shell được tạo ra bởi chính backdoor crond.

Công cụ đánh cắp Bash

Sau khi phát hiện ra rằng backdoor crond tạo ra một Reverse Shell, các nhà nghiên cứu kiểm tra xem những kẻ tấn công sử dụng Reverse Shell này như thế nào. Để làm điều đó, các nhà nghiên cứu đã cài đặt gói Free Download Manager bị nhiễm mã độc trong môi trường Sandbox để phân tích. Sau đó, Kaspersky xác định rằng những kẻ tấn công đã triển khai công cụ đánh cắp Bash vào Sandbox. Công cụ này thu thập dữ liệu như thông tin hệ thống, lịch sử duyệt web, mật khẩu đã lưu, tệp ví tiền điện tử và thậm chí cả thông tin xác thực cho các dịch vụ đám mây như Amazon Web Services hoặc Google Cloud.

Hình 2. Công cụ đánh cắp Bash

Sau khi thu thập thông tin từ máy bị nhiễm, công cụ đánh cắp này tải xuống tệp nhị phân của trình tải lên từ máy chủ C2, lưu nó vào “/var/tmp/atd”. Sau đó, nó sử dụng tệp nhị phân này để tải kết quả thực thi của công cụ vào cơ sở hạ tầng của tin tặc.

Kaspersky không quan sát thấy bất kỳ hoạt động nào khác được thực hiện thông qua Reverse Shell và do đó, toàn bộ chuỗi lây nhiễm có thể được mô tả bằng Hình 3.

Hình 3. Chuỗi lây nhiễm

Bí ẩn của vectơ lây nhiễm

Sau khi phân tích tất cả các thành phần trong chuỗi, các nhà nghiên cứu muốn tìm hiểu xem gói Debian bị nhiễm được phân phối đến nạn nhân như thế nào. Kaspersky đã kiểm tra trang web chính thức của Free Download Manager. Các gói có sẵn để tải xuống từ trang web này hóa ra được lưu trữ trên miền “files2[.]freedownloadmanager[.]org” và chúng không có backdoor.

Sau đó, các nhà nghiên cứu kiểm tra mã nguồn mở trên tên miền “fdmpkg[.]org”. Quá trình kiểm tra này đã tiết lộ hàng chục bài đăng trên các trang web như StackOverflow và Reddit, nơi người dùng đang thảo luận về các vấn đề do bản phân phối Free Download Manager bị nhiễm mã độc gây ra mà không nhận ra rằng họ thực sự đã trở thành nạn nhân của phần mềm độc hại. Những bài đăng này được thực hiện trong suốt ba năm, từ năm 2020 đến năm 2022.

Trong một bài đăng được tạo vào năm 2020, một người dùng Reddit đã hỏi liệu có ổn không khi cài đặt Free Download Manager mà không chạy tập lệnh postinst, tập lệnh mà người dùng không biết có chứa phần mềm độc hại.

Hình 4. Bài đăng đặt câu hỏi của người dùng trên Reddit khi cài đặt Free Download Manager mà không chạy tập lệnh postinst

Hơn nữa, tác giả bài đăng đã dán nội dung của tập lệnh và một người dùng Reddit khác đã chỉ ra trong phần bình luận rằng nó có thể độc hại. Tuy nhiên, những người dùng này không xác định được trang web phân phối gói bị nhiễm hoặc tìm hiểu xem tập lệnh này làm gì. Tất cả những bài đăng này trên mạng xã hội khiến các nhà nghiên cứu nghĩ rằng gói Debian độc hại có thể đã được phân phối qua một cuộc tấn công chuỗi cung ứng, thông qua trang web “freedownloadmanager[.]org”.

Phân tích các video hướng dẫn trên YouTube

Trong quá trình điều tra hướng dẫn cài đặt Free Download Manager trên YouTube dành cho máy tính Linux, các nhà nghiên cứu đã phát hiện ra các trường hợp người đăng tải video vô tình thể hiện quá trình lây nhiễm ban đầu thông qua việc nhấp vào nút tải xuống trên trang web chính thức dẫn đến tải xuống phiên bản độc hại của Free Download Manager. Ngược lại, trong một video khác, một phiên bản hợp pháp của phần mềm đã được tải xuống. Có thể các nhà phát triển phần mềm độc hại đã viết kịch bản chuyển hướng độc hại để xuất hiện với một mức độ xác suất nào đó hoặc dựa trên dấu vân tay kỹ thuật số của nạn nhân. Kết quả là một số người dùng gặp phải gói độc hại, trong khi những người khác nhận được phiên bản hợp pháp.

Nguồn gốc của backdoor

Sau khi xác định cách phân phối gói Free Download Manager bị nhiễm, Kaspersky đã kiểm tra xem liệu mã độc hại được phát hiện trong quá trình nghiên cứu có mã trùng lặp với các mẫu phần mềm độc hại khác hay không. Trong quá trình phân tích, các nhà nghiên cứu cho biết backdoor cron đại diện cho một phiên bản sửa đổi của backdoor có tên “Bew”. Các giải pháp bảo mật của Kaspersky đối với Linux đã phát hiện các biến thể của nó kể từ năm 2013.

Hình 5. Mã của phiên bản 2013 của Bew (trái, MD5: 96d8d47a579717223786498113fbb913) và backdoor crond (phải, MD5: 6ced2df96e1ef6b35f25ea0f208e5440)

Backdoor Bew đã được phân tích nhiều lần và một trong những mô tả đầu tiên của nó đã được xuất bản vào năm 2014. Ngoài ra, vào năm 2017, Tổ chức Nghiên cứu Hạt nhân châu Âu (CERN) đã đăng thông tin về chiến dịch BusyWinman liên quan đến việc sử dụng Bew. Theo CERN, việc lây nhiễm Bew được thực hiện thông qua việc tải xuống theo từng ổ đĩa.

Về phần công cụ Bash, phiên bản đầu tiên của nó đã được công ty an ninh mạng Yoroi mô tả vào năm 2019. Nó được sử dụng sau khi khai thác lỗ hổng trên máy chủ mail Exim.

Lý do các gói độc hại không được phát hiện sớm hơn

Phần mềm độc hại được quan sát trong chiến dịch này đã được biết đến từ năm 2013. Theo dữ liệu phép đo từ xa của Kaspersky, nạn nhân của chiến dịch nằm ở khắp nơi trên thế giới, bao gồm Brazil, Trung Quốc, Ả Rập Saudi và Nga. Với những thực tế này, có vẻ như gói Free Download Manager độc hại vẫn không bị phát hiện trong hơn ba năm. Kaspersky đánh giá điều này là do các yếu tố sau:

  • Trái ngược với Windows, phần mềm độc hại trên Linux hiếm khi được phát hiện hơn.
  • Việc lây nhiễm gói Debian độc hại xảy ra với một mức độ xác suất nhất định: một số người dùng đã nhận được gói bị nhiễm, trong khi những người khác tải xuống gói hợp pháp.
  • Người dùng mạng xã hội thảo luận về các vấn đề của Free Download Manager không nghi ngờ rằng chúng là do phần mềm độc hại gây ra.

Georgy Kucherin, chuyên gia bảo mật tại Kaspersky cho biết: “Các biến thể của backdoor được phân tích đã được phát hiện bởi các giải pháp của Kaspersky dành cho Linux kể từ năm 2013. Tuy nhiên, có một quan niệm sai lầm phổ biến rằng Linux miễn nhiễm với phần mềm độc hại, khiến nhiều hệ thống trong số này không được bảo mật đầy đủ. Sự thiếu bảo vệ này khiến các hệ thống này trở thành mục tiêu khai thác của tội phạm mạng. Về cơ bản, trường hợp của Free Download Manager cho thấy thách thức trong việc phát hiện một cuộc tấn công mạng đang diễn ra trên hệ thống Linux. Do đó, điều cần thiết đối với các máy tính chạy Linux là phải triển khai các biện pháp bảo mật đáng tin cậy và hiệu quả”.

Hồng Đạt

Tin cùng chuyên mục

Tin mới