1) no, el paking se realiza con un exe externo al programa ya compilado, aunque algunos compiladores aún tienen la opción en usar upx en el propio compilado
2)En principio se usban para disminuir el tamaño de los ejecutables, no había los discos de hoy. Después comenzaron a ser una forma de protección. ofuscación es lo más simple, añaden redirección de iat,locación en otras zonas de memoria, antidebuger,antipatch, etc.
3) hay herramientas que basicamente analizan la cabecera y te dicen si es nativo o protegido, por ejemplo: RDG Packer Detector,die,etc. con el tiempo se aprende a conocer las instrucciones iniciales de los distintos compiladores desde el oep.
4) depende el packer, hay muchas genericas para packers fáciles, otras para algunos específicos, y tambien depende el tipo de compilador, *.net es distinto a c y sus variantes por ejemplo. La mejor herramienta es el cerebro y práctica.
2)En principio se usban para disminuir el tamaño de los ejecutables, no había los discos de hoy. Después comenzaron a ser una forma de protección. ofuscación es lo más simple, añaden redirección de iat,locación en otras zonas de memoria, antidebuger,antipatch, etc.
3) hay herramientas que basicamente analizan la cabecera y te dicen si es nativo o protegido, por ejemplo: RDG Packer Detector,die,etc. con el tiempo se aprende a conocer las instrucciones iniciales de los distintos compiladores desde el oep.
4) depende el packer, hay muchas genericas para packers fáciles, otras para algunos específicos, y tambien depende el tipo de compilador, *.net es distinto a c y sus variantes por ejemplo. La mejor herramienta es el cerebro y práctica.