Phân tích mã độc mã hoá dữ liệu tống tiền - Ransomware

Thảo luận trong 'Virus/Malware' bắt đầu bởi Malware, 06/02/15, 05:02 PM.

  1. Malware

    Malware Wh------

    Tham gia: 08/01/15, 11:01 AM
    Bài viết: 56
    Đã được thích: 39
    Điểm thành tích:
    48
    Vừa qua ở Việt Nam có xuất hiện mã độc thuộc dòng Ransomeware có tên là CTB-Locker. Mã độc này lây lan nhanh và gây ra những thiệt hại lớn đối với nạn nhân khi thực hiện mã hóa file dữ liệu của người dùng cũng như yêu cầu tiền chuộc nếu muốn khôi phục lại dữ liệu gốc. Vì sự nguy hiểm của loại mã độc này hôm nay mình xin đưa ra bài viết giới thiệu khái quát về Ransomeware cũng như phân tích một mẫu Ransomeware để giúp các bạn hiểu và có cái nhìn trực quan hơn về loại mã độc này.
    Tổng quan về ransomeware

    Ransomware là loại malware sử dụng một hệ thống mật mã để mã hóa dữ liệu thuộc về một cá nhân và đòi tiền chuộc thì mới khôi phục lại.
    Tương tự như các loại malware khác, Ransomware xâm nhập vào máy tính người dùng thông qua các dữ liệu đính kèm từ email, phần mềm tải từ Internet hay chỉ đơn giản là từ các website mà người dùng đã duyệt qua.
    Ransomeware thường chia làm 2 loại đó là :
    · khóa màn hình của nạn nhân
    · mã hóa file dữ liệu của nạn nhân
    Sau khi xâm nhập vào máy tính, nó sẽ tiến hành mã hóa dữ liệu của bạn hoặc khóa màn hình và hiển thị ra thông báo như việc trên máy bạn chứa các phần mềm vi phạm bản quyền hay số file dữ liệu mà chúng đã mà hóa và đưa ra yêu cầu đòi tiền chuộc nhưng không yêu cầu bạn đưa ra tiền chuộc ngay.
    [​IMG]

    Thông báo của ransomeware CTB-Locker


    Làm sao để tự bảo vệ và phòng tránh Ransomware?
    Sao lưu dữ liệu thường xuyên là phương pháp tốt nhất để tránh bị cướp dữ liệu từ Ransomware. Bên cạnh đó bạn cũng cần phải trang bị thêm cho máy tính một phần mềm bảo vệ và chống mã độc tốt.
    Phân tích mẫu virus siêu đa hình có sử dụng module Ransomeware

    Đây là loại mã độc đầu tiên tích hợp đồng thời cả 2 tính năng Ransomeware và lây file siêu đa hình. Đây là điểm rất thú vị khi thực hiện phân tích mã độc này. Tuy nhiên do bài viết nhằm mục đích giới thiệu về Ransomeware nên mình sẽ tập trung phân tích về các kỹ thuật mà mã độc sử dụng để thực hiện hành vi ransomeware của mình.
    Như đã nói ở phần giới thiệu về ransomeware thì thường chúng được chia làm 2 loại là khóa màn hình nạn nhân hoặc mã hóa file dữ liệu của nạn nhân .
    Đối với mã độc này chúng thực hiện hành vi khóa màn hình của nạn nhân sau khi được kích hoạt. Một số hình ảnh của mã độc sau khi được kích hoạt
    [​IMG]

    Màn hình cảnh báo thực hiện hành vi tống tiền của mã độc



    Do mã độc có tính năng của một virus lây file siêu đa hình nên chúng thực hiện lây lan vào các file có phần mở rộng : *.exe, *.doc, *.xls, *.zip, *.rar, *.pdf, *.ppt, *.mdb, *.mp3, *.mpg, *.png, *.gif, *.bmp, *.p12, *.cer, *.psd, *.crt, *.pem, *.pfx, *.p12, *.p7b, *.wma, *.jpg, *.jpeg.
    Ban đầu mã độc thực hiện lấy icon của file bị lây nhiễm sau đó tạo ra một file lưu icon này. Tiếp đó mã độc mã hóa data file victim với một key được mã độc tính toán , tạo ra một file mới và đẩy data bị mã hóa + kích thước file mã hóa + địa chỉ bắt đầu data file victim + key mã hóa + code của mã độc vào trong file mà mã độc tạo ra trước đó. Update icon file victim vào file vừa tạo. Cuối cùng mã độc đổi tên file vừa tạo trùng với tên file victim, xóa file victim và thay vào đó là file bản sao của virus. Thông qua cách này mã độc sẽ lừa người dùng kích hoạt chúng mà không hề hay biết bởi vì sau khi file được kích hoạt, mã độc sẽ khôi phục lại file gốc cho người dùng và hiển thị nội dung của file đó lên. Chỉ khi màn hình thông báo của mã độc được hiện lên người dùng mới biết đến sự tồn tại của mã độc trong máy, nhưng lúc đó thì đã quá muộn.
    Sau đây là demo các bước virus mã hóa một file văn bảnWORD có tên là test.doc
    [​IMG]

    Data khi chưa bị mã hóa của file test.doc

    [​IMG]

    Data file test.doc dưới dạng mã hexa

    [​IMG]

    Mã độc lấy icon file test.doc và lưu icon vào trong file nQkW.ico

    [​IMG]

    Đọc dữ liệu file test.doc lưu lại buffer có địa chỉ = 0x03080000

    [​IMG]

    Data file test.doc sau khi kết thúc hàm ReadFile

    [​IMG]

    Mã độc copy dữ liệu file test.doc từ địa chỉ 0x03080000 sang địa chỉ 0x012AB528 chuẩn bị cho quá trình mã hóa data file test.doc đồng thời mã độc tạo ra một giá trị ngẫu nhiên cho thanh ghi EAX thông qua lệnh RDTSC, giá trị đó tiếp tục được đem XOR với EBX = 0x100 , kết quả cuối cùng ta tạm gọi là k


    [​IMG]

    Mã độc tạo key mã hóa file

    [​IMG]

    Địa chỉ buffer mà ESI trỏ tới tại 0x012AB514 theo thứ tự bao gồm một giá trị DWORD đươc sinh ngẫu nhiên + xâu “test.doc” + data file test.doc


    Cơ chế tạo KEY mã hóa của mã độc :
    Mã độc lưu kích thước file test.doc + kích thước xâu “test.doc” + một giá trị DWORD được sinh ngẫu nhiên vào trong thanh ghi EDX, sau đó tiến hành tính toán giá trị này theo bội của 4. Mã độc lưu key mã hóa được tạo tại thanh ghi EAX và khởi tạo giá trị này bằng -1. Tiếp đó mã độc tiến hành phép toán XOR liên tiếp giá trị của EAX với data được trỏ bởi ESI bao gồm một giá trị DWORD đươc sinh ngẫu nhiên + xâu “test.doc” + data file test.doc. Kết thúc vòng lặp giá trị tại EAX chứa KEY được sử dụng cho việc mã hóa file test.doc
    [​IMG]

    Mã độc thực hiện mã hóa file test.doc với KEY vừa được khởi tạo trước đó


    Cơ chế mã hóa data file victim của mã độc : (EAX lưu key mã hóa, ESI chứa địa chỉ data file victim)
    MOV ECX, EAX ; copy key từ EAX sang ECX
    MOV EDI, DWORD PTR DS:[ESI] ; đọc 1 DWORD data file victim vào trong EDI
    ROL EDI, CL; dịch trái x bit với x là giá trị lưu trong thanh ghi CL
    XOR EDI, ECX ; XOR bit với key trong ECX
    MOV DWORD PTR DS:[ESI], EDI; copy lại dũ liệu file bị mã hóa thay cho dữ liệu gốc
    [​IMG]

    Data file test.doc sau khi bị mã độc mã hóa

    [​IMG]

    Mã độc thực hiện copy mã độc + data file test.doc đã được mã hóa trong buffer có địa chỉ 0x1280000 (data file test.doc bắt đầu tại địa chỉ 0x12AB514) vào file oEgc.exe vừa được tạo trước đó

    [​IMG]

    Mã độc tiến hành cập nhật lại icon file oEgc.exe theo đúng icon file test.doc

    [​IMG]

    Mã độc tiến hành xóa file test.doc và thay vào đó là file oEgc.exe với tên mới test.doc.exe



    Sau khi hoàn thành việc lây lan, mã độc thực hiện hành vi ransomeware của mình. Mã độc thực hiện việc tạo cảnh báo đối với người dùng đồng thời tạo một thread thực hiện chức năng khóa màn hình.
    [​IMG]

    Mã độc kiểm tra cửa sổ cảnh báo đã tồn tại hay chưa, nếu chưa tiến hành tạo cửa sổ thông báo

    [​IMG]

    Mã độc tạo thread thực hiện chức năng Ransomeware với địa chỉ hàm tại = 0x00408951

    [​IMG]

    Mã độc lấy kích thước màn hình hiển thị
    [​IMG]

    [​IMG]

    Mã độc tiến hành tạo cảnh báo và hiển cảnh báo đó


    Trong quá trình tạo màn hình cảnh báo mã độc tạo thread thực hiện nhiệm vụ khóa màn hình
    [​IMG]

    Mã độc tạo thread thực hiện chức năng khóa màn hình với địa chỉ hàm tại 0x41822A


    Chúng ta sẽ đi phân tích cơ chế khóa màn hình của mã độc tại địa chỉ 0x41822A
    Cơ chế khóa màn hình của mã độc khá đơn giản. Mã độc tiến hành tìm kiếm các window của một loạt các ứng dụng thỏa mã :
    · title = “Open File” (của sổ khi người dùng mở file bằng tổ hợp phím crtl + O)
    · title = “Window Internet Explorer”
    · title = “RegEdit_RegEdit”
    · title = “ConsoleWindowClass”
    · title = “TaskManager”
    · title = “Run”
    · Explorer
    · title = “Open”
    · vân vân ...
    Nếu tồn tại mã độc sẽ gọi function SendMessage send messageWM_CLOSE yêu cầu đóng các cửa sổ này. Một số hình ảnh mã độc thực hiện việc kill cửa sổ
    [​IMG]

    Mã độc kill cứa sổ ConsoleWindowClass
    [​IMG]

    Mã độc kill cửa sổ Run và Windows Task Manager
    [​IMG]

    [​IMG]

    Mã độc tìm và kill IE, Explorer

    [​IMG]


    [​IMG]

    Mã độc kill cửa sổ Open file



    Trên đây là bài phân tích của mình. Bài phân tích còn nhiều thiếu xót, rất mong nhận được sự góp ý của các bạn.
     
    Last edited by a moderator: 23/08/16, 03:08 PM
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  2. backdoor

    backdoor W-------

    Tham gia: 07/08/13, 08:08 PM
    Bài viết: 78
    Đã được thích: 12
    Điểm thành tích:
    18
    Re: Phân tích mã độc mã hoá dữ liệu tống tiền - Ransomware

    Very good!. Cảm ơn nhé!. :)
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  3. luffy

    luffy W-------

    Tham gia: 26/02/14, 08:02 AM
    Bài viết: 98
    Đã được thích: 7
    Điểm thành tích:
    48
    Re: Phân tích mã độc mã hoá dữ liệu tống tiền - Ransomware

    Kiến thức cao siêu quá đọc chả hiểu gì @@
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan