rpath se refiere una ruta de búsqueda en tiempo de ejecución hardcodeada en una librería o archivo ejecutable usada durante el enlace dinámico para encontrar las librerías que el ejecutable o librería requiere.

Específicamente codifica una ruta a librerías compartidas en el encabezado de un ejecutable (u otra librería compartida). El valor del encabezado RPATH (así llamado en los estándar del encabezado ELF) puede o pisar o bien suplementar las rutas de búsqueda de enlace dinámico.

El rpath de un ejecutable o librería compartida es una línea opcionar en la sección “.dynamic” del ejecutable ELF o librerías compartidas, con el tipo DT_RPATH, llamado atributo DT_RPATH.

Se puede almacenar allí en tiempo de enlace por el enlazador y se puede modifica (o posiblemente crearse) más tarde usando herramientas como chrpath y patchelf.

LD_PRELOAD no tiene ningún efecto si el ejecutable tiene SUID o SGID

Contents