Thursday, 30 August 2012

why signature based anti-virus software is dying

You hear these stats all the time, signature based anti-virus software needs to be 100% updated to be 80% effective and no that does not cover zero day exploits, the figure drops to as low as 10-20% detection with zero day malware.
Having been in the security industry for a few years now, I have seen host security evolve from simple pattern matching signatures to complex behavioural detection (remember Cisco Security Agent?). And I am a firm believer of behavioural malware detection.
What shocked me though was a recent video I saw on the usenix conference site which details progress in advanced malware obfuscation and how the virus of the future will avoid detection from AV software.
The talk is a quick 15 minute eye opener on where malware is headed. At a very simple level, the author talks about logic which dynamically creates malware by simply stictching together code snippets from existing benign software programs on your computer. So the very programs that you and your AV trust like file explorers, document programs, spreadsheet handlers, etc. are a treasure trove of simple code that can be harnessed right on your computer to create a piece of malware to infect you then. Very interesting and shocking.
With the whole 'bring your own device to work' trend, organisations are starting to lose control of their endpoint security and with such advances in malware obfuscation, enforcing a piece of AV software may not be enough anymore. There is still a whole lot you can do off the network with intelligent network access control technologies and netflow based anomaly detection, however one can only hope there are some serious advances made in the endpoint security industry to battle the new wave of intelligent malware.

The video referenced above is a must watch and can be found here Frankenstein: Stitching Malware from Benign Binaries 
The detailed paper is here and slides here. Here is a little more insight on the paper
"This paper proposes a new self-camouflaging malware propagation system, Frankenstein, that overcomes shortcomings in the current generation of metamorphic malware. Specifically, although mutants produced by current state-of-theart metamorphic engines are diverse, they still contain many characteristic binary features that reliably distinguish them from benign software.Frankenstein forgoes the concept of a metamorphic engine and instead creates mutants by stitching together instructions from non-malicious programs that have been classified as benign by local defenses. This makes it more difficult for featurebased malware detectors to reliably use those byte sequences as a signature to detect the malware. The instruction sequence harvesting process leverages recent advances in gadget discovery for return-oriented programming. Preliminary tests show that mining just a few local programs is sufficient to provide enough gadgets to implement arbitrary functionality."


Tuesday, 26 June 2012

Meeting PCI DSS Requirement 6.6 in Virtualized Environments

Cisco and Imperva recently made an announcement to running the Imperva SecureSphere WAF on Cisco's Nexus 1010 Virtual Services Appliance.

More and more organizations are starting to virtualize their web applications and/or host them in cloud infrastructures due to operational benefits. This further increases the complexity of meeting the PCI DSS requirement 6.6 

For the uninitiated, compliance with PCI DSS (payment card industry data security standard) is required for anyone involved actively or passively with credit card transactions. Requirement 6.6 specifically deals with web application security and is related to applications hosted on web servers. It allows for two options. The first being application code reviews to ensure web applications and interfaces are securely coded. The second option allows for inserting a web application firewall (WAF) to protect the web services. As it is impossible for most organizations to ensure all their code is 100% secure, most deployments opt for a WAF in conjunction with regular automated/manual code reviews.

A WAF although a firewall is generally a very advanced piece of software capable of understanding how a hosted web application behaves and then protecting from any insecure behaviors. Generally this means protecting against atleast the top 10 vulnerabilities in web applications as tracked by OWASP (Open Web Application Security Project), the most exploited ones being SQL Injection, Cross-Site Scripting (XSS) and Cross-Site Request Forgery (CSRF).

Running a WAF in virtualized environments is complicated, as a virtual instance may consume precious resources which could instead be used for running virtual workloads. Also as a core principle of security, separation of duties is generally hampered when a WAF is loaded as a virtual machine and control handed over to the virtual servers team. This is where the Cisco Imperva announcement starts to make sense as it addresses these very issues.

The Cisco Nexus 1010-X is a dedicated platform for hosting virtual service nodes, like the Cisco virtual switch  Nexus 1000V virtual supervisor module (VSM), virtual firewalls (Cisco VSG or ASA1000v), and the virtual network analysis module (NAM). By moving these above services and now the WAF from the application server to the virtual services appliance, the virtual solution will provide separation of duties between the security administrator and server administrators, while offloading security processing from application servers to a dedicated appliance.

You can read more about this announcement on the Imperva website here  and the Cisco website here

Stay Secure!