Re: build initramfs: uncontrolled LD_LIBRARY_PATH

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 19.08.2011 05:48, John Reiser wrote:
> dracut uses ldd when building an initramfs, but I cannot find where
> dracut controls LD_LIBRARY_PATH during the build.  Thus I do not trust
> the results of ldd.  The string "LD_LIBRARY_PATH" does not appear
> in the dracut source tree, there is no use of "env -i", dracut is
> not setuid, etc.
> 
> At a minimum, the built initramfs could fail to satisfy some DT_NEEDED
> entry during boot, leading to a crash.  Some soname was satisfied by
> a library in a non-standard directory on the build-time LD_LIBRARY_PATH,
> and was copied into that non-standard directory of the initramfs, but is
> not findable using the boot-time (default standard) path list.
> 
> That might be the worst, because all users of the initramfs (namely:
> booting only) do control LD_LIBRARY_PATH, so there might be "no possibility"
> of substituting an actual non-standard library.  However, it would be
> safer to control LD_LIBRARY_PATH while building initramfs, or at least
> document why not.
> 

good find!

diff --git a/dracut b/dracut
index cf27b23..dfa71a1 100755
--- a/dracut
+++ b/dracut
@@ -265,6 +265,7 @@ fi

 PATH=/sbin:/bin:/usr/sbin:/usr/bin
 export PATH
+unset LD_LIBRARY_PATH

 [[ $debug ]] && {
     export PS4='${BASH_SOURCE}@${LINENO}(${FUNCNAME[0]}): ';
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux