[ltt-dev] [PATCH UST] Fix insecure library loading (Debian Bug #598309, CVE-2010-3386) (v2)
Nils Carlson
nils.carlson at ericsson.com
Fri Oct 1 08:49:36 EDT 2010
Acked and pulled.
/Nils
On Thu, 30 Sep 2010, Mathieu Desnoyers wrote:
> Thanks to Raphael Geissert for spotting this, and to Jon Bernard for forwarding
> the information to us.
>
> Changelog since v1:
> Apply comments from Nils.
>
> Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>
> Reviewed-by: Nils Carlson <nils.carlson at ericsson.com>
> CC: Raphael Geissert <geissert at debian.org>
> CC: Jon Bernard <jbernard at debian.org>
> ---
> usttrace | 47 +++++++++++++++++++++++++++++++++++++----------
> 1 file changed, 37 insertions(+), 10 deletions(-)
>
> Index: ust/usttrace
> ===================================================================
> --- ust.orig/usttrace
> +++ ust/usttrace
> @@ -132,27 +132,54 @@ fi
>
> if [ "$arg_preload_libust" = "1" ];
> then
> - if [ -n "${LIBUST_PATH%libust.so}" ] ; then
> - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${LIBUST_PATH%libust.so}"
> + if [ -n "${LIBUST_PATH%libust.so}" ];
> + then
> + if [ -n "$LD_LIBRARY_PATH" ];
> + then
> + export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${LIBUST_PATH%libust.so}"
> + else
> + export LD_LIBRARY_PATH="${LIBUST_PATH%libust.so}"
> + fi
> + fi
> + if [ -n "$LIBUST_PATH" ];
> + then
> + if [ -n "$LD_PRELOAD" ];
> + then
> + export LD_PRELOAD="$LD_PRELOAD:$LIBUST_PATH"
> + else
> + export LD_PRELOAD="$LIBUST_PATH"
> + fi
> fi
> - export LD_PRELOAD="$LD_PRELOAD:$LIBUST_PATH"
> fi
>
> - if [ "$arg_ld_std_ust" = "1" ];
> + if [ "$arg_ld_std_ust" = "1" ] && [ -n "${LIBUST_PATH%libust.so}" ];
> then
> - if [ -n "$${LIBUST_PATH%libust.so}" ] ; then
> - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${LIBUST_PATH%libust.so}"
> + if [ -n "$LD_LIBRARY_PATH" ];
> + then
> + export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${LIBUST_PATH%libust.so}"
> + else
> + export LD_LIBRARY_PATH="${LIBUST_PATH%libust.so}"
> fi
> fi
>
> - if [ "$arg_preload_malloc" = "1" ];
> + if [ "$arg_preload_malloc" = "1" ] && [ -n "$LIBMALLOCWRAP_PATH" ];
> then
> - export LD_PRELOAD="$LD_PRELOAD:$LIBMALLOCWRAP_PATH"
> + if [ -n "$LD_PRELOAD" ];
> + then
> + export LD_PRELOAD="$LD_PRELOAD:$LIBMALLOCWRAP_PATH"
> + else
> + export LD_PRELOAD="$LIBMALLOCWRAP_PATH"
> + fi
> fi
>
> - if [ "$arg_preload_fork" = "1" ];
> + if [ "$arg_preload_fork" = "1" ] && [ -n "$LIBINTERFORK_PATH" ];
> then
> - export LD_PRELOAD="$LD_PRELOAD:$LIBINTERFORK_PATH"
> + if [ -n "$LD_PRELOAD" ];
> + then
> + export LD_PRELOAD="$LD_PRELOAD:$LIBINTERFORK_PATH"
> + else
> + export LD_PRELOAD="$LIBINTERFORK_PATH"
> + fi
> fi
>
> # Execute the command
>
> --
> Mathieu Desnoyers
> Operating System Efficiency R&D Consultant
> EfficiOS Inc.
> http://www.efficios.com
>
More information about the lttng-dev
mailing list