21 matches found
launchd-portrep
launchd-portrep launchd-portrep 是一个针对 macOS 初始用户空间进程和服务管理守护进程 launchd 中端口替换漏洞的利用程序。通过向引导端口发送精心构造的 Mach 消息,可以迫使 launchd 释放攻击者同样拥有发送权限的任何 Mach 端口的发送权限。这使得攻击者能够冒充其可查找到的任意 launchd 服务与系统其余部分通信。 漏洞细节 Launchd 在其主端口上多路复用多个不同的 Mach 消息处理程序,其中包括一个用于异常消息的 MIG 处理程序。如果某个进程向其自身的引导端口发送 machexceptionraise 或...
brokentooth
brokentooth 针对 CVE-2018-4327 的概念验证(至少我认为是,因为 CVE-2018-4327 和 CVE-2018-4330 都由 @SparkZheng 讨论过,但他没有明确说明哪个漏洞对应哪个 bug,鉴于他先描述了前者,我暂且这样猜测)。 已在 iPhone 6S 11.3.1 上测试 理论上适用于 11.4 及之前的版本 允许你在 SpringBoard 及部分服务中将 PC(ARM 上对应 IP 寄存器的版本)设置为你选择的值。你需要先运行代码,然后进入蓝牙设置并连接到一个设备。如果无效,请关闭蓝牙再重新打开。...
POC-CVE-2018-4327-and-CVE-2018-4330
brokentooth CVE-2018-4327 的 POC(至少我是这么认为的,因为 @SparkZheng 同时提到了 CVE-2018-4327 和 CVE-2018-4330,但没有说明哪个对应哪个漏洞,但由于他先描述了这一个,所以我猜是这个)。 在 iPhone 6S 11.3.1 上测试通过 应该兼容到 11.4 允许你在 SpringBoard 和少数服务中将 PC(ARM 中 IP 寄存器的版本)设置为你选择的值。 你需要运行代码,然后进入设置中的蓝牙菜单并连接一个设备。如果无效,请关闭并重新打开蓝牙。 利用起来相当烦人,但我喜欢它,所以我想做一个 POC...
toothfairy
toothfairy Relacionado con brokentooth enlace abajo. A diferencia de brokentooth, toothfairy no requiere presionar botones en el menú de bluetooth. Ambos CVE fueron revelados por @SparkZheng pero sin PoC, así que decidí hacer un PoC para fines de aprendizaje. El código no es perfecto pero cumple ...
OffensiveCon25 Conference Slides
OffensiveCon25 conference slides for topics Breaking the Sound Barrier: Exploiting CoreAudio via Mach Message Fuzzing, How Offensive Security Made Me Better at Defense, Finding and Exploiting 20-Year-Old Bugs in Web Browsers, and Entrysign: Create Your Own x86 Microcode for Fun and Profit...
macOS < 10.14.3 / iOS < 12.1.3 - Arbitrary mach Port Name Deallocation in XPC Services due to Invalid mach Message Parsing in _xpc_serializer_unpack
/ xpcserializerunpack in libxpc parses mach messages which contain xpc messages. There are two reasons for an xpc mach message to contain descriptors: if the message body is large, then it's sent as a MACHMSGOOLDESCRIPTOR. Also if the message contains other port resources eg memory entry ports th...
voucher_swap: Exploiting MIG reference counting in iOS 12
Posted by Brandon Azad, Project Zero In this post I'll describe how I discovered and exploited CVE-2019-6225, a MIG reference counting vulnerability in XNU's taskswapmachvoucher function. We'll see how to exploit this bug on iOS 12.1.2 to build a fake kernel task port, giving us the ability to re...
Apple iOS/macOS - Sandbox Escape due to mach Message sent from Shared Memory
iohideventsystem sets up a shared memory event queue; at the end of this shared memory buffer it puts a mach message which it sends whenever it wants to notify a client that there's data available in the queue. As a client we can modify this mach message such that the server hidd on MacOS,...
Apple iOS / macOS - Sandbox Escape due to mach Message sent from Shared Memory Exploit
Exploit for multiple platform in category dos / poc Apple iOS/macOS - Sandbox Escape due to mach Message sent from Shared Memory iohideventsystem sets up a shared memory event queue; at the end of this shared memory buffer it puts a mach message which it sends whenever it wants to notify a client...
Apple iOSmacOS - Sandbox Escape due to mach Message sent from Shared Memory
Apple iOSmacOS - Sandbox Escape due to mach Message sent from Shared Memory iohideventsystem sets up a shared memory event queue; at the end of this shared memory buffer it puts a mach message which it sends whenever it wants to notify a client that there's data available in the queue. As a clien...
Apple iOS 11.2.5 / watchOS 4.2.2 / tvOS 11.2.5 - 'bluetoothd' Memory Corruption
// // main.m // bluetoothdPoC // // Created by Rani Idan. // Copyright © 2018 zLabs. All rights reserved. // import "AppDelegate.h" include extern kernreturnt bootstraplookupmachportt bs, const char servicename, machportt service; / When hijacking session between bluetoothd and client, add callba...
Apple iOS 11.2.5 / watchOS 4.2.2 / tvOS 11.2.5 bluetoothd Memory Corruption
// // main.m // bluetoothdPoC // // Created by Rani Idan. // Copyright Ac 2018 zLabs. All rights reserved. // import "AppDelegate.h" include extern kernreturnt bootstraplookupmachportt bs, const char servicename, machportt service; / When hijacking session between bluetoothd and client, add...
Apple iOS 11.2.5 / watchOS 4.2.2 / tvOS 11.2.5 - bluetoothd Memory Corruption Exploit
Exploit for iOS platform in category dos / poc // // main.m // bluetoothdPoC // // Created by Rani Idan. // Copyright © 2018 zLabs. All rights reserved. // import "AppDelegate.h" include extern kernreturnt bootstraplookupmachportt bs, const char servicename, machportt service; / When hijacking...
Exploit for Improper Restriction of Operations within the Bounds of a Memory Buffer in Apple Iphone_Os
launchd-portrep ================================================...
MacOS Kernel 10.12 - Double vm_deallocate in Userspace MIG Code Use-After-Free Exploit
Exploit for macOS platform in category dos / poc / Source: https://bugs.chromium.org/p/project-zero/issues/detail?id=954 Proofs of Concept: https://github.com/offensive-security/exploit-database-bin-sploits/raw/master/sploits/40954.zip Userspace MIG services often use machmsgserver or...
MacOS Kernel < 10.12.2 / iOS < 10.2 - Broken Kernel Mach Port Name uref Handling Privileged Po
Exploit for multiple platform in category local exploits / Source: https://bugs.chromium.org/p/project-zero/issues/detail?id=959 Proofs of Concept: https://github.com/offensive-security/exploit-database-bin-sploits/raw/master/sploits/40957.zip When sending and receiving mach messages from userspa...
Apple OS XiOS - mach_ports_register Multiple Memory Safety s
Apple OS XiOS - machportsregister Multiple Memory Safety s Source: https://bugs.chromium.org/p/project-zero/issues/detail?id=882 machportsregister is a kernel task port MIG method. It's defined in MIG like this: routine machportsregister targettask : taskt; initportset : machportarrayt = ^array o...
Apple Mac OSX - 'gst_configure' Kernel Buffer Overflow
/ Source: https://code.google.com/p/google-security-research/issues/detail?id=596 The external method 0x206 of IGAccelGLContext is gstconfigure. This method takes an arbitrary sized input structure passed in rsi but doesn't check the size of that structure passed in rcx. text:000000000002A366...
Code injection
The kernel in Apple iOS before 9.2, OS X before 10.11.2, tvOS before 9.1, and watchOS before 2.1 allows local users to gain privileges via a crafted mach message that is misparsed...