Skip to content
Syscall BSD#439

svc · unix #439

kas_info

Retourne le décalage et les informations de segments de l'espace d'adressage du noyau.

Prototype

int kas_info(int selector, void *value, size_t *size);

Retour: int

Arguments

NameTypeDirDescription
selectorint-
valuevoid-
sizesize_t-

Historique des versions

XNU tagmacOS#
xnu-2050.18.24macOS 10.8 Mountain Lion439
xnu-2422.115.4macOS 10.9 Mavericks439
xnu-2782.40.9macOS 10.10 Yosemite439
xnu-3247.1.106macOS 10.11 El Capitan439
xnu-3789.1.32macOS 10.12 Sierra439
xnu-4570.1.46macOS 10.13 High Sierra439
xnu-4903.221.2macOS 10.14 Mojave439
xnu-6153.11.26macOS 10.15 Catalina439
xnu-7195.50.7.100.1macOS 11.0 Big Sur439
xnu-8019.41.5macOS 12.0 Monterey439
xnu-8792.41.9macOS 13.0 Ventura439
xnu-10002.1.13macOS 14.0 Sonoma439
xnu-11215.1.10macOS 15.0 Sequoia439
xnu-11417.101.15macOS 15.4 Sequoia439
xnu-12377.1.9macOS 26.0 Tahoe439
xnu-10002.41.9—439
xnu-10002.61.3—439
xnu-10002.81.5—439
xnu-10063.101.15—439
xnu-10063.121.3—439
xnu-10063.141.1—439
xnu-11215.41.3—439
xnu-11215.61.5—439
xnu-11215.81.4—439
xnu-11417.121.6—439
xnu-11417.140.69—439
xnu-12377.101.15—439
xnu-12377.41.6—439
xnu-12377.61.12—439
xnu-12377.81.4—439
xnu-2050.22.13—439
xnu-2050.24.15—439
xnu-2050.48.11—439
xnu-2050.7.9—439
xnu-2050.9.2—439
xnu-2422.1.72—439
xnu-2422.100.13—439
xnu-2422.110.17—439
xnu-2422.90.20—439
xnu-2782.1.97—439
xnu-2782.10.72—439
xnu-2782.20.48—439
xnu-2782.30.5—439
xnu-3247.10.11—439
xnu-3248.20.55—439
xnu-3248.30.4—439
xnu-3248.40.184—439
xnu-3248.50.21—439
xnu-3248.60.10—439
xnu-3789.21.4—439
xnu-3789.31.2—439
xnu-3789.41.3—439
xnu-3789.51.2—439
xnu-3789.60.24—439
xnu-3789.70.16—439
xnu-4570.20.62—439
xnu-4570.31.3—439
xnu-4570.41.2—439
xnu-4570.51.1—439
xnu-4570.61.1—439
xnu-4570.71.2—439
xnu-4903.231.4—439
xnu-4903.241.1—439
xnu-4903.270.47—439
xnu-6153.101.6—439
xnu-6153.121.1—439
xnu-6153.141.1—439
xnu-6153.41.3—439
xnu-6153.61.1—439
xnu-6153.81.5—439
xnu-7195.101.1—439
xnu-7195.121.3—439
xnu-7195.141.2—439
xnu-7195.60.75—439
xnu-7195.81.3—439
xnu-8019.61.5—439
xnu-8019.80.24—439
xnu-8020.101.4—439
xnu-8020.121.3—439
xnu-8020.140.41—439
xnu-8792.61.2—439
xnu-8792.81.2—439
xnu-8796.101.5—439
xnu-8796.121.2—439
xnu-8796.141.3—439

Notes

kas_info(selector, ptr, size) supporte KAS_INFO_KERNEL_TEXT_SLIDE_SELECTOR (le slide KASLR) et KAS_INFO_KERNEL_SEGMENT_VMADDR_SELECTOR (adresses virtuelles par segment). Sur les noyaux de production il exige root et le flag de lockdown du noyau doit l'autoriser ; sur un noyau développeur il est largement accessible. Divulguer le slide casse trivialement KASLR, donc le syscall est fortement restreint sur iOS et les Mac Apple Silicon avec SIP activé.

Détection

Tout kas_info réussi sur une machine avec SIP activé depuis un binaire non-Apple est un précurseur d'exploit noyau à haute confiance. Hooker via DTrace fbt::kas_info:entry ; ES n'a pas d'événement dédié.

API associées

host_statisticstask_infokernelrpc_mach_vm_readcsr_check