4 ms·
It's a bit odd that the response here is to patch every single XPC service individually. This feels like some kind of design issue in the sandbox itself. Why ar
by mike_hearn 2y ago
It's a bit odd that the response here is to patch every single XPC service individually. This feels like some kind of design issue in the sandbox itself. Why are so many XPC services that are clearly intended to be app private reachable from sandboxed apps?
- pjmlp 2y agoYep, it is the most likely the compromise to retrofit this into macOS, without breaking everything in UNIX and NeXTSTEP land that has been ported into macOS. On Windows land you have something similar, there is the WinRT sandbox, Win32 app sandbox, secure kernel, driver guard, and a miriad of other stuff, but there are also the cracks of backwards compatibility, specially if you want a single executable able to run across all those configurations. Mobile OSes have it easier, because of no backwards compatibility and the restrictions that are able to impose as execution model.
- deleted 2y ago[deleted]
- MichaelZuo 2y agoXNU, or more specifically the Mach part of it, also had some very questionable design choices that likely compounds the issue as it forces people to work around it in increasingly awkward ways. As Mach was conceived and mostly designed by an academic with no real world industry experience in shipping kernels.
- senko 2y ago> As Mach was conceived and mostly designed by an academic with no real world industry experience in shipping kernels. You may be thinking of Andrew S. Tanenbaum, who created MINIX, and was famously blasted by Linus for not having industry experience. Mach was written by guys who ended leading Microsoft Reaearch and software development at Apple.
- deleted 2y ago[deleted]
- ziddoap 2y ago>was famously blasted by Linus for not having industry experience. I answered my own question (where to read more about this), and found the relevant information from https://www.oreilly.com/openbook/opensources/book/appa.html https://www.oreilly.com/openbook/opensources/book/appa.html
- beachy 2y agoThis is a fantastic read, thanks for linking it. Linus's pragmatic approach really comes to the fore.
- jchw 2y ago> To put this discussion into perspective, when it occurred in 1992, [...] many companies that are household names today--Netscape, Yahoo, Excite--simply did not exist. That sure has aged interestingly since 1999.
- wrs 2y agoThey did that later, but it is accurate to say that when Mach was first designed, Rick Rashid and others lacked "industry experience". However, they had a lot of practical experience making real systems for academic purposes. The CS departments at U of Rochester and CMU are serious about building stuff.
- saagarjha 2y agoNone of this has to do with the Mach part of XNU. There are genuine bugs there (everyone hates the memory code for example) but again that is completely irrelevant here.
- MichaelZuo 2y agoHow do you know Mach wasn’t the cause of some workaround in the 90s, and that 5 workarounds in a row later it becomes harder to resolve this issue in 2024?
- saagarjha 2y agoBecause I read the blog post.
- MichaelZuo 2y agoSo can you actually write the argument here? That supposedly proves it’s impossible for A to have affected B… even with 6 degrees of seperation…
- saagarjha 2y agoNo, I won't. Your request is unreasonable. You posted a claim that is not true. This bug has nothing to do with the Mach layer of XNU, and the blog post has enough detail to explain why. When I call you out on that, you don't get to retreat to an absurd position and ask me to substantiate it: there's probably six degrees of separation between what I ate for breakfast and these bugs shipping. This is something that is basically impossible to falsify, but also deeply uninteresting. So I am not going to entertain it for you.
- MichaelZuo 2y agoYour opinions can’t ever outweigh my opinions, or any other HN user’s opinions for that matter, so this adds nothing to the conversation.
- 98codes 2y ago> On Windows land you have something similar I'm still waiting to hear about a kernel-level exploit that starts with Visicalc or similar.
- Narishma 2y agoVisicalc doesn't run on recent versions of Windows without emulation.
- greenavocado 2y agoI guess it is a form of emulation... but You can run 16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows with https://github.com/otya128/winevdm https://github.com/otya128/winevdm I got Microsoft Encarta 98 to work on Windows 11 this way
- asveikau 2y agoEncarta 98 has to be 32 bit... Win16 was pretty dead for new products by that time. Though it's conceivable that an installer could start off with 16 bit code to show an error message that you need Windows 95 ... Edit: it seems Encarta 95 could run on win16, but Encarta 98 required win95 or nt4
- saagarjha 2y agoWindows has far worse. Injecting code into other processes is routine and almost impossible to get rid of.
- IcyWindows 2y agoI've never heard of that from store apps
- tokinonagare 2y agoThe store which doesn't even provide one of the most useful Microsoft product (Visual Studio)?
- saagarjha 2y agoNo, it has nothing in to do with NeXTSTEP. XPC was designed recently and for macOS/iOS. This is just that it was not designed with security in mind along this axis.
- pjmlp 2y agoThat is the thing, the OS architecture wasn't revamped across the board, XPC became another little island how to do IPC.
- saagarjha 2y agoIt's definitely a big island on Darwin
- agsnu 2y agoXPC has been in shipping platforms for more than 13 years... I suppose that is recent compared to NEXTstep :)
- fudged71 2y ago[flagged]