LinuxParty
En las entregas anteriores hemos visto
cómo escribir código inyectable y cómo inyectar nuestro código en otros
binarios sirviéndonos de diversos trucos. La siguiente fase lógica -la
activación- ya no consistirá sólo en saltar a nuestra rutina inyectada,
si no también el devolverle el control al código original y no levantar
sospechas.

La idea general será la siguiente: debemos encontrar algún puntero al
que el ELF intente saltar en todo su tiempo de ejecución, ejecutar el
código inyectado y devolver el control al puntero original. Esto se
conoce popularmente como hooking: reemplazamos la dirección a la
que cierto programa debe saltar en cierto momento para ejecutar nuestro
código, y devolver el control a la dirección original a la que se quería
llamar.
uando los sistemas operativos eran más
burdos y no había APIs específicas para registrar más de un manejador
para determinado evento del sistema, lo que las aplicaciones
-normalmente controladores de dispositivo- hacían era guardar la
dirección del manejador original, sustituir la dirección por la de un
manejador propio y saltar después a la dirección guardada. Así se podían
tener dos manejadores para la misma interrupción aunque el sistema no
soportase nativamente una característica así. Un ejercicio muy clásico
de Sistemas Operativos años antes era engancharse a la interrupción del
teclado para hacer que a cada pulsación la CPU emitiese un pitido, muy
vintage todo.
Obviamente, surgen algunas complicaciones. Por ejemplo, el código que
estaba antes espera encontrar en la pila ciertas cosas (esto implica que
tanto a la entrada como a la salida del código enganchado, el %esp
debe permanecer inalterado, aunque entre tanto hagamos virguerías con
él). Con los registros pasa lo mismo, por regla general debemos dejarlos
como estaban (a menos que queramos hacer explícitamente algún cambio en
el comportamiento del código que viene después). Son problemas
atajables, pero que hay que tener en cuenta.
Continúa en "Security by Default", indicar que la página tiene un script que funciona bastante mal, por lo menos en Firefox.
Continúa en "Security by Default", indicar que la página tiene un script que funciona bastante mal, por lo menos en Firefox.

-
Artículos
- Linux 6.16 agrega la opción 'X86_NATIVE_CPU' para optimizar la compilación del kernel
- ¿No puedes actualizar a Windows 11? Esta es la alternativa de distribución de Linux que recomiendo a la mayoría.
- Reddit cumple 20 años
- Proton 8: la mayor actualización hasta la fecha mejora compatibilidad de juegos en Linux y Steam Deck
- Red Hat Linux lanza RHEL 10 con I.A., nube híbrida y seguridad poscuántica
- 🛠️ Monitorización en Linux: Prometheus, Grafana, Netdata y Zabbix explicados (y cuál elegir)
- Aprende a usar las capas en GIMP: Guía esencial para usuarios de Linux
- GIMP 3.0: La Revolución del Editor de Imágenes Libre
- Linus Torvalds expresa su desprecio por los sistemas de archivos que no distinguen entre mayúsculas y minúsculas
- 🎮 Las 6 Mejores Distribuciones de Linux para Gaming en 2025
- Pinta 3.0 Programa de pintura de código abierto lanzado con GTK4 Port, nuevos efectos
- Descubre Linux Assistant: Una Herramienta Esencial para Tu Escritorio