Mã độc Stuxnet – vũ khí mạng nhiều biến thể

15:08 | 02/04/2015

Mã độc Stuxnet bị phát hiện vào tháng 6/2010, được cho là có liên quan đến sự cố máy ly tâm hạt nhân của Iran. Sau đó, người ta còn phát hiện được các mã độc khác có liên hệ chặt chẽ với Stuxnet là Duqu, Flame, Gauss và các biến thể Stuxnet 0.500 và Stuxnet 1.x. Bài báo này điểm lại sự phát triển về mã độc Stuxnet – vũ khí mạng nhiều biến thê

1. Năm 2010 Phát hiện ra Stuxnet

Tháng 6/2010, các chuyên gia đã phát hiện mã độc Stuxnet mà không biết chính xác tên miền, nguồn gốc cụ thể; sự lây lan của nó dường như là ngẫu nhiên. Sau đó, cái tên Stuxnet xuất hiện nhiều trong các báo cáo có liên quan đến sự cố máy ly tâm hạt nhân của Iran. Người ta phỏng đoán nó được thiết kế như một nền tảng vũ khí mạng để tấn công hệ thống SCADA, mà phần lõi là hệ thống PLC (Programmable Logic Controller). 

Mã độc Stuxnet phá hoại dữ liệu hoặc các hệ thống máy tính; tự sao chép, lan truyền và hoạt động theo 3 giai đoạn. Bước đầu, nó lây nhiễm qua các máy tính sử dụng Windows và lan truyền qua mạng bằng biện pháp tự sao chép. Bước thứ hai, Stuxnet xâm nhập vào bước thứ 7 của phần mềm chạy trên Windows do Siemens phát triển (Step7) để kiểm soát các thiết bị công nghiệp. Stuxnet sử dụng cơ chế giả dạng tập tin thư viện liên kết động (DLL) để đánh lừa việc truy cập file DLL của Step7. Bước thứ ba, nó tìm cách can thiệp vào quá trình đọc/ghi dữ liệu từ máy tính đến bộ lập trình PLC và thay thế tập tin này bằng phiên bản riêng của nó để tham gia điều khiển PLC. Ngoài ra, Stuxnet còn có nhiều thành phần được phân tán nhiều nơi để sẵn sàng cập nhật khi cần. 

Các chuyên gia nhận định Stuxnet thực chất đã được phát tán từ hồi tháng 6/2009 trước thời điểm mà nó được phát hiện và đã từng 3 lần thực hiện cập nhật. Lúc đầu, người ta cho rằng, Stuxnet chỉ đơn giản là một công cụ để hỗ trợ cạnh tranh không lành mạnh trong kinh doanh. Nhưng việc sử dụng chứng thực số (digital certificate) lấy từ hai hãng sản xuất nổi tiếng Đài Loan là Realtek và JMicro để làm cho hệ thống bảo mật tin rằng Stuxnet chỉ là một phần mềm vô hại đã cảnh báo người ta mức độ nguy hiểm của nó. Lần đầu tiên, các chuyên gia bảo mật buộc phải chia sẻ thông tin và cùng nghiên cứu để tìm giải pháp chống Stuxnet - một điều gây bất lợi trong việc cạnh tranh. 

Khi xâm nhập vào thành công vào máy tính của nạn nhân, Stuxnet thực hiện báo cáo các thông tin thu thập được về hai trang web là: http://www.mypremierfutbol.com và http://www.todaysfutbol.com. Máy chủ ra lệnh và điều khiển (Command and Control Server - C&C) của hai tên miền này được đặt tại Malaysia và Đan Mạch. Những thông tin được Stuxnet chuyển về cho hacker bao gồm địa chỉ IP, hệ điều hành và máy có cài ứng dụng Step7 hay không. Nghiên cứu quá trình gửi ngược thông tin của Stuxnet, đồng thời với việc phân tích mã nguồn cũng như các dữ liệu báo cáo tại hiện trường, các chuyên gia đã khẳng định rằng: Stuxnet được thiết kế riêng để tấn công vào các hệ thống của Siemens đang được dùng để vận hành các máy li tâm làm giàu hạt nhân của Iran. 

2. Sự kết nối của các mã độc Duqu, Flame, Gauss với Stuxnet 

Trong thời gian Stuxnet bị phát lộ thì 3 loại mã độc khác cũng được giới chuyên môn phân tích đó là Duqu, Flame, Gauss. 

Duqu - năm 2011

Tháng 9/2011, sâu mạng máy tính Duqu đã bị phát hiện bởi Phòng thí nghiệm CrySyS Lab của Trường Đại học Kinh tế và Kỹ thuật Budapest - Hungary. Duqu được đặt tên xuất phát từ tiền tố “~DQ” của các file mà mã độc này tạo ra. Sâu Duqu cũng có chữ ký số hợp pháp được đánh cắp từ hãng C-Media (Đài Loan). Nhiệm vụ của nó là thu thập thông tin để chuẩn bị cho các đợt tấn công trong tương lai.

Flame - năm 2012

