Re:Using LD_PRELOAD to cheat, inject features and investigat...
by AnIdiotOnTheNet on Monday December 04, 2017 @11:20AM
(#15844986)
Yeah, but UNIX developers love namespace conflicts and hardcoded paths, so something as simple as "look for libs in the directory your binary is in" either never occurred to them or was rejected under various arbitrary concerns.
[ Parent
| on HN ]
Re:Using LD_PRELOAD to cheat, inject features and investigat...
by theamk on Tuesday December 05, 2017 @12:27PM
(#15853407)
Huh? It has not been rejected -- it is up to compiler/linker what to put in RPATH, and you can totally set RPATH to $ORIGIN. There is a nice tool, chrpath, to do so. For example, java sets it to:
/usr/bin/java: RPATH=$ORIGIN/../lib/amd64/jli:$ORIGIN/../lib/amd64
I believe the reason it does not happen by default is that binaries go to /usr/bin, and no .so files should appear there. Also it breaks when hardlinks are involved.
Re:Using LD_PRELOAD to cheat, inject features and investigat...
by AnIdiotOnTheNet on Thursday December 14, 2017 @01:44PM
(#15925311)
> I believe the reason it does not happen by default is that binaries go to /usr/bin, and no .so files should appear there. Also it breaks when hardlinks are involved.
I other words, nobody uses it. So many conflicts could be easily solved if applications dropped this retarded insistence on spreading files over the hierarchy by type, but they just keep doing it because they mistake tradition for wisdom.
Re:Using LD_PRELOAD to cheat, inject features and investigat...
by sigjuice on Monday December 04, 2017 @05:47PM
(#15848272)
This is possible on Linux using
gcc -Wl,-rpath,'$ORIGIN/../lib'
See http://man7.org/linux/man-pages/man8/ld.so.8.html
Re:Using LD_PRELOAD to cheat, inject features and investigat...
by jwilk on Tuesday December 05, 2017 @07:55AM
(#15851417)
This should work also on other ELF-based systems.
Re:Using LD_PRELOAD to cheat, inject features and investigat...
by DavidBuchanan on Monday December 04, 2017 @11:47AM
(#15845237)
I wouldn't categorise security as an "arbitrary concern".
Re:Using LD_PRELOAD to cheat, inject features and investigat...
by AnIdiotOnTheNet on Monday December 04, 2017 @01:08PM
(#15846009)
In order to exploit this you need to be able to write to the directory where the binary is.
"Security" is trotted out as an arbitrary concern quite often because a lot of security people don't have any concept of risk analysis or cost/benefit. If it was up to them no one would ever do anything because that way they can't make a mistake.