~/talk

Using Freestanding C++ for C++17 in Shellcode, UEFI, Embedded & Unikernels

Talkat CppCon 2019 · 2019-09-15..09-20· [embedded-and-hardware]
links:none on file
slides:none on file

Shows how to run full C++17 with libc++ and Newlib in freestanding environments by building a static PIE toolchain and a custom ELF header-only loader that injects an ELF image at runtime, plus a table-based unwinder and C runtime shims. Demonstrates a UEFI hello‑world and a shellcode demo that loads and executes a statically linked C++ binary from a buffer (it works), currently x86_64 only with no shared‑lib support.

AI-written summary · about

  1. 0:00Introduction and goals
  2. 1:13Freestanding C++ explained
  3. 5:07Compiler flags and setup
  4. 12:40Missing runtime support
  5. 16:09Bareflank hypervisor approach
  6. 18:35C++ loader concept
  7. 20:00Hello world demo
  8. 22:30UEFI application example
  9. 33:21Shellcode demo setup
  10. 37:47Buffer overflow basics
  11. 40:20Shellcode payload details
  12. 46:08Live shellcode attack demo
  13. 48:34Limitations and future work
  14. 50:52Q&A on exception handling
  15. 53:27Q&A on system calls
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.