From 712e3de075b0aba8602758cc6f6f9d17a5b0d402 Mon Sep 17 00:00:00 2001 From: Glenn 'devalias' Grant Date: Sat, 6 Jan 2024 19:13:47 +1100 Subject: [PATCH] add offsets for 12.7.1 (x86/arm64) --- README.md | 4 ++-- nac/offsets.go | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index cd07583..51999b1 100644 --- a/README.md +++ b/README.md @@ -6,8 +6,8 @@ registration code and use it in Beeper Mini. ## Supported MacOS versions The tool is currently quite hacky, so it only works on specific versions of macOS. -* Intel: 11.5 - 11.7, 13.3.1, 13.5 - 13.6, 14.0 - 14.3 -* Apple Silicon: 13.3.1, 13.5 - 13.6, 14.0 - 14.3 +* Intel: 11.5 - 11.7, 12.7.1, 13.3.1, 13.5 - 13.6, 14.0 - 14.3 +* Apple Silicon: 12.7.1, 13.3.1, 13.5 - 13.6, 14.0 - 14.3 On unsupported versions, it will tell you that it's unsupported and exit. A future version may work in less hacky ways to support more OS versions. diff --git a/nac/offsets.go b/nac/offsets.go index f5c90bd..911fe5a 100644 --- a/nac/offsets.go +++ b/nac/offsets.go @@ -14,6 +14,23 @@ var offsets_11_7_7 = imdOffsetTuple{x86: imdOffsets{ NACSignAddress: 0x3c71a0, }} +var offsets_12_7_1 = imdOffsetTuple{ + x86: imdOffsets{ + ReferenceSymbol: "IDSProtoKeyTransparencyTrustedServiceReadFrom", + ReferenceAddress: 0xb2278, + NACInitAddress: 0x4132e0, + NACKeyEstablishmentAddress: 0x465e00, + NACSignAddress: 0x405c10, + }, + arm64: imdOffsets{ + ReferenceSymbol: "IDSProtoKeyTransparencyTrustedServiceReadFrom", + ReferenceAddress: 0x0b562c, + NACInitAddress: 0x43d408, + NACKeyEstablishmentAddress: 0x3fdafc, + NACSignAddress: 0x3f2844, + }, +} + var offsets_13_3_1 = imdOffsetTuple{ x86: imdOffsets{ ReferenceSymbol: "IDSProtoKeyTransparencyTrustedServiceReadFrom", @@ -127,6 +144,8 @@ var offsets = map[[32]byte]imdOffsetTuple{ hexToByte32("80107d249088d9762ec38c8f86d6797b5070d476377e7c5ddacf83ad32d00a1e"): offsets_11_7_7, // macOS 12.6.3 hexToByte32("6e8caf477c2b4d3a56a91835a2b6455f36fb0feb13006def7516ac09578c67d0"): {}, + // macOS 12.7.1 + hexToByte32("5833338da6350266eda33f5501c5dfc793e0632b52883aa2389c438c02d03718"): offsets_12_7_1, // macOS 13.2.1 hexToByte32("4d96de9438fdea5b0b7121e485541ecf0a74489eeb330c151a7d44d289dd3a85"): {}, // macOS 13.3.1