Apple, insecurity, and x86

Apple, insecurity, and x86

Summary: So, bottom line: when Darwin/MacOS X goes x86 the people who focus on finding and exploitingvulnerabilities may still have a harder time with part one of the usual exploit process than theydo with Windows, but the part two hardware barrier to real success will be gone.

I got an Ask Bloggie question some time ago that seemed inappropriate for that forum. Here it is:


Apple has stated that they are going to be using an Intel chip for their computers in the near future. You mentioned Linux on Intel (X86 architecture) would have the same security issues as Windows currently does. To extrapolate what you said I would tend to infer then that the currently fairly secure Mac OS would become a holy nightmare for users to keep their computers secure running on an Intel chip (one site showed Apple using a P4 3.6 GHz chip). I'm hoping that my extrapolation is incorrect for it would not seem to be a good business plan to just to be able to have a faster chip in your computer if that computer loses its ability to be secure. I had not seen any comments you have made on this issue. What are your thoughts?

Concerned, behind the Red Sticker

Okey, before we get to the security issue let me just unload about this faster chip nonsense. The 3.6Ghz P4 isn't remotely performance competitive with the 2.7Ghz G5. What happens is that applications written for x86 run better on x86 -and so the less effort the application developer put into working with the G5 Mac, the better the applications look when ported to the x86 Mac. Conversely, my understanding is that Microsoft is having a very difficult time with Windows/XP on the X360 Xenon (a triple core, 3.2Ghz, 6 thread PowerG5 successor) because it limps along steadily enough, but more slowly than dead armadillo.

Apple didn't go Intel because it's faster and they certainly didn't go Intel because it offers a quicker route to lower power requirements for laptops - a laughable suggestion recently revived by someone at computerworld: Apple went Intel because they had to get away from IBM and hadn't rethought Plan B for four years.

All that aside, however, the security issue is interesting. I reviewed, a few years ago now, over a thousand computer security vulnerability records from the nist catalogue. What I found was that almost all of the attacks went through two steps:


  1. a weakness is found in software; and,


  2. that weakness is exploited in the hardware

The typical x86 exploit, for example, finds a way to cause a buffer overflow, and then uses the overflow to get the CPU to execute code it shouldn't.

It seems pretty clear from the record that people have been a lot more successful at part one of this with Windows systems than with Linux or other Unix systems. However, if an exploitable software problem is found, the exploit itself is no more difficult to write for Linux on x86 than for Windows on x86 because such exploits are hardware, not OS, dependent.

Those hardware weaknesses do not, however, exist in the same way or to the same effect in non Intel chipsets like those of the G5, the UltraSPARC, Cell, or Xenon. As a result finding a part two method on these CPU sets is at least as difficult, if not significantly more so, than part one. That's why there have been hundreds of widely publicized Solaris and MacOS X vulnerabilities for which there are no actual exploits and therefore no victims.

So, bottom line: when Darwin/MacOS X goes x86 the people who focus on finding and exploiting vulnerabilities may still have a harder time with part one of the usual exploit process than they do with Windows, but the part two hardware barrier to real success will be gone.

