GOOGLE ADS

martes, 3 de mayo de 2022

¿Cómo deshabilitar canarios de pila para funciones específicas?

Con gcc, es posible compilar con -fstack-protector, pero omitir para una función específica.

Por ejemplo, digamos que tengo dos funciones.

void a() {
...
}
void b() {
...
}

¿Puedo decirle al compilador que compile un programa que usará un valor controlado antes de la dirección de retorno guardada de a, pero no un valor controlado para b?


Solución del problema

Tendría que probar si funciona (inspeccione el código generado en Godbolt) pero parece que puede hacerlo, por ejemplo:

__attribute__ ((no_stack_protector)) void foo () {... }

no_sanitizeparece una opción intrigante, me pregunto quién usa eso.

No hay comentarios:

Publicar un comentario

Regla de Firestore para acceder a la generación de subcolección Permisos faltantes o insuficientes

Tengo problemas con las reglas de Firestore para permitir el acceso a algunos recursos en una subcolección. Tengo algunos requests document...