SEARCH
0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Prev | Current Page 841 | Next

Shon Harris, Allen Harper, Chris Eagle, and Jonathan Ness

"Gray Hat Hacking, Second Edition"

Regardless of the reason, users may be left exposed for
extended periods??”and unfortunately, when dealing with things like Internet worms, a
single day represents a huge amount of time.
Understanding Executable Formats
In addition to machine language, modern executable files contain a large amount of
bookkeeping information. Among other things this information indicates what dynamic
libraries and functions a program requires access to, where the program should reside in
memory, and in some cases, detailed debugging information that relates the compiled
machine back to its original source. Properly locating the machine language portions of a
file requires detailed knowledge of the format of the file. Two common file formats in use
today are the Executable and Linking Format (ELF) used on many Unix-type systems,
including Linux, and the Portable Executable (PE) format used on modern Windows systems.
The structure of an ELF executable binary is shown in Figure 19-1.
The ELF header portion of the file specifies the location of the first instruction to be executed
and indicates the locations and sizes of the program and section header tables. The
program header table is a required element in an executable image and contains one entry
for each program segment.


Pages:
829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853