作者: Jeffrey K. Hollingsworth , Tugrul Ince
DOI:
关键词:
摘要: Traditionally, execution of a program follows straight and inflexible path starting from source code, extending through compiled executable file on disk, culminating in an image memory. This dissertation enables more flexible programs new compilation mechanisms binary editing techniques. To assist analysis functions binaries, mechanism generates data representing control flow graphs each function. These allow tools to identify the boundaries basic blocks types edges between them without examining individual instructions. A similar is used create individually relocatable that can be relocated anywhere memory at runtime simplify instrumentation. The concept generating components also applied function-level granularity. Through link-time function relocation, unused shared libraries are moved section not loaded into runtime, reducing footprint these libraries. Moreover, relocation extended where continuously random addresses thwart system intrusion attacks. techniques presented above result 74% reduction parsing times as well 85% code segment libraries, while simplifying instrumentation code. provide way make return-oriented programming attacks virtually impossible succeed.