Evitar la ingeniería inversa a través de la ofuscación y LLVM [cerrado]

2

Acabo de encontrar este concepto de "ofuscación" y aleatorizar el binario para que el atacante no pueda usarlo para aplicar ingeniería inversa a una determinada pieza de software.

¿Alguien puede indicarme los recursos que cubren esto en detalle? Estoy buscando específicamente cómo se aprovecha LLVM para esto.

¿Necesitamos escribir nuestros propios pases para obtener esta ofuscación del código de bytes o LLVM admite algunas técnicas básicas?

    
pregunta user775093 20.04.2015 - 04:46
fuente

1 respuesta

0

La jerga para las herramientas que estás buscando es "crypters". Esas herramientas están "compilando" su código usando varias técnicas para el llamado código ofuscado, no hay una solución única y cada herramienta puede seleccionar su propia forma extraña de ofuscar el binario. En cuanto a otros temas "oscuros", las explicaciones prácticas sobre esas técnicas son bastante raras (¿alguna vez has encontrado una guía de escritura de código de shell TCP inversa decente?).

... pero hay algunas reglas básicas sobre ofuscación, por ejemplo, cifrar cualquier cadena que esté incrustada en el segmento de datos de una forma u otra. Tenga en cuenta que, como dice @cpast, nunca obtendrá una seguridad perfecta contra los inversores profesionales.

Si está interesado en "ofuscación perfecta" de un académico , le recomiendo que lea las publicaciones del Prof. Ran Canneti y del Dr. Nir Bitansky.

    
respondido por el GalB1t 20.04.2015 - 13:10
fuente

Lea otras preguntas en las etiquetas