WhiteHat News #ID:2112
VIP Members
-
16/06/2015
-
83
-
672 bài viết
Mã độc đánh cắp thông tin USBCulprit nhắm mục tiêu vào các thiết bị air-gap
Nhóm APT Cycldek đã bổ sung một phần mềm độc hại chưa được biết đến trước đây có tên là USBCulprit vào kho vũ khí của mình nhằm mục đích tiếp cận các thiết bị được cách ly hoàn toàn với Internet hoặc các mạng khác (air-gap).
Cycldek (hay còn gọi là Goblin Panda, APT 27 và Conimes) nhắm mục tiêu vào các chính phủ ở Đông Nam Á kể từ năm 2013. Mới đây nhất, USBCulprit được sử dụng để nhắm vào các mục tiêu ở Việt Nam, Thái Lan và Lào, theo Kaspersky.
USBCulprit sở hữu cả hai khả năng là di chuyển qua mạng và đánh cắp dữ liệu. Các tính năng khác của USBCulprit gợi ý rằng nó được tạo ra để tiếp cận các máy bị cô lập về mặt vật lý, trong đó cách duy nhất để truyền dữ liệu ra vào là qua các phương tiện di động như USB.
Con đường lây nhiễm
Phân tích mã, các nhà nghiên cứu của Kaspersky thấy bản dựng đầu tiên bắt đầu từ năm 2014, mẫu mới nhất được đánh dấu thời gian vào năm ngoái.
Hầu hết các cuộc tấn công quan sát được bắt đầu bằng các email lừa đảo có chứa các tài liệu RTF theo chủ đề chính trị khai thác các lỗ hổng đã biết. Sau khi bị xâm nhập, nạn nhân bị nhiễm một payload độc hại gọi là NewCore RAT.
“Mã độc này bao gồm hai biến thể với khả năng đánh cắp dữ liệu tiên tiến: BlueCore và RedCore. BlueCore dường như được nhắm vào các mục tiêu ngoại giao và cơ quan chính phủ tại Việt Nam, trong khi RedCore được thấy ở cả Việt Nam và Lào”.
Cả BlueCore và RedC lần lượt tải xuống USBCulprit (và các công cụ khác chẳng hạn như cửa hậu tùy chỉnh, công cụ đánh cắp cookie và công cụ đánh cắp mật khẩu từ cơ sở dữ liệu trình duyệt dựa trên Chromium). Mã độc được cấy dưới dạng DLL side-loaded của các ứng dụng đã được ký hợp pháp.
Các ứng dụng như vậy bao gồm các thành phần diệt virus như wsc_proxy.exe (dịch vụ sửa lỗi Avast), qcconsol.exe và mcvsshld.exe (thành phần McAfee) cũng như các tiện ích hợp pháp của Microsoft và Google như trình biên dịch tài nguyên (rc.exe) và Google Updates (googleupdate.exe). Các công cụ này có thể được sử dụng để vượt qua các cơ chế bảo mật yếu như danh sách trắng ứng dụng, cấp cho mã độc quyền bổ sung trong quá trình thực thi hoặc làm phức tạp hóa phản ứng sự cố.
Phân tích USBCulprit
Khi USBCulprit được tải vào bộ nhớ và được thực thi, nó sẽ hoạt động theo ba giai đoạn: Quét và điều chỉnh dữ liệu, lọc dữ liệu đến hoặc từ một thiết bị USB và di chuyển qua mạng.
Trong giai đoạn thu thập dữ liệu, mã độc gọi hai chức năng là CUSB::RegHideFileExt và CUSB::RegHideFile để sửa đổi các khóa đăng ký nhằm ẩn phần mở rộng của tệp trong Windows và xác minh rằng các tệp ẩn không được hiển thị cho người dùng. Nó cũng quét máy bị nhiễm để liệt kê các tệp mà nó dự định đánh cắp bằng cách sử dụng một chức năng có tên là CUSB::USBFindFile. Mã độc quét các phần mở rộng sau: *.pdf; *.doc; *.wps; *docx; *ppt; *.xls; *.xlsx; *.pptx; *.rtf. Các tập tin được chọn sau đó được nhóm lại vào một file RAR mã hóa.
Tiếp theo là giai đoạn đánh cắp thông tin, cũng bao gồm các chức năng thu thập dữ liệu USB. Mã độc cố gắng chặn kết nối của phương tiện mới và xác minh rằng nó tương ứng với một ổ đĩa di động. Khi phát hiện thấy USB được kết nối, mã độc sẽ xác định file RAR có nên được sao chép vào ổ đĩa di động hay không hoặc nếu dữ liệu bổ sung nên được lấy từ ổ đĩa và sao chép cục bộ hay không.
Để thực hiện điều này, một thư mục có tên ‘$Recyc1e.Bin’ sẽ được tìm kiếm trong ổ đĩa và nếu không tìm thấy, sẽ được tạo ra. Thư mục này sẽ được sử dụng làm đường dẫn đích để sao chép tệp vào ổ đĩa hoặc đường dẫn nguồn để lấy tệp. Để biết hướng sao chép tệp, một tệp đánh dấu đặc biệt có tên ‘1.txt’ được tìm kiếm cục bộ. Nếu tệp này tồn tại, mã độc sẽ tìm thấy thư mục $Recyc1e.Bin trong ổ đĩa với tài liệu lưu trữ bị đánh cắp trước đó và cố gắng sao chép nó vào đĩa. Nếu không, các tệp lưu trữ cục bộ sẽ được sao chép.
Trong giai đoạn cuối cùng, di chuyển qua mạng, sự tồn tại của một tệp đánh dấu khác có tên ‘2.txt’ sẽ được kiểm tra cục bộ để quyết định xem có nên tiến hành di chuyển qua mạng hay không. USBCulprit cũng có khả năng tự cập nhật hoặc mở rộng thực thi với các mô-đun tiếp theo “bằng cách tìm kiếm sự tồn tại của các tệp được xác định trước trong USB và thực thi chúng”.
Ngoài ra, một số biến thể đưa ra các lệnh để thu thập các mẩu thông tin mạng máy chủ khác nhau: Những thứ này được ghi vào một tệp mà sau đó được chuyển cùng với dữ liệu bị đánh cắp sang USB và có thể giúp kẻ tấn công xác định xem máy có chứa mã độc thực sự là một phần của một mạng tách biệt.
Hiệu ứng Air-Gap
Các nhà nghiên cứu lưu ý rằng USBCuprit chỉ sử dụng phương tiện lưu động như một phương tiện truyền dữ liệu trong và ngoài. Điều đó nói lên rằng mã độc không tự động thực thi khi kết nối USB, suy ra mã độc được chạy thủ công bởi người điều khiển [có hiện diện vật lý].
Trong một lây nhiễm, các nhà nghiên cứu thấy cùng một mẫu được thực hiện từ các vị trí ổ đĩa khác nhau, cho thấy nó thực sự được phát tán ra xung quanh. Mã độc này cùng với các tệp rất cụ thể mà nó tìm kiếm như các phần mở rộng có thể thực thi và không thể tìm thấy như các tạo phẩm ở nơi khác chỉ ra yếu tố con người để hỗ trợ triển khai mã độc trong các mạng nạn nhân.
Trên hết, các phát hiện cho thấy Cycldek đang tăng dần độ tinh vi của mình.
Cycldek (hay còn gọi là Goblin Panda, APT 27 và Conimes) nhắm mục tiêu vào các chính phủ ở Đông Nam Á kể từ năm 2013. Mới đây nhất, USBCulprit được sử dụng để nhắm vào các mục tiêu ở Việt Nam, Thái Lan và Lào, theo Kaspersky.
USBCulprit sở hữu cả hai khả năng là di chuyển qua mạng và đánh cắp dữ liệu. Các tính năng khác của USBCulprit gợi ý rằng nó được tạo ra để tiếp cận các máy bị cô lập về mặt vật lý, trong đó cách duy nhất để truyền dữ liệu ra vào là qua các phương tiện di động như USB.
Con đường lây nhiễm
Phân tích mã, các nhà nghiên cứu của Kaspersky thấy bản dựng đầu tiên bắt đầu từ năm 2014, mẫu mới nhất được đánh dấu thời gian vào năm ngoái.
Hầu hết các cuộc tấn công quan sát được bắt đầu bằng các email lừa đảo có chứa các tài liệu RTF theo chủ đề chính trị khai thác các lỗ hổng đã biết. Sau khi bị xâm nhập, nạn nhân bị nhiễm một payload độc hại gọi là NewCore RAT.
“Mã độc này bao gồm hai biến thể với khả năng đánh cắp dữ liệu tiên tiến: BlueCore và RedCore. BlueCore dường như được nhắm vào các mục tiêu ngoại giao và cơ quan chính phủ tại Việt Nam, trong khi RedCore được thấy ở cả Việt Nam và Lào”.
Cả BlueCore và RedC lần lượt tải xuống USBCulprit (và các công cụ khác chẳng hạn như cửa hậu tùy chỉnh, công cụ đánh cắp cookie và công cụ đánh cắp mật khẩu từ cơ sở dữ liệu trình duyệt dựa trên Chromium). Mã độc được cấy dưới dạng DLL side-loaded của các ứng dụng đã được ký hợp pháp.
Các ứng dụng như vậy bao gồm các thành phần diệt virus như wsc_proxy.exe (dịch vụ sửa lỗi Avast), qcconsol.exe và mcvsshld.exe (thành phần McAfee) cũng như các tiện ích hợp pháp của Microsoft và Google như trình biên dịch tài nguyên (rc.exe) và Google Updates (googleupdate.exe). Các công cụ này có thể được sử dụng để vượt qua các cơ chế bảo mật yếu như danh sách trắng ứng dụng, cấp cho mã độc quyền bổ sung trong quá trình thực thi hoặc làm phức tạp hóa phản ứng sự cố.
Phân tích USBCulprit
Khi USBCulprit được tải vào bộ nhớ và được thực thi, nó sẽ hoạt động theo ba giai đoạn: Quét và điều chỉnh dữ liệu, lọc dữ liệu đến hoặc từ một thiết bị USB và di chuyển qua mạng.
Trong giai đoạn thu thập dữ liệu, mã độc gọi hai chức năng là CUSB::RegHideFileExt và CUSB::RegHideFile để sửa đổi các khóa đăng ký nhằm ẩn phần mở rộng của tệp trong Windows và xác minh rằng các tệp ẩn không được hiển thị cho người dùng. Nó cũng quét máy bị nhiễm để liệt kê các tệp mà nó dự định đánh cắp bằng cách sử dụng một chức năng có tên là CUSB::USBFindFile. Mã độc quét các phần mở rộng sau: *.pdf; *.doc; *.wps; *docx; *ppt; *.xls; *.xlsx; *.pptx; *.rtf. Các tập tin được chọn sau đó được nhóm lại vào một file RAR mã hóa.
Tiếp theo là giai đoạn đánh cắp thông tin, cũng bao gồm các chức năng thu thập dữ liệu USB. Mã độc cố gắng chặn kết nối của phương tiện mới và xác minh rằng nó tương ứng với một ổ đĩa di động. Khi phát hiện thấy USB được kết nối, mã độc sẽ xác định file RAR có nên được sao chép vào ổ đĩa di động hay không hoặc nếu dữ liệu bổ sung nên được lấy từ ổ đĩa và sao chép cục bộ hay không.
Để thực hiện điều này, một thư mục có tên ‘$Recyc1e.Bin’ sẽ được tìm kiếm trong ổ đĩa và nếu không tìm thấy, sẽ được tạo ra. Thư mục này sẽ được sử dụng làm đường dẫn đích để sao chép tệp vào ổ đĩa hoặc đường dẫn nguồn để lấy tệp. Để biết hướng sao chép tệp, một tệp đánh dấu đặc biệt có tên ‘1.txt’ được tìm kiếm cục bộ. Nếu tệp này tồn tại, mã độc sẽ tìm thấy thư mục $Recyc1e.Bin trong ổ đĩa với tài liệu lưu trữ bị đánh cắp trước đó và cố gắng sao chép nó vào đĩa. Nếu không, các tệp lưu trữ cục bộ sẽ được sao chép.
Trong giai đoạn cuối cùng, di chuyển qua mạng, sự tồn tại của một tệp đánh dấu khác có tên ‘2.txt’ sẽ được kiểm tra cục bộ để quyết định xem có nên tiến hành di chuyển qua mạng hay không. USBCulprit cũng có khả năng tự cập nhật hoặc mở rộng thực thi với các mô-đun tiếp theo “bằng cách tìm kiếm sự tồn tại của các tệp được xác định trước trong USB và thực thi chúng”.
Ngoài ra, một số biến thể đưa ra các lệnh để thu thập các mẩu thông tin mạng máy chủ khác nhau: Những thứ này được ghi vào một tệp mà sau đó được chuyển cùng với dữ liệu bị đánh cắp sang USB và có thể giúp kẻ tấn công xác định xem máy có chứa mã độc thực sự là một phần của một mạng tách biệt.
Hiệu ứng Air-Gap
Các nhà nghiên cứu lưu ý rằng USBCuprit chỉ sử dụng phương tiện lưu động như một phương tiện truyền dữ liệu trong và ngoài. Điều đó nói lên rằng mã độc không tự động thực thi khi kết nối USB, suy ra mã độc được chạy thủ công bởi người điều khiển [có hiện diện vật lý].
Trong một lây nhiễm, các nhà nghiên cứu thấy cùng một mẫu được thực hiện từ các vị trí ổ đĩa khác nhau, cho thấy nó thực sự được phát tán ra xung quanh. Mã độc này cùng với các tệp rất cụ thể mà nó tìm kiếm như các phần mở rộng có thể thực thi và không thể tìm thấy như các tạo phẩm ở nơi khác chỉ ra yếu tố con người để hỗ trợ triển khai mã độc trong các mạng nạn nhân.
Trên hết, các phát hiện cho thấy Cycldek đang tăng dần độ tinh vi của mình.
Theo Threatpost
Chỉnh sửa lần cuối: