iOSSec
Grinding expected behaviour
Нашёл репозиторий с собранными codeql databases по разным версиям XNU (после очередного разобранного 1day/я решил дать статическому анализу второй шанс... 🤕)
link: https://github.com/blacktop/darwin-xnu-build
link: https://github.com/blacktop/darwin-xnu-build
GitHub
GitHub - blacktop/darwin-xnu-build: XNU kernel, Kernel Collection and CodeQL build scripts
XNU kernel, Kernel Collection and CodeQL build scripts - blacktop/darwin-xnu-build
🔥5❤2
В новых маках (m4+) есть поддержка аппаратной трассировки. Единственное, если судить по реализации в AppleProcessorTrace.kext, без костылей, по крайней мере на T6041, программно поддерживается только трейсинг el0 (что в целом тоже неплохо – особенно когда нужно разобраться со взаимодействием между XPC-сервисами!)
Когда-нибудь я доделаю патчи на el1-el2...
❤4🤓4🤔1
Yet another fun fact:
Современный XNU запрещает указывать свой линкер через LC_LOAD_DYLINKER команду в mach/o бинаре (bsd/kern/mach_loader.c:3238).
Также для non-development армовых сборок запрещается в целом запуск static binaries (bsd/kern/mach_loader.c:1325)...
Не знаю для чего и почему так сделано, но это к сожалению прибило доступность одного красивого бага :/
Современный XNU запрещает указывать свой линкер через LC_LOAD_DYLINKER команду в mach/o бинаре (bsd/kern/mach_loader.c:3238).
Также для non-development армовых сборок запрещается в целом запуск static binaries (bsd/kern/mach_loader.c:1325)...
Не знаю для чего и почему так сделано, но это к сожалению прибило доступность одного красивого бага :/
😢5
iOSSec
Yet another fun fact: Современный XNU запрещает указывать свой линкер через LC_LOAD_DYLINKER команду в mach/o бинаре (bsd/kern/mach_loader.c:3238). Также для non-development армовых сборок запрещается в целом запуск static binaries (bsd/kern/mach_loader.c:1325)...…
Upd: знающие люди подсказали, что эти харденинги - последствие TaiG
link: https://newosxbook.com/articles/28DaysLater.html
link: https://newosxbook.com/articles/28DaysLater.html
❤3🫡1
Нет сил писать что-то вразумительное в канал в последнее время. Но в то же время не могу не поделиться своей небольшой радостью:
https://support.apple.com/en-us/127594
(Как выйду из отпуска обещаю выкатить интересный материал про Lockdown mode!)
https://support.apple.com/en-us/127594
(Как выйду из отпуска обещаю выкатить интересный материал про Lockdown mode!)
🔥23❤5👍3
iOSSec
Нет сил писать что-то вразумительное в канал в последнее время. Но в то же время не могу не поделиться своей небольшой радостью: https://support.apple.com/en-us/127594 (Как выйду из отпуска обещаю выкатить интересный материал про Lockdown mode!)
ps: дальше – больше. Это лишь один из репортов)
🔥7🤯2😭1
iOSSec
прибило доступность одного красивого бага
Другой ресерчер также нашел эту багу и написал про неё статью. И даже реализовал красивый байпас ограничений выше – но к сожалению не смог добить из-за sptm. Рекомендую к чтению)
link: https://gracecondition.github.io/posts/dirtyslide/
link: https://gracecondition.github.io/posts/dirtyslide/
gracecondition.github.io
DirtySlide - root on macOS from one missing bounds check
Unprivileged to root on macOS 26.5, no entitlements, Developer Mode off, through one unbounded loop in the dyld shared-cache slide walker. Fixed in macOS 26.5.2.
🔥6
Media is too big
VIEW IN TELEGRAM
Накидал простенькую vmm, что запускает эксклейвы (в бандле с cL4 и нужными тасками). Пока что поддерживается всего несколько hvc-шек и полностью отсутствует механизм апколлов, но это дело времени :)
(ps: вдохновился во многом приватной тулой от Apple - ExclaveVisor - что случайно попала ко мне в руки)
(ps: вдохновился во многом приватной тулой от Apple - ExclaveVisor - что случайно попала ко мне в руки)
👍6
iOSSec
Накидал простенькую vmm, что запускает эксклейвы (в бандле с cL4 и нужными тасками). Пока что поддерживается всего несколько hvc-шек и полностью отсутствует механизм апколлов, но это дело времени :) (ps: вдохновился во многом приватной тулой от Apple - ExclaveVisor…
К слову, я не знаю ни одной публичной тулы, которая позволяла бы exclave/ы запускать и отлаживать. Но мне пока сложно оценить насколько это интересный и перспективный attack surface и есть ли вообще в этом всем смысл..
https://static.lukasarnold.de/pdfs/obtsv8-diving-into-c1.pdf
(ps: неплохая обзорная презентация про эпловый baseband)
(ps: неплохая обзорная презентация про эпловый baseband)
👍4
Недавно нашёл довольно забавную регрессию, позволяющую обойти kaslr - как ядра, так и sptm
А сегодня, пока писал по ней отчёт, обнаружил рядом ещё и кривой bounds check. И, как оказалось, не один (sic!) В итоге докрутил до target flag
(btw: все еще очень жду релиза 26.6, чтобы наконец-то начать публиковать первые райтапы))
А сегодня, пока писал по ней отчёт, обнаружил рядом ещё и кривой bounds check. И, как оказалось, не один (sic!) В итоге докрутил до target flag
(btw: все еще очень жду релиза 26.6, чтобы наконец-то начать публиковать первые райтапы))
🔥10👍8