Topic: Apple

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • Xenon limps along?

    Judging by the specs, I'd have thought that the Xenon would be a screamer. Or do you mean that Windows on Xenon runs slowly?

    I'm also puzzled by the idea that Intel chips are still inferior to PowerPC chips. Clockspeed aside, Apple just hasn't been able to show that Macs can show a clean pair of heels to Intel boxes. Sure they put out some impressive numbers here and there from time to time, but in general, real-world stuff, you don't pay a premium for a Mac for the raw performance.

    I also think testing at Bare Feats has shown that it is the Apple OS that holds back Mac performance at the high end more than the chip (something in regard to poor multi-threading support or such). If Microsoft are also having issues wringing the utmost from PowerPC chips, maybe it ain't just an issue with Mac OS and Apple?

    As for security, I think Apple's low profile is certainly responsible for a good part of their low hit-rate for virii, trojans, worms, et al. But some of it is also due to the overall architecture and mindset being a bit safer - what were Microsoft thinking when they allowed Outlook to run attached exe files by default?
    Fred Fredrickson
    • Yes, Xenon is a screamer but..

      but code heavily optimized for x86 doesn't work all that well on PowerPC (and I'd guess MS's compilers aren't really ready for this architecture either). Remember: when you look at the speed a user gets, the code counts for at least as much or as the hardware - that's why x86 optimized apps poorly ported to Mac usually run poorly.
  • Story by Fran Foo - interesting and applicable

    There's a story by Fran Foo on Zdnet Australia today that's both interesting and applicable. Please have a look -
    Scare tactics don't rattle Mac users - at

    Singing my song...
    • Didn't you just say

      "but the part two hardware barrier to real success will be gone."

      So it now becomes more vulnerable. I would be a bit frightend of that, and I guess it isn't all hype on Symantec's part...
      John Zern
      • It will become more vulnerable, it isn't now

        It will be some time before (if ever) x86 macs hit the market -right now the hardware protections are still in place.
        • Please tell me what those protections are.

          Since there have been several patches to OSX to address buffer overflows how is it the PowerPC is better in this area? Also explain how this scheme is better then the NX in current versions of Intel and AMD processors?
    • don't rattle Mac users
  • Hardware weaknesses

    "Those hardware weaknesses do not, however, exist in the same way or to the same effect in non Intel chipsets like those of the G5, the UltraSPARC, Cell, or Xenon. As a result finding a part two method on these CPU sets is at least as difficult, if not significantly more so, than part one."

    So what actually /is/ it about the hardware that means the x86 lends itself to these weaknesses and the others do not? Could not the x86 be fixed to prevent it, or is it a fundamental design issue?
    • Sort of, yes

      There are partial fixes: e.g. opteron has additional memory protection, the BSD folks have a compiler/OS capability to randomize execution order, etc.

      Fundamentally, however, the x86 is a 1978 design with lots of add-ons introduced in subsequent years. Unfortunately backwards compatibility requires that many design ideas since obsoleted have to be continued with each new addition - putting the architecture, together with the software built on it into a losing position in the techwar with the bad guys.
  • As you know why Apple did not go with Intel, why did they do it

    You have a bad habit of doing this, saying why something is not true but not saying why it is true. You are vague about many things that you write. So why did Apple go with Intel if it wasn't the fact that IBM could not get the power consumption/heat down?
    • Scale economies

      It is only speculation on my part but Apple has been doing more and more purchasing based on scale and the Nano is the biggest one to date. Intel can supply other chips (SOC's) for the iPod on a scale and at a price that will help Apple continue their dominance.

      x86 instructions are going bye bye in the sense that they will no longer be on the hardware chip but handled in software. Add that to the TCM and other major changes coming to PC x86 CPU's / chipsets and you start to see why Apple is interested in Intel.

      Intel can do the whole platform and Apple will benefit from the fact that they are not the only one buying it. Scale economies strike again.
      • x86 instructions are going bye bye?

        How is that? Are they moving the microcode out of the CPU and into the RAM? When is this supposed to happen? Doing that would probably make it slower, not faster. Emulation is not the answer, just look at Itanium. As far as what Intel's road map is concerned I wouldn't hold my breath on the x86 instructions going bye bye. Remember, we were all supposed to be using the Itanium by now. AMD's existence alone may be enough to keep x86 alive and well.
        • x86

          This is going to happen over the next 5 years. The x86 instruction
          set will be emulated. Multi-core CPU's will be able to handle this.

          I can only guess that the oldest parts of x86 that are least used will
          move first to emulation and then on down the line over the years
          till most or all of the old legacy code is in emulation.

          So how does this benefit Intel? Intel will have more freedom to
          design new CPU's.
          • Keep dreaming

            If it were this simple, we'd all be using Itanium now.
          • No dreaming involved.

            and nobody said it would be easy. Itanium has it's own problems.
          • Itanium is all but DOA

            Intel is probably stuck with the x86 instruction set for some time to come unless they make signicant advances in hardware emulation over the trash they have with the Itanium today.
          • using Itanium

          • Mutli-core will be able to handle this

            I think not unless they start making 8 core CPU's like Sun really soon.

            Multi-core is there to compensate for the fact that they can't double the clock speed anymore. On top of that, OS's aren't getting any faster, they (All of them including Linux) will eat that extra processing power as fast as it can increase. Mac OS is no skinny model and MS's OS's far from qualify for that also. Even Linux is getting fatter. When I installed the standard install for Redhat 5.0 it had 50% less processes running than the standard Fedore core 3 I last installed. Redhat 5 also ran a lot better on a Pentium than Fedora 3 does.

            AMD's will always be on par with Intel x86 as far as how many cores are on board, if anything they are faster to market with this feature. If Intel decides to eat up some of their processing cycles on emulation AMD will eat their lunch. Intel is not that stupid.
          • Come to think of it isn't that exactly what they said about Itanium?

            Are you sure that you read the correct marketing propoganda from Intel? :)

            What you write is almost exactly what I remember Intel saying about migrating to the Itanium, except that the Itanium's superior processing power would provide adaquate performance of x86 apps via emulation. That is not how it turned out, is it?

            That is a big dream on Intel's part.
          • Sad irony

            With how poorly Itanium has performed (on the market at least; I don't know enough of it to know its hardware power), there's a certain irony of Intel being trapped in the prison of their own making. In a way, one could argue that they were a victim of their own success in this respect--x86 was too popular for the market to even be "weaned" from it, let alone cut off cold-turkey.
            Third of Five