Skip to content
Trap Mach#-96

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 tagmacOS#
xnu-6153.11.26macOS 10.15 Catalina-96
xnu-7195.50.7.100.1macOS 11.0 Big Sur-96
xnu-8019.41.5macOS 12.0 Monterey-96
xnu-8792.41.9macOS 13.0 Ventura-96
xnu-10002.1.13macOS 14.0 Sonoma-96
xnu-11215.1.10macOS 15.0 Sequoia-96
xnu-11417.101.15macOS 15.4 Sequoia-96
xnu-12377.1.9macOS 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.

API associées

task_for_pidtask_read_for_pidtask_get_special_portthread_set_state