Microsoft patched a bug in its Malware Protection Engine that could be used by attackers to remotely control a Windows system.
Microsoft pushed out an update to the Microsoft Malware
Protection Engine on Feb. 23. It was discovered by Cesar Cerrudo, CEO of
security research firm Argeniss, who publicly disclosed his Token Kidnapping
research at the Black Hat security conference in July 2010.
The Microsoft
Malware Protection Engine is used in various Microsoft security products,
including Windows Live OneCare, Microsoft Security Essentials, Windows
Defender, Forefront Client Security, Forefront Endpoint Protection 2010 and the
Microsoft Malicious Software Removal Tool. Since these applications regularly
update themselves, users and administrators should get the fix automatically within
48 weeks or by the end of the weekend, according to the company.
With an "elevation of privilege" vulnerability, the bug
allowed attackers who already had access to the system to upgrade its user
permissions to gain administrative control, Microsoft said. While the company
hasn't come across any active exploits taking advantage of the security hole,
the likelihood of the threat was high enough that Microsoft rated the patch
"important."
"An attacker who successfully exploited this
vulnerability could execute arbitrary code... and take complete control of the
system," Microsoft said in its security advisory. "An attacker could
then install programs; view, change, or delete data; or create new accounts
with full user rights," according to the advisory.
An attacker could take advantage of an unpatched and
locked-down Windows system by logging on and running an attack script that
changes a registry key to a special value, the advisory said. When the malware
scanner run its next scan, it processes the specially crafted key, the attack
script's privileges are elevated to the same user rights as the pre-defined
LocalSystem account on the machine. LocalSystem is generally used by the
service control manager and has substantial previleges.
The person must already be on the machine with valid login
credentials, as anonymous users can't exploit this hole, Microsoft said.
Cerrudo's research examined tactics used by attackers to
elevate user access rights, such as impersonation, where a task can appear to
be a legitimate process while actually executing code under another account.
All services under Windows 2003 and XP can be impersonated regardless of the
assigned privilege level, Cerrudo said. Processes running under regular user
accounts could also be impersonated, he wrote. Despite having a number of new
Windows security features intended to prevent threads from impersonating each
other, "elevation of privileges is still possible on all Windows versions," he
said.
Despite the likelihood of all the things that have to happen
for an exploit targeting this vulnerability to work, IT managers should
consider running processes as a regular user with required privileges added
on, Cerrudo wrote in his Black Hat
paper. There was no need to run SQL Server processes as Network Service or
Local Service, he said. Systems running Microsoft Internet Information Services
shouldn't run ASP.NET Web applications in full trust mode, he said.
Cerrudo had found other Token Kidnapping issues in previous
years, all of which appear to have been fixed, according to Cerrudo. Microsoft
fixes were "not enough," he wrote.
The Malware Protection Engine 1.1.6603.0 is the latest
version with the fixed vulnerability.