Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
On the infeasibility of modeling polymorphic shellcode
Song Y., Locasto M., Stavrou A., Keromytis A., Stolfo S. Machine Learning81 (2):179-205,2010.Type:Article
Date Reviewed: Oct 11 2011

With smarter intrusion algorithms of the polymorphic kind, the protection provided by intrusion detection systems often proves to be ineffective. This paper addresses some malicious morphing strategies, the difficulties in confronting them, and possible countermeasures that can be effective.

Buffer overflows are used to inject malicious code in shellcode polymorphic attacks. The injected code has three components: the NOP sled, the payload or actual shellcode, and the return address zone. “An existing address value on the stack [is overwritten] with values contained within the return zone [... causing] the control flow to jump back into the input string” of the attacker.

Long sequences of NOP and return addresses help in the detection of normal shellcodes, so obfuscation is used to prevent detection. Two obfuscation techniques are common: rewriting codes automatically so that instances retain the semantics but are different in syntax, and encrypting the shellcode with a randomly chosen key. A “semantically prepended” decoding routine decrypts the code before the payload is triggered.

Smart polymorphism makes shellcode attacks very dangerous. This paper quantitatively analyzes “the strengths and limitations of shellcode polymorphism [... for both] encryption-based evasion methods and targeted ‘blending’ attacks.” It provides interesting metrics to measure the effectiveness of polymorphic engines, gives insight into their design, and suggests how to defend against them. This work has been positively referred to in other recent research [1,2].

Reviewer:  Partha Pratim Das Review #: CR139493 (1202-0178)
1) Laskov, P.; Kloft, M. A framework for quantitative security analysis of machine learning. In Proc. of the 2nd ACM Workshop on Security and Artificial Intelligence ACM, 2009, 1–4.
2) Mason, J.; Small, S.; Monrose, F.; MacManus, G. English shellcode. In Proc. of the 16th ACM Conference on Computer and Communications Security ACM, 2009, 524–533.
Bookmark and Share
 
Polymorphism (D.3.3 ... )
 
 
Security (K.4.4 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Polymorphism": Date
Formalization of generics for the .NET common language runtime
Yu D., Kennedy A., Syme D. ACM SIGPLAN Notices 39(1): 39-51, 2004. Type: Article
Mar 10 2004
Polymorphic typed defunctionalization
Pottier F., Gauthier N. ACM SIGPLAN Notices 39(1): 89-98, 2004. Type: Article
Mar 11 2004
Parametric polymorphism for XML
Hosoya H., Frisch A., Castagna G.  Principles of programming languages (Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Long Beach, California, USA, Jan 12-14, 2005)50-62, 2005. Type: Proceedings
Apr 7 2005
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy