Hiện nay, phần mềm UnDeepFreeze 1 phần mềm có sức “tàn phá” kinh khủng …khiếp. Nó chẳng những làm hư DeepFreeze mà còn làm hư luôn hệ thống (system) của Windows.Bài viết này sẽ trình bày cách phá Deepfreeze mà không cần dùng đếm phần mềm nguy hiểm trên .
Bài hướng dẫn này là chỉ muốn chia sẽ kinh nghệm mà mình đã học hỏi được. Vậy kính mong các bạn đừng áp dụng bài viết này với mục đích xấu, cài keylog, trojan… nhất là những người đang kinh doanh hàng net, họ thường hay sử dụng Deepfreeze để giảm thiểu tối đa khả năng bị hư máy và bị virus tấn công.
Bạn chỉ nên sử dụng bài viết này với mục đích học hỏi, tốt nhất chỉ áp dụng cho máy nhà khi bạn lỡ quên password của DeepFreeze.
I. MỘT SỐ LƯU Ý TRƯỚC KHI TIẾN HÀNH PHÁ DEEPFREEZE
1. OllyDebug
Đầu tiên, bạn phải có công cụ OllyDebug. Đây là công cụ để dịch ngược file *.exe, *.dll về ngôn ngữ ASM. Nhưng tôi chọn và dùng nó để phá DeepFree mặc dù không dính dáng gì đến ngôn ngữ ASM.
OllyDebug hiện nay trên giang hồ là rất hiếm gặp. Nếu có gặp đi nữa thì nguyên bản này lại không có phần Plugins (chứa phần Ollyscript, là phần chính để phá DeepFree, và phần Plugins lại càng hiếm gặp hơn cái OllyDebug đó nữa). Tôi phải bỏ ra thời gian hơn 1 tuần để tìm kiếm, nhưng chỉ tìm được phần mã nguồn của Plugins này, tôi phải nhờ 1 bạn trong diễn đàn (diendantinhoc.com) dịch hộ thành file thư viện.
Nhưng bạn đừng lo, nếu tôi đã viết bài hướng dẫn rồi thì cũng phải cung cấp công cụ chứ ?
Bạn có thể download OllyDebug tại địa chỉ dưới đây (nếu không tải được, bạn hãy liên hệ với tôi qua nick yahoo hoặc qua email :
caube_macvay_yeuduoi@yahoo.com):
===== > Pm thì tôi cho < =====
===== > Pm thì tôi cho , không ghi link len Blog đâu< ===== (đây là bản cập nhật mới nhất, nó thể hiện đầy đủ chi tiết hơn bài viết trên diễn đàn)
Sau khi bạn tải OllyDebug về, tiến hành giải nén và chạy file OllyDBG.exe để vào giao diện chính của OllyDebug. Bạn sẽ được giao diện như hình trên.
2. Vị trí biểu tượng của DeepFreeze trên thanh taskbar:
Bạn phải để ý vị trí của biểu tượng này, vì khi tiến hành phá DeepFreeze, sẽ có 1 biểu tượng DeepFreeze khác xuất hiện nằm kế bên. Bạn để ý nó để phân biệt đâu là biểu tượng cũ, và đâu là biểu tượng mới (xem hình)
3. Xem phiên bản của DeepFree mà máy đang dùng:
Để xem được phiên bản của DeepFreeze mà máy đang dùng, bạn hãy ấn phím tổ hợp CTRL + ALT + SHIFT + F6. Khi đó, menu nhập password của DeepFree sẽ hiển thị lên. Bạn nhìn vào góc trái, trên của menu này thì sẽ thấy phiên bản của nó.
Bạn hãy ghi nhớ số phiên bản này, đây là cơ sở để tìm offset phá DeepFreeze.
4. Tìm đường dẫn, thư mục cài đặt tệp FrzState2k.exe của DeepFreeze:
Thông thường, DeepFreeze được cài mặc định tại thư mục “ C:\Program Files\Faronics\Deep Freeze\Install C-0"
Trong thư mục này lại có chứa 1 tệp (DF5Serv.exe ) và 1 thư mục con ( _$Df ). Trong thư mục con lại chứa tệp FrzState2k.exe. Đây là tệp chính thức dùng để phá.
Túm lại, nó có đường dẫn đầy đủ như sau:
C:\Program Files\Faronics\Deep Freeze\Install C-0\_$Df\FrzState2k.exe
Lưu ý: trên đây chỉ là 1 ví dụ về đường dẫn của tệp FrzState2k.exe. Nó có thể thay đổi tùy theo sự cài đặt của chủ máy.
II. TIẾN HÀNH PHÁ DEEPFREEZE
1. Dùng OllyDebug, mở tệp FrzState2k.exe:
Bạn hãy chạy tệp OllyDBG.exe để vào giao diện của OllyDebug. Sau đó bấm vào biểu tượng open trên thanh menu (hoặc bấm phím tắt F3, hoặc vào menu File\Open).
Trong hộp thọai Open này, bạn lần theo đường dẫn của tệp FrzState2k.exe (vừa tìm được trên mục II.4). Hãy nhập vào các mục của hộp thọai Open như sau (xem hình):
- File name: FrzState2k.exe
- Arguments: 1 106917 0 (lưu ý, có khoảng trắng)
Sau đó bấm open. OllyDebug sẽ hiển thị 1 hộp thọai thông báo khác, nội dung như sau:
QUOTE(Chú Thích)
---------------------------
Entry Point Alert
---------------------------
Module 'FrzState' has entry point outside the code (as specified in the PE header). Maybe this file is Self-extracting or self-modifying. Please keep it in mind when setting breakpoints!
---------------------------
Bạn cứ bấm OK.
Trong quá trình OllyDebug tiến hành dịch mã, có thể sẽ có lỗi xảy ra về modul như sau:
QUOTE(Chú Thích)
---------------------------
Compressed code?
---------------------------
Quick statistical test of module 'FrzState' reports that its code section is either compressed, encrypted, or contains large amount of embedded data. Results of code analysis can be very unreliable or simply wrong. Do you want to continue analysis?
---------------------------
Yes No
---------------------------
Trường hợp này bạn bấm YES. Hoặc:
QUOTE(Chú Thích)
---------------------------
Error
---------------------------
In module 'FrzState' OllyDbg encountered several corrupted breakpoints, where first byte of the actual command differs from that in the previous debugging session. This happens when program was recompiled or code is self-modifying (for example, self-extracting). For security reasons, OllyDbg will disable suspicious INT3 breakpoints. You can re-enable them in Breakpoints window.
---------------------------
OK
---------------------------
Trường hợp này bạn bấm OK.
2. Chạy scripts, vào Plugins>>script>>Run script>>Load…
Như tôi đã nói ngay từ đầu, phần Spcript này chỉ có khi bạn đã plugins thư viện script cho OllyDebug. Nếu chưa có, bạn hãy tìm file Ollyscript.dll và plugins cho nó, nhớ xóa tệp Ollydbg.ini trong cùng thư mục của nó trước khi chạy OllyDBG.exe.
Khi OllyDebug dịch mã sang ASM xong, bạn bấm vào menu Plugins của OllyDebug. Chọn Ollyscript>>Run script >> Load…
Lúc này, OllyDebug sẽ hiển thị hộp thọai Load lên, bạn chọn file "UPS.OSC". File này đã có sẵn trong thư mục đã bung OllyDebug.zip (như hình dưới)
Sau khi script hòan tất. Bạn bấm OK. Bạn sẽ được Address mới trong Editor của OllyDebug.
3. Dịch chuyển đến vị trí Expression(ứng với từng phiên bản DeepFree thì vị trí này khác nhau)
Tiếp theo, bạn chuột phải lên bất kì vị trí nào của màn hình OllyDebug, chọn "Go to>>Expression" để dịch chuyển đến vị trí mới khác nữa. Thao tác này bạn có thể làm nhanh bằng cách ấn phím tổ hợp CTRL + G
Trong hộp thọai Goto (enter expression to follow), bạn gõ vào con số (hexa) tương ứng với từng phiên bản của DeepFreeze . Lần lượt, tôi sẽ đưa ra các con số tương ứng với từng phiên bản như sau:
Version ---->Hexa Number
4.20.020.0598 ----> 40368D
4.20.020.0604 ----> 40368D
4.20.021.0598 ----> 40368D
4.20.121.0613 ----> 4034F5
5.20.022.1125 ----> 4037E9
5.30.021.1181 ----> 4037E9
Nếu bạn đang sử dụng DeepFree với 1 phiên bản khác (không thấy trong list trên) thì bạn có thể nhập lần lượt các Hexa Number trên để thử, cho đến khi nào được thì thôi.
Do tôi đang thực hành trên phiên bản 5.30.021.1181 nên tôi nhập vào con số 4037E9 (như hình sau)
Sau đó ấn OK. Tôi sẽ được OllyDebug đưa đến 1 vị trí mới trên "bảng xếp hạng" Address.
4. Xác định điểm breakpoint cho OllyDebug
Kế tiếp, bạn nhấn F2 - hoặc chuột phải vào vị trí goto vừa đến trên màn hình của OllyDebug, sau đó chọn BreakPoint>>Toggle - xác định điểm Break Point.
Nếu OllyDebug hiển thị hộp thọai xác nhận thì bạn bấm OK. Nội dung hộp thọai xác nhận như sau:
QUOTE(Chú Thích)
---------------------------
Suspicious breakpoint
---------------------------
It looks like you are trying to set breakpoint on the data. If this is really the case, such breakpoint will not execute and may have disastrous influence on the debugged program. Do you really want to set breakpoint here?
---------------------------
Yes No
---------------------------
5. Test lần thứ 1 chương trình FrzState2k.exe
Khi có được vị trí BreakPoint rồi, bạn ấn F9 (hoặc vào menu Debug>>Run) để tiến hành test lần thứ 1 chương trình FrzState2k.exe
Sau khi OllyDebug test xong. Sẽ có 1 biểu tượng DeepFreeze mới (new icon) xuất hiện dưới taskbar của bạn, biểu tượng này nằm tại vị trí thứ 1 kể từ bên trái sang.
Bạn hãy phân biệt cái biểu tượng mới (new icon) này so với cái biểu tượng cũ (old icon) mà ta đã để ý ở phần II.2 trên.
6. Mở hộp thọai nhập password của new icon
Để mở hộp thọai password của biểu tượng thứ 2 này, ta không thể nào dùng phím tổ hợp CTRL + ALT + SHIFT + F6, vì nếu vậy thì máy tính sẽ lầm tưởng ta mở hộp thọai password của biểu tượng thứ 1 (old icon). Ta hãy dùng chuột để mở password của cái new icon này. Bạn hãy bấm tổ hợp phím CTRL + ALT + SHIFT, sau đó nhấp kép chuột trái vào biểu tượng mới (new icon).
Khi hộp thọai nhập password hiển thị, bạn nhập vào đó một chuỗi kí tự bất kì để làm password. Xong ấn OK. Hộp thọai password này không mất đi mà nó vẫn còn hiển thị trên màn hình (bạn chịu khó nhé, đừng bao giờ tắt nó – mà tắt cũng hổng được trừ khi bạn tắt OllyDebug). Sau khi nhập password xong, OllyDebug sẽ lần lượt đưa bạn đến các vị trí khó tìm ( khó tìm trong các thủ thuật mò password khác).
Khi này, nếu thấy chữ "Pause" màu đỏ nền vàng hiển thị phía dưới, góc phải của OllyDebug. Bạn hãy bấm F8 để OllyDebug tiếp tục gọi các function khác. Có thể trong quá trình gọi function, OllyDebug sẽ hiển thị hộp thọai breakpoint. Nội dung hộp thọai như sau:
QUOTE(Chú Thích)
---------------------------
Suspicious breakpoint
---------------------------
It looks like you are trying to set breakpoint on the data. If this is really the case, such breakpoint will not execute and may have disastrous influence on the debugged program. Do you really want to set breakpoint here?
---------------------------
Yes No
---------------------------
Bạn hãy bấm YES.
Lặp lại các thao tác trên cho đến khi nào trên thanh Registers của OllyDebug hiển thị:
Registers
EAX 00000000
ECX 00000001
EDX 0012FB80
EBX 009D5610
ESP 0012FB70 Xem hình dưới:
7. Thay đổi giá trị thanh ghi AX (tương ứng là EAX trong OnlyDebug)
Bạn hãy chú ý vị trí thanh AX, giá trị của thanh này hiện giờ là 0. Bạn hãy bấm kép vào vị trí EAX này để OllyDebug hiển thị hộp thọai chỉnh sửa giá trị. Bạn nhập vào đó giá trị 1
Xong nhấn OK.
8. Đăng nhập vào hộp thọai Boot Control của DeepFree – hòan tất quá trình phá DeepFree
Khi thay đổi giá trị của thanh AX xong. Bạn tiếp tục F9 (hoặc vào menu Debug>>Run) để OllyDebug test lần 2 với giá trị AX vừa mới nhập này. Và cái điều gì đã xảy ra sau đó ????
Công đọan tiếp theo là gì, đó là tùy vào mục đích của bạn. Bạn có thể chọn Boot Thawed on next, hoặc Boot Thawed để mở phá băng. Sau đó restart lại máy.
__________________