Mục đích và ý tưởng về che giấu thông tin đã có từ hàng nghìn năm về trước, nhưng kỹ thuật này chỉ được dùng chủ yếu trong quân sự và các cơ quan tình báo. Mãi cho tới vài thập niên gần đây, che giấu thông tin mới nhận được sự quan tâm của các nhà nghiên cứu với rất nhiều công trình và kết quả đã được công bố. Cuộc cách mạng số hóa thông tin và sự phát triển nhanh chóng của mạng truyền thông là nguyên nhân chính dẫn đến sự thay đổi này. Có rất nhiều phương pháp giấu tin trên nền tảng số hóa như giấu tin trong chuỗi text, giấu tin trong tệp tin audio, tệp tin media,… song phổ biến nhất vẫn là phương pháp giấu tin trong ảnh.
Các phương pháp giấu tin luôn phải bảo đảm được yếu tố che giấu thông tin mà tác giả không muốn người khác nhận ra. Giấu tin trong ảnh cũng vậy, cho dù một người có được bức ảnh đã bị nhúng tin nhưng họ sẽ không thể nhìn ra được thông tin được ẩn giấu bên trong, đây cũng chính là mục đích mà kẻ tấn công luôn mong muốn. Trong các cuộc tấn công mạng, các câu lệnh, tập lệnh script độc hại hay các mã độc luôn là đối tượng trọng yếu mà kẻ tấn công tìm cách che giấu và lẩn tránh phát hiện bởi các công cụ, hệ thống giám sát bảo mật. Do vậy, chúng lợi dụng các kỹ thuật giấu tin trong ảnh để che giấu các câu lệnh tấn công, che giấu các mã độc hại trong các bức ảnh tưởng như vô hại.
Nguyên lý chung của kỹ thuật giấu tin trong ảnh
Thuật toán giấu tin được kẻ tấn công nhúng vào một nguồn đa phương tiện bằng cách sử dụng một khóa bí mật được dùng chung bởi người gửi và người nhận. Việc giải mã thông tin chỉ có thể thực hiện được khi có khoá và sau khi giải mã, ta được thông tin mật.
Hình 1. Lược đồ thể hiện quá trình giấu tin
Hiện nay, giấu tin trong ảnh chiếm tỉ lệ lớn trong các ứng dụng giấu tin dữ liệu đa phương tiện bởi vì lượng thông tin được trao đổi bằng hình ảnh là rất lớn. Giấu tin trong ảnh có nhiều ứng dụng trong thực tế, ví dụ như trong việc xác định bản quyền sở hữu, chống xuyên tạc thông tin hay truyền dữ liệu một cách an toàn,...
Cấu trúc ảnh định dạng hỗ trợ nén dữ liệu không bị suy giảm
PNG (Portable Network Graphics) là một định dạng tập hợp các điểm ảnh (pixel) nhỏ lưu trữ thông tin về màu sắc và vị trí của từng điểm ảnh (ảnh raster). PNG là một trong những định dạng được sử dụng để giấu tin phổ biến nhất. Định dạng ảnh này được tạo ra như là một cải tiến, thay thế cho GIF và là định dạng ảnh nén không bị suy giảm chất lượng sử dụng nhiều nhất trên Internet.
Cấu trúc chung: Tập tin định dạng ảnh được bắt đầu bằng 8 byte: “89 50 4E 47 0D 0A 1A 0A”. Đây được coi là các byte dấu hiện nhận biết định dạng ảnh PNG (byte signature).
Cấu trúc chi tiết: Sau các byte dấu hiệu nhận biết là các đoạn (được gọi là “chunk”) lưu trữ từng phần dữ liệu của ảnh. Mỗi chunk có thể là quan trọng (Critical) hoặc phụ trợ (Ancillary). Chương trình có thể nhận biết để bỏ qua đoạn phụ trợ này nếu không thể đọc được. Cấu trúc của mỗi chunk gồm 4 phần: độ dài (4 bytes), loại (4 bytes), dữ liệu, CRC checksum (4 bytes).
Kỹ thuật giấu tin trên bit ít quan trọng của ảnh
Ý tưởng cơ bản của kỹ thuật này là tiến hành giấu tin vào vị trí các bit ít quan trọng (Least Signification Bit - LSB) đối với mỗi phần tử trong bảng màu. Đây là phương pháp giấu tin đơn giản nhất, thông điệp dưới dạng nhị phân sẽ được giấu (nhúng) vào các bit LSB - là bit có ảnh hưởng ít nhất tới việc quyết định màu sắc của mỗi điểm ảnh. Vì vậy, khi ta thay đổi bit ít quan trọng của một điểm ảnh thì màu sắc của mỗi điểm ảnh mới sẽ tương đối gần với điểm ảnh cũ. Ví dụ, đối với ảnh 16 bit thì 15 bit là biểu diễn 3 màu trong mô hình RGB của điểm ảnh, còn bit cuối cùng không dùng đến thì ta sẽ tách bit này ra ở mỗi điểm ảnh để giấu tin.
Hình 2. Mỗi điểm ảnh biểu diễn bởi 8 bit cuối cùng được coi là bit ít quan trọng nhất
Trong phép tách này ta coi bit cuối cùng là bit ít quan trọng nhất, thay đổi giá trị của bit này thì sẽ thay đổi giá trị của điểm ảnh lên hoặc xuống đúng một đơn vị, với sự thay đổi nhỏ đó thì cấp độ màu của điểm ảnh sẽ không bị thay đổi nhiều.
Qua quá trình công tác và nghiên cứu, nhóm tác giả đã thu thập được một bộ mã độc điển hình cho việc lợi dụng kỹ thuật giấu tin trong ảnh để lẩn trốn khỏi các giải pháp giám sát và cài cắm sâu trong hệ thống.
Bộ mã độc này ngụy trang dưới hình thức giả dạng một tệp tin thư viện của công cụ ảo hóa rất phổ biến là VMware tools. Bộ mã độc gồm 03 tệp tin chính là: xsec_1_5. dll (kích thước 114 KB), Uninstall.png (kích thước: 309KB) và xerces-c_3_0.dll (kích thước 1KB).
Ban đầu bộ mã độc này rất dễ đánh lừa các quản trị viên do chúng ẩn mình trong bộ VMware tools và kèm theo bức ảnh vô hại. Khi xem xét tên của mã độc trên thì nó giống với tên được đặt cho các thư viện DLL tương tự của VMware Tools. Tuy nhiên, khi so sánh kỹ hơn với các tệp khác nằm trong cùng bộ mẫu của VMware thì nhóm tác giả phát hiện một điểm khác biệt nhỏ, đó là các tệp còn lại đều được viết bằng C++, trong khi tệp tin xsec_1_5.dll lại được viết bằng C#. Với kinh nghiệm, nhóm tác giả dự đoán mã độc chính là tệp tin xsec_1_5.dll, tệp tin xerces-c_3_0.dll có thể là tệp tin cấu hình của mã độc, còn tệp tin có định dạng ảnh Uninstall.png chưa thể xác định. Xuất phát từ những phỏng đoán trên, nhóm tác giả bắt đầu phân tích làm rõ đối với tệp tin đầu tiên là xsec_1_5.dll và xem xét đến trường debugger-stamp, compiler-stamp. Đây là trường thông tin cho biết chi tiết về thời gian biên dịch liên quan đến tệp tin.
Các tệp tin thư viện khác trong thư mục VMware đều có thời gian từ năm 2011 trở lại đây, trong khi tệp tin nghi ngờ độc hại lại có thời gian khác biệt là từ năm 1969. Xét qua một số chuỗi (strings), nhận thấy một số chuỗi có liên quan đến các hàm rất đáng nghi, dự đoán mã độc có khả năng nhúng vào các tiến trình khác.
Sau khi nạp tệp tin vào trong DNSpy thì ta thấy rằng, đây là một tệp tin đã bị làm rối (obfuscate), các hàm, các biến đều là các ký tự ngẫu nhiên. Đến đây đã chứng minh khá rõ ràng nhiều khả năng tệp tin này là mã độc. Do vậy, nhóm tác giả quyết định giải mã để phân tích sâu hơn.
Sử dụng công cụ Detect It Easy cho ta thấy tệp tin được làm rối bằng .NET Reactor (4.8-4.9). Sau khi thực hiện giải mã tệp tin, tiếp tục nạp vào DNSpy ta thấy kết quả tốt hơn nhiều, các hàm đã ở dạng tường minh hơn.
Hình 3. Mã độc ban đầu bị làm rối (bên trái) và kết quả sau khi giải mã (bên phải)
Qua đánh giá đoạn code sau giải mã có thể xác định được class chính là XMLCom. Trong hàm này, ta thấy mã độc bắt đầu tìm kiếm các bức ảnh có định dạng là “.png” (Hình 4).
Hình 4. Hàm tìm kiếm tệp tin .png
Trong thư mục mẫu tìm được tệp tin “Uninstall. png”. Thoạt nhìn, tệp tin này có vẻ là bức ảnh bình thường, giống như một đám mây, với các thông số như sau:
- Kích thước: 1213 x 270 (px).
- Bit Depth: 8, Loại màu: 6 (RGB + Alpha).
Hình 5. Tệp PNG độc hại với payload C# được nhúng theo phương pháp ẩn dữ liệu
Việc giấu tin trong ảnh phổ biến nhất hiện nay chính là kỹ thuật giấu tin trên LSB. Nhìn chung, phương pháp này nhúng dữ liệu vào các bit ít quan trọng nhất của mỗi pixel. Trong trường hợp cụ thể này, một pixel mã hóa một nibble (một bit cho mỗi kênh alpha, đỏ, lục và lam), tức là hai pixel chứa một byte thông tin ẩn.
Sau đó, nội dung được nhúng theo phương pháp ghi mật mã được trích xuất theo 4 bước sau:
Bước 1: 16 byte đầu tiên (32 pixel) của tệp PNG được trích xuất và 8 byte đầu tiên phải khớp với một số magic number là “F1 6A 92 1D D8 7E 46 7C”. 8 byte sau là độ dài của payload được nhúng.
Bước 2: Dữ liệu được trích xuất sau đó là một payload được mã hóa ở định dạng GZIP.
Bước 3: Payload được trích xuất được giải mã bằng mã hóa cứng XOR nhiều byte trong PNGLoader.
Bước 4: Kết quả của XORing là dữ liệu GZIP không được giải nén.
Tiếp theo mã độc sẽ tiến hành giải mã payload (Hình 6).
Hình 6. Giải mã payload
Tác giả của phần mềm độc hại dựa vào mã hóa LSB để ẩn payload độc hại trong dữ liệu pixel PNG, cụ thể hơn là trong LSB của từng kênh màu (đỏ, lục, lam và alpha). Ở đây có 02 phương pháp để trích xuất payload: Sử dụng chức năng debug của DNSpy và sử dụng IDE chạy tệp tin trên để trích xuất payload.
Nếu PNGLoader xử lý thành công (giải nén → giải mã → giải nén) payload cuối cùng, thì payload này sẽ được thực thi ngay lập tức. Payload được thực thi với PowerShell, như được minh họa bằng đoạn mã của PNGLoader trong Hình 7.
Hình 7. Đoạn mã của PNGLoader thực thi payload PowerShell
Tiếp theo, nếu tồn tại tập tin xerces-c_3_0. dll (chứa máy chủ điều khiển C2) thì thực hiện giải mã với tham số truyền vào là tệp tin xerces-c_3_0.dll và khóa là owe01zU4 (Hình 8).
Hình 8. Khóa giải mã và tệp tin cấu hình sau giải mã chứa máy chủ điều khiển C2
Khi giải mã tệp tin trên thì thu được địa chỉ máy chủ điều khiển là 152.32.221.141, tương ứng tên miền affiliate.misecure.com. Tiếp tục tiến trình phân tích và dịch ngược làm rõ các hành vi, chức năng của mã độc, đến cuối cùng có thể nhận thấy đây là mã độc điều khiển từ xa (RAT) có các chức năng chính sau: Chức năng lấy thông tin hệ điều hành; Duyệt thư mục ổ đĩa; Xem tệp tin, đọc thông tin tệp tin, tải, upload tệp tin; Chức năng chạy tệp tin Exe, chạy câu lệnh CMD; Thiết lập proxy; Chức năng nhận và thực thi lệnh từ máy chủ điều khiển, gửi kết quả thực thi lệnh.
Bài báo trình bày tổng quan về việc giấu tin trong ảnh và quá trình tìm, phân tích bộ mã độc hại. Công nghệ này đã được biết đến từ lâu nhưng cách thức ứng dụng trong mỗi trường hợp lại khác nhau và khó nhận diện. Cùng với sự phát triển của khoa học công nghệ, tin tặc ngày càng tinh vi hơn. Chúng không ngừng lợi dụng nhiều kẽ hở của các hệ thống thông tin và sử dụng các kỹ năng lẩn trốn để tránh khỏi sự giám sát của nhân viên an ninh mạng. Với việc ẩn giấu thông tin trong các tệp audio, video,… phổ biến nhất là tệp ảnh, các câu lệnh chứa mã độc không thể được phát hiện bởi các phần mềm bảo mật và giám sát an toàn thông tin thông thường. Thậm chí sau khi phân tích, chúng ta cũng khó phát hiện và giải mã hết được các nội dung ẩn bên trong tệp ảnh được mã hóa. Hình thức tấn công kết hợp giấu tin trong ảnh này không phải là giải pháp kỹ thuật quá mới, song nó lại khiến cho quá trình phát hiện, phân tích và ngăn chặn các cuộc tấn công trở nên khó khăn hơn rất nhiều.
TÀI LIỆU THAM KHẢO [1]. USC-SIPI Image Database, Signal and Image Processing Institute, University of Southern California. [2]. Marghny Mohamed, Fadwa Al-Afari and Mohamed Bamatraf, Data Hiding by LSB Substitution Using Genetic Optimal Key-Permutation, International Arab Journal of e-Technology, Vol. 2, No. 1, January 2011. [3]. https://decoded.avast.io/martinchlumecky/png[1]steganography |
ThS. Vũ Ngọc Cương, ThS. Nguyễn Hữu Trung, Đặng Thị Hải Yến (Phòng Thí nghiệm trọng điểm An toàn thông tin, Bộ Tư lệnh 86)
18:00 | 22/09/2023
15:34 | 05/01/2011
10:00 | 02/08/2023
09:00 | 01/04/2024
Trong thời đại số ngày nay, việc quản lý truy cập và chia sẻ thông tin cá nhân trên các thiết bị di động thông minh đã trở thành vấn đề đáng quan tâm đối với mọi người dùng. Việc không kiểm soát quyền truy cập và sự phổ biến của dữ liệu cá nhân có thể gây ra các rủi ro về quyền riêng tư và lạm dụng thông tin. Bài viết này sẽ giới thiệu đến độc giả về Safety Check - một tính năng mới trên iOS 16 cho phép người dùng quản lý, kiểm tra và cập nhật các quyền và thông tin được chia sẻ với người và ứng dụng khác ngay trên điện thoại của chính mình, giúp đảm bảo an toàn và bảo mật khi sử dụng ứng dụng và truy cập dữ liệu cá nhân.
16:00 | 14/11/2023
Dựa trên công bố của công ty quản lý định danh và truy cập Okta (Mỹ) vào ngày 20/10/2023 liên quan đến một vi phạm bảo mật gần đây, các nhà nghiên cứu đã xác định rằng các tác nhân đe dọa đã giành được quyền truy cập thành công vào hệ thống hỗ trợ khách hàng của Okta, kẻ tấn công có thể xem các tệp tải lên (upload) liên quan đến các trường hợp hỗ trợ mới bằng mã thông báo phiên hợp lệ, các tác nhân đe dọa sau đó đã có được quyền truy cập vào hệ thống của khách hàng. Trong bài viết này sẽ mô tả tác động của các hành vi vi phạm của nhà cung cấp danh tính (IdP) và cách các tổ chức có thể tự chủ động bảo vệ mình trước các cuộc tấn công này.
18:00 | 22/09/2023
Do lưu giữ những thông tin quan trọng nên cơ sở dữ liệu thường nằm trong tầm ngắm của nhiều tin tặc. Ngày nay, các cuộc tấn công liên quan đến cơ sở dữ liệu để đánh cắp hay sửa đổi thông tin càng trở nên khó lường và tinh vi hơn, vì vậy việc quản lý cơ sở dữ liệu đặt ra những yêu cầu mới với các tổ chức, doanh nghiệp. Trong hệ thống phân tán, khi dữ liệu được phân mảnh và phân phối trên các vị trí khác nhau có thể dẫn đến khả năng mất toàn vẹn của dữ liệu. Thông qua sử dụng cây Merkle và công nghệ Blockchain ta có thể xác minh tính toàn vẹn của dữ liệu. Trong bài viết này, nhóm tác giả sẽ trình bày các nghiên cứu về ứng dụng cây Merkle và công nghệ Blockchain để bảo đảm tính toàn vẹn dữ liệu cho cơ sở dữ liệu phân tán, đồng thời đảm bảo hiệu năng của hệ thống.
10:00 | 28/08/2023
Trước đây đã có những quan điểm cho rằng MacBook rất khó bị tấn công và các tin tặc thường không chú trọng nhắm mục tiêu đến các dòng máy tính chạy hệ điều hành macOS. Một trong những nguyên do chính xuất phát từ các sản phẩm của Apple luôn được đánh giá cao về chất lượng lẫn kiểu dáng thiết kế, đặc biệt là khả năng bảo mật, nhưng trên thực tế MacBook vẫn có thể trở thành mục tiêu khai thác của các tin tặc. Mặc dù không bị xâm phạm thường xuyên như máy tính Windows, tuy nhiên đã xuất hiện nhiều trường hợp tin tặc tấn công thành công vào MacBook, từ các chương trình giả mạo đến khai thác lỗ hổng bảo mật. Chính vì vậy, việc trang bị những kỹ năng an toàn cần thiết sẽ giúp người dùng chủ động nhận biết sớm các dấu hiệu khi Macbook bị tấn công, đồng thời có những phương án bảo vệ hiệu quả trước các mối đe dọa tiềm tàng có thể xảy ra.
Lược đồ chữ ký số dựa trên hàm băm là một trong những lược đồ chữ ký số kháng lượng tử đã được Viện Tiêu chuẩn và Công nghệ Quốc gia Mỹ (NIST) chuẩn hóa trong tiêu chuẩn đề cử FIPS 205 (Stateless Hash Based Digital Signature Standard) vào tháng 8/2023. Bài báo này sẽ trình bày tổng quan về sự phát triển của của lược đồ chữ ký số dựa trên hàm băm thông qua việc phân tích đặc trưng của các phiên bản điển hình của dòng lược đồ chữ ký số này.
09:00 | 01/04/2024
Mới đây, Cơ quan An ninh mạng và Cơ sở hạ tầng Hoa Kỳ (CISA) đã phát hành phiên bản mới của hệ thống Malware Next-Gen có khả năng tự động phân tích các tệp độc hại tiềm ẩn, địa chỉ URL đáng ngờ và truy tìm mối đe dọa an ninh mạng. Phiên bản mới này cho phép người dùng gửi các mẫu phần mềm độc hại để CISA phân tích.
13:00 | 17/04/2024