Skip to content

Handle compressed DWARF sections in ELF binaries#1179

Open
qmuntal wants to merge 5 commits into
microsoft:mainfrom
qmuntal:qmuntal/fix-dwarf-version-reporting
Open

Handle compressed DWARF sections in ELF binaries#1179
qmuntal wants to merge 5 commits into
microsoft:mainfrom
qmuntal:qmuntal/fix-dwarf-version-reporting

Conversation

@qmuntal

@qmuntal qmuntal commented Apr 20, 2026

Copy link
Copy Markdown
Member

Summary

  • detect ELF SHF_COMPRESSED debug sections via raw section flags
  • decompress zlib-compressed DWARF section contents before parsing
  • add regression coverage for ELF64 compressed-section payloads

Fixes #1175

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@qmuntal qmuntal requested a review from a team as a code owner April 20, 2026 09:09
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@danmoseley

Copy link
Copy Markdown

Interesting that this hasn't come up before -- apparently no other toolchains produce this? or at least with flags typically used?

@danmoseley

Copy link
Copy Markdown

cc @martin-reznik

@qmuntal

qmuntal commented May 5, 2026

Copy link
Copy Markdown
Member Author

Friendly ping 😸

Comment thread src/BinaryParsers/ElfBinary/ElfBinary.cs
@danmoseley

Copy link
Copy Markdown

@martin-reznik ?

@qmuntal

qmuntal commented Jun 9, 2026

Copy link
Copy Markdown
Member Author

Friendly ping 😸

@danmoseley

Copy link
Copy Markdown

@Sasinkas can maybe help. @Sasinkas this is part of bringing up fuller support for running binskim over Microsoft golang binaries.

@danmoseley

Copy link
Copy Markdown

@martin-reznik

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BA3004 reports DWARF version 0 for Go 1.26 Linux ELF binaries that contain DWARF v5

4 participants