1. Trang chủ
  2. » Công Nghệ Thông Tin

Cracker Handbook 1.0 part 232 ppt

6 88 1

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Chúng ta thấy là nó có sự thay đổi về con trỏ của các trường RAW SIZE và RAW OFFSET, vì chúng ta đã đặt chúng tương ứng bằng với VIRTUAL SIZE và VIRTUAL OFFSET. Lúc này ICON đã xuất hiện trên file .exe có nghĩa là các section đã được sắp xếp lại. Vậy là, Âdy, lúc này các bạn chắc cũng biết được nhiều thứ sau zdụ này. Ừm, thôi, các bạn hãy thử mở nó trong OLLY, thì chúng ta không thể bởi vì chúng ta chưa có một IAT đúng nghĩa, giờ thì bạn đã có sẵn ULTRAEDIT? Chúng ta nên tạo một bản sao chép của file dumped trên cho chắc. Chúng ta cần sửa lại OEP cho đúng. OEP là 00401000, vì thế lấy 00401000 – ImageBase (00400000) chúng ta có 1000. Chúng ta cần thêm một section để chứa IMAGE IMPORT DESCRIPTOR và những giá trị cần thiết (tên của những hàm apis). Trong PE Editor, click phải chuột và chọn add a section như hình trên và đặt tên. Chúng ta thêm 3000 bytes trong trường hợp này, để chắc chắn là đủ hỉ. Sau đó, hãy nhấp phải chuộ trên section vừa tạo và chọn EDIT SECTION. Sau đó ta có Chúng ta vửa mới thêm 3000BYTES, vì thế chúng ta phải thêm 3000 bytes trên SIZE OF IMAGE : 0B000+3000 = E000. Ta đã thay đổi Size of Image thành 0000E000, Rồi cuối cùng, cái cần chỉnh sửa là CHARACTERS của SECTION mới = E0000020 để cho phép đọc ghi . Ừm, giờ thì thử mở với OLLY, vẫn mở được nhưng lúc này nó sẽ không đến được OEP vì file dumped này còn chứa những giá trị của file được nén. Nhìn vào trong hình để thấy lỗi; Lỗi này khác với lỗi về section chưa được chỉnh sửa, Nó sẽ báo là file này không đúng định dạng hoặc không phải là một PE ứng dụng 32bit. Điều này xảy ra là vì những BYTES khác không được thêm vào SECTION hoặc bạn đã không đặt chính xác kích cỡ. Một cái mẹo mà làm cho chương trình sẽ đi đến OEP là tìm con trỏ mà chúng ta đã thấy trong pần 1 của tut này, con trỏ tại OFFSET 3C, để thấy được PE SIGNATURE: Ta hãy đến OFFSET 100 và cộng vào 80 bytes, ta sẽ ở OFFSET 180 Ở đó, chúng ta sẽ thấy một con trỏ đến IMAGE IMPORT DESCRIPTOR mà ở OFFSET A4E0, chúng ta sửa giá trị này thành 0000. Giờ thì lưu lại những thay đổi trên, và mở file dump vào bên trong OLLY Chúng ta thấy rằng nó vẫn hoạt động tốt heng mặc dầu là bảng IMPORT BAD. Chúng ta có 2 cách để sửa bảng IMPORT: - Một là xây dựng lại IMAGE IMPORT DESCRIPTOR, tên của các .dll, các APIs, rồi sau đó hệ thống sẽ dùng GetProcAddress để điền thông tin vào IAT. - Cách thứ hai thì có vẻ rôm rả hơn. Nó cũng vẫn sẽ đến OEP mà không vần bảng. Chúng ta sẽ thêm một section dùng để load bảng. Nó sẽ tìm tất cả các DLLs mà chương trình cần dùng bằng LoadLibrary, sau đó sẽ tìm các hàm APIs cần thiết, loader này sẽ tính toán các vị trí tương ứng với giữa lời gọi hàm với hàm đó. Hãy ví LOADER này như là ARMADILLO với việc tiêu hủy Bảng , nó sẽ pha trộn giữa một số các APIs của các DLL với một số các hàm trung gian (sẽ thực thi hàm APIs khác qua một vài bước) của ARMADILLO tạo ra trong bảng IAT. Trong phần 3, chúng ta sẽ tiếp tục sự giải thích một cách chi tiết đối với cả 2 phương pháp kể trên, rồi tạo một script àm việc tự động. Until part 3 Ricardo Narvaja This document was poorly translated into English by Innocent. Chúc bạn đọc may mắn TOOLCRACKING Working with IMPORT TABLES part 3 Ừm, tôi viết nốt phần 3 này để kết thúc bài viết về IMPORT TABLE BY HAND, và trong phần 4, tôi sẽ giải thích một vài chi tiết đã bỏ sót. Lúc này, chúng ta sẽ tiếp tục công việc “lao động cực nhọc” với những trình packer (cái này khỏi dịch nhé, vì tôi đã dịch về nó rất nhiều) và sẽ dùng cùng phương pháp . dumped trên cho chắc. Chúng ta cần sửa lại OEP cho đúng. OEP là 00 4 01 0 00 , vì thế lấy 00 4 01 0 00 – ImageBase (00 400 000 ) chúng ta có 10 00. Chúng ta cần thêm một section để chứa IMAGE IMPORT DESCRIPTOR. 300 0BYTES, vì thế chúng ta phải thêm 300 0 bytes trên SIZE OF IMAGE : 0B 000 + 300 0 = E 000 . Ta đã thay đổi Size of Image thành 00 00E 000 , Rồi cuối cùng, cái cần chỉnh sửa. mà chúng ta đã thấy trong pần 1 của tut này, con trỏ tại OFFSET 3C, để thấy được PE SIGNATURE: Ta hãy đến OFFSET 10 0 và cộng vào 80 bytes, ta sẽ ở OFFSET 18 0 Ở đó, chúng ta sẽ thấy một

Ngày đăng: 03/07/2014, 17:21

Xem thêm: Cracker Handbook 1.0 part 232 ppt

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN