¿Habilitar dtrace sin sudo en Mac OS X?

¿Cómo puedo habilitar a los usuarios para usar dtrace en Mac OS X. Estoy tratando de hacer el equivalente de strace en Linux, y no me gusta ejecutar aplicaciones con privilegios elevados.

ACTUALIZAR

Ok, lo mejor que puedo decir. La única manera de mantener una aplicación nefasta de arruinar el sistema mediante la debugging es.

  1. Adjuntar al process en una console separada
  2. Utilizar sudo dos veces

Así que eso:

sudo dtruss sudo -u myusername potentially_harmful_app 

Lo verifiqué con este corto progtwig:

 #include <iostream> #include <unistd.h> int main() { std::cout << "effective euid " << geteuid() << "\n"; } 

Ver esta discusión para más información:

http://discussions.apple.com/message.jspa?messageID=6430877

Por favor, vea mi actualización anterior. Este es un mal agujero de security si alguna vez he visto uno. Una correcta implementación de dtruss debería eliminar los privilegios de cualquier progtwig que invoque. Tener varios usuarios en un sistema, uno de ellos sería obligado a estropear esto y permitir que un progtwig mal escrito para basura cosas.

No puedes tener ambas cosas. dtrace requiere privilegios de root para hablar con el kernel, por lo que tiene que ejecutar con privs raíz (setuid) o por root.

chmod 4755 dtrace como root

cada vez que ejecute el progtwig se ejecutará con privilegios de root