Trong chiến dịch tấn công Operation Triangulation, nạn nhân sẽ nhận được tệp đính kèm iMessage độc hại khởi chạy một chuỗi khai thác và việc thực thi chúng cuối cùng dẫn đến việc khởi chạy phần mềm độc hại TriangleDB. Chi tiết hơn, chuỗi lây nhiễm có thể được tóm tắt bằng Hình 1.
Hình 1. Chuỗi lây nhiễm trong chiến dịch Operation Triangulation
Ngoài các hoạt động khai thác và thành phần của TriangleDB, chuỗi lây nhiễm còn có hai giai đoạn trình xác thực, bao gồm trình xác thực JavaScript và trình xác thực nhị phân.
Những trình xác thực này thu thập nhiều thông tin khác nhau về thiết bị nạn nhân và gửi nó đến máy chủ chỉ huy và kiểm soát (C2). Thông tin này sau đó được sử dụng để đánh giá xem iPhone hoặc iPad được nhúng TriangleDB có thể là thiết bị nghiên cứu hay không. Bằng cách thực hiện các kiểm tra như vậy, kẻ tấn công có thể đảm bảo rằng các lần khai thác zero-day và triển khai phần mềm độc hại của chúng không bị phát hiện.
Khi bắt đầu chuỗi lây nhiễm, nạn nhân nhận được tệp đính kèm iMessage vô hình với cách khai thác không cần nhấp chuột (zero-click). Mục tiêu cuối cùng của hành động này là bí mật mở một URL duy nhất trên miền backuprabbit[.]com.
Trang HTML được lưu trữ trên URL đó chứa mã JavaScript bị xáo trộn của thư viện mật mã NaCl cũng như payload được mã hóa. Payload này là trình xác thực JavaScript, nó thực hiện nhiều hoạt động kiểm tra khác nhau, bao gồm các phép toán số học như Math.log(-1) hoặc Math.sqrt(-1), tính khả dụng của các thành phần như nguồn API Media, WebAssembly và các thành phần khác.
Bên cạnh đó, trình xác thực này thực hiện một kỹ thuật lấy dấu vân tay được gọi là Canvas Fingerprinting bằng cách vẽ một hình tam giác màu vàng trên nền màu hồng bằng WebGL và tính tổng kiểm tra của nó.
Hình 2. Mã nguồn vẽ hình tam giác
Hình 3. Hình tam giác được vẽ
Trên thực tế, tam giác này là lý do tại sao các nhà nghiên cứu gọi toàn bộ chiến dịch này là Operation Triangulation. Sau khi chạy trình xác thực, nó sẽ mã hóa và gửi tất cả thông tin được thu thập đến một URL duy nhất khác trên backuprabbit[.]com để nhận (hoặc không nhận) giai đoạn tiếp theo của chuỗi lây nhiễm.
Như chúng ta thấy từ biểu đồ chuỗi lây nhiễm, trình xác thực này được khởi chạy trước khi triển khai bộ phần mềm độc hại TriangleDB. Ngược lại với trình xác thực JavaScript là một tập lệnh, trình xác thực này là tệp nhị phân Mach-O (do đó có tên là trình xác thực nhị phân). Khi khởi chạy, nó sẽ giải mã cấu hình của nó bằng AES.
Hình 4. Mã nguồn danh sách các hành động được thực thi
Tập lệnh này chứa danh sách các hành động (chẳng hạn như DeleteLogs, DeleteArtifacts,…) mà người xác thực phải thực hiện. Cụ thể là:
- Xóa nhật ký sự cố khỏi thư mục /private/var/mobile/Library/Logs/CrashReporter có thể đã được tạo trong quá trình khai thác.
- Tìm kiếm dấu vết của tệp đính kèm iMessage độc hại trong nhiều cơ sở dữ liệu khác nhau, chẳng hạn như ids-pub-id.db hoặc KnowledgeC.db, sau đó xóa chúng. Để có thể làm điều đó, cấu hình của trình xác thực chứa 40 mã băm MD5 của ID Apple được sử dụng để gửi iMessages độc hại. Các nhà nghiên cứu của Kasperksy đã cố gắng bẻ khóa phần lớn các hàm băm này, nhờ đó có được danh sách các địa chỉ email Apple ID do kẻ tấn công kiểm soát.
Hình 5. Danh sách địa chỉ email của kẻ tấn công
- Nhận danh sách các tiến trình đang chạy trên thiết bị, cũng như danh sách các giao diện (interface) của mạng.
- Kiểm tra xem thiết bị mục tiêu có được bẻ khóa hay không. Trình xác thực thực hiện kiểm tra một loạt các công cụ bẻ khóa, bao gồm: Pangu, xCon, Evasion7, Electra, unc0ver, checkra1n và nhiều công cụ khác.
- Bật theo dõi quảng cáo được cá nhân hóa.
- Thu thập nhiều loại thông tin về nạn nhân, chẳng hạn như tên người dùng, số điện thoại, IMEI và ID Apple.
- Truy xuất danh sách các ứng dụng đã cài đặt.
Điều thú vị về những hành động này là trình xác thực triển khai cho cả hệ thống iOS và macOS. Kaspersky cũng phát hiện ra rằng trình xác nhận thực hiện một hành động không được sử dụng, được những kẻ tấn công gọi là PSPDetect.
Hình 6. mã nguồn về hành động PSPDetect
Hành động này truy xuất danh sách các tệp từ cấu hình của trình xác thực (danh sách này trống đối với các cấu hình trình xác thực mà các nhà nghiên cứu đã phân tích), kiểm tra xem chúng có trong hệ thống tệp hay không và tạo danh sách các tệp được tìm thấy làm đầu ra.
Chữ viết tắt PSP trong tên của hành động này có thể có nghĩa là một giải pháp bảo mật. Do đó, có thể hành động này có thể được khởi chạy trên các thiết bị macOS để phát hiện các sản phẩm anti-virus đã được cài đặt.
Sau khi thực hiện tất cả các hành động này, trình xác thực sẽ mã hóa và gửi dữ liệu thu được, bao gồm danh sách các tiến trình, thông tin người dùng,… đến máy chủ C2. Để phản hồi, máy chủ trả về bộ phần mềm TriangleDB đã mô tả trước đó.
Tác nhân đe dọa đằng sau chiến dịch này thực hiện hành vi lén lút không chỉ bằng cách đưa hai trình xác thực vào chuỗi lây nhiễm. Trên thực tế, chúng thực hiện mọi thao tác với TriangleDB rất cẩn thận.
Sau khi phần mềm độc hại thiết lập liên lạc với máy chủ C2 và gửi heartbeat, nó sẽ nhận được nhiều lệnh CRXShowTables và CRXFetchRecord từ máy chủ C2. Các lệnh này liên quan đến việc truy xuất nhật ký có thể hiển thị dấu vết của chuỗi lây nhiễm hoặc chính phần mềm độc hại. Một số tệp được truy xuất là:
- Các tệp nhật ký sự cố (ví dụ: các tệp trong /var/mobile/Library/Logs/CrashReporter).
- Các tệp cơ sở dữ liệu (ví dụ: /private/var/mobile/Library/IdentityServices/ids-gossip.db). Các tệp này có thể chứa ID Apple được kẻ tấn công sử dụng để gửi iMessage độc hại.
Sau khi những kẻ tấn công nhận được các tệp này, chúng sẽ xóa chúng khỏi thiết bị để nạn nhân không thể kiểm tra chúng và có thể tìm thấy dấu hiệu xâm phạm. Sau khi hoàn tất việc thu thập và xóa nhật ký, kẻ tấn công sẽ gửi nhiều lệnh CRXPollRecords đến phần mềm độc hại, hướng dẫn nó trích xuất định kỳ các tệp từ thư mục /private/var/tmp.
Bảng 1: Vai trò của các biểu thức chính quy
Một trong những module xâm phạm quyền riêng tư nhất là ghi micrô, có tên là msu3h (các nhà nghiên cứu tin rằng 3h là viết tắt của ba giờ, thời lượng ghi mặc định). Sau khi thực thi, nó sẽ giải mã (sử dụng thuật toán tùy chỉnh lấy từ hàm băm GTA IV) cấu hình của nó, nhưng nó chỉ thực hiện các hành động tiếp theo nếu pin được sạc trên 10%.
Bản thân tệp cấu hình chứa dữ liệu cấu hình điển hình, chẳng hạn như thời lượng ghi và khóa mã hóa AES được sử dụng để mã hóa các bản ghi, cũng như nhiều thông số đe dọa hơn, chẳng hạn như:
- SuspOnDeviceInUse: Đặt xem có nên dừng ghi hay không nếu màn hình thiết bị được bật.
- syslogRelayOverride: Đặt xem có nên ghi âm thanh khi ghi nhật ký hệ thống hay không.
Quá trình ghi diễn ra bằng Audio Queue API và các đoạn âm thanh được nén bằng Speex codec, sau đó được mã hóa bằng AES. Ngoài dữ liệu âm thanh, mỗi bản ghi còn chứa các thông báo có mã định danh kiểu 4 byte (Bảng 2).
Bảng 2: Mã định danh của các mã thông báo
Nhiều ứng dụng trên iOS sử dụng SQLite để lưu trữ dữ liệu nội bộ của chúng. Do đó, không có gì ngạc nhiên khi những kẻ tấn công đã triển khai các module có khả năng đánh cắp dữ liệu từ nhiều cơ sở dữ liệu SQLite khác nhau.
Tất cả các module này có cùng codebase và chứa các truy vấn SQL khác nhau sẽ được thực thi. Một lần nữa, chúng có cấu hình được mã hóa. Khi điều này được giải mã, chỉ có thể tìm thấy các biến tiêu chuẩn như đường dẫn tệp, khóa AES, chuỗi truy vấn,…
Code của các module này khá đặc biệt. Ví dụ: những kẻ tấn công đã triển khai một trình bao bọc xung quanh hàm fopen(), thêm cờ Z (cho biết rằng tệp được tạo phải được mã hóa AES và nén zlib) được sử dụng kết hợp với cờ w (ghi) tiêu chuẩn, như có thể nhìn thấy trong hình ảnh dưới đây.
Hình 7. Mã nguồn module đánh cắp SQLite
Mỗi module mà các nhà nghiên cứu tìm thấy sẽ thực hiện các truy vấn cơ sở dữ liệu SQL khác nhau. Ví dụ: có một module xử lý dữ liệu sử dụng ứng dụng từ cơ sở dữ liệu KnowledgeC.db. Một module khác trích xuất metadata liên quan đến ảnh, chẳng hạn như có trẻ em trong ảnh hay không, người đó là nam hay nữ,…
Module này chạy trong một luồng riêng biệt và cố gắng mạo danh gói được ủy quyền sử dụng các dịch vụ định vị được chỉ định trong cấu hình (ví dụ: /System/Library/LocationBundles/Routine.bundle).
Ngoài việc sử dụng GPS để xác định vị trí, nó còn sử dụng GSM, truy xuất các giá trị MCC (MobileCountryCode), MNC (MobileNetworkCode), LAC (LocationAreaCode) và CID (CellID) thông qua framework CoreTelephony. Một lý do để sử dụng dữ liệu liên quan đến GSM là để ước tính vị trí của nạn nhân khi không có dữ liệu GPS.
Hồng Đạt
(tổng hợp)
13:00 | 26/02/2024
10:00 | 26/10/2023
13:00 | 09/10/2023
07:00 | 27/12/2023
09:00 | 13/02/2024
09:00 | 07/06/2023
09:00 | 06/06/2023
11:00 | 26/04/2024
Các nhà nghiên cứu của công ty an ninh mạng BlackBerry đã phát hiện một chiến dịch gián điệp mạng nhắm vào người dùng iPhone ở khu vực Nam Á, với mục đích phân phối payload của phần mềm gián điệp có tên là LightSpy. BlackBerry cho biết chiến dịch này có khả năng cho thấy sự tập trung mới của các tác nhân đe dọa vào các mục tiêu chính trị và căng thẳng trong khu vực.
09:00 | 02/04/2024
Một chiến dịch phần mềm độc hại trên quy mô lớn có tên Sign1 đã xâm phạm hơn 39.000 trang web WordPress trong 6 tháng qua, sử dụng cách thức chèn mã JavaScript độc hại để chuyển hướng người dùng đến các trang web lừa đảo.
13:00 | 23/01/2024
Các nhà cung cấp dịch vụ viễn thông, truyền thông, Internet (ISP), nhà cung cấp dịch vụ công nghệ thông tin và các trang web của người Kurd ở Hà Lan đã trở thành mục tiêu của một chiến dịch gián điệp mạng mới do nhóm tin tặc có tên gọi là Sea Turtle thực hiện. Nhóm này hoạt động với động cơ chính trị nhằm thu thập thông tin tình báo phù hợp với những lợi ích của Thổ Nhĩ Kỳ. Bài viết này sẽ cùng phân tích về các hoạt động của nhóm tin tặc này và các kỹ thuật trong chiến dịch mới nhất, dựa trên báo cáo điều tra của công ty an ninh mạng Hunt&Hackett (Hà Lan).
09:00 | 08/12/2023
Để bổ sung thêm những tính năng dành cho các nền tảng ứng dụng nhắn tin hiện nay, các nhà phát triển bên thứ ba đã đưa ra các bản mod (phiên bản sửa đổi của ứng dụng không chính thức) cung cấp các tính năng mới bên cạnh những nâng cấp về mặt giao diện. Tuy nhiên, một số mod này có thể chứa phần mềm độc hại cùng với các cải tiến hợp pháp. Một trường hợp điển hình đã xảy ra vào năm ngoái khi các nhà nghiên cứu Kaspersky phát hiện ra Trojan Triada bên trong bản mod WhatsApp. Gần đây, các nhà nghiên cứu đã phát hiện một bản mod Telegram có module gián điệp được nhúng và phân phối thông qua Google Play. Câu chuyện tương tự hiện tại xảy ra với WhatsApp, khi một số bản mod trước đây đã được phát hiện có chứa module gián điệp có tên là Trojan-Spy.AndroidOS.CanesSpy.
Nhóm tình báo mối đe dọa Threat Intelligence của Microsoft cho biết, các tác nhân đe dọa đang tích cực khai thác các lỗ hổng nghiêm trọng trong OpenMetadata để có quyền truy cập trái phép vào khối lượng workload trong Kubernetes và lạm dụng chúng cho hoạt động khai thác tiền điện tử.
14:00 | 25/04/2024