Cracking part 51

Trên đây là quá trình tạo Stack Frame và căn phòng được với không gian là 48 bytes dành cho việc lưu trữ các biến cục bộ. Windows yêu cầu rằng một vài thanh ghi khác ngoài ESP và EBP | Trên đây là quá trình tạo Stack Frame và căn phòng được với không gian là 48 bytes dành cho việc lưu trữ các biến cục bộ. Windows yêu cầu rằng một vài thanh ghi khác ngoài ESP và EBP cũng cần được bảo vệ trong suốt quá trình của một Callback function đó là những thanh ghi EBX ESI và EDI. Chúng được lưu trữ một cách an toàn trên Stack và sẵn sàng để khôi phục lại đúng vị trí trước khi rời khỏi này cho phép sự tự do khi sử dụng những thanh ghi này bên trong một hàm. Đã có quá trình lưu giữ thanh ghi thì cũng phải có quá trình phục hồi chúng điều này được thực hiện nhờ vào các câu lệnh rất đơn giản. Và nhìn vào đó ta biết ngay nó làm gì .00412348 5F PoP edi .00412349 5E pop esi .0041234A 5B pop ebx .0041234B 8BE5 mov esp ebp .0041234D 5D pop ebp .0041234E C3 retn Đầu tiên 3 thanh ghi được khôi phục từ stack của chúng ta. Sau đó Stack được phục hồi lại trạng thái của nó sau khi hàm đã được gọi và khi gặp câu lệnh Return. Chú ý rằng chúng ta không thể khôi phục Stack trước khi khôi phục 3 thanh ghi được bởi vì các thanh ghi của chúng đã được lưu trên tất cả đoạn code trên sang C là rất dễ dàng. Bây giờ chúng ta biết rằng đây có thể là một hàm bởi vì dựa vào Stack Frame cũng như việc lưu trữ và phục hồi các thanh ghi . void SomeFunction .code. Bây giờ tôi giả sử rằng đây là một void function bởi vì không hề có bất kì một sự thay đổi nào trong thanh ghi EAX trước khi Return. Điều đó không có nghĩa là EAX đã không bị thay đổi. Nhưng cho đến bây giờ chúng ta sẽ giả sử giá trị trong thanh ghi EAX bị lờ đi. Tiếp theo chúng ta sẽ tiếp tục với thân của hàm này .004122F9 C745F800000000 mov d ebp -08 000000000 .00412300 EB09 jmps .00041230B 1 .00412302 8B45F8 mov eax ebp -08 .00412305 83C001 add eax 001 J .00412308 8945F8 mov ebp -08 eax .0041230B 8B4508 mov eax ebp 08 .0041230E 50 push eax .0041230F FF1584A34300 call lstrlenA .00412315 3945F8 cmp ebp -08 eax .00412318 7D2E jge .000412348 - 2 Chúng ta hãy để ý tới giá trị được tham chiếu đến

Không thể tạo bản xem trước, hãy bấm tải xuống
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.