MacBook batteries susceptible to hack attacks
Default passwords raise bricking threat, maybe more
Now that Apple has endowed the Mac operating system with state-of-the-art security protections, a researcher has devised new attacks that target the machine's battery.
Charlie Miller, well known for his numerous attacks on iPhones and Macs, may not have achieved his ultimate objective of making a Mac spontaneously combust, but he has figured out how to permanently disable the battery. And in time, he said, it also may be possible to remotely hijack a machine by manipulating the firmware on one of the stored power supply's chips.
"What I found was you can make any change you want to the software that runs on the battery," Miller, who is principal research consultant at security firm Accuvant and the other coauthor of The Mac Hacker's Handbook, told The Reg. "I also saw that you can mess up the chip so it won't function anymore. You can't recover from that. You couldn't even take it to the genius bar."
The flaw making all of this possible is the result of Apple's decision to ship MacBook batteries without changing the passwords needed to run updates or make low-level changes to their embedded controllers. By reverse-engineering past updates, he had no trouble deducing the pass codes.
With these, Miller was able to make changes to the battery firmware that bricked the battery. The hack doesn't sound all that interesting until you consider that any changes will survive a complete reinstallation of the MacBook’s operating system. Miller theorized that if there's a way to cause the firmware to exploit a vulnerability in Mac OS X, his battery hack could open the door to system compromises that persist even after disinfection of reinstallation.
Miller will be presenting his findings at next month's Black Hat security conference in Las Vegas. At his talk, he will also release a software tool that patches the vulnerability by changing the default passwords that ship with MacBooks. ®
Sponsored: Benefits from the lessons learned in HPC