Top all-time · #8648
Rafał Cieślak
Personal blog · rafalcieslak.wordpress.comsystemsprogrammingsecurity
Rafał Cieślak's personal blog at rafalcieslak.wordpress.com covers systems, programming and security. Since 2016, 9 different Hacker News readers have linked it 10 times, most often “Using LD_PRELOAD to cheat, inject features and investigate programs (2013)”. The last post was in 2017, but the archive is still widely read.
Too few sampled comments (5) to say how often HN recommends it.?
Why HN links it
HN readers link this blog's posts on the dynamic linker and LD_PRELOAD as examples of overriding library calls such as open() and random, in threads on fuzzing and related tricks.
Summarised by Claude from a sample of 5 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- Using LD_PRELOAD to cheat, inject features and investigate programs (2013)9 people · 10 mentions · first linked 2016-05-04
What Hacker News says?
You should look into method swizzling/hooking, to hook into a c++ method called on every frame, and add a line of code to save the frame buffer to disk. You can either do this at runtime via some kind of code injection, or at compilation time if you can manage to re-sign the game. I don't know much about c++ reverse engineering but I've done this when reversing iOS apps (and this is what "tweaking" means in the jail…
Comment linking /2013/04/02/dynamic-linker-tricks-using-ld_preload-to-cheat-inject-features-and-investigate-programs/
on “Python plays Grand Theft Auto V”Submitted Using LD_PRELOAD to cheat, inject features and investigate programs (2013) as a story · 142 points
HN discussionIn theory? LD_PRELOAD is specifically designed for it. For examples, see https://rafalcieslak.wordpress.com/2013/04/02/dynamic-linker...
Comment linking /2013/04/02/dynamic-linker-tricks-using-ld_preload-to-cheat-inject-features-and-investigate-programs/
on “Some obscure C features”Submitted Using LD_PRELOAD to cheat, inject features and investigate programs as a story · 8 points
HN discussionReplacing random with urandom for one app is just one LD_PRELOAD away. Similar to https://rafalcieslak.wordpress.com/2013/04/02/dynamic-linker... you can replace open("/dev/random") with open("/dev/urandom")
Comment linking /2013/04/02/dynamic-linker-tricks-using-ld_preload-to-cheat-inject-features-and-investigate-programs/
on “Ruby Bug: SecureRandom should try /dev/urandom first”Submitted Using LD_PRELOAD to cheat, inject features and investigate programs as a story · 5 points
HN discussionhttps://lobste.rs/s/5evwyr/art_fuzzing https://rafalcieslak.wordpress.com/2013/04/02/dynamic-linker...
Comment linking /2013/04/02/dynamic-linker-tricks-using-ld_preload-to-cheat-inject-features-and-investigate-programs/
on “The Art of Fuzzing [pdf]”Submitted Using LD_PRELOAD to cheat, inject features and investigate programs as a story · 3 points
HN discussionRelated: https://stackoverflow.com/questions/426230/what-is-the-ld-pr... https://rafalcieslak.wordpress.com/2013/04/02/dynamic-linker... While, from a security perspective, I am not all that happy about LD_PRELOAD, I feel that it is much like a double-edged sword, while it has negative use-cases, it has positive use-cases as well: E.g., program debugging, that is, to give more transparency and insight into programs…
Comment linking /2013/04/02/dynamic-linker-tricks-using-ld_preload-to-cheat-inject-features-and-investigate-programs/
on “The LD_PRELOAD trick (2016)”Submitted Dynamic linking trick to inject behavior into programs as a story · 1 points
HN discussion