The CW Sandbox Tool
Create a thesis and an outline on Survey about the CWsandbox tool used for dynamic malware analysis.
Prepare this assignment according to the guidelines found in the APA Style Guide. An abstract is required. General Sandbox Architecture: A sandbox is deployed to secure a computer system from external attacks that are attempted through malware (malicious program). According to Hoopes (2009), the approaches used are either to block the critical accessibility of a malware or to introduce a simulated environment with completely virtual computing resources like CPU, file system and the memory. This virtual environment enables the program to get executed in a completely isolated environment which is disconnected from the real execution environment within which it resides. The main idea is to monitor the accessibility of program (under observation) to system resources. This way the system can be brought back into the safe state after complete behavioral analysis of the suspected program. The fringe benefit of this approach is the usage of a lighter security protocol for the underlying system that improves its working efficiency. The behavioral analysis keeps the execution environment intact. This gives it an edge over instruction level analysis (basically done using debuggers or dis-assemblers). CWSandbox architecture and functioning: CW sandbox is one the sandbox applications that are in use. Every sandbox application has its own mechanism to secure the computer system environment. CWSandbox comprise of two executable files namely cwsandbox.exe and cwmonitor.dll. The former is the central application that initiates the malware and manages the complete process of analysis. The latter on the other hand is a DLL (Dynamic Link Library). This library is introduced into all processes in the malware that are under observation.
This way the malware is actually executed and being interacted by the sandbox along with its own execution. The function of the DLL file is to catch each API critical call from malware and to inform the central application (cwsandbox.exe) about it. The sandbox (main application) then takes some time to analyze the call in order to either delegate the control to the required API (in case of safe conclusion) or to answer the call with a virtual error message (in the opposite case). Along with the keeping an eye on every malware call, the DLL also makes it certain that the sandbox is kept informed about other malware activities like injecting a code into an already executing process or creating a child process. In both cases the DLL is instantiated again to be injected into the child process or the already running process. Figure 1.0 below, elaborates the described functioning. The CWSandbox uses the native execution environment unlike other sandbox schemes. This in turn reduces the delay caused by the analysis mechanism. Enormous communication exists between the main application (executable) and planted instances of DLLs. Each notification call from a DLL to sandbox contains a lot of information that requires a formal and reliable mechanism of communication between processes. In order to fulfill this requirement the sandbox is usually equipped with high efficiency IPC (Inter Process Communication) mechanism. Figure 1.0. Sandbox Instance using CWSandbox (Source: Hoopes J. 2009. Virtualization for Security) CWSandbox Malware Handling and Analysis Mechanism: The mechanisms that are performed by a sandbox can be distinguished into three parts.