Trao đổi với tôi

http://www.buidao.com

10/16/09

[Virus] Z0mbie – “tay chơi” virus thiện chí

10/05/2008
Click to see real sizeNgày nay, trong giới vxer, mọi người đều biết tới nhóm 29a (www.29a.net) như một nơi tập hợp gần như nhiều vxer sừng sỏ nhất thế giới: GriYo, Benny, Vallez, Vecna, rog g biv. Và, có một người nữa thuộc 29a, một người mà khi nhắc đến, cả những aver như Peter Szor (Symantec) cũng phải nể phục. Đó là Z0mbie.

Trong giới vxer, người đi tiên phong về mặt kỹ thuật hoặc tiên phong về mặt ý tưởng sáng tạo luôn luôn được đánh giá cao và sự thán phục của các vxer khác. Dark Avenger đã đi vào lịch sử virus máy tính với tư cách là người đầu tiên tạo ra một polymorphism engine hoàn chỉnh. Giới nghiên cứu virus máy tính đều biết tới hai anh em người Pakistan khi họ đưa ra boot virus đầu tiên.

Ngày nay, trong giới vxer, mọi người đều biết tới nhóm 29a (www.29a.net) như một nơi tập hợp gần như nhiều vxer sừng sỏ nhất thế giới: GriYo, Benny, Vallez, Vecna, rog g biv. Và, có một người nữa thuộc 29a, một người mà khi nhắc đến, cả những aver như Peter Szor (Symantec) cũng phải nể phục. Đó là Z0mbie.

Z0mbie đầu tiên được biết tới với những virus trên nền DOS. Sự khác biệt giữa các virus của z0mbie là không bao giờ mang các payload mang tính phá hoại, mà nhìn vào các virus này, người ta chỉ thấy sự tìm tòi và đầy chất sáng tạo. z0mbie đã tìm ra không ít các kỹ thuật mới, lần đầu tiên được sử dụng trong DOS virus như sử dụng Shadow RAM memory và video font để lưu trữ mã virus (virus Z0mbie.VPI http://www.viruslist.com/en/viruses/encyclopedia?virusid=12846), hoặc thiết kế tối ưu các phương pháp mới cho virus trên nền DOS

zombie1.jpg

Mọi người ở bên ngoài sẽ không hiểu và chắc chắn là thấy kỳ quái: tại sao lại có những người thích ngồi viết những thứ linh tinh, lăng nhăng phá hoại người khác như virus? Câu trả lời là, đừng thành kiến như vậy. Những người viết virus phân ra làm 2 loại: chuyên tâm về thiết kế kỹ thuật mới và loại thích phá hoại. Những người chuyên tâm về thiết kế kỹ thuật cho virus chỉ quan tâm tới các kỹ thuật, thuật toán sao cho gây khó khăn cho aver nhất và sau khi viết xong virus như vậy, họ không để chúng lây lan mà .. gửi sample các virus này tới aver company. Các virus này gần như 100% không mang tính phá hoại (xoá file, ghi đè dữ liệu, ghi đè EEPROM ..). Nó giống như một cuộc chơi giữa Aver và Vxer vậy. Việc viết virus của họ giống như sở thích, để tìm tòi, nghiên cứu các kỹ thuật nâng cao, và công bằng mà nói, họ hoàn thiện các sản phẩm antivirus. Tuy nhiên, mọi người hầu như chỉ nhìn thấy mặt trái của vấn đề. Đó là khi loại người viết virus thứ hai xuất hiện. Những ke viết virus này thường không sáng tạo ra kỹ thuật mà chỉ sử dụng các payload độc hại để mọi ngưòi chú ý tới virus của mình. Tiếc thay, số người này đông gấp vạn lần những vxer “whitehat”. Hậu quả là ai cũng giữ 1 định kiến: virus là phá hoại, virus là xoá dữ liệu, giết máy tính etc .. Thật đáng buồn.

Z0mbie và nhóm 29a thuộc về nhóm người sáng tạo kỹ thuật. Các thành viên của 29a luôn nổi tiếng trong giới nhờ những kỹ thuật họ phát minh ra như EPO (Entry Point Obsucring) (GriYo), virus trên DTDĐ (Vallez), .NET virus đầu tiên (Benny), virus 64bit đầu tiên (rog g biv), virus có plug-in đầu tiên (Vecna).. Z0mbie, giữ kỷ lục trong tay với vô số các engine cho virus về polymorphic, code-generator và thậm chí cả metamorphic.

Khi Windows 32bit xuất hiện và thế chỗ cho DOS 16bit, hàng loạt các vxer thay nhau biến mất do không thích nghi được với môi trường mới. Đối với Z0mbie thì khác. Z0mbie thậm chí không dừng hoạt động nghiên cứu sáng tạo của mình mà còn trở nên nổi tiếng hơn với một loạt công trình mới.

Trong giai đoạn đầu của Windows 32bit (dòng Windows 9x), kỹ thuật để cài virus vào ring0 được Z0mbie khai thác triệt để với cực nhiều kỹ thuật mới: qua IO port, qua IDT callgate, LDT callgate, qua lỗi API trên Windows, qua chỉnh sửa context, exploit ngắt 0Eh/2Eh, exploit VMM. Nhớ rằng, vào thời gian này, phương pháp duy nhất mà vxer dùng để load virus vào ring0 trên win9x là IDT callgate (virus CIH sử dụng kỹ thuật này). Hoặc, bài viết về access pagetable trong môi trường ring3 cũng là một cú sốc dành cho dân coder am hiểu về lập trình hệ thống. Z0mbie và Super (thành viên cũ của nhóm 29a) chính là 2 người chiến thắng trong cuộc thi virus với kích thước nhỏ nhất cho Windows 95. Z0mbie có khá nhiều bài viết công bố các phát hiện của mình trên hệ điều hành “lỗi thủng lỗ chỗ” này.

Các lĩnh vực nghiên cứu của Z0mbie về virus rất rộng lớn và mọi người thực sự phải khâm phục khả năng làm việc và sự đam mê của coder này. Xin liệt kê một số engine mà coder này đã từng viết

XDE v1.02 -- extended length disassembler
ADE32 v2.02 -- instruction disassembler
ADE32 v2.03c -- update to instruction disassembler
LDE-32 v1.04 -- Length-Disassembler Engine
LDE-32 v1.05 (update)
LDE-32 v1.06 (update)
reversing:
MISTFALL 1.01 -- PE EXE/DLL reversing&infecting engine
MISTFALL 2.00 beta -- .cpp classes
MF2/TRACER2/other engines test (beta) win32 gui
permutation:
RPME 1.20 -- Real Permutating Engine for Win32
AZCME04 - permutating engine in C - DOS .COM self- rebuilding permutating file
AZCME32c - permutating engine in C - win95 PE EXE self-modifying(register exchange)file polymorphic:
KME-32 v1.01 -- Win9X/NT R0/R3 universal poly engine
KME v3.50 -- update
KME v5.52 -- highly improved
EXPO 1.01 poly engine -- example infector, using ETG/CODEMIXER/LDE32
PGPME-32 build 001a + example
additional data generation:
CODEGEN 1.60 -- code generator
CODEGEN 2.00 (ASM/CPP) -- code generator
ETG 1.00 (ASM), Executable Trash Generator
ETG 2.00 (ASM/CPP), Executable Trash Generator
PRCG 1.00: polymorphic recursive cycle generator
other:
CODE MIXER 1.50
DSCRIPT -- code to debug-script convertor (asm subroutine)
api hook/injection-related:
HOOKLIB & SDE engines (win32, ADE-based, .txt inside)
HOOKLIB 1.03 /linux (uses XDE 1.01)

Các engine vừa liệt kê nói trên, có thể bạn sẽ không hiểu. Tuy nhiên, nếu đã nghiên cứu về virus, bạn sẽ thấy rằng, để có một gia tài như z0mbie, bạn phải mất rất nhiều công sức, kiên nhẫn, đọc, bắt tay vào mò mẫm và thất bại. Các engine “trâu bò” như MiSTFALL dù được code từ những năm 2000, đến nay là 2006, các antivirus software vẫn không thể chắc chắn 100% có thể phát hiện chúng.

Gia tài của z0mbie không chỉ giới hạn trong lĩnh vực virus, mà còn trải rộng sang lĩnh vực security. Z0mbie còn được biết đến như 1 tác giả của nhiều network tool, tiện ích dành cho hacker, 1 tác giả shellcode, 1 tác giả của các plug-in nén/giải-nén, 1 tác giả của các tool mã hoá, 1 người am hiểu Windows tới từng con ốc nhỏ .. Đáng tiếc rằng, trang webpage cá nhân của Z0mbie hiện đã chết, chỉ còn lại cache được lưu lại trong Google, bạn hãy check cache này tại đây để xem sức làm việc phi thường của z0mbie

http://64.233.179.104/search?q=cache:iXd2N9OvJ2MJ:z0mbie.host.sk/.

+z0mbie+ring0+&hl=vi&gl=vn&ct=clnk&cd=7&client=firefox-a

z0mbie2.jpg

Một kiệt tác của Z0mbie mà cho đến nay, nhiều người nhắc lại vẫn phải thốt lên sự thán phục: virus W32.Zmist. Zmist xuất hiện năm 2000, với 1 engine được built-in: MiSTFALL. Được Peter Szor (trưởng nhóm nghiên cứu phát triển chiến lược cho Symantec Norton Antivirus) đánh giá là virus phức tạp nhất từ trước đến nay, Zmist qua mặt tất cả các antivirus với sự biến hình khủng khiếp. Zmist không phải là một virus nữa, mà là sự nhập hồn, nhập xác vào file bị nhiễm. Kỹ thuật này được gọi đúng với cách nó hoạt động: tích hợp mã.

Zmist dùng MiSTFALL engine để decompile file nạn nhân thành các instruction, sử dụng thuật toán phân tích để loại trộn virus vào xen kẽ các opcode của file nạn nhân, rồi thế vào đó bằng virus code, tính toán lại các offset tham vấn data và build lại hoàn toàn host file này. Virus opcode được build theo kiểu polymorphic hoàn toàn ngẫu nhiên. File sau khi bị lây nhiễm sẽ chỉ còn là cái vỏ, mà nội dung hoàn toàn khác. Một super metamorphic virus cùng một polymorphic decrytor. Kết quả là virus code và host code hoàn toàn lẫn lộn vào nhau theo thứ tự ngẫu nhiên và không có quy luật. Kết hợp cùng MiSTFALL còn là các opcode rác nằm xem kẽ khiến cho việc detect một virus là cực kỳ khó khăn và không chính xác. Nó giống như film Matrix, khi đặc vụ Smith nhập vào những nạn nhân của hắn và từ đó điều khiển người khác. Tuyệt vời ở chỗ, file đó vẫn thi hành, không hề bị crash, không xảy ra một bug nào, cứ như chưa từng có chuyện gì xảy ra vậy.

z0mbie3.jpg

Zmist như đã nói ở trên, cho đến nay vẫn còn là một thách thức với các antivirus software. Nó là một “sinh vật” minh chứng cho khả năng tìm tòi và sáng tạo của những vxer “whitehat”.

Z0mbie, dù chỉ là một người vô danh, không ai biết mặt, biết tên, song với tất cả những gì đã nghiên cứu và công bố, Z0mbie truyền tới tất cả những ai đã đang và sẽ nghiên cứu virus một niềm đam mê cháy bỏng, một tinh thần và nghị lực làm việc khó tin. Điều đó không chỉ áp dụng trong lĩnh vực virus nói riêng, mà còn áp dụng cho tất cả mọi người một thông điệp: “Hãy biết đam mê và mãi mãi khao khát học hỏi”. Một tinh thần hacker.

Nguồn: Connections Magazine

(Conmaz.com)