|Home » Learning Curve » Red Hat Diaries
Number One at Almost Everything
This is a setup.
Apple are number one at almost everything. Everybody knows it.
- Hardware design. Jonathan Ive has turned personal computer hardware into the IT counterpart to Parisian haute couture. Wintel boxes by way of comparison come off like rags on a K-Mart clothes rack.
- User interfaces. Anyone who's tried them all and compared knows the truth. Windows boxes and Linux boxes are utter kludges in comparison.
- Graphics. Nobody beats Apple at graphics. Nobody. Perhaps NeXT but NeXT today are an integral part of Apple. Listening to Mark Shuttleworth talk dreamily of how he wants Apple quality graphics on Ubuntu elicits little more than laughter.
- Development environments. Nobody's ever going to beat NeXTSTEP. The other players have had over twenty five years already. It's not going to happen. The rest of IT live in a backwater and the only question is why they persist. It's rather sad actually. OS X development is five times faster, twice as stable, and heaps more fun.
- Innovation. Nobody comes up with an iPhone except Apple. All the iPhone users out there are thrilled with their gadgets but few of them appreciate how truly brilliant the device is.
- Charisma. Nobody could ever hold an audience and a world spellbound like Apple. When Steve Jobs said 'oh one more thing' the world held its collective breath.
- Secrecy. All companies hold onto their secrets but nobody's ever done it like Apple. Programmers at One Infinite Loop go to MacSurfer to read about what's happening in their company. The iPhone project was kept under wraps for years. Nobody got wind of it. If there's ever a leak at Apple it's probably because Apple wanted the leak.
Apple are best at all these things. And more. And they take pride in their achievements as well. And they rightfully and justifiably want to be regarded as number one in all these endeavours.
So what happened to security?
- The Opener hole. The author of the Opener script described the hole as 'not so much a hole as a crater'. This site described it as the biggest security hole ever in personal computing. It was known for years and never fixed. It took until April 2005 to get it fixed. Why?
- The Inq.Tana/Oompa Loompa hole. Kevin Finisterre's personal quest - later taken up by this site - to get Apple to fix the input managers hole again took years. Why?
- The $PATH hijack exploit. Not the part related to bash - that's not Apple's fault - but the part related to that funky file in user root. That let any whimsical trojan hijack privilege escalation commands and completely own Apple boxes. Is that still around? And if so - why?
- The open source gap. Apple retool their open source modules way too much. People like Charlie Miller read changelogs and find security holes Apple haven't got around to fixing. Burnt toast.
- The protocol hole. Remember those 'you are opening the application 'blah-blah' for the first time are you sure you want to open this application?' That's Apple's patch for the protocol hole. But the patch doesn't take away the hole itself.
- The Finder hole. Apple's 'notorious' [<- their words] file manager was easily duped by downloads. Apple issued a patch - not for the hole itself but for reinforced barricades in their own web apps. Not only is it suicidal to push defences out to the perimeter but it leaves all third party software in the lurch. [<- The second part of the Oompa Loompa exploit.]
- The MOAB holes. Apple and others complained about the MOAB people exposing the holes but who's really to blame? What about the script escalation gaffes? What about the 'fixing permissions' nonsense? These are the MOAB people's fault? How long were these holes known? Why weren't they fixed?
There are people inside Apple trying to get the company to take security seriously, trying to make Apple number one at security as well. Who are the others drowning their voices out? And why?
You'd namely think that with so much riding on prestige and the zeal to be number one at everything Apple would also work harder than anyone else to be best at security too. For they could be. Of that there's no doubt.
OpenBSD has a reputation for being the most secure Unix in the world. Theo de Raadt continually has a dozen auditors pouring over system code, looking for allocation errors, buffer overflows, and the like. If OpenBSD can do that then why can't Apple?
The MOAB hurt Apple. The MOAB gave Bill Gates the opportunity to go on television and badmouth Apple. Spread FUD about Apple. Claiming people were breaking into Apple computers every day. Which of course they weren't.
But why did Apple let it happen? If they'd had 24/7 auditors like Theo this wouldn't have happened.
- When people see Microsoft stumble to the finish line with 'Aero' they laugh.
- When people see the 'K-Mart special' designs for Wintel computers they either chuckle or get physically nauseated.
- When people hear Mark Shuttleworth say his Ubuntu is going to surpass Apple's desktop in beauty and interface design they try to clean out their ears.
- But when people hear of another Apple security scandal they run for the bushes and recounting the well known fact Windows is much worse.
There's a documented reason for each time Apple or NeXT veered from the beaten and vetted path of the Unix security model. And each time there have been people voicing objections - people saying the move was not a good one, that it wasn't properly tested, and so forth.
The likelihood no one inside Apple was aware of the Opener hole, the protocol hole, the Inq.Tana hole, the Oompa Loompa hole, the MOAB holes - and more - is less than nil. People inside Apple have been acutely aware of all these security holes. But their voices weren't heard.
Why not? Who talked louder?
Usability and security are in continual conflict. So say the wise. Form can conflict with function. So say the experienced. But in today's Internetted world how can anyone place security on a back burner? Usability comes about when users get used to experiencing a safe environment above all else.
Punters don't have half a clue how much work goes into graphics. They don't understand why they have a menu separate from their application windows. They don't know the first thing about object orientation. Yet they see, benefit from, and recognise the fruits of others' labour all the time.
Security isn't any different. Punters don't have to understand buffer overflows and underflows, address randomisation, shell code - any of that. All they have to do is get used to never hearing there's another Apple security scandal.
- Destroy the cathedral model as far as the kernel goes.
- Respond openly to security questions and stop censoring forums.
- Retrace every design decision that pushed the system down its own path.