Even If It’s Broke, Don’t Fix It
I doubt we’ll ever learn the root cause of a particularly nasty security vulnerability recently revealed in MacOS High Sierra. But it’s fun to theorize. I’d wager it went down about like this:
- In the earliest days of the Darwin kernel, it was decided not to set a default
root
password, because it could cause usability issues for non-technical people buying Macs - As a consequence, any dialogs or other interfaces that ask for login information had to have special cases built into them to not allow
root
as an option, or at least not to allow it if no password had been set - Over the years, the number of such widgets grew, requiring more and more little special case checks
- The reasoning behind the decision at step one was forgotten, probably to the point where entire teams of developers didn’t even know MacOS has no default
root
password - While building the High Sierra release, a developer (probably new and/or junior-ish) noticed an odd bit of special-case code in a library that was getting in the way of a new feature being added; a few clicks later and the seemingly unnecessary check was removed, and now the feature worked
- QA regression tests the release and finds no problems, because no one thought to try using the unprotected
root
account in various places (see #4)
Good times, Apple. I feel your pain.