Ab nh T union trên không ha 2 DWORDS nh ng h duy nh tm t ó th ha h o

Một phần của tài liệu tìm hiểu, phân tích virus (Trang 26 - 27)

OriginalFirstThunk data hay Characteristics data mà thôi]

Thành ph n ti p theo là TimeDateStamp c t là 0 tr khi file th c thi c gi i h n khi nó ch a -1 (xem bên d i). Thành ph n ti p là ForwarderChain c s d ng cho vi c liên k t old-style và thành ph n này s không c c p n ây.

Thành ph n Name1 ch a m t con tr (RVA) t i chu i tên ACSII c a file DLL.

Thành ph n cu i cùng ó là FirstThunk, nó c ng ch a RVA c a m t m ng các c u trúc

IMAGE_THUNK_DATA m t b n sao c a m ng u tiên. N u nh hàm c miêu t là m t bound import (xem bên d i) thì FirstThunk ch a a ch th c s c a hàm thay vì m t RVA t i m t

IMAGE_THUNK_DATA. Nh ng c u trúc này c nh ngh a nh sau :

M i IMAGE_THUNK_DATA là m t DWORD union mà th c t ch có m t c a hai giá tr . Trong file

trên a nó ch a s th t c a imported function ho c là m t RVA t i m t c u trúc

IMAGE_IMPORT_BY_NAME. M t khi ã c n p m t c u trúc s c tr t i b i FirsThunk c

vi t è lên b ng a ch c a các hàm imported function.- vi c này tr thành Import Address Table. M i c u trúc IMAGE_IMPORT_BY_NAME c nh ngh a nh hình minh h a d i ây :

Hint Ch a ch m c(index) bên trong Export Address Table c a file DLL các hàm hi n có trong ó. Tr ng này c s d ng b i trình PE Loader vì v y nó có th tìm ki m hàm trong Export Address Table c a DLL m t cách nhanh chóng. Tên t i ó mà ch m c c dùng , và n u nó không t ng ng thì m t phép tìm ki m nh phân c th c hi n tìm ki m tên. Thông th ng giá tr này không c n thi t và m t vài trình linker t tr ng này là 0.

Name1 bao g m tên c a imported function. Tên là m t null-terminated ASCII string. Chú ý r ng kích th c c a Name1 c nh ngh a là m t byte nh ng trên th c t nó là m t tr ng có kích th c thay

i.Do ó không có ph ng pháp nào bi u di n m t tr ng có kích th c thay i trong m t c u trúc. C u trúc mà c cung c p cho b n có th tham chi u t i nó thông qua các tên miêu t .

c k t thúc b ng m t Null DWORD. ó là c p phân tách c a các m ng c a các c u trúc

IMAGE_THUNK_DATA cho m i imported DLL.

s d ng nó theo m t cách khác, có nhi u các c u trúc IMAGE_IMPORT_BY_NAME . B n t o ra hai m ng , sau ó i n vào hai m ng này các RVAs c a các c u trúc IMAGE_IMPORT_BY_NAME, vì

Một phần của tài liệu tìm hiểu, phân tích virus (Trang 26 - 27)

Tải bản đầy đủ (PDF)

(75 trang)