-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
glibc >= 2.34 support #282
Conversation
@io12 is there any progress on this? I'd like to get it merged soon since recent libcs are being used in more and more ctfs. If there's something missing or something that should be changed please let me know |
Sorry, I've been really busy recently. Can you run |
No worries at all! I run cargo fmt and fixed the lint errors. I also took the liberty to fix a lint error in
|
Hey @io12, just a ping for this :) |
Would be great if this PR can be merged soon |
Indeed, it would be great to have pwninit support modern libcs @io12 |
Can this be merged? using pwninit with 2.35 would be nice. @io12 |
Would be nice to see this merged in. |
Yeah, this would be amazing to have. |
Thanks so much for this @dp1 and sorry for the delay! I pushed 3.3.0 just now. |
LETS GO BOYS!!! Best CTF tool ever |
Thank you! Back to pwning |
Starting with version 2.34, glibc removed symlinks from .deb packages:
This seems to affect both normal packages and debug symbols, which are now only stored as build-id indexed files. Contents of
libc6-dbg_2.34-0ubuntu1_amd64.deb
:pwninit
tries to look for the versioned filenames, which fails in these more recent libcs. This PR addresses both problems. To avoid any regression, I tested against all ubuntu libcs (usinglibc-database
) with the following scripts and verified that no new warnings were added and no files were modified other than adding linkers and unstripping libcs >= 2.34test_pwninit.py
diff_results.py
Full output
TL;DR
Testing with
how2pwn
from CSAW CTF 2022 Qualifiers, which uses glibc 2.34Before
After