Commit Graph
21 Commits
Author SHA1 Message Date
JBJF fc17f7af7d docs: Cutter/rz-ghidra decompilation of the MTE gate and TLBI completion path 2026-11-01 01:52:30 +08:00
JBJF 7da28702a7 tools: ARM64 decompiler wrapper (Cutter/rizin/rz-ghidra, no Java) 2026-11-01 01:43:39 +08:00
JBJF 4ed0f0b304 SPTM: record IOGPU handler addresses and selector-recovery blocker 2026-10-31 17:58:43 +08:00
JBJF 1cab5b2428 SPTM: confirm IOGPU/IOUAT user path on final 27.2 v6x-pandia 2026-10-31 17:50:19 +08:00
JBJF 9d6c44de61 kernel diff: correct to the iPhone19,7 v6x-pandia kernelcache (304 fileset entries, v6x addresses) 2026-10-31 17:48:34 +08:00
JBJF c7d4043a8c SPTM: MTE SK tag-page check is a PA-range gate; alias mapping does not bypass it 2026-10-31 17:35:59 +08:00
JBJF 6bb476a534 kernel diff: candidate fix-site functions for sdl/mbuf/vm_map/framebank checks 2026-10-31 17:35:09 +08:00
JBJF 8a8efdf15d tools: sptm_gate.py verifies whether the TLBI verification gate exists in a device tree 2026-10-31 17:30:58 +08:00
JBJF bdb029bb37 SPTM: 27.2 TLBI verification is DeviceTree-gated and the gate is absent on iPhone19,7
- parser at 0xfffffff0270cbe18 sets the verify flag to 0 when
  /arm-io/sgx lacks verify-gmmu-tlbis-at-sync
- BuildManifest maps iPhone19,7 -> v64sap; that DT lacks the key, as do
  iBoot, AGX and the kernelcache; only SPTM contains the strings
- consequence: the GMMU TLBI completion window remains open on iPhone 27.2
  (fix-gating gap, not a new memory-safety bug)
2026-10-31 17:30:36 +08:00
JBJF 0288f2e3ae SPTM/MIE: hardware verification plans for GMMU TLBI race and tag-storage aliasing 2026-10-31 17:19:13 +08:00
JBJF f14f7df318 SPTM: function-level TLBI evidence (369 vs 264 insns, added completion wait) 2026-10-31 17:18:14 +08:00
JBJF 09a02858f6 SPTM/MIE deep dive: sptm.t8160 820.22 -> 820.40.24 (+64 KiB)
- docs/SPTM-MIE-27.2.md: separate SPTM firmware changed (kernel __DATA_SPTM
  is not the monitor); new DART GAPF race, GMMU TLBI verification, iommu
  refcount, Dekker locks, hibernation handoff/latch checks; TXM build-only;
  Exclave +229 KB; MIE SK tag-page check unchanged (210 insns, relocated)
- candidate directions: DART unganged-GAPF race, hibernation handoff page
  count, SK tag-page aliasing, dangling tag storage; no working bypass
- correct the earlier claim that SPTM was unchanged
- tools: fw_diff, string_xref, func_string_diff
2026-10-31 17:14:56 +08:00
JBJF 300d4805be docs: kernel CVE table — advisory impact vs binary evidence vs R/W potential 2026-10-31 17:10:40 +08:00
JBJF 6a77b43942 docs: complete iOS 27.2 advisory list (162 CVEs, 67 components) with binary candidates 2026-10-31 17:10:21 +08:00
JBJF 3ac5108928 iOS 27.2 kernel differential + NTL fix-boundary sweep
- docs/IOS27.2-KERNEL-DIFF.md: 27.0.1 vs 27.2 (iPhone19,7), 162 advisory
  CVEs, 93 size-changed kexts; confirmed fix sites for 112705 (NTL 0..7
  assertion), 113910 (produced vs expected chunk bytes), 112507 (ipr/table
  NULL checks in ipc_misc.c); __DATA_SPTM byte-identical, no PPL/SPTM/MIE
  code change or bypass fix
- tools/ipsw/: Range-based IPSW reader, IM4P/LZFSE + fileset parser, kext
  extractor, llvm-objdump diff, advisory mapper
- CVE-2026-112705: --sweep mode (0..12, no frame) in both POCs; app module
  now sweeps 0/1/7/8/64/1024/16462/16463
