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
540
0
Share
[workshop] Exploring the Portable Executable format
44Con 2013
London, England
Ange Albertini
September 13, 2013
More Decks by Ange Albertini
See All by Ange Albertini
Fearsome File Formats
ange
0
1.1k
Overview of file type identifiers
ange
0
1.5k
A question of time
ange
0
1.2k
SBuD: InfoVis in InfoSec
ange
1
980
Generating Weird Files
ange
0
500
Technical challenges with file formats
ange
1
2.4k
Inside out - abusing archive file formats
ange
3
2k
Relations between archive formats
ange
0
2.4k
Beyond your studies v2
ange
2
1.1k
Other Decks in Technology
See All in Technology
個人最適 から 全体最適 へ AI情報共有会・AIギルド・AI-DLC で進める カンリーの組織展開
rfdnxbro
0
1.5k
ブロックチェーン / Blockchain
ks91
PRO
0
110
速さだけじゃない! VoidZero ツールが移行先に選ばれる理由
mizdra
PRO
6
750
ChatworkとBPaaS 異なる特性で学んだAI機能開発の ベストプラクティス
kubell_hr
2
2.7k
サイバーセキュリティ概論 / Introduction to Cybersecurity
ks91
PRO
0
150
Databricks 月刊サービスアップデート 2026年05月号
tyosi1212
0
210
BigQuery の Cross-cloud Lakehouse への歩み
phaya72
2
550
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
50k
AI Testing Talks: Challenges of Applying AI in Software Testing: From Hype to Practical Use
exactpro
PRO
1
120
AI フレンドリーなエラー監視を TypeScript で実現する
shinyaigeek
2
250
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.8k
Mastering Ruby Box
tagomoris
3
150
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
sira's awesome portfolio website redesign presentation
elsirapls
0
270
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
エンジニアに許された特別な時間の終わり
watany
107
250k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
820
The World Runs on Bad Software
bkeepers
PRO
72
12k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
160
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Faster Mobile Websites
deanohume
310
31k
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