Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[workshop] Exploring the Portable Executable fo...
Search
Ange Albertini
September 13, 2013
Technology
0
520
[workshop] Exploring the Portable Executable format
44Con 2013
London, England
Ange Albertini
September 13, 2013
Tweet
Share
More Decks by Ange Albertini
See All by Ange Albertini
Fearsome File Formats
ange
0
990
Overview of file type identifiers
ange
0
1.3k
A question of time
ange
0
1.1k
SBuD: InfoVis in InfoSec
ange
1
930
Generating Weird Files
ange
0
450
Technical challenges with file formats
ange
1
2.3k
Inside out - abusing archive file formats
ange
3
1.9k
Relations between archive formats
ange
0
2.3k
Beyond your studies v2
ange
2
1.1k
Other Decks in Technology
See All in Technology
Introduction to Bill One Development Engineer
sansan33
PRO
0
360
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
140
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
390
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
690
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.1k
Meshy Proプラン課金した
henjin0
0
240
日本語テキストと音楽の対照学習の技術とその応用
lycorptech_jp
PRO
1
420
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.5k
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.1k
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
5
2.6k
Tebiki Engineering Team Deck
tebiki
0
24k
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
2
370
Featured
See All Featured
The untapped power of vector embeddings
frankvandijk
1
1.6k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Test your architecture with Archunit
thirion
1
2.1k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
90
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
72
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
430
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
47
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.6k
Odyssey Design
rkendrick25
PRO
1
490
エンジニアに許された特別な時間の終わり
watany
106
230k
Transcript
Exploring the Portable Executable format London, England Ange Albertini 2013/09/13
Workshop package (PoCs+docs) http://www.xchg.info/corkami/workshop.zip Recommended PE viewer: http://icerbero.com/peinsider
None
None
None
None
None
None
None
None
None
None
None
None
None
a handmade PE simple.exe a first real example working minimal
None
None
None
detailed walkthrough
None
DOS header unused in PE mode
None
PE header PE signature
None
Optional Header NOT optional in executables
None
DataDirectories end of OptionalHeader 16 (max) * [RVA, Size] each
entry interpreted differently
None
Sections memory mapping
None
None
Imports standard loader mechanism NOT required load DLL, locate APIs
None
compiled PE compiled.exe closer to reality extra non-critical structure
None
None
None
DLL exports relocations
None
None
driver subsystem, checksum low alignments mapping different imports
None
resources structure version, manifest/icon, APIs
None
None
Thread Local Storage callback list before EntryPoint & after ExitProcess
None
.Net different and integrated binary 2nd loader
None
what about 64b? very few changes • 2 magic constants
• a few elements become QWord ◦ ImageBase, Imports thunks, callbacks • Exceptions have their own DataDirectory ◦ no need for LoadConfig (SafeSEH)
and ARM • a different magic constant • still 16b
DOS Stub ! • nothing special, PE wise ◦ the beauty of ‘Portability’
trivial
None
None
None
None
None