Security systems are often designed in response to specific needs using a range of techniques (including cryptography) in order to achieve the stated security requirements. Using systematic approaches in design and evaluation of security of a system provides higher assurance about the performance of that system. Malicious software aim at subverting security of the systems and gaining unauthorized privileges. Detection of malicious software and protection against them is particularly challenging due to the complexity of today’s software systems.