¿Por qué la herramienta 'codesign' en OS X 10.11 (El Capitán) informa cada proceso de Python como "el objeto de código no está firmado en absoluto"?

3

Si inicia cualquier proceso de Python en OS X 10.11 (10.11.0 o 10.11.1) El Capitán, y ejecuta la herramienta incorporada de sistema 'codesign' para verificar el proceso, recibirá un error que dice "código objeto no está firmado en absoluto ".

Aquí hay un ejemplo:

  1. Abre Terminal.app. Escribe "python". Esto iniciará una consola normal de Python REPL.
  2. Abre otra ventana de terminal. Ejecute "ps | grep python" para encontrar el ID de proceso del proceso REPL de Python. Digamos que es 555.
  3. Ejecuta el comando "codesign -v 555". codesign informará "555: el objeto de código no está firmado en absoluto"

Sin embargo, si ejecuta los siguientes comandos, parece que el ejecutable de Python está firmado correctamente:

$ which python
/usr/bin/python

$ codesign -dvv 'which python'
Executable=/usr/bin/python
Identifier=com.apple.pythonw
Format=Mach-O universal (i386 x86_64)
CodeDirectory v=20100 size=226 flags=0x0(none) hashes=6+2 location=embedded
Signature size=4105
Authority=Software Signing
Authority=Apple Code Signing Certification Authority
Authority=Apple Root CA
Info.plist=not bound
TeamIdentifier=not set
Sealed Resources=none
Internal requirements count=1 size=68

Si usa un código para verificar cualquier proceso de Perl o Ruby, todo está bien. Además, en Yosemite, todos los procesos de Python pueden verificarse correctamente mediante el código.

¿Qué pasó?

    
pregunta Lei L 26.10.2015 - 08:41
fuente

1 respuesta

1

El ejecutable ubicado en /usr/bin/python hace poco más que generar la aplicación /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app . Ese paquete de aplicaciones no tiene su propia firma, pero probablemente se contradiga con la firma del binario principal.

    
respondido por el rspeed 23.04.2016 - 09:38
fuente

Lea otras preguntas en las etiquetas