One of the mechanisms used by anti-malware applications is to institute a virtual "sandbox" to isolate suspicious files from the rest of the system while they are quickly analysed for malicious content or behaviour.
Creating a sandbox requires the anti-malware software to essentially institute a Virtual Machine - a computer that is completely implemented in software. A lot of current sandboxes are designed to emulate network connections and normal system behaviour in an effort to trap malicious output from a suspicious file or application.
Some malware authors have already developed their code to the point where it can identify when it is being operated in a virtual machine, and so neutralise the malicious behaviour. The point of this approach is to make the analysis of their malware more difficult for the anti-malware developers as they can not observe the suspicious code engaging in malicious activity. Other malware can identify when a debugger is attached and respond accordingly (some even with targeted attacks against debuggers such as IDA).
In a sign that malware that targets sandbox environments is not far off, detailed code and analysis have been released that give developers a means to probe around while inside the sandbox. Previous attempts at identifying the presence of virtual machines has been targeted at applications like VMWare and Virtual PC, with little attention paid to those created by anti-malware software for analysis of files on end user systems (which is different to the use of VMWare and Virtual PC in the anti-virus lab).
Once the code has identified the presence of the sandbox, it begins looking for memory registers and other reporting code elements that are accessible from within the "safe" environment. With a viable mechanism to insert code of choice into these elements, a sandboxed application can not only break out of the sandbox, but target the application or system that has placed it there.
Key to the process that has been described is the identification that the sandbox has to have some set of mechanisms to not only identify what the sandboxed software is doing, but also to report it back to the user/anti-malware application. Targeting these sections of code allows for interesting manipulation of the data going back to the anti-malware software, and will likely soon lead to software being able to break out of the sandbox with ease.
All of this information, including detailed source code files, has been released into the open - so long as you know where and how to look. The sandbox used by Norman branded products is the one being targeted in the demonstration, but the underlying basics can be extended to those from other vendors. Based on previous related cases where code has gone from demonstration to application, specialised targeting using similar approaches in the wild are expected within six to eight weeks, with general attack usage viable within 12 to 18 weeks.
This article originally appeared at Sûnnet Beskerming
© 2007 Sûnnet Beskerming Pty. Ltd
Sûnnet Beskerming is an independent Information Security firm operating from the antipodes. Specialising in the gap between threat emergence and vendor response, Sûnnet Beskerming provides global reach with a local touch.