- app 2.3 build 7
v2.3
2026-10-31 17:09:48 +08:00
JBJF 030df9a8b1 fix: register the arrivals group in the lab list
Catalog.groups is a hard-coded list and did not include the arrivals catalog,
so the five new modules (112705 probe/fire, 112621 probe/fire, 84636) and
kern.ipc.lifecycle were counted in Catalog.all but invisible in the POCs tab.
Add a localized 新收录 / New arrivals group at the top; simulator screenshot
confirms all six entries render. Build 6.
v2.2.1
2026-10-31 16:06:28 +08:00
JBJF 6f4ed67c38 112507 reachability closed: notification registration refused (-300)
- New kern.ipc.lifecycle module: dead-name registration, dead-name send,
  notification receive, name reuse — single-threaded, safe on device
- Device receipt (iPhone19,7, iOS 27.0.1, ad-hoc signed): request DEAD_NAME
  returns -300 (MIG_TYPE_ERROR); send -> MACH_SEND_INVALID_DEST; receive
  times out; 0/12,288 registrations armed in kern.ipc
- macOS 27 sweep: 13 notification-type/right combinations, all -300
- kern.ipc now counts armed registrations and retracts the old 'survived'
  verdict when armed == 0; the request table is never armed
- docs/KERNEL-RW-ASSESSMENT.md: 112507 marked closed for this app
- app 2.2 build 5; 57 modules
v2.2
2026-10-31 15:59:20 +08:00
JBJF c30aadf9bb kernel R/W assessment for the high/critical entries
- docs/KERNEL-RW-ASSESSMENT.md: per-primitive verdict. None of the six
  kernel-reachable bugs supplies both address and value control; the chain
  requirements (KASLR, grooming, reclaim, gadget, PAC/PPL) are listed per entry
- CVE-2026-113910.c: leak collector — 8 chunk configs x --loop, canonical
  pointer classification (kernel-text / kernel-data / kernel-other), --keep
  raw dump, --verbose; candidates are printed, never dereferenced
- 112705 / 65385 / 112696: explicit primitive-limit headers (DoS, fixed-offset
  write without leak, honest negative); no blind writes
- README: link the assessment and the new 113910 receipt (0 candidates, 16 runs)
2026-10-31 15:37:58 +08:00
JBJF ed682e859b v2.1 — CVE-2026-112705 / 112621 / 84636
Three public research arrivals, each with a .swift and .c POC folder:

- CVE-2026-112705 (AppleAVE2 NumberOfTemporalLayers): app split into a
  property probe (ave.ntl) and a deliberate fire module (ave.ntl.fire);
  C twin carries a --force-host gate because a frame submit reaches the
  same driver that panicked the dev Mac, so the host only builds it
- CVE-2026-112621 (LinkPresentation LPAnimatedImageTranscoder): 256x16 ->
  256x48 container, loopback og:image delivery, LPMetadataProvider; probe
  checks the pool math, fire runs the real transcode; C twin reproduces the
  48-row clear against a guard page (32,768 B past the 16,384-byte pool)
- CVE-2026-84636 (configd dynamic store): SSID + router MAC without the
  wifi-info entitlement, compared in-process with CNCopyCurrentNetworkInfo

56 modules, 34 CVE folders, 45 Swift POC files, 34 C twins. Device IPA
2.1 build 4; simulator regression: sc.dynamicstore / ave.ntl / lp.heic all
done (overflow=32768, NTL refused 0/4 on the simulator's encoder path).
v2.1
2026-10-31 15:27:09 +08:00
JBJF 7949c7ce9f v2.0 — 31 C POC twins + harness fixes
- 31 C POC files, one per CVE folder: full seed construction + trigger +
  main(), self-contained, no app dependency. All compile clean with
  clang -O2 -Wall (zero warnings) on macOS arm64; each has a recorded
  oracle on this host.
- CMGetDMVersionLevelFromRPU ABI pinned by disassembly: macOS export is
  (CFDataRef), the Swift POC drives the 4-arg iOS surface — this is the
  mechanism behind the cm.rpu death oracle on the simulator build.
- Harness fixes: glyphCount guard, MachOInspector size guard, ModTools
  clamp, DeviceModel iPhone19,7, GPTPayload clamps, Gate patch display.
- POC comments rewritten English-only (31 swift + arc.rr + 5 py).
- README (en/zh): C twin column, .c anatomy section, compile/run
  examples, C oracle verification status.
- Dead if-let binding removed from Identity summary; v2.0 build 3.
v2.0
2026-10-29 20:08:55 +08:00
jbjf6666 1ea76ab005 Cinder27 — iOS 17.0-27.1 vulnerability verification lab: 51 modules, 31 per-CVE POC folders, 11 no-CVE module folders, harness app source v1.0 2026-10-29 02:11:12 +08:00