Articles of dynamic linking

¿Cómo obtengo linux-gate.dso en un sistema Linux más nuevo?

Me gustaría averiguar qué método utiliza mi invitado QEMU de 32 bits para las llamadas al sistema. Hay un excelente artículo explicando linux-gate.dso ( http://www.trilithium.com/johan/2005/08/linux-gate/ ). Sin embargo, parece que no puedo get ninguno de los commands para trabajar en mi sistema más nuevo. Parece que las características de security actuales no me permiten volcar […]

¿Especificando libc local llama libc global?

Si ejecuto el command foo especificando una libc diferente para usar de la siguiente manera: LD_LIBRARY_PATH=$PATH_TO_MY_CUSTOM_LIBC foo ¿La libc definida globalmente se usa para ejecutar cualquiera de los commands dados anteriormente? En aras del context: considere la situación en la que su libc está físicamente presente y accesible en su máquina, pero no puede usarse […]

Comstackndo FFMPEG desde la fuente: no se puede encontrar la biblioteca compartida

Estoy comstackndo FFMPEG desde la fuente usando la guía para Ubuntu que he usado anteriormente con éxito. Estoy comstackndo en una máquina virtual Vagrant en VirtualBox en el server Ubuntu 14.04. Puede clonar el proyecto y el vagrant up , y tendrá FFMPEG instalado en el cuadro: github.com/rfkrocktk/vagrant-ffmpeg . Estoy usando Ansible para automatizar la […]

¿La biblioteca compartida de vdso (linux-vdso.so) es la biblioteca que contiene el código del object kernel (llamadas al sistema)?

Noté que todos mis progtwigs comstackdos en gcc están vinculados a la biblioteca vdso. ¿Es esta la biblioteca que contiene las llamadas al kernel del sistema, como mmap () y fork () y otras llamadas al sistema? Sé que las llamadas al sistema no son funciones de la biblioteca estándar GNU C, por lo que […]

Vinculación de biblioteca compartida en kernel de Linux

Me gustaría modificar el module de security (Específicamente security / IMA) del kernel de Linux. (Este module debe comstackrse en el kernel) Tengo que usar funciones de una biblioteca compartida (un file .so) en este module. pero no sé cómo comstackrlo. ¿Hay alguna forma de colocar el file de la biblioteca compartida en el kernel […]

¿Cómo verificar si un binary potencialmente accede a internet sin ejecutarlo?

¿Existe alguna manera confiable de verificar si un ejecutable binary intenta potencialmente acceder a Internet (por ejemplo, para llamar a casa) antes de ejecutarlo? Supongo que muchos binarys usan ioctl / socket / connect de glibc para acceder a internet. Es decir, hacer un objdump y verificar estas funciones puede revelar cierta información al respecto. […]

Configuración de DNS por usuario para VPN

Mi sistema está configurado para enviar solo el tráfico de un usuario en particular a través de vpn (a través de iptables y –uid-owner ). Funciona bien, pero el DNS de ese usuario se filtra a la networking abierta. ¿Alguna forma de enviar solo DNS de un usuario a través de una VPN? Todas las […]

¿Cómo rastrear en time de ejecución los símbolos de la biblioteca compartida cargada?

Quiero poder saber cuáles son los símbolos que se utilizan desde cierta biblioteca compartida en time de ejecución. Utilizo gdb y configuré solib-search-path en la biblioteca compartida definida por el usuario. No estoy seguro si hay otra manera con ltrace

¿Por qué ldd no muestra routes de nombre de file para dependencies?

Estoy experimentando con la variable ELF RUNPATH para las dependencies dinámicas. En el path obtuve una copy de bash binary con el cambio RUNPATH , ejecutando ldd en él devuelve: $ ldd ./bash linux-vdso.so.1 => (0x00007ffe6bdf9000) libtinfo.so.5 (0x00007fbf8b97c000) libdl.so.2 (0x00007fbf8b776000) libc.so.6 (0x00007fbf8b3a5000) /lib64/ld-linux-x86-64.so.2 (0x00007fbf8bba7000) – ¿Por qué no hay routes a las dependencies (de mi […]

¿Cómo identificar las bibliotecas compartidas del sistema?

Mi herramienta de software tiene algunas dependencies externas. Lo estoy distribuyendo como un package conda para linux64 con dependencies precomstackdas que incluyen bibliotecas compartidas. Lamentablemente, no sé cómo reconocer las bibliotecas del sistema desde las específicas del software. Creo que la distribución de libs como libc no es necesaria e incluso debe evitarse, ya que […]