GNU/Linux >> Tutoriales Linux >  >> Linux

Linux:¿cómo probar si un binario de Linux se compiló como código independiente de la posición?

Recientemente aprendí que (al menos en Fedora y Red Hat Enterprise Linux), los programas ejecutables que se compilan como Ejecutables Independientes de Posición (PIE) reciben una protección más sólida de aleatorización del espacio de direcciones (ASLR).

Entonces:¿Cómo compruebo si un ejecutable en particular se compiló como un ejecutable independiente de posición en Linux?

Respuesta aceptada:

Puedes usar perl script contenido en hardening-check paquete, disponible en Fedora y Debian (como hardening-includes ). Lea esta página wiki de Debian para obtener detalles sobre qué indicadores de compilación se comprueban. Es específico de Debian, pero la teoría también se aplica a Red Hat.

Ejemplo:

$ hardening-check $(which sshd)
/usr/sbin/sshd:
 Position Independent Executable: yes
 Stack protected: yes
 Fortify Source functions: yes (some protected functions found)
 Read-only relocations: yes
 Immediate binding: yes

Linux
  1. Cómo probar un paquete sin instalarlo en Linux

  2. ¿Cómo desensamblar, modificar y luego volver a ensamblar un ejecutable de Linux?

  3. ¿Cómo mantener el código ejecutable en la memoria incluso bajo presión de memoria? en Linux

  4. ¿Cómo identificar si mi computadora con Linux fue pirateada?

  5. ¿Cómo determinar si un archivo binario de Linux es de 32 bits o de 64 bits?

Cómo juego Tetris en el mainframe

Cómo ha crecido el escritorio de Linux

Cómo usar operadores de prueba de archivos Bash en Linux

Cómo hacer un archivo ejecutable en Linux

¿Cómo probar si un binario de Linux se compiló como código independiente de la posición?

¿Se ejecutará un ejecutable de Linux compilado en un tipo de Linux en otro diferente?