Most webcams have a warning light that indicates when they're active, but it's possible for malware to disable this important privacy feature on older Mac computers, according to research from Johns Hopkins University (JHU) in Baltimore.
JHU Assistant Research Professor Stephen Checkoway and graduate student Matthew Brocker investigated the hardware design of the first-generation iSight webcam model installed in Apple's iMac and MacBook computers released before 2008 and found that its firmware could easily be modified to disable the indicator LED.
[ Also on InfoWorld: When schools spy on their students, bad things happen. | Learn how to greatly reduce the threat of malicious attacks with InfoWorld's Insider Threat Deep Dive PDF special report. | Stay up to date on the latest security developments with InfoWorld's Security Central newsletter. ]
At the hardware level, the LED is directly attached to the webcam's image sensor, particularly its Standby pin. When the Standby signal is active the LED is off and when not active, the LED is on, the JHU researchers said in a recently released paper.
In order to disable the LED, the researchers had to find a way to activate Standby, but also configure the image sensor to ignore it because when Standby becomes active the image sensor output automatically gets disabled, so the webcam cannot be used to capture images.
To achieve this the researchers created a modified version of the iSight firmware and then reprogrammed the camera with it, using a method that involves sending vendor-specic USB device requests from the host OS. They found that this operation doesn't require root privileges and can be done from a process started by a regular user account.
The JHU researchers created a proof-of-concept application called iSeeYou that detects whether an iSight webcam is installed, reprograms it with the modified firmware and then allows the user to start the camera and disable the LED. When the iSeeYou application is stopped, the camera is reprogrammed with the original, unaltered firmware.
In addition to spying on users without them knowing, the ability to easily reprogram the iSight camera could also allow malware to escape from an operating system that runs inside a virtual machine, the researchers said.
To demonstrate, this they reprogrammed the camera from a guest OS running inside VirtualBox -- a virtual machine program -- to act as an Apple USB keyboard. This allowed them to send key presses that transferred the keyboard's ownership from the guest OS to the host OS and then executed shell commands on the host OS.
The JHU researchers didn't only document the iSight weakness, but also proposed defenses, both at the software and hardware levels, against attacks that might try to exploit it. They built a Mac OS X kernel extension called iSightDefender that blocks specific USB device requests that could be used to load rogue firmware from being sent to the camera.
This kernel extension raises the bar for attackers because they would need root access to bypass it. However, the most comprehensive defense would be to change the hardware design of the camera so that the LED cannot be disabled by software, the researchers said.
Several proposals on how that could be achieved, as well as recommendations on how to secure the firmware update process, are presented in the paper.