Tháng 5/2012, Ủy ban Truyền thông Quốc tế (ITU) đã đặt yêu cầu Kaspersky Lab nghiên cứu một mẫu mã độc bị nghi ngờ là đã phá hoại tập tin trong hệ thống thông tin của một công ty dầu mỏ Iran. Các chuyên gia tìm thấy trong mã nguồn một tập tin tên của Flame đã từng xuất hiện tại những phiên bản đầu tiên của Stuxnet. Flame thực chất là người tiền nhiệm của Stuxnet, song người ta không giải thích được lý do tại sao nó không bị phát hiện trước Stuxnet. Flame đóng vai trò gián điệp, lây lan qua USB và có thể nhiễm vào các máy tính được chia sẻ trên cùng một mạng. Khi xâm nhập thành công vào máy tính, Flame sẽ tìm kiếm những từ khóa trong các tập tin PDF được bảo mật, sau đó tạo và gửi về hacker bản tóm tắt của tài liệu này. Các hoạt động của Flame khó bị phát hiện bởi tập tin được nó gửi về máy chủ C&C bị chia nhỏ thành nhiều gói nên không gây biến động đột biến đối với dung lượng mạng. Flame còn có khả năng trao đổi dữ liệu với các thiết bị kết nối Bluetooth, thâm nhập vào máy tính thông qua một phiên bản giả cập nhật cho Windows 7. 

Gauss - năm 2012

Tháng 8/2012, các chuyên gia của ESET báo cáo về phần mềm độc hại Gauss trong lúc dịch ngược Flame. Gauss có sự tương đồng trong lập trình với Stuxnet, Duqu và Flame. Mục đích của nó gần giống Flame, đó là âm thầm giám sát các máy tính bị lây nhiễm. Gauss ẩn mình trên các USB và có nhiệm vụ lấy cắp các tập tin và mật khẩu của các ngân hàng; dữ liệu thu thập được ghi ngay trên USB nhiễm độc. Khi thiết bị được cắm vào một máy tính khác có kết nối mạng và đã bị nhiễm Gauss, Gauss sẽ gửi thông tin thu thập được về máy chủ C&C. Điều đặc biệt là khi bị truy tìm dấu vết, các địa chỉ máy chủ C&C của Gauss lập tức biến mất cùng với hành tung hoạt động của nó. 

3. Năm 2014, Stuxnet vẫn tồn tại trong hệ điều hành Windows 

Tiến trình phát triển của Stuxnet

Khi tìm ra được phiên bản đầu tiên (Stuxnet 0.500), các chuyên gia nhận xét rằng, Stuxnet 0.500 làm rõ lịch sử và sự tiến hóa của Stuxnet. Điều này được thể hiện trong hình 1 dưới đây (Table 1- Evolution of Stuxnet versions) của Báo cáo về Stuxnet của hãng Symantec.


Hình 1: Các phiên bản Stuxnet xuất hiện từ năm 2005 đến tháng 6/2012

Các chuyên gia phát hiện được rằng, mã tấn công 417 thực hiện nhiệm vụ của phiên bản Stuxnet 0.500 đã không còn tồn tại trong các phiên bản Stuxnet 1.x. Điều này cho thấy, mã tấn công 417 là công cụ tấn công đầu tiên của Stuxnet thực hiện nhiệm vụ sửa đổi trạng thái van trong quá trình làm giàu uranium tại Natanz, Iran, gây thiệt hại cho máy ly tâm. 

Hình 2: Tiến hóa của các phiên bản Stuxnet

Đến tháng 6/2014, khi nghiên cứu sâu về lỗ hổng các phiên bản của Windows các chuyên gia của Kaspersky Lab lại phát hiện ra Stuxnet. Phần mềm độc hại này đã lại xuất hiện sau khi khai thác lỗ hổng CVE-2010-2568. Đây là một lỗ hổng cho phép tải các thư viện động ngẫu nhiên có trong Windows XP, Vista, Windows 7, Windows Server 2003 và 2008. Trước đó, Microsoft đã phát hành một bản cập nhật bảo mật để vá lỗ hổng này, tuy vậy, Kaspersky Lab vẫn phát hiện hơn 19 triệu máy tính vẫn còn lỗ hổng CVE-2010-2568 (con số thống kê trong thời gian nghiên cứu là 50 triệu máy tính trên toàn thế giới). 

4. Stuxnet – dự án mã độc tầm quốc gia

Các chuyên gia nhận định rằng, trong giới lập trình hiện nay chỉ có khoảng 10 lập trình viên có đủ khả năng viết ra tính năng của Flame để phá vỡ được hệ thống bảo mật tầm cỡ quốc tế. Mục tiêu mà Stuxnet hướng tới không phải là tài chính mà để phục vụ mục đích chính trị của một quốc gia. Điều khiến giới chuyên môn hết sức ngạc nhiên là lần đầu tiên họ chứng kiến một nguy cơ bảo mật không gian mạng ảo có ảnh hưởng của chính trị trong thế giới thực. Và phần chìm của “tảng băng” Stuxnet còn thu hút sự chú ý của giới an ninh mạng.