Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
Prijevodi ove stranice:

Ovo je stara izmjena dokumenta!


Analiza PE formata izvršne datoteke

Sažetak

Većina komunikacije preko Interneta odvija se preko SSL/TSL protokola. SSL (Secure Sockets Layer) sprječava pristup do web-a onima kojima to nije namijenjeno. Najviše se koristi u Internet trgovini gdje je potrebno na siguran način proslijediti podatke o kartici od klijenta do poslužitelja. SSL je originalna inačica protokola, a kasnije je preimenovan u TLS. Generalno gledano protokol je vrlo siguran za enkripciju prometa, no ranjiv je napadima kao što su Man in the middle i Heartbleed.

Ključne riječi: SSL; TSL; komunikacija; sigurnost; napad

Uvod

Portable Executable (PE) izvršni je format datoteka u operacijskom sustavu Windows. To uključuje aplikacije (.exe datoteke), dinamički povezane biblioteke (DLL) i druge tipove izvršnih datoteka. PE format temelji se na COFF (Common Object File Format) formatu datoteka.

Jedna od glavnih značajki PE formata je njegova podrška za povezivanje dinamičkim bibliotekama. To omogućuje programima da koriste funkcije iz drugih biblioteka bez da ih moraju sadržavati unutar svog izvornog koda. Time se smanjuje veličina izvršne datoteke i omogućuje višestruka upotreba istih biblioteka u različitim aplikacijama.

PE formatom određuje se na koji se način u memoriju računala puni izvršni program. Pritom punilac operacijskog sustava (loader) parsira format datoteke, određuje adrese i smješta podatke u memoriju, učitava zavisne datoteke, biblioteke i funkcije, postavlja početnu točku izvršavanja na početnu adresu programa i po završetku izvođenja programa, oslobađa nepotrebne resurse iz memorije. Upravo zato što se početna adresa u radnoj memoriji na koju se program smješta izračunava pri svakom izvođenju, format se i zove „prijenosnim“ (portable u PE).

Format PE datoteke

PE format zapravo je sadržan u jednom drugom formatu izvršne datoteke kao njen „payload“. MZ format nastao je za MS-DOS i nazvan je po Marku Zbykowskom, svom autoru. Kao i mnogi formati datoteka, započinje takozvanim „čarobnim brojem“ koji se sastoji od bajtova 0x4D 0x5A („MZ“). Time započinje MZ, također zvano i DOS zaglavlje, ukupne veličine 64 bajtova.

 typedef struct _IMAGE_DOS_HEADER {      // DOS .EXE header 
    WORD   e_magic;                     // Magic number 
    WORD   e_cblp;                      // Bytes on last page of file 
    WORD   e_cp;                        // Pages in file 
    WORD   e_crlc;                      // Relocations 
    WORD   e_cparhdr;                   // Size of header in paragraphs 
    WORD   e_minalloc;                  // Minimum extra paragraphs needed 
    WORD   e_maxalloc;                  // Maximum extra paragraphs needed
    WORD   e_ss;                        // Initial (relative) SS value
    WORD   e_sp;                        // Initial SP value
    WORD   e_csum;                      // Checksum
    WORD   e_ip;                        // Initial IP value
    WORD   e_cs;                        // Initial (relative) CS value
    WORD   e_lfarlc;                    // File address of relocation table
    WORD   e_ovno;                      // Overlay number
    WORD   e_res[4];                    // Reserved words
    WORD   e_oemid;                     // OEM identifier (for e_oeminfo)
    WORD   e_oeminfo;                   // OEM information; e_oemid specific
    WORD   e_res2[10];                  // Reserved words
    LONG   e_lfanew;                    // File address of new exe header
  } IMAGE_DOS_HEADER, *PIMAGE_DOS_HEADER; 

Prikaz MZ zaglavlja

Relativna virtualna adresa i fizički offset

Direktoriji

Resursi

Overlay

Mogućnost skrivanja informacija

Zaključak

Literatura

racfor_wiki/seminari/analiza_pe_formata_izvrsne_datoteke.1673605757.txt.gz · Zadnja izmjena: 2024/12/05 12:23 (vanjsko uređivanje)
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0