svc · mach trap -96
debug_control_port_for_pid
Retourne le port task « debug-control » d'un PID, autorisant un contrôle de type débogueur sans le port task control complet.
Prototype
kern_return_t debug_control_port_for_pid(/* 3 args */);Retour: kern_return_t
Historique des versions
| XNU tag | macOS | # |
|---|---|---|
| xnu-6153.11.26 | macOS 10.15 Catalina | -96 |
| xnu-7195.50.7.100.1 | macOS 11.0 Big Sur | -96 |
| xnu-8019.41.5 | macOS 12.0 Monterey | -96 |
| xnu-8792.41.9 | macOS 13.0 Ventura | -96 |
| xnu-10002.1.13 | macOS 14.0 Sonoma | -96 |
| xnu-11215.1.10 | macOS 15.0 Sequoia | -96 |
| xnu-11417.101.15 | macOS 15.4 Sequoia | -96 |
| xnu-12377.1.9 | macOS 26.0 Tahoe | -96 |
| xnu-10002.41.9 | — | -96 |
| xnu-10002.61.3 | — | -96 |
| xnu-10002.81.5 | — | -96 |
| xnu-10063.101.15 | — | -96 |
| xnu-10063.121.3 | — | -96 |
| xnu-10063.141.1 | — | -96 |
| xnu-11215.41.3 | — | -96 |
| xnu-11215.61.5 | — | -96 |
| xnu-11215.81.4 | — | -96 |
| xnu-11417.121.6 | — | -96 |
| xnu-11417.140.69 | — | -96 |
| xnu-12377.101.15 | — | -96 |
| xnu-12377.41.6 | — | -96 |
| xnu-12377.61.12 | — | -96 |
| xnu-12377.81.4 | — | -96 |
| xnu-6153.101.6 | — | -96 |
| xnu-6153.121.1 | — | -96 |
| xnu-6153.141.1 | — | -96 |
| xnu-6153.41.3 | — | -96 |
| xnu-6153.61.1 | — | -96 |
| xnu-6153.81.5 | — | -96 |
| xnu-7195.101.1 | — | -96 |
| xnu-7195.121.3 | — | -96 |
| xnu-7195.141.2 | — | -96 |
| xnu-7195.60.75 | — | -96 |
| xnu-7195.81.3 | — | -96 |
| xnu-8019.61.5 | — | -96 |
| xnu-8019.80.24 | — | -96 |
| xnu-8020.101.4 | — | -96 |
| xnu-8020.121.3 | — | -96 |
| xnu-8020.140.41 | — | -96 |
| xnu-8792.61.2 | — | -96 |
| xnu-8792.81.2 | — | -96 |
| xnu-8796.101.5 | — | -96 |
| xnu-8796.121.2 | — | -96 |
| xnu-8796.141.3 | — | -96 |
Notes
Introduit dans macOS 12 dans le cadre de la séparation corpse/debug, debug_control_port_for_pid restitue un port dont les droits sont taillés pour le débogage : lecture/écriture d'état de thread et gestion des ports d'exception, avec un filtrage hardened-runtime et SIP affiné pour les besoins d'Xcode et lldb. L'appelant doit posséder com.apple.security.cs.debugger ou avoir reçu les privilèges Developer Tools ; AMFI et taskgated médient toujours la requête. Le port respecte les sémantiques de pinning, il ne peut donc pas être déplacé silencieusement vers un autre task.
Détection
À ce jour (macOS 14) Endpoint Security n'expose pas d'événement dédié à ce trap ; il est observable via le provider DTrace mach_trap et via les refus AMFI journalisés dans le sous-système unified log com.apple.AMFI.