ARM64 Stack Internals and Call-Stack Obfuscation on Apple Si... - #2839
Open
carlospolop wants to merge 1 commit into
Open
ARM64 Stack Internals and Call-Stack Obfuscation on Apple Si...#2839carlospolop wants to merge 1 commit into
carlospolop wants to merge 1 commit into
Conversation
Collaborator
Author
🔗 Additional ContextOriginal Blog Post: https://mdsec.co.uk/2026/08/arm64-stack-internals-and-obfuscation-on-apple-silicon Content Categories: Based on the analysis, this content was categorized under "macOS Hardening > macOS Security & Privilege Escalation > macOS Process Abuse > ARM64/ARM64e Call-Stack Spoofing and Mach-O Unwind Metadata Abuse". Repository Maintenance:
Review Notes:
Bot Version: HackTricks News Bot v1.0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🤖 Automated Content Update
This PR was automatically generated by the HackTricks News Bot based on a technical blog post.
📝 Source Information
🎯 Content Summary
Overview and security impact
The post explains ARM64/ARM64e stack unwinding on Apple Silicon and demonstrates how implants can construct synthetic call stacks to deceive macOS EDR telemetry. The research began after observing a major EDR sensor invoke the built-in
/usr/sbin/spindumputility rather than implement a private stack unwinder. By reversing the metadata-driven unwind process, an implant can make a sensitive API invocation appear to originate from legitimate func...🔧 Technical Details
Metadata-driven call-stack spoofing: A stack unwinder uses each PC to select a Mach-O compact-unwind or DWARF recipe and then reads only the locations prescribed by that recipe. An attacker can reverse this process by choosing executable PCs with known recipes and constructing matching memory. For frame mode, place the previous FP at
[FP], the saved return PC at[FP+8], model caller SP asFP+16, and populate anyx19-x28slots declared by the encoding. Link records through savedx29values. A conventional unwinder generally cannot distinguish these ABI-compatible records from compiler-generated frames.Mach-O unwind-recipe selection: Normalize PAC bits, locate the containing Mach-O
__TEXTrange, calculatefunctionOffset=normalizedPC-loadedImageBase, search the first-level__unwind_infoindex, and then search the selected regular or compressed...🤖 Agent Actions
Implemented the HackTricks update.
Changes
arm64-arm64e-call-stack-spoofing.mdunder macOS Process Abuse.src/SUMMARY.md.Validation
git diff --checkpassed.mdbookwas not installed, so a full build could not be run.This PR was automatically created by the HackTricks Feed Bot. Please review the changes carefully before merging.