SlideShare a Scribd company logo
1 of 10
Download to read offline
IOSR Journal of Computer Engineering (IOSR-JCE)
e-ISSN: 2278-0661, p- ISSN: 2278-8727Volume 10, Issue 3 (Mar. - Apr. 2013), PP 33-42
www.iosrjournals.org
www.iosrjournals.org 33 | Page
Resource Allocation for Antivirus Cloud Appliances
Ali Abdullah Hamzah, Sherif Khattab, Salwa S. El-Gamal
Department of Computer Science, Faculty of Computers and Information
Cairo University, Egypt
Abstract: Malware detection or antivirus software has been recently provided as a service in the cloud. A
cloud antivirus provider hosts a number of virtual machines each running the same or different antivirus
engines on potentially different sets of workloads (files). From the provider's perspective, the problem of
optimally allocating physical resources to these virtual machines is crucial to the efficiency of the
infrastructure. This paper proposes a search-based optimization approach for solving the resource allocation
problem in cloud-based antivirus deployments. An elaborate cost model of the file scanning process in antivirus
programs is instrumental to the proposed approach. The general architecture is presented and discussed, and a
preliminary experimental investigation into the antivirus cost model is described. The cost model depends on
many factors, such as total file size, size of code segment, and count and type of embedded files within the
executable. However, not a single parameter of these can be reliably used alone to predict file scanning time.
Keywords: Cloud computing, virtualization, antivirus, pattern matching
I. Introduction
Cloud computing allows for the management and provisioning of resources (e.g., software, CPU,
memory, I/O, network bandwidth, application, and information) as services provided over the internet on
demand. Services are presented in three layers: SaaS (software as a service), such as Face book and YouTube,
PaaS (platform as a service), such as Microsoft Azure and Google AppEngine, and IaaS (infrastructure as a
service), such as Amazon EC2 and GoGrid [1]. Cloud computing is based on virtualization, which abstracts
physical computer resources and allows users to create and run multiple virtual machines (VMs) on a single
physical machine, whereby each virtual machine is allocated a share of the physical machine resources. The
virtual machines can potentially run different operating system with different applications [2].
Antivirus (AV) software is one of the most important applications in information technology to prevent
and remove malware infection. The effectiveness of traditional host-based AV is limited on the long term in
detecting many modern threats for many reasons, such as the time window from the time a virus‟s signature is
released to the time the signature is delivered to the AV running on a device, and the high resource requirement,
which may make mobile device users opt for stopping their antivirus [3].
Figure 1: Cloud antivirus architecture.
Providing antivirus as a service in the cloud, such as the CloudAV model [4], addresses the above-
mentioned limitations. As shown in Fig.1, a cloud antivirus provider hosts one or more malware analysis
engines and provides its service to remote clients over the internet. Files are sent from the clients to the cloud,
get scanned, and the result is sent back to the client. The concept of a cloud antivirus is simple: instead of
running complex analysis software on every end-host, each end-host runs a lightweight process. This
lightweight process discovers potential threats to the system and sends them to a network-accessible service for
analysis.
This paper investigates the problem of resource allocation in a CloudAV-like setting. A cloud
antivirus provider hosts a number of virtual machines, each running the same or different antivirus engines
processing different workloads (files). Lightweight processes on end-hosts collect and upload suspect files to the
Resource Allocation For Antivirus Cloud Appliances
www.iosrjournals.org 34 | Page
cloud for scanning. The performance of the cloud antivirus infrastructure is affected by the resource allocation
to the virtual machines. Optimizing resource allocation would improve resource utilization.
The contribution of this paper is two-fold: (1) a general search-based framework for solving the
resource allocation problem in cloud antivirus setting is presented and (2) an instrumental part of the framework,
namely the antivirus cost model, is investigated experimentally to model the file scanning time. The
experimental results show that scanning time depends on many factors, such as total file size, size of code
segment, and count and type of files embedded within the scanned executable. However, none of these
parameters alone was found to reliably estimate the scanning time.
The rest of this paper is organized as follows. Section II describes background on virtualization,
antivirus software, and pattern matching algorithms. In Section III, the problem of resource allocation in cloud
antivirus environment is presented. Section IV describes the proposed solution, namely the Automatic Cloud
Antivirus Configurator (ACAC). In Section V, the cost model is experimentally investigated. Section VI
discusses closely related research, and the paper is concluded by Section VII, which also briefly presents future
work.
II. Background
His section presents a brief background on virtualization, the corner stone of cloud computing, and a more
detailed background on the theoretical underpinnings of antivirus performance.
A. Virtualization
The idea of virtualization is to separate user‟s perception of software and hardware from the physical
resources. Virtualization adds a layer of software between applications and physical resources used by these
applications. This layer maps virtual resources perceived by applications to the real physical resources. In
addition, it allows for multiple applications to share common physical resources [2]. One of the famous resource
virtualization types is machine virtualization. Machine virtualization technology depends on software called the
virtual machine monitor (VMM). Examples of VMM software include Xen, VMware, and Virtual box [5].
B. Pattern Matching Algorithms
This subsection gives more detailed background on pattern matching algorithms, which are used in
signature-based antivirus programs. In particular, we discuss the WO pattern matching algorithms that are used
in ClamAV [6], the open-source antivirus program that is used as a case study in this work. For each algorithm,
we describe how it operates and its asymptotic running time.
AV software plays an important role in today‟s internet communication security. AV is used for
scanning emails, files being transferred, and files on disk. The scanning speed of an AV program is important to
optimize the speed of the whole scanning process. AV scanning speed relies on the pattern matching algorithm
that is implemented in the AV software. Antivirus software uses WO main strategies for detecting viruses and
other malware: signature-based and behavior-based detection.
Signature-based detection is the traditional way of antivirus operation. It works by matching patterns
stored in a database using pattern matching algorithms, such as Boyer Moore [7] and Aho-Corasick [8].
Behavior-based detectors monitor behavior of all programs and can detect unknown and new viruses.
In addition to the run-time behavior, static characteristics can also be determined to reinforce the identification
of malicious behavior. Algorithms used include support vector machines (SVM) [9] and decision tree [10].
Pattern matching algorithms have recently been applied to many applications, such as internet security,
antivirus, search engines, and data retrieval. In pattern matching we have a pattern pat of length m, we have a
string str of length n, where usually n > m, and we want to find the positions (in str) of all occurrences (if any)
of pat in str [11]. The focus of this paper is on the use of pattern matching algorithms in antivirus (AV)
applications.
Among the various famous pattern matching algorithms in AV software (ClamAV as a case study) are
the Boyer-Moore algorithm [7] and the Aho-Corasick algorithm [8], which are explained in more detail below.
1) Boyer-Moore algorithm: The general idea behind the Boyer-Moore (BM) algorithm well be presented [7].
BM was proposed for single-pattern matching. It works by sliding the pattern from left to right over the text and
starting the comparison from right to left. BM employs three heuristics in the comparison as follows: (1) Right
to left comparison: the comparison operation in BM algorithm starts from right-most character of the pattern
with corresponding character in the text and second character of rightmost of pattern with corresponding
character in the text and so on as shown in Fig. 2.
(2) The bad character heuristic works in WO steps. First, when the comparison of the rightmost
character in the pattern with the corresponding character in the text gives a mismatch and the mismatched
character in the text does not appear in the pattern, and then the pattern is moved as a whole to the right. For
Resource Allocation For Antivirus Cloud Appliances
www.iosrjournals.org 35 | Page
example, in Fig. 2(b), we can observe that the character F of the text has a mismatch with the rightmost
character T of the pattern. In addition, F does not occur in the pattern, and thus, the pattern is moved as a whole
to the first character after F (the character A).
Second, when the comparison gives a mismatch and the mismatching character in the text matches a
character elsewhere in the pattern, the pattern is moved to the right until the two matching characters are
aligned. In Fig. 2 (c), we can observe that the character (-) of the text has a mismatch with the character T of the
pattern. In addition, (-) occurs in the pattern, and thus, the pattern is moved to the right until the pattern
character aligns to the same character of text (e.g., the character (-) of pattern aligns to the character (-) of text)
(3) In the good suffix heuristic, after a mismatch, when a suffix of more than one character in the
pattern matches the corresponding substring of text and is found to occur in another position in the pattern, then
the algorithm slides the pattern to the right until the matching substring in text aligns to the other occurrence of
the pattern suffix. For example, in Fig. 3(a), we can observe that the substring of the two rightmost characters
(AT) of the pattern match the corresponding characters of the text, but the third character from right is a
mismatch (H in pattern and „-„ in text). In the same time, we observe that the substring AT is found in the first
two positions of pattern. Thus, the pattern is slid until its substring AT is aligned to the substring AT in the text
(Fig. 3(b)).
Figure 2: The Boyer-Moore algorithm (bad character heuristic).
Figure 3: The Boyer-Moore algorithm (good suffix heuristic).
Resource Allocation For Antivirus Cloud Appliances
www.iosrjournals.org 36 | Page
2) Aho-Corasick algorithm (AC) [8]: For multi-pattern matching, the AC algorithm constructs a finite state
automaton that accepts all strings in the pattern. The automaton is built in the preprocessing stage. The AC
algorithm operates in O(n) running time. It includes the following functions:
(a) The Goto Function
The automaton starts in the start state (state 0). When the first input symbol is accepted, the goto
function g () is applied on the pair (state 0, input symbol) and the machine transitions into the next state. In other
words, the next state becomes the current state and the next input symbol the current symbol. If the input symbol
is not accepted, then a fail event happens. For example, g(7,d)= fail because no pattern contains substring
“hisd” (Fig. 4).
Figure 4: The goto function of the Aho-Corasick algorithm.
(b) The failure function
Failure function f( ) is called when g(state, input symbol) = fail, that is, the input symbol is not expected in
the current state. In other words, if the string resulting from the concatenation of the labels of the transition arcs
from the starting state to the current state plus the input symbol is not a prefix of any pattern, the machine makes
a transition to failure by calling the failure function, and it repeats the above-mentioned operation starting from
the failure state. In Figure 5, in state 7, the machine returns to state 3 when it receives an unexpected symbol.
s 1 2 3 4 5 6 7 8 9
F(s) 0 0 0 1 2 0 3 0 3
Figure 5: The failure function of the Aho-Corasick algorithm.
(c) Output function
The output function O ( ) maps each state into a set of patterns (could be empty), which contains a
pattern string p if p is a suffix of any pattern in the state machine. As an example, we have O (5) = {she, he}.
Note that the symbol (e) is a suffix of the patterns she and he (Fig. 6).
s output(s)
2 {he}
5 {she,he}
7 {his}
9 {hers}
Figure 6: The output function of the Aho-Corasick algorithm.
III. Resource Allocation Problem
This section describes the problem of allocating physical resources to virtual machines running
antivirus software in a cloud computing setting.
Virtualization is a common enabling technology in cloud computing. In cloud computing, the
virtualization technology is used to share resources among virtual machines that run on physical servers.
Resource allocation is one of the problems faced in order to optimize performance of the applications running
inside the virtual machines. These applications are called cloud appliances. Deciding on how many physical
resources to allocate to each virtual machine not only affects the performance of cloud appliances but also the
efficiency of the underlying physical infrastructure.
Application performance is affected by the allocation of physical resources to the VMs. Different
applications demand different resource allocations, and moreover, different workloads within the same
application pose different resource requirements. For example, The performance of some applications and
Resource Allocation For Antivirus Cloud Appliances
www.iosrjournals.org 37 | Page
workloads is optimized by allocating more CPU to their appliances, whereas other applications and workloads
benefit more from higher memory or I/O allocation. This heterogeneity motivates the need to control and
configure resource allocation to the virtual machines.
Fig.7. Resource allocation for cloud antivirus appliances
As shown in Fig.7, N VMs run on a physical machine. Each VM runs an antivirus program in a cloud antivirus.
ClamAV is used as an example of an antivirus [5]. The shared physical resource (e.g., CPU and memory) is
represented by R. Each VM has a workload, which is a set of files to scan. These files can be clean or virus-
infected. Wi represents the workload on each VM, and rip represents the CPU allocation to Vim. This work
focuses on the allocation of the CPU resource over virtual machine. The CPU allocation to the VMs is
represented as a vector [ri]. For example, for three VMs, the first taking 50% of CPU, the second 30%, and the
third 20%, the allocation is [0.5, 0.3, 0.2].
A resource allocation is better than another if it yields less cost. The cost in this work is measured as the time
needed to scan the input files assigned to a VM. The total cost is simply the total cost over all VMs. Estimating
the cost of scanning a file is instrumental to reaching an optimal or near-optimal allocation.
IV. Automatic Cloud Antivirus Configurator (ACAC)
This section describes our proposed solution to the resource allocation problem presented in the
previous section.
The proposed solution is based on a search algorithm that enumerates possible resource allocations and
evaluates them based on a cost model. The cost model provides the search algorithm with an estimate of the
CPU time needed to scan the workload files on a particular VM with a given CPU allocation. The parameters of
the cost model may need to be adjusted in order to reflect the virtual environment under the provided CPU
allocation. This adjusting process is called parameter calibration.
Fig. 8: The Automatic Cloud Antivirus Configurator (ACAC).
Fig.8 depicts the architecture of the proposed solution, namely the Automatic Cloud Antivirus
Configurator (ACAC). ACAC is divided into three modules: the configuration enumerator, which includes the
Resource Allocation For Antivirus Cloud Appliances
www.iosrjournals.org 38 | Page
search algorithm, the parameter calibration process, and the AV cost model, which estimates the cost scanning a
set of files under a given CPU allocation. This architecture is inspired by the Virtual Design Advisor [12], which
has been proposed to solve the resource allocation problem in a different context.
Configuration enumerator (search algorithm): The configuration enumerator module is used to enumerate
resource allocations for the VMs. It implements a search algorithm, such as greedy search and dynamic
programming, for enumerating candidate resource allocations. An example greedy algorithm [12] initially
assigns a 1/N share of each resource to each of the N VMs. It then proceeds iteratively. In each iteration, it
considers shifting a share (say, 5%) of some resource from one VM to another. The algorithm considers all such
resource reallocation, and if it finds reallocation of resources that is beneficial according to the cost estimator,
then it makes the most beneficial reallocation and iterates again. Basically, in each iteration, a small fraction of a
resource is deallocated from VM that will get hurt the least and allocated to the VM that will benefit the most. If
no beneficial reallocations are found, the algorithm terminates, reporting the current resource allocation as the
recommended allocation.
Calibration process: Calibration is a process used for mapping each candidate resource allocation to a set of
parameter values in the antivirus cost model. In the cost model, a set of parameterized equations are used to
compute a cost estimate. Some of the parameters may need to be adjusted according to the resource allocation to
the virtual machine. The calibration process adjusts these parameters before applying the equations.
AV performance model: ClamAV [6] is an open-source antivirus toolkit for UNIX. The main purpose of it is
e-mail scanning on email gateways. It is the most widely used open-source antivirus and is based on pattern
matching algorithms (e.g., signature-based). ClamAV uses signature-based strategy in the scanning process,
whereby it uses two algorithms, namely multi-pattern Boyer-Moor and Aho-Corasick. Theoretically, the running
time for the single-pattern Boyer-Moore algorithm is O(n/m) and for Aho-Corasick is O (n), where n is the text
size and m the pattern size.
In practice, however, there is more than one parameter that effect the cost, such as the number and type
of file types embedded within a file and the number of signatures targeted for each file type. Fig. 9 shows some
of the inputs to the cost model, which is an instrumental part of the proposed architecture. The next section
experimentally digs deeper into understanding the cost model of an antivirus program.
File Size Code Size Number of patterns
Cost Model
Time
Figure 9: The antivirus performance model.
V. Antivirus Cost Model
This section presents the results of a number of experiments that explore the effect of some of the
parameters that affect the performance of an antivirus.
A. Experiment setup
We used ClamAV version 0.97.3 installed on a machine with Core 2 Duo™ T5870 2.0 Processor, 2
GB Memory and Centos 5.5 operating system. We used the Xen platform as the virtualization environment. Xen
is an open source virtualization software, and it is used in its par-virtualization mode [13]. The experiment used
two types of workload: a set of clean files with file size between 1 and 25 MB and a set of known malware with
size between 1 and 10 MB. Both the clean and infected files were Windows executables. The clean files were
Resource Allocation For Antivirus Cloud Appliances
www.iosrjournals.org 39 | Page
grouped into five groups based on file size as follows: 1 MB to 5MB, 5MB to 10MB to15MB, 15MB to 20 MB,
and 20MB to 25MB. Similarly, the malware files were grouped into three groups: 0 MB to 1MB, 1MB to 5MB,
and 5 MB to 10 MB. Each file was scanned ten times with averages reported.
To automate scanning, the following simple script was used:
#! /bin/csh
foreach file ( `ls | xargs)
echo –n > / logs/$file.exe.log
foreach is (1 2 3 4 5 6 7 8 9 10)
clamscan $file.exe > /logs/$file.exe.log
end
end
B. Effect of file size
The first experiment examined the effect of total file size on scanning time. Inspired by the linear
theoretical cost model, a linear regression analysis was conducted between file size and scan time. The linear
regression yields an equation:
y= A*x +B (1)
where A is the slope of the line, and B is the y-intercept.
Fig. 10 shows the linear regression analysis at a CPU allocation of 100%, and Table 1 shows the result of the
regression analysis for the set of clean files at CPU allocation of 100%, 70%, 50%, and 30%. The table shows
the values of the linear equation parameters (y =A*x +B) at each CPU allocation. It is important to note that
some files with larger size took less time than files that are smaller in size.
Table 1: Effect of file size on scan time at different CPU allocations
CPU allocation A B
100% 0.224 3.796
70% 0.692 11.009
50% 1.425 20.191
30% 2.463 38.021
Figure 10: Linear regression analysis of scan time vs. file size for clean files at 100% CPU allocation.
Fig. 11 shows the results of the linear regression analysis for the set of malwares at a CPU allocation 100%.
0
5
10
15
20
0 5 10 15 20
ScanTime(second)
File Size in (MB)
Resource Allocation For Antivirus Cloud Appliances
www.iosrjournals.org 40 | Page
Figure 11: Linear regression analysis of scan time vs. file size for malware at 100% CPU allocation.
C. Effect of code size
Through observation from the previous experiment, the scan time for a file did not necessarily depend
on the file size. In the second experiment, only the size of the code segment of the file is used as an indicator of
the file‟s scan time.
To extract the code size, the PE explorer software [14] was used. Fig. 12 depicts the linear regression
model for scan time vs. code size. It can also be noted that the code size is not a reliable indicator of scan time if
used alone. Some files with smaller code size took longer to scan than files with smaller code size.
Figure 12: Linear regression analysis of scan time vs. code size for clean files.
D. Effect of number of embedded types
The third experiment investigated the effect of the number of file types embedded within a Windows
executable. Some executables contain embedded files within, such as archives and compressed files, documents,
mail formats, PDF files, and others. The count and type of the embedded files has an effect on the scan time,
because some of these files are decompressed or extracted and scanned, and each type invokes a potentially
different set of signatures to check against. Types such as HTML, ARCHIVE, PE, OLE2, MAIL, ELF, and
ASCII affect the scan performance because each type has a specific number of patterns in the ClamAV
database. However, as shown in Fig. 13 the number of embedded types alone is not a reliable indicator.
0
2
4
6
8
10
0 2 4 6 8 10 12
ScanTime(second)
Malware Size in (MB)
0
20
40
60
80
100
120
140
160
0 20 40 60 80 100 120 140
ScanTime(Second)
Size of Code in (MB)
Resource Allocation For Antivirus Cloud Appliances
www.iosrjournals.org 41 | Page
Figure 13: Linear regression analysis of scan time vs. number of embedded type for clean files.
To neutralize the effect of embedded files, ClamAV was run while removing the processing of all embedded
types. Fig. 14 shows that the scan time is reliably linearly dependent on the scanned size, which matches the
theoretical performance.
Figure 14: Linear regression analysis of scan time vs. scanned size after removing all embedded file processing
VI. Related Work
Performance optimization at the IaaS cloud layer has been the subject of active research recently. For
example, the virtualization design problem was addressed in the database community [12], [15]. The authors
addressed the problem of resource allocation over virtual machines running database management systems. The
virtual machine configurations determine how the shared physical resources will be allocated to the different
database instances. The implemented solution, namely the virtual design advisor, indirectly uses information
about the anticipated workloads of each of the database via a cost model, the query optimizer, to estimate the
effect of a particular resource allocation on workload performance.
Traditional antivirus software has to deal with new threats and an increasing surface of vulnerabilities
on the long run. Hence, an antivirus must be scalable and flexible for new deployments. Particularly in cloud
computing, malware detection is provided as a service in the cloud. This setting is particularly suitable for
mobile devices through moving the antivirus functionality off-device to the network and employing multiple
virtualization malware detection engines [4].
In CloudAV [4], a lightweight process at the client sends files to a server in the cloud for scanning,
allowing for integrated antivirus software, behavioral simulation, and other deep-analysis engines from multiple
vendors providing better detection of malware [16].
A novel anti-malware system has been proposed and called SplitScreen. SplitScreen performs an
additional screening step prior to the time- and bandwidth consuming process of downloading all virus
signatures to a client. Non-infected files are processed faster, and possibly infected files are scanned only
against a small set of potential signatures [17]. A similarity between our approach and SplitScreen is the
preprocessing of files to make the subsequent scanning process more efficient. However, the preprocessing
setup is done for different specific objectives. In our work, preprocessing gives an estimate of the scan time to
0
10
20
30
40
50
0 1 2 3 4 5
ScanTime(second)
Numberof types
0
5
10
15
20
25
0 5 10 15 20 25 30
ScanTime(second)
Real size in (MB)
Resource Allocation For Antivirus Cloud Appliances
www.iosrjournals.org 42 | Page
aid allocation problem, whereas in SplitScreen, processing aids to download only the necessary signatures to
scan a particular file or set of files.
VII. Conclusions and Future Work
A cost model of antivirus programs is instrumental to the approach adopted in this paper. An accurate
cost model would guide the search algorithm to optimal or near-optimal resource allocation. Our preliminary
experiments showed that the scan time (i.e., the time taken by an antivirus program to scan a file) depends on
the total file size, the size of the code segment, and the count and types of embedded files inside the executable.
However, not a single parameter of these can be reliably used alone to estimate the scan time. Hence, in the
future, a machine-learning approach taking all these parameters as features well be investigated.
References
[1] R.Qi Zhang, Lu Cheng, “Cloud computing: state of the art and research challenges,” in J. Internet and Applications. The Brazilian
Computer Society 2010, pp. 7-18.
[2] Virtualization [online]. Available at http://www.vmware.com/virtualization/. Last checked on April 14, 2013.
[3] S. K. Shah and N. I. R., “Exploring Reliability of cloud antivirus solution,” in New Jersey Institute of Technology.
[4] J. Oberheide, E. Cooke, and F. Jahanian, “CloudAV: N-version antivirus in the network cloud,” in Proceedings of the 17th
conference on Security Symposium SS‟08, Berkely, CA, USA: USENIX Association, 2008, pp. 91-106.
[5] R. Rose, “Survey of system virtualization techniques,” Tech. Rep. 2004.
[6] Clam antivirus [online]. Available at http://www.clamav.net. Last checked on April 14, 2013.
[7] R. S. Boyer and J. S. Moore, “A fast string searching algorithm,” Commun. ACM, vol. 20, no. 10, pp. 762-772, Oct. 1977.
[8] A. V. Aho and M. J. Corasick, “Efficient string matching: an aid to bibliographic search,” Commun. ACM, vol. 18, no. 6, pp.333-
340, Jun. 1975.
[9] Bo-yun Zhang, Jian-ping Yin, Jin-bo Hao, Ding-xing Zhang, and Shu-lin Wang, “Using support vector machine to detect unknown
computer viruses,” International Journal of Computational Intelligence Research., vol. 2, no. 1, pp. 100-104, 2006.
[10] D. J. Hand, P. Smyth, and H. Mannila, “Principles of Data mining.” Cambridge, MA, USA: MIT Press, 2001.
[11] P. S. WHEELER, “Techniques for improving the performance of signature-based network intrusion detection system,” Master‟s
thesis, Wake Forest University, CALIFORNIA, 2003.
[12] A. Soror, U. F. Minhas A. Aboulnaga, K Salem, P. Kokosielis, and S. Kamath, “Automatic virtual Machine configuration for
database workload,” In proc. ACM SIGMOD International Conference On Management of Data (SIGMOD’08), Jun.2008, pp.
953-966.
[13] Introduction to the Xen virtual machine monitor [online]. Available at http://www.linuxjournal.com/article/8540?page=0,1. Last
accessed on April 14, 2013.
[14] View, Edit, and Reverse Engineer EXE and DLL Files [online]. Available at: http://www.heaventools.com/overview.htm. Last
accessed on April 14, 2013.
[15 ] A. Soror, U. F. Minhas A. Aboulnaga, K Salem, P. Kokosielis, and S. Kamath,” Deploying database Appliances in the cloud,”
IEEE Data Eng. Bull., Vol. 32, no. 1, pp. 13-20, 2009.
[16] J. Oberheide, E. Cooke, and F. Jahanian, “Rethinking antivirus: executable analysis in the network cloud,” in Proceedings of the
2nd
USENIX Workshop, USA, 2007.
[17] S. K. Cha, I. Moraru, J. Jang, J. Truelove, D. Brumley, and D. G. Andersen, Splitscreen: Enabling efficient, distributed malware
detection,” in Proceedings of the 7th USENIX conference on networked systems. USENIX Association, 2010, pp. 187-200.

More Related Content

What's hot

Malwise-Malware Classification and Variant Extraction
Malwise-Malware Classification and Variant ExtractionMalwise-Malware Classification and Variant Extraction
Malwise-Malware Classification and Variant ExtractionIOSR Journals
 
COMPARISON BETWEEN DIVERGENCE MEASURES FOR ANOMALY DETECTION OF MOBILE AGENTS...
COMPARISON BETWEEN DIVERGENCE MEASURES FOR ANOMALY DETECTION OF MOBILE AGENTS...COMPARISON BETWEEN DIVERGENCE MEASURES FOR ANOMALY DETECTION OF MOBILE AGENTS...
COMPARISON BETWEEN DIVERGENCE MEASURES FOR ANOMALY DETECTION OF MOBILE AGENTS...ijwmn
 
Analysis of Malware Infected Systems & Classification with Gradient-boosted T...
Analysis of Malware Infected Systems & Classification with Gradient-boosted T...Analysis of Malware Infected Systems & Classification with Gradient-boosted T...
Analysis of Malware Infected Systems & Classification with Gradient-boosted T...Darshan Gorasiya
 
DoS Forensic Exemplar Comparison to a Known Sample
DoS Forensic Exemplar Comparison to a Known SampleDoS Forensic Exemplar Comparison to a Known Sample
DoS Forensic Exemplar Comparison to a Known SampleCSCJournals
 
NOVEL HYBRID INTRUSION DETECTION SYSTEM FOR CLUSTERED WIRELESS SENSOR NETWORK
NOVEL HYBRID INTRUSION DETECTION SYSTEM FOR CLUSTERED WIRELESS SENSOR NETWORKNOVEL HYBRID INTRUSION DETECTION SYSTEM FOR CLUSTERED WIRELESS SENSOR NETWORK
NOVEL HYBRID INTRUSION DETECTION SYSTEM FOR CLUSTERED WIRELESS SENSOR NETWORKIJNSA Journal
 
Android malware detection through online learning
Android malware detection through online learningAndroid malware detection through online learning
Android malware detection through online learningIJARIIT
 
Limiting Self-Propagating Malware Based on Connection Failure Behavior
Limiting Self-Propagating Malware Based on Connection Failure Behavior Limiting Self-Propagating Malware Based on Connection Failure Behavior
Limiting Self-Propagating Malware Based on Connection Failure Behavior csandit
 
COMPARISON OF MALWARE CLASSIFICATION METHODS USING CONVOLUTIONAL NEURAL NETWO...
COMPARISON OF MALWARE CLASSIFICATION METHODS USING CONVOLUTIONAL NEURAL NETWO...COMPARISON OF MALWARE CLASSIFICATION METHODS USING CONVOLUTIONAL NEURAL NETWO...
COMPARISON OF MALWARE CLASSIFICATION METHODS USING CONVOLUTIONAL NEURAL NETWO...IJNSA Journal
 
IRJET - Survey on Malware Detection using Deep Learning Methods
IRJET -  	  Survey on Malware Detection using Deep Learning MethodsIRJET -  	  Survey on Malware Detection using Deep Learning Methods
IRJET - Survey on Malware Detection using Deep Learning MethodsIRJET Journal
 
Dp31547550
Dp31547550Dp31547550
Dp31547550IJMER
 
An effective architecture and algorithm for detecting worms with various scan...
An effective architecture and algorithm for detecting worms with various scan...An effective architecture and algorithm for detecting worms with various scan...
An effective architecture and algorithm for detecting worms with various scan...UltraUploader
 
Limiting self propagating malware based
Limiting self propagating malware basedLimiting self propagating malware based
Limiting self propagating malware basedIJNSA Journal
 
RESILIENT VOTING MECHANISMS FOR MISSION SURVIVABILITY IN CYBERSPACE: COMBININ...
RESILIENT VOTING MECHANISMS FOR MISSION SURVIVABILITY IN CYBERSPACE: COMBININ...RESILIENT VOTING MECHANISMS FOR MISSION SURVIVABILITY IN CYBERSPACE: COMBININ...
RESILIENT VOTING MECHANISMS FOR MISSION SURVIVABILITY IN CYBERSPACE: COMBININ...IJNSA Journal
 
Mas based framework to protect cloud computing
Mas based framework to protect cloud computingMas based framework to protect cloud computing
Mas based framework to protect cloud computingeSAT Publishing House
 
Secure Data Aggregation Technique for Wireless Sensor Networks in the Presenc...
Secure Data Aggregation Technique for Wireless Sensor Networks in the Presenc...Secure Data Aggregation Technique for Wireless Sensor Networks in the Presenc...
Secure Data Aggregation Technique for Wireless Sensor Networks in the Presenc...1crore projects
 
Security optimization of dynamic networks with probabilistic graph modeling a...
Security optimization of dynamic networks with probabilistic graph modeling a...Security optimization of dynamic networks with probabilistic graph modeling a...
Security optimization of dynamic networks with probabilistic graph modeling a...Pvrtechnologies Nellore
 
A mobile offloading game against smart attacks
A mobile offloading game against smart attacksA mobile offloading game against smart attacks
A mobile offloading game against smart attacksredpel dot com
 

What's hot (20)

Malwise-Malware Classification and Variant Extraction
Malwise-Malware Classification and Variant ExtractionMalwise-Malware Classification and Variant Extraction
Malwise-Malware Classification and Variant Extraction
 
COMPARISON BETWEEN DIVERGENCE MEASURES FOR ANOMALY DETECTION OF MOBILE AGENTS...
COMPARISON BETWEEN DIVERGENCE MEASURES FOR ANOMALY DETECTION OF MOBILE AGENTS...COMPARISON BETWEEN DIVERGENCE MEASURES FOR ANOMALY DETECTION OF MOBILE AGENTS...
COMPARISON BETWEEN DIVERGENCE MEASURES FOR ANOMALY DETECTION OF MOBILE AGENTS...
 
Antivirus engine
Antivirus engineAntivirus engine
Antivirus engine
 
Ijetr012045
Ijetr012045Ijetr012045
Ijetr012045
 
Analysis of Malware Infected Systems & Classification with Gradient-boosted T...
Analysis of Malware Infected Systems & Classification with Gradient-boosted T...Analysis of Malware Infected Systems & Classification with Gradient-boosted T...
Analysis of Malware Infected Systems & Classification with Gradient-boosted T...
 
DoS Forensic Exemplar Comparison to a Known Sample
DoS Forensic Exemplar Comparison to a Known SampleDoS Forensic Exemplar Comparison to a Known Sample
DoS Forensic Exemplar Comparison to a Known Sample
 
NOVEL HYBRID INTRUSION DETECTION SYSTEM FOR CLUSTERED WIRELESS SENSOR NETWORK
NOVEL HYBRID INTRUSION DETECTION SYSTEM FOR CLUSTERED WIRELESS SENSOR NETWORKNOVEL HYBRID INTRUSION DETECTION SYSTEM FOR CLUSTERED WIRELESS SENSOR NETWORK
NOVEL HYBRID INTRUSION DETECTION SYSTEM FOR CLUSTERED WIRELESS SENSOR NETWORK
 
Android malware detection through online learning
Android malware detection through online learningAndroid malware detection through online learning
Android malware detection through online learning
 
06558266
0655826606558266
06558266
 
Limiting Self-Propagating Malware Based on Connection Failure Behavior
Limiting Self-Propagating Malware Based on Connection Failure Behavior Limiting Self-Propagating Malware Based on Connection Failure Behavior
Limiting Self-Propagating Malware Based on Connection Failure Behavior
 
COMPARISON OF MALWARE CLASSIFICATION METHODS USING CONVOLUTIONAL NEURAL NETWO...
COMPARISON OF MALWARE CLASSIFICATION METHODS USING CONVOLUTIONAL NEURAL NETWO...COMPARISON OF MALWARE CLASSIFICATION METHODS USING CONVOLUTIONAL NEURAL NETWO...
COMPARISON OF MALWARE CLASSIFICATION METHODS USING CONVOLUTIONAL NEURAL NETWO...
 
IRJET - Survey on Malware Detection using Deep Learning Methods
IRJET -  	  Survey on Malware Detection using Deep Learning MethodsIRJET -  	  Survey on Malware Detection using Deep Learning Methods
IRJET - Survey on Malware Detection using Deep Learning Methods
 
Dp31547550
Dp31547550Dp31547550
Dp31547550
 
An effective architecture and algorithm for detecting worms with various scan...
An effective architecture and algorithm for detecting worms with various scan...An effective architecture and algorithm for detecting worms with various scan...
An effective architecture and algorithm for detecting worms with various scan...
 
Limiting self propagating malware based
Limiting self propagating malware basedLimiting self propagating malware based
Limiting self propagating malware based
 
RESILIENT VOTING MECHANISMS FOR MISSION SURVIVABILITY IN CYBERSPACE: COMBININ...
RESILIENT VOTING MECHANISMS FOR MISSION SURVIVABILITY IN CYBERSPACE: COMBININ...RESILIENT VOTING MECHANISMS FOR MISSION SURVIVABILITY IN CYBERSPACE: COMBININ...
RESILIENT VOTING MECHANISMS FOR MISSION SURVIVABILITY IN CYBERSPACE: COMBININ...
 
Mas based framework to protect cloud computing
Mas based framework to protect cloud computingMas based framework to protect cloud computing
Mas based framework to protect cloud computing
 
Secure Data Aggregation Technique for Wireless Sensor Networks in the Presenc...
Secure Data Aggregation Technique for Wireless Sensor Networks in the Presenc...Secure Data Aggregation Technique for Wireless Sensor Networks in the Presenc...
Secure Data Aggregation Technique for Wireless Sensor Networks in the Presenc...
 
Security optimization of dynamic networks with probabilistic graph modeling a...
Security optimization of dynamic networks with probabilistic graph modeling a...Security optimization of dynamic networks with probabilistic graph modeling a...
Security optimization of dynamic networks with probabilistic graph modeling a...
 
A mobile offloading game against smart attacks
A mobile offloading game against smart attacksA mobile offloading game against smart attacks
A mobile offloading game against smart attacks
 

Viewers also liked

Protecting Attribute Disclosure for High Dimensionality and Preserving Publis...
Protecting Attribute Disclosure for High Dimensionality and Preserving Publis...Protecting Attribute Disclosure for High Dimensionality and Preserving Publis...
Protecting Attribute Disclosure for High Dimensionality and Preserving Publis...IOSR Journals
 
Adaptability of Distribution Automation System to Electric Power Quality Moni...
Adaptability of Distribution Automation System to Electric Power Quality Moni...Adaptability of Distribution Automation System to Electric Power Quality Moni...
Adaptability of Distribution Automation System to Electric Power Quality Moni...IOSR Journals
 
Performance Evaluation of Different Data Mining Classification Algorithm and ...
Performance Evaluation of Different Data Mining Classification Algorithm and ...Performance Evaluation of Different Data Mining Classification Algorithm and ...
Performance Evaluation of Different Data Mining Classification Algorithm and ...IOSR Journals
 
A novel methodology for maximization of Reactive Reserve using Teaching-Learn...
A novel methodology for maximization of Reactive Reserve using Teaching-Learn...A novel methodology for maximization of Reactive Reserve using Teaching-Learn...
A novel methodology for maximization of Reactive Reserve using Teaching-Learn...IOSR Journals
 
Approximating Source Accuracy Using Dublicate Records in Da-ta Integration
Approximating Source Accuracy Using Dublicate Records in Da-ta IntegrationApproximating Source Accuracy Using Dublicate Records in Da-ta Integration
Approximating Source Accuracy Using Dublicate Records in Da-ta IntegrationIOSR Journals
 
Combining Ability for Yield and Yield Components through Diallel Analysis in ...
Combining Ability for Yield and Yield Components through Diallel Analysis in ...Combining Ability for Yield and Yield Components through Diallel Analysis in ...
Combining Ability for Yield and Yield Components through Diallel Analysis in ...IOSR Journals
 
Multilevel Privacy Preserving by Linear and Non Linear Data Distortion
Multilevel Privacy Preserving by Linear and Non Linear Data DistortionMultilevel Privacy Preserving by Linear and Non Linear Data Distortion
Multilevel Privacy Preserving by Linear and Non Linear Data DistortionIOSR Journals
 
Adaptive check-pointing and replication strategy to tolerate faults in comput...
Adaptive check-pointing and replication strategy to tolerate faults in comput...Adaptive check-pointing and replication strategy to tolerate faults in comput...
Adaptive check-pointing and replication strategy to tolerate faults in comput...IOSR Journals
 
Tariff Setting In the Indian Power Sector-An Overview
Tariff Setting In the Indian Power Sector-An OverviewTariff Setting In the Indian Power Sector-An Overview
Tariff Setting In the Indian Power Sector-An OverviewIOSR Journals
 
Quality Assurance Standards and Survey of IT Industries
Quality Assurance Standards and Survey of IT IndustriesQuality Assurance Standards and Survey of IT Industries
Quality Assurance Standards and Survey of IT IndustriesIOSR Journals
 
A Survey on Data Mining
A Survey on Data MiningA Survey on Data Mining
A Survey on Data MiningIOSR Journals
 
Design, Modelling& Simulation of Double Sided Linear Segmented Switched Reluc...
Design, Modelling& Simulation of Double Sided Linear Segmented Switched Reluc...Design, Modelling& Simulation of Double Sided Linear Segmented Switched Reluc...
Design, Modelling& Simulation of Double Sided Linear Segmented Switched Reluc...IOSR Journals
 
Structural, compositional and electrochemical properties of Aluminium-Silicon...
Structural, compositional and electrochemical properties of Aluminium-Silicon...Structural, compositional and electrochemical properties of Aluminium-Silicon...
Structural, compositional and electrochemical properties of Aluminium-Silicon...IOSR Journals
 
Performance Analysis of Single Quantum Dots and Couple Quantum Dots at Interm...
Performance Analysis of Single Quantum Dots and Couple Quantum Dots at Interm...Performance Analysis of Single Quantum Dots and Couple Quantum Dots at Interm...
Performance Analysis of Single Quantum Dots and Couple Quantum Dots at Interm...IOSR Journals
 
Improvement of limited Storage Placement in Wireless Sensor Network
Improvement of limited Storage Placement in Wireless Sensor NetworkImprovement of limited Storage Placement in Wireless Sensor Network
Improvement of limited Storage Placement in Wireless Sensor NetworkIOSR Journals
 
An Efficient Approach for Outlier Detection in Wireless Sensor Network
An Efficient Approach for Outlier Detection in Wireless Sensor NetworkAn Efficient Approach for Outlier Detection in Wireless Sensor Network
An Efficient Approach for Outlier Detection in Wireless Sensor NetworkIOSR Journals
 
Procuring the Anomaly Packets and Accountability Detection in the Network
Procuring the Anomaly Packets and Accountability Detection in the NetworkProcuring the Anomaly Packets and Accountability Detection in the Network
Procuring the Anomaly Packets and Accountability Detection in the NetworkIOSR Journals
 

Viewers also liked (20)

Protecting Attribute Disclosure for High Dimensionality and Preserving Publis...
Protecting Attribute Disclosure for High Dimensionality and Preserving Publis...Protecting Attribute Disclosure for High Dimensionality and Preserving Publis...
Protecting Attribute Disclosure for High Dimensionality and Preserving Publis...
 
Adaptability of Distribution Automation System to Electric Power Quality Moni...
Adaptability of Distribution Automation System to Electric Power Quality Moni...Adaptability of Distribution Automation System to Electric Power Quality Moni...
Adaptability of Distribution Automation System to Electric Power Quality Moni...
 
Performance Evaluation of Different Data Mining Classification Algorithm and ...
Performance Evaluation of Different Data Mining Classification Algorithm and ...Performance Evaluation of Different Data Mining Classification Algorithm and ...
Performance Evaluation of Different Data Mining Classification Algorithm and ...
 
A novel methodology for maximization of Reactive Reserve using Teaching-Learn...
A novel methodology for maximization of Reactive Reserve using Teaching-Learn...A novel methodology for maximization of Reactive Reserve using Teaching-Learn...
A novel methodology for maximization of Reactive Reserve using Teaching-Learn...
 
Approximating Source Accuracy Using Dublicate Records in Da-ta Integration
Approximating Source Accuracy Using Dublicate Records in Da-ta IntegrationApproximating Source Accuracy Using Dublicate Records in Da-ta Integration
Approximating Source Accuracy Using Dublicate Records in Da-ta Integration
 
Combining Ability for Yield and Yield Components through Diallel Analysis in ...
Combining Ability for Yield and Yield Components through Diallel Analysis in ...Combining Ability for Yield and Yield Components through Diallel Analysis in ...
Combining Ability for Yield and Yield Components through Diallel Analysis in ...
 
D01122330
D01122330D01122330
D01122330
 
Multilevel Privacy Preserving by Linear and Non Linear Data Distortion
Multilevel Privacy Preserving by Linear and Non Linear Data DistortionMultilevel Privacy Preserving by Linear and Non Linear Data Distortion
Multilevel Privacy Preserving by Linear and Non Linear Data Distortion
 
A0420104
A0420104A0420104
A0420104
 
Adaptive check-pointing and replication strategy to tolerate faults in comput...
Adaptive check-pointing and replication strategy to tolerate faults in comput...Adaptive check-pointing and replication strategy to tolerate faults in comput...
Adaptive check-pointing and replication strategy to tolerate faults in comput...
 
Tariff Setting In the Indian Power Sector-An Overview
Tariff Setting In the Indian Power Sector-An OverviewTariff Setting In the Indian Power Sector-An Overview
Tariff Setting In the Indian Power Sector-An Overview
 
Quality Assurance Standards and Survey of IT Industries
Quality Assurance Standards and Survey of IT IndustriesQuality Assurance Standards and Survey of IT Industries
Quality Assurance Standards and Survey of IT Industries
 
I0426778
I0426778I0426778
I0426778
 
A Survey on Data Mining
A Survey on Data MiningA Survey on Data Mining
A Survey on Data Mining
 
Design, Modelling& Simulation of Double Sided Linear Segmented Switched Reluc...
Design, Modelling& Simulation of Double Sided Linear Segmented Switched Reluc...Design, Modelling& Simulation of Double Sided Linear Segmented Switched Reluc...
Design, Modelling& Simulation of Double Sided Linear Segmented Switched Reluc...
 
Structural, compositional and electrochemical properties of Aluminium-Silicon...
Structural, compositional and electrochemical properties of Aluminium-Silicon...Structural, compositional and electrochemical properties of Aluminium-Silicon...
Structural, compositional and electrochemical properties of Aluminium-Silicon...
 
Performance Analysis of Single Quantum Dots and Couple Quantum Dots at Interm...
Performance Analysis of Single Quantum Dots and Couple Quantum Dots at Interm...Performance Analysis of Single Quantum Dots and Couple Quantum Dots at Interm...
Performance Analysis of Single Quantum Dots and Couple Quantum Dots at Interm...
 
Improvement of limited Storage Placement in Wireless Sensor Network
Improvement of limited Storage Placement in Wireless Sensor NetworkImprovement of limited Storage Placement in Wireless Sensor Network
Improvement of limited Storage Placement in Wireless Sensor Network
 
An Efficient Approach for Outlier Detection in Wireless Sensor Network
An Efficient Approach for Outlier Detection in Wireless Sensor NetworkAn Efficient Approach for Outlier Detection in Wireless Sensor Network
An Efficient Approach for Outlier Detection in Wireless Sensor Network
 
Procuring the Anomaly Packets and Accountability Detection in the Network
Procuring the Anomaly Packets and Accountability Detection in the NetworkProcuring the Anomaly Packets and Accountability Detection in the Network
Procuring the Anomaly Packets and Accountability Detection in the Network
 

Similar to Resource Allocation for Antivirus Cloud Appliances

A new approach for formal behavioral
A new approach for formal behavioralA new approach for formal behavioral
A new approach for formal behavioralijfcstjournal
 
VIRTUAL MACHINES DETECTION METHODS USING IP TIMESTAMPS PATTERN CHARACTERISTIC
VIRTUAL MACHINES DETECTION METHODS USING IP TIMESTAMPS PATTERN CHARACTERISTICVIRTUAL MACHINES DETECTION METHODS USING IP TIMESTAMPS PATTERN CHARACTERISTIC
VIRTUAL MACHINES DETECTION METHODS USING IP TIMESTAMPS PATTERN CHARACTERISTICijcsit
 
Verification of the protection services in antivirus systems by using nusmv m...
Verification of the protection services in antivirus systems by using nusmv m...Verification of the protection services in antivirus systems by using nusmv m...
Verification of the protection services in antivirus systems by using nusmv m...ijfcstjournal
 
IRJET- Zombie - Venomous File: Analysis using Legitimate Signature for Securi...
IRJET- Zombie - Venomous File: Analysis using Legitimate Signature for Securi...IRJET- Zombie - Venomous File: Analysis using Legitimate Signature for Securi...
IRJET- Zombie - Venomous File: Analysis using Legitimate Signature for Securi...IRJET Journal
 
Fisher exact Boschloo and polynomial vector learning for malware detection
Fisher exact Boschloo and polynomial vector learning for malware detection Fisher exact Boschloo and polynomial vector learning for malware detection
Fisher exact Boschloo and polynomial vector learning for malware detection IJECEIAES
 
IRJET- Developing an Algorithm to Detect Malware in Cloud
IRJET- Developing an Algorithm to Detect Malware in CloudIRJET- Developing an Algorithm to Detect Malware in Cloud
IRJET- Developing an Algorithm to Detect Malware in CloudIRJET Journal
 
Cloud Intrusion and Autonomic Management in Autonomic Cloud Computing
Cloud Intrusion and Autonomic Management in Autonomic Cloud ComputingCloud Intrusion and Autonomic Management in Autonomic Cloud Computing
Cloud Intrusion and Autonomic Management in Autonomic Cloud Computingijtsrd
 
Rational Unified Treatment for Web Application Vulnerability Assessment
Rational Unified Treatment for Web Application Vulnerability AssessmentRational Unified Treatment for Web Application Vulnerability Assessment
Rational Unified Treatment for Web Application Vulnerability AssessmentVESIT/University of Mumbai
 
NICE: Network Intrusion Detection and Countermeasure Selection in Virtual Net...
NICE: Network Intrusion Detection and Countermeasure Selection in Virtual Net...NICE: Network Intrusion Detection and Countermeasure Selection in Virtual Net...
NICE: Network Intrusion Detection and Countermeasure Selection in Virtual Net...Migrant Systems
 
original research papers
original research papersoriginal research papers
original research papersrikaseorika
 
SECURITY FOR DEVOPS DEPLOYMENT PROCESSES: DEFENSES, RISKS, RESEARCH DIRECTIONS
SECURITY FOR DEVOPS DEPLOYMENT PROCESSES: DEFENSES, RISKS, RESEARCH DIRECTIONSSECURITY FOR DEVOPS DEPLOYMENT PROCESSES: DEFENSES, RISKS, RESEARCH DIRECTIONS
SECURITY FOR DEVOPS DEPLOYMENT PROCESSES: DEFENSES, RISKS, RESEARCH DIRECTIONSijseajournal
 
Novel Advances in Measuring and Preventing Software Security Weakness: Contin...
Novel Advances in Measuring and Preventing Software Security Weakness: Contin...Novel Advances in Measuring and Preventing Software Security Weakness: Contin...
Novel Advances in Measuring and Preventing Software Security Weakness: Contin...theijes
 
IEEE Information forensic and security Title and Abstract 2016
IEEE Information forensic and security Title and Abstract 2016IEEE Information forensic and security Title and Abstract 2016
IEEE Information forensic and security Title and Abstract 2016tsysglobalsolutions
 
Machine learning techniques applied to detect cyber attacks on web applications
Machine learning techniques applied to detect cyber attacks on web applicationsMachine learning techniques applied to detect cyber attacks on web applications
Machine learning techniques applied to detect cyber attacks on web applicationsVenkat Projects
 
Machine learning techniques applied to detect cyber attacks on web applications
Machine learning techniques applied to detect cyber attacks on web applicationsMachine learning techniques applied to detect cyber attacks on web applications
Machine learning techniques applied to detect cyber attacks on web applicationsVenkat Projects
 
csmalware_malware
csmalware_malwarecsmalware_malware
csmalware_malwareJoshua Saxe
 
Secure intrusion detection and countermeasure selection in virtual system usi...
Secure intrusion detection and countermeasure selection in virtual system usi...Secure intrusion detection and countermeasure selection in virtual system usi...
Secure intrusion detection and countermeasure selection in virtual system usi...eSAT Publishing House
 
A Resiliency Framework For An Enterprise Cloud
A Resiliency Framework For An Enterprise CloudA Resiliency Framework For An Enterprise Cloud
A Resiliency Framework For An Enterprise CloudJeff Nelson
 

Similar to Resource Allocation for Antivirus Cloud Appliances (20)

A new approach for formal behavioral
A new approach for formal behavioralA new approach for formal behavioral
A new approach for formal behavioral
 
VIRTUAL MACHINES DETECTION METHODS USING IP TIMESTAMPS PATTERN CHARACTERISTIC
VIRTUAL MACHINES DETECTION METHODS USING IP TIMESTAMPS PATTERN CHARACTERISTICVIRTUAL MACHINES DETECTION METHODS USING IP TIMESTAMPS PATTERN CHARACTERISTIC
VIRTUAL MACHINES DETECTION METHODS USING IP TIMESTAMPS PATTERN CHARACTERISTIC
 
Verification of the protection services in antivirus systems by using nusmv m...
Verification of the protection services in antivirus systems by using nusmv m...Verification of the protection services in antivirus systems by using nusmv m...
Verification of the protection services in antivirus systems by using nusmv m...
 
IRJET- Zombie - Venomous File: Analysis using Legitimate Signature for Securi...
IRJET- Zombie - Venomous File: Analysis using Legitimate Signature for Securi...IRJET- Zombie - Venomous File: Analysis using Legitimate Signature for Securi...
IRJET- Zombie - Venomous File: Analysis using Legitimate Signature for Securi...
 
Fisher exact Boschloo and polynomial vector learning for malware detection
Fisher exact Boschloo and polynomial vector learning for malware detection Fisher exact Boschloo and polynomial vector learning for malware detection
Fisher exact Boschloo and polynomial vector learning for malware detection
 
20170412 om patri pres 153pdf
20170412 om patri pres 153pdf20170412 om patri pres 153pdf
20170412 om patri pres 153pdf
 
IRJET- Developing an Algorithm to Detect Malware in Cloud
IRJET- Developing an Algorithm to Detect Malware in CloudIRJET- Developing an Algorithm to Detect Malware in Cloud
IRJET- Developing an Algorithm to Detect Malware in Cloud
 
Cloud Intrusion and Autonomic Management in Autonomic Cloud Computing
Cloud Intrusion and Autonomic Management in Autonomic Cloud ComputingCloud Intrusion and Autonomic Management in Autonomic Cloud Computing
Cloud Intrusion and Autonomic Management in Autonomic Cloud Computing
 
Rational Unified Treatment for Web Application Vulnerability Assessment
Rational Unified Treatment for Web Application Vulnerability AssessmentRational Unified Treatment for Web Application Vulnerability Assessment
Rational Unified Treatment for Web Application Vulnerability Assessment
 
NICE: Network Intrusion Detection and Countermeasure Selection in Virtual Net...
NICE: Network Intrusion Detection and Countermeasure Selection in Virtual Net...NICE: Network Intrusion Detection and Countermeasure Selection in Virtual Net...
NICE: Network Intrusion Detection and Countermeasure Selection in Virtual Net...
 
original research papers
original research papersoriginal research papers
original research papers
 
SECURITY FOR DEVOPS DEPLOYMENT PROCESSES: DEFENSES, RISKS, RESEARCH DIRECTIONS
SECURITY FOR DEVOPS DEPLOYMENT PROCESSES: DEFENSES, RISKS, RESEARCH DIRECTIONSSECURITY FOR DEVOPS DEPLOYMENT PROCESSES: DEFENSES, RISKS, RESEARCH DIRECTIONS
SECURITY FOR DEVOPS DEPLOYMENT PROCESSES: DEFENSES, RISKS, RESEARCH DIRECTIONS
 
Seminar
SeminarSeminar
Seminar
 
Novel Advances in Measuring and Preventing Software Security Weakness: Contin...
Novel Advances in Measuring and Preventing Software Security Weakness: Contin...Novel Advances in Measuring and Preventing Software Security Weakness: Contin...
Novel Advances in Measuring and Preventing Software Security Weakness: Contin...
 
IEEE Information forensic and security Title and Abstract 2016
IEEE Information forensic and security Title and Abstract 2016IEEE Information forensic and security Title and Abstract 2016
IEEE Information forensic and security Title and Abstract 2016
 
Machine learning techniques applied to detect cyber attacks on web applications
Machine learning techniques applied to detect cyber attacks on web applicationsMachine learning techniques applied to detect cyber attacks on web applications
Machine learning techniques applied to detect cyber attacks on web applications
 
Machine learning techniques applied to detect cyber attacks on web applications
Machine learning techniques applied to detect cyber attacks on web applicationsMachine learning techniques applied to detect cyber attacks on web applications
Machine learning techniques applied to detect cyber attacks on web applications
 
csmalware_malware
csmalware_malwarecsmalware_malware
csmalware_malware
 
Secure intrusion detection and countermeasure selection in virtual system usi...
Secure intrusion detection and countermeasure selection in virtual system usi...Secure intrusion detection and countermeasure selection in virtual system usi...
Secure intrusion detection and countermeasure selection in virtual system usi...
 
A Resiliency Framework For An Enterprise Cloud
A Resiliency Framework For An Enterprise CloudA Resiliency Framework For An Enterprise Cloud
A Resiliency Framework For An Enterprise Cloud
 

More from IOSR Journals (20)

A011140104
A011140104A011140104
A011140104
 
M0111397100
M0111397100M0111397100
M0111397100
 
L011138596
L011138596L011138596
L011138596
 
K011138084
K011138084K011138084
K011138084
 
J011137479
J011137479J011137479
J011137479
 
I011136673
I011136673I011136673
I011136673
 
G011134454
G011134454G011134454
G011134454
 
H011135565
H011135565H011135565
H011135565
 
F011134043
F011134043F011134043
F011134043
 
E011133639
E011133639E011133639
E011133639
 
D011132635
D011132635D011132635
D011132635
 
C011131925
C011131925C011131925
C011131925
 
B011130918
B011130918B011130918
B011130918
 
A011130108
A011130108A011130108
A011130108
 
I011125160
I011125160I011125160
I011125160
 
H011124050
H011124050H011124050
H011124050
 
G011123539
G011123539G011123539
G011123539
 
F011123134
F011123134F011123134
F011123134
 
E011122530
E011122530E011122530
E011122530
 
D011121524
D011121524D011121524
D011121524
 

Recently uploaded

Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...drmkjayanthikannan
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxmaisarahman1
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.Kamal Acharya
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityMorshed Ahmed Rahath
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadhamedmustafa094
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdfKamal Acharya
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdfKamal Acharya
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayEpec Engineered Technologies
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxchumtiyababu
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VDineshKumar4165
 
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLEGEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLEselvakumar948
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdfKamal Acharya
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfJiananWang21
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTbhaskargani46
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwaitjaanualu31
 
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best ServiceTamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Servicemeghakumariji156
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptDineshKumar4165
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxMuhammadAsimMuhammad6
 

Recently uploaded (20)

Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal load
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdf
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptx
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLEGEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best ServiceTamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
 

Resource Allocation for Antivirus Cloud Appliances

  • 1. IOSR Journal of Computer Engineering (IOSR-JCE) e-ISSN: 2278-0661, p- ISSN: 2278-8727Volume 10, Issue 3 (Mar. - Apr. 2013), PP 33-42 www.iosrjournals.org www.iosrjournals.org 33 | Page Resource Allocation for Antivirus Cloud Appliances Ali Abdullah Hamzah, Sherif Khattab, Salwa S. El-Gamal Department of Computer Science, Faculty of Computers and Information Cairo University, Egypt Abstract: Malware detection or antivirus software has been recently provided as a service in the cloud. A cloud antivirus provider hosts a number of virtual machines each running the same or different antivirus engines on potentially different sets of workloads (files). From the provider's perspective, the problem of optimally allocating physical resources to these virtual machines is crucial to the efficiency of the infrastructure. This paper proposes a search-based optimization approach for solving the resource allocation problem in cloud-based antivirus deployments. An elaborate cost model of the file scanning process in antivirus programs is instrumental to the proposed approach. The general architecture is presented and discussed, and a preliminary experimental investigation into the antivirus cost model is described. The cost model depends on many factors, such as total file size, size of code segment, and count and type of embedded files within the executable. However, not a single parameter of these can be reliably used alone to predict file scanning time. Keywords: Cloud computing, virtualization, antivirus, pattern matching I. Introduction Cloud computing allows for the management and provisioning of resources (e.g., software, CPU, memory, I/O, network bandwidth, application, and information) as services provided over the internet on demand. Services are presented in three layers: SaaS (software as a service), such as Face book and YouTube, PaaS (platform as a service), such as Microsoft Azure and Google AppEngine, and IaaS (infrastructure as a service), such as Amazon EC2 and GoGrid [1]. Cloud computing is based on virtualization, which abstracts physical computer resources and allows users to create and run multiple virtual machines (VMs) on a single physical machine, whereby each virtual machine is allocated a share of the physical machine resources. The virtual machines can potentially run different operating system with different applications [2]. Antivirus (AV) software is one of the most important applications in information technology to prevent and remove malware infection. The effectiveness of traditional host-based AV is limited on the long term in detecting many modern threats for many reasons, such as the time window from the time a virus‟s signature is released to the time the signature is delivered to the AV running on a device, and the high resource requirement, which may make mobile device users opt for stopping their antivirus [3]. Figure 1: Cloud antivirus architecture. Providing antivirus as a service in the cloud, such as the CloudAV model [4], addresses the above- mentioned limitations. As shown in Fig.1, a cloud antivirus provider hosts one or more malware analysis engines and provides its service to remote clients over the internet. Files are sent from the clients to the cloud, get scanned, and the result is sent back to the client. The concept of a cloud antivirus is simple: instead of running complex analysis software on every end-host, each end-host runs a lightweight process. This lightweight process discovers potential threats to the system and sends them to a network-accessible service for analysis. This paper investigates the problem of resource allocation in a CloudAV-like setting. A cloud antivirus provider hosts a number of virtual machines, each running the same or different antivirus engines processing different workloads (files). Lightweight processes on end-hosts collect and upload suspect files to the
  • 2. Resource Allocation For Antivirus Cloud Appliances www.iosrjournals.org 34 | Page cloud for scanning. The performance of the cloud antivirus infrastructure is affected by the resource allocation to the virtual machines. Optimizing resource allocation would improve resource utilization. The contribution of this paper is two-fold: (1) a general search-based framework for solving the resource allocation problem in cloud antivirus setting is presented and (2) an instrumental part of the framework, namely the antivirus cost model, is investigated experimentally to model the file scanning time. The experimental results show that scanning time depends on many factors, such as total file size, size of code segment, and count and type of files embedded within the scanned executable. However, none of these parameters alone was found to reliably estimate the scanning time. The rest of this paper is organized as follows. Section II describes background on virtualization, antivirus software, and pattern matching algorithms. In Section III, the problem of resource allocation in cloud antivirus environment is presented. Section IV describes the proposed solution, namely the Automatic Cloud Antivirus Configurator (ACAC). In Section V, the cost model is experimentally investigated. Section VI discusses closely related research, and the paper is concluded by Section VII, which also briefly presents future work. II. Background His section presents a brief background on virtualization, the corner stone of cloud computing, and a more detailed background on the theoretical underpinnings of antivirus performance. A. Virtualization The idea of virtualization is to separate user‟s perception of software and hardware from the physical resources. Virtualization adds a layer of software between applications and physical resources used by these applications. This layer maps virtual resources perceived by applications to the real physical resources. In addition, it allows for multiple applications to share common physical resources [2]. One of the famous resource virtualization types is machine virtualization. Machine virtualization technology depends on software called the virtual machine monitor (VMM). Examples of VMM software include Xen, VMware, and Virtual box [5]. B. Pattern Matching Algorithms This subsection gives more detailed background on pattern matching algorithms, which are used in signature-based antivirus programs. In particular, we discuss the WO pattern matching algorithms that are used in ClamAV [6], the open-source antivirus program that is used as a case study in this work. For each algorithm, we describe how it operates and its asymptotic running time. AV software plays an important role in today‟s internet communication security. AV is used for scanning emails, files being transferred, and files on disk. The scanning speed of an AV program is important to optimize the speed of the whole scanning process. AV scanning speed relies on the pattern matching algorithm that is implemented in the AV software. Antivirus software uses WO main strategies for detecting viruses and other malware: signature-based and behavior-based detection. Signature-based detection is the traditional way of antivirus operation. It works by matching patterns stored in a database using pattern matching algorithms, such as Boyer Moore [7] and Aho-Corasick [8]. Behavior-based detectors monitor behavior of all programs and can detect unknown and new viruses. In addition to the run-time behavior, static characteristics can also be determined to reinforce the identification of malicious behavior. Algorithms used include support vector machines (SVM) [9] and decision tree [10]. Pattern matching algorithms have recently been applied to many applications, such as internet security, antivirus, search engines, and data retrieval. In pattern matching we have a pattern pat of length m, we have a string str of length n, where usually n > m, and we want to find the positions (in str) of all occurrences (if any) of pat in str [11]. The focus of this paper is on the use of pattern matching algorithms in antivirus (AV) applications. Among the various famous pattern matching algorithms in AV software (ClamAV as a case study) are the Boyer-Moore algorithm [7] and the Aho-Corasick algorithm [8], which are explained in more detail below. 1) Boyer-Moore algorithm: The general idea behind the Boyer-Moore (BM) algorithm well be presented [7]. BM was proposed for single-pattern matching. It works by sliding the pattern from left to right over the text and starting the comparison from right to left. BM employs three heuristics in the comparison as follows: (1) Right to left comparison: the comparison operation in BM algorithm starts from right-most character of the pattern with corresponding character in the text and second character of rightmost of pattern with corresponding character in the text and so on as shown in Fig. 2. (2) The bad character heuristic works in WO steps. First, when the comparison of the rightmost character in the pattern with the corresponding character in the text gives a mismatch and the mismatched character in the text does not appear in the pattern, and then the pattern is moved as a whole to the right. For
  • 3. Resource Allocation For Antivirus Cloud Appliances www.iosrjournals.org 35 | Page example, in Fig. 2(b), we can observe that the character F of the text has a mismatch with the rightmost character T of the pattern. In addition, F does not occur in the pattern, and thus, the pattern is moved as a whole to the first character after F (the character A). Second, when the comparison gives a mismatch and the mismatching character in the text matches a character elsewhere in the pattern, the pattern is moved to the right until the two matching characters are aligned. In Fig. 2 (c), we can observe that the character (-) of the text has a mismatch with the character T of the pattern. In addition, (-) occurs in the pattern, and thus, the pattern is moved to the right until the pattern character aligns to the same character of text (e.g., the character (-) of pattern aligns to the character (-) of text) (3) In the good suffix heuristic, after a mismatch, when a suffix of more than one character in the pattern matches the corresponding substring of text and is found to occur in another position in the pattern, then the algorithm slides the pattern to the right until the matching substring in text aligns to the other occurrence of the pattern suffix. For example, in Fig. 3(a), we can observe that the substring of the two rightmost characters (AT) of the pattern match the corresponding characters of the text, but the third character from right is a mismatch (H in pattern and „-„ in text). In the same time, we observe that the substring AT is found in the first two positions of pattern. Thus, the pattern is slid until its substring AT is aligned to the substring AT in the text (Fig. 3(b)). Figure 2: The Boyer-Moore algorithm (bad character heuristic). Figure 3: The Boyer-Moore algorithm (good suffix heuristic).
  • 4. Resource Allocation For Antivirus Cloud Appliances www.iosrjournals.org 36 | Page 2) Aho-Corasick algorithm (AC) [8]: For multi-pattern matching, the AC algorithm constructs a finite state automaton that accepts all strings in the pattern. The automaton is built in the preprocessing stage. The AC algorithm operates in O(n) running time. It includes the following functions: (a) The Goto Function The automaton starts in the start state (state 0). When the first input symbol is accepted, the goto function g () is applied on the pair (state 0, input symbol) and the machine transitions into the next state. In other words, the next state becomes the current state and the next input symbol the current symbol. If the input symbol is not accepted, then a fail event happens. For example, g(7,d)= fail because no pattern contains substring “hisd” (Fig. 4). Figure 4: The goto function of the Aho-Corasick algorithm. (b) The failure function Failure function f( ) is called when g(state, input symbol) = fail, that is, the input symbol is not expected in the current state. In other words, if the string resulting from the concatenation of the labels of the transition arcs from the starting state to the current state plus the input symbol is not a prefix of any pattern, the machine makes a transition to failure by calling the failure function, and it repeats the above-mentioned operation starting from the failure state. In Figure 5, in state 7, the machine returns to state 3 when it receives an unexpected symbol. s 1 2 3 4 5 6 7 8 9 F(s) 0 0 0 1 2 0 3 0 3 Figure 5: The failure function of the Aho-Corasick algorithm. (c) Output function The output function O ( ) maps each state into a set of patterns (could be empty), which contains a pattern string p if p is a suffix of any pattern in the state machine. As an example, we have O (5) = {she, he}. Note that the symbol (e) is a suffix of the patterns she and he (Fig. 6). s output(s) 2 {he} 5 {she,he} 7 {his} 9 {hers} Figure 6: The output function of the Aho-Corasick algorithm. III. Resource Allocation Problem This section describes the problem of allocating physical resources to virtual machines running antivirus software in a cloud computing setting. Virtualization is a common enabling technology in cloud computing. In cloud computing, the virtualization technology is used to share resources among virtual machines that run on physical servers. Resource allocation is one of the problems faced in order to optimize performance of the applications running inside the virtual machines. These applications are called cloud appliances. Deciding on how many physical resources to allocate to each virtual machine not only affects the performance of cloud appliances but also the efficiency of the underlying physical infrastructure. Application performance is affected by the allocation of physical resources to the VMs. Different applications demand different resource allocations, and moreover, different workloads within the same application pose different resource requirements. For example, The performance of some applications and
  • 5. Resource Allocation For Antivirus Cloud Appliances www.iosrjournals.org 37 | Page workloads is optimized by allocating more CPU to their appliances, whereas other applications and workloads benefit more from higher memory or I/O allocation. This heterogeneity motivates the need to control and configure resource allocation to the virtual machines. Fig.7. Resource allocation for cloud antivirus appliances As shown in Fig.7, N VMs run on a physical machine. Each VM runs an antivirus program in a cloud antivirus. ClamAV is used as an example of an antivirus [5]. The shared physical resource (e.g., CPU and memory) is represented by R. Each VM has a workload, which is a set of files to scan. These files can be clean or virus- infected. Wi represents the workload on each VM, and rip represents the CPU allocation to Vim. This work focuses on the allocation of the CPU resource over virtual machine. The CPU allocation to the VMs is represented as a vector [ri]. For example, for three VMs, the first taking 50% of CPU, the second 30%, and the third 20%, the allocation is [0.5, 0.3, 0.2]. A resource allocation is better than another if it yields less cost. The cost in this work is measured as the time needed to scan the input files assigned to a VM. The total cost is simply the total cost over all VMs. Estimating the cost of scanning a file is instrumental to reaching an optimal or near-optimal allocation. IV. Automatic Cloud Antivirus Configurator (ACAC) This section describes our proposed solution to the resource allocation problem presented in the previous section. The proposed solution is based on a search algorithm that enumerates possible resource allocations and evaluates them based on a cost model. The cost model provides the search algorithm with an estimate of the CPU time needed to scan the workload files on a particular VM with a given CPU allocation. The parameters of the cost model may need to be adjusted in order to reflect the virtual environment under the provided CPU allocation. This adjusting process is called parameter calibration. Fig. 8: The Automatic Cloud Antivirus Configurator (ACAC). Fig.8 depicts the architecture of the proposed solution, namely the Automatic Cloud Antivirus Configurator (ACAC). ACAC is divided into three modules: the configuration enumerator, which includes the
  • 6. Resource Allocation For Antivirus Cloud Appliances www.iosrjournals.org 38 | Page search algorithm, the parameter calibration process, and the AV cost model, which estimates the cost scanning a set of files under a given CPU allocation. This architecture is inspired by the Virtual Design Advisor [12], which has been proposed to solve the resource allocation problem in a different context. Configuration enumerator (search algorithm): The configuration enumerator module is used to enumerate resource allocations for the VMs. It implements a search algorithm, such as greedy search and dynamic programming, for enumerating candidate resource allocations. An example greedy algorithm [12] initially assigns a 1/N share of each resource to each of the N VMs. It then proceeds iteratively. In each iteration, it considers shifting a share (say, 5%) of some resource from one VM to another. The algorithm considers all such resource reallocation, and if it finds reallocation of resources that is beneficial according to the cost estimator, then it makes the most beneficial reallocation and iterates again. Basically, in each iteration, a small fraction of a resource is deallocated from VM that will get hurt the least and allocated to the VM that will benefit the most. If no beneficial reallocations are found, the algorithm terminates, reporting the current resource allocation as the recommended allocation. Calibration process: Calibration is a process used for mapping each candidate resource allocation to a set of parameter values in the antivirus cost model. In the cost model, a set of parameterized equations are used to compute a cost estimate. Some of the parameters may need to be adjusted according to the resource allocation to the virtual machine. The calibration process adjusts these parameters before applying the equations. AV performance model: ClamAV [6] is an open-source antivirus toolkit for UNIX. The main purpose of it is e-mail scanning on email gateways. It is the most widely used open-source antivirus and is based on pattern matching algorithms (e.g., signature-based). ClamAV uses signature-based strategy in the scanning process, whereby it uses two algorithms, namely multi-pattern Boyer-Moor and Aho-Corasick. Theoretically, the running time for the single-pattern Boyer-Moore algorithm is O(n/m) and for Aho-Corasick is O (n), where n is the text size and m the pattern size. In practice, however, there is more than one parameter that effect the cost, such as the number and type of file types embedded within a file and the number of signatures targeted for each file type. Fig. 9 shows some of the inputs to the cost model, which is an instrumental part of the proposed architecture. The next section experimentally digs deeper into understanding the cost model of an antivirus program. File Size Code Size Number of patterns Cost Model Time Figure 9: The antivirus performance model. V. Antivirus Cost Model This section presents the results of a number of experiments that explore the effect of some of the parameters that affect the performance of an antivirus. A. Experiment setup We used ClamAV version 0.97.3 installed on a machine with Core 2 Duo™ T5870 2.0 Processor, 2 GB Memory and Centos 5.5 operating system. We used the Xen platform as the virtualization environment. Xen is an open source virtualization software, and it is used in its par-virtualization mode [13]. The experiment used two types of workload: a set of clean files with file size between 1 and 25 MB and a set of known malware with size between 1 and 10 MB. Both the clean and infected files were Windows executables. The clean files were
  • 7. Resource Allocation For Antivirus Cloud Appliances www.iosrjournals.org 39 | Page grouped into five groups based on file size as follows: 1 MB to 5MB, 5MB to 10MB to15MB, 15MB to 20 MB, and 20MB to 25MB. Similarly, the malware files were grouped into three groups: 0 MB to 1MB, 1MB to 5MB, and 5 MB to 10 MB. Each file was scanned ten times with averages reported. To automate scanning, the following simple script was used: #! /bin/csh foreach file ( `ls | xargs) echo –n > / logs/$file.exe.log foreach is (1 2 3 4 5 6 7 8 9 10) clamscan $file.exe > /logs/$file.exe.log end end B. Effect of file size The first experiment examined the effect of total file size on scanning time. Inspired by the linear theoretical cost model, a linear regression analysis was conducted between file size and scan time. The linear regression yields an equation: y= A*x +B (1) where A is the slope of the line, and B is the y-intercept. Fig. 10 shows the linear regression analysis at a CPU allocation of 100%, and Table 1 shows the result of the regression analysis for the set of clean files at CPU allocation of 100%, 70%, 50%, and 30%. The table shows the values of the linear equation parameters (y =A*x +B) at each CPU allocation. It is important to note that some files with larger size took less time than files that are smaller in size. Table 1: Effect of file size on scan time at different CPU allocations CPU allocation A B 100% 0.224 3.796 70% 0.692 11.009 50% 1.425 20.191 30% 2.463 38.021 Figure 10: Linear regression analysis of scan time vs. file size for clean files at 100% CPU allocation. Fig. 11 shows the results of the linear regression analysis for the set of malwares at a CPU allocation 100%. 0 5 10 15 20 0 5 10 15 20 ScanTime(second) File Size in (MB)
  • 8. Resource Allocation For Antivirus Cloud Appliances www.iosrjournals.org 40 | Page Figure 11: Linear regression analysis of scan time vs. file size for malware at 100% CPU allocation. C. Effect of code size Through observation from the previous experiment, the scan time for a file did not necessarily depend on the file size. In the second experiment, only the size of the code segment of the file is used as an indicator of the file‟s scan time. To extract the code size, the PE explorer software [14] was used. Fig. 12 depicts the linear regression model for scan time vs. code size. It can also be noted that the code size is not a reliable indicator of scan time if used alone. Some files with smaller code size took longer to scan than files with smaller code size. Figure 12: Linear regression analysis of scan time vs. code size for clean files. D. Effect of number of embedded types The third experiment investigated the effect of the number of file types embedded within a Windows executable. Some executables contain embedded files within, such as archives and compressed files, documents, mail formats, PDF files, and others. The count and type of the embedded files has an effect on the scan time, because some of these files are decompressed or extracted and scanned, and each type invokes a potentially different set of signatures to check against. Types such as HTML, ARCHIVE, PE, OLE2, MAIL, ELF, and ASCII affect the scan performance because each type has a specific number of patterns in the ClamAV database. However, as shown in Fig. 13 the number of embedded types alone is not a reliable indicator. 0 2 4 6 8 10 0 2 4 6 8 10 12 ScanTime(second) Malware Size in (MB) 0 20 40 60 80 100 120 140 160 0 20 40 60 80 100 120 140 ScanTime(Second) Size of Code in (MB)
  • 9. Resource Allocation For Antivirus Cloud Appliances www.iosrjournals.org 41 | Page Figure 13: Linear regression analysis of scan time vs. number of embedded type for clean files. To neutralize the effect of embedded files, ClamAV was run while removing the processing of all embedded types. Fig. 14 shows that the scan time is reliably linearly dependent on the scanned size, which matches the theoretical performance. Figure 14: Linear regression analysis of scan time vs. scanned size after removing all embedded file processing VI. Related Work Performance optimization at the IaaS cloud layer has been the subject of active research recently. For example, the virtualization design problem was addressed in the database community [12], [15]. The authors addressed the problem of resource allocation over virtual machines running database management systems. The virtual machine configurations determine how the shared physical resources will be allocated to the different database instances. The implemented solution, namely the virtual design advisor, indirectly uses information about the anticipated workloads of each of the database via a cost model, the query optimizer, to estimate the effect of a particular resource allocation on workload performance. Traditional antivirus software has to deal with new threats and an increasing surface of vulnerabilities on the long run. Hence, an antivirus must be scalable and flexible for new deployments. Particularly in cloud computing, malware detection is provided as a service in the cloud. This setting is particularly suitable for mobile devices through moving the antivirus functionality off-device to the network and employing multiple virtualization malware detection engines [4]. In CloudAV [4], a lightweight process at the client sends files to a server in the cloud for scanning, allowing for integrated antivirus software, behavioral simulation, and other deep-analysis engines from multiple vendors providing better detection of malware [16]. A novel anti-malware system has been proposed and called SplitScreen. SplitScreen performs an additional screening step prior to the time- and bandwidth consuming process of downloading all virus signatures to a client. Non-infected files are processed faster, and possibly infected files are scanned only against a small set of potential signatures [17]. A similarity between our approach and SplitScreen is the preprocessing of files to make the subsequent scanning process more efficient. However, the preprocessing setup is done for different specific objectives. In our work, preprocessing gives an estimate of the scan time to 0 10 20 30 40 50 0 1 2 3 4 5 ScanTime(second) Numberof types 0 5 10 15 20 25 0 5 10 15 20 25 30 ScanTime(second) Real size in (MB)
  • 10. Resource Allocation For Antivirus Cloud Appliances www.iosrjournals.org 42 | Page aid allocation problem, whereas in SplitScreen, processing aids to download only the necessary signatures to scan a particular file or set of files. VII. Conclusions and Future Work A cost model of antivirus programs is instrumental to the approach adopted in this paper. An accurate cost model would guide the search algorithm to optimal or near-optimal resource allocation. Our preliminary experiments showed that the scan time (i.e., the time taken by an antivirus program to scan a file) depends on the total file size, the size of the code segment, and the count and types of embedded files inside the executable. However, not a single parameter of these can be reliably used alone to estimate the scan time. Hence, in the future, a machine-learning approach taking all these parameters as features well be investigated. References [1] R.Qi Zhang, Lu Cheng, “Cloud computing: state of the art and research challenges,” in J. Internet and Applications. The Brazilian Computer Society 2010, pp. 7-18. [2] Virtualization [online]. Available at http://www.vmware.com/virtualization/. Last checked on April 14, 2013. [3] S. K. Shah and N. I. R., “Exploring Reliability of cloud antivirus solution,” in New Jersey Institute of Technology. [4] J. Oberheide, E. Cooke, and F. Jahanian, “CloudAV: N-version antivirus in the network cloud,” in Proceedings of the 17th conference on Security Symposium SS‟08, Berkely, CA, USA: USENIX Association, 2008, pp. 91-106. [5] R. Rose, “Survey of system virtualization techniques,” Tech. Rep. 2004. [6] Clam antivirus [online]. Available at http://www.clamav.net. Last checked on April 14, 2013. [7] R. S. Boyer and J. S. Moore, “A fast string searching algorithm,” Commun. ACM, vol. 20, no. 10, pp. 762-772, Oct. 1977. [8] A. V. Aho and M. J. Corasick, “Efficient string matching: an aid to bibliographic search,” Commun. ACM, vol. 18, no. 6, pp.333- 340, Jun. 1975. [9] Bo-yun Zhang, Jian-ping Yin, Jin-bo Hao, Ding-xing Zhang, and Shu-lin Wang, “Using support vector machine to detect unknown computer viruses,” International Journal of Computational Intelligence Research., vol. 2, no. 1, pp. 100-104, 2006. [10] D. J. Hand, P. Smyth, and H. Mannila, “Principles of Data mining.” Cambridge, MA, USA: MIT Press, 2001. [11] P. S. WHEELER, “Techniques for improving the performance of signature-based network intrusion detection system,” Master‟s thesis, Wake Forest University, CALIFORNIA, 2003. [12] A. Soror, U. F. Minhas A. Aboulnaga, K Salem, P. Kokosielis, and S. Kamath, “Automatic virtual Machine configuration for database workload,” In proc. ACM SIGMOD International Conference On Management of Data (SIGMOD’08), Jun.2008, pp. 953-966. [13] Introduction to the Xen virtual machine monitor [online]. Available at http://www.linuxjournal.com/article/8540?page=0,1. Last accessed on April 14, 2013. [14] View, Edit, and Reverse Engineer EXE and DLL Files [online]. Available at: http://www.heaventools.com/overview.htm. Last accessed on April 14, 2013. [15 ] A. Soror, U. F. Minhas A. Aboulnaga, K Salem, P. Kokosielis, and S. Kamath,” Deploying database Appliances in the cloud,” IEEE Data Eng. Bull., Vol. 32, no. 1, pp. 13-20, 2009. [16] J. Oberheide, E. Cooke, and F. Jahanian, “Rethinking antivirus: executable analysis in the network cloud,” in Proceedings of the 2nd USENIX Workshop, USA, 2007. [17] S. K. Cha, I. Moraru, J. Jang, J. Truelove, D. Brumley, and D. G. Andersen, Splitscreen: Enabling efficient, distributed malware detection,” in Proceedings of the 7th USENIX conference on networked systems. USENIX Association, 2010, pp. 187-200.