Detection and Prevention of Buffer Overflow Exploit Cai Jun Anti-Virus Section Manager R&D Department Beijing Rising Tech. Corp. LTD.

Slides:



Advertisements
Similar presentations
Defenses. Preventing hijacking attacks 1. Fix bugs: – Audit software Automated tools: Coverity, Prefast/Prefix. – Rewrite software in a type safe languange.
Advertisements

Code-Red : a case study on the spread and victims of an Internet worm David Moore, Colleen Shannon, Jeffery Brown Jonghyun Kim.
Computer Security: Principles and Practice EECS710: Information Security Professor Hossein Saiedian Fall 2014 Chapter 10: Buffer Overflow.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 11 – Buffer Overflow.
Lecture 16 Buffer Overflow modified from slides of Lawrie Brown.
5/1/2015 5:57:24 PM 5864_ER_WHITE.1 Evaluating Modern Address Space Integrity Protections within the Common Criteria Ashley Fox CSC Australia.
Day anti-virus anti-virus 1 detecting a malicious file malware, detection, hiding, removing.
Part III Counter measures The best defense is proper bounds checking but there are many C/C++ programmers and some are bound to forget  Are there any.
Computer Security Fundamentals by Chuck Easttom Chapter 4 Denial of Service Attacks.
Introduction to Operating Systems CS-2301 B-term Introduction to Operating Systems CS-2301, System Programming for Non-majors (Slides include materials.
Software Security Threats Threats have been an issue since computers began to be used widely by the general public.
Information Networking Security and Assurance Lab National Chung Cheng University 1 A Real World Attack: wu-ftp.
Information Networking Security and Assurance Lab National Chung Cheng University 2004/03/031 A Real World Attack: wu-ftp Cao er kai ( 曹爾凱 )
Buffer Overflow sailaja yagnavajhala sailaja yagnavajhala.
Computer Security and Penetration Testing
Small Business Security By Donatas Sumyla. Content Introduction Tools Symantec Corp. Company Overview Symantec.com Microsoft Company Overview Small Business.
Guide to Operating System Security Chapter 2 Viruses, Worms, and Malicious Software.
Efficient Instruction Set Randomization Using Software Dynamic Translation Michael Crane Wei Hu.
Buffer Overflow Attacks. Memory plays a key part in many computer system functions. It’s a critical component to many internal operations. From mother.
Desktop Security: Worms and Viruses Brian Arkills, C&C NDC-Sysmgt.
2851A_C01. Microsoft Windows XP Service Pack 2 Security Technologies Bruce Cowper IT Pro Advisor Microsoft Canada.
Security in the industry H/W & S/W What is AMD’s ”enhanced virus protection” all about? What’s coming next? Presented by: Micha Moffie.
Fundamentals of Networking Discovery 1, Chapter 2 Operating Systems.
Exploits Against Software and How To Avoid Them Nicolas T. Courtois - University College of London.
Address Space Layout Permutation
Buffer Overflow Defenses. ©2002, Jedidiah R. Crandall, Susan L. Gerhart, Jan G. Hogle. Buffer Overflow Defenses Author:
Networking Security Chapter 8 powered by dj. Chapter Objectives  Explain various security threats  Monitor security in Windows Vista  Explain basic.
IDS Intrusion Detection Systems CERT definition: A combination of hardware and software that monitors and collects system and network information and analyzes.
Survey “Intrusion Detection: Systems and Models” “A Stateful Intrusion Detection System for World-Wide Web Servers”
Raven Services Update December 2003 David Wallis Senior Systems Consultant Raven Computers Ltd.
Computer Security and Penetration Testing
OS Hardening Justin Whitehead Francisco Robles. ECE Internetwork Security OS Hardening Installing kernel/software patches and configuring a system.
An Introduction to Internet Explorer DLL Vulnerability and Damage Analysis Bo Sun, Dawei Su {sun,
Instructor Notes GPU debugging is still immature, but being improved daily. You should definitely check to see the latest options available before giving.
A virus is software that spreads from program to program, or from disk to disk, and uses each infected program or disk to make copies of itself. Basically.
Introduction: Exploiting Linux. Basic Concepts Vulnerability A flaw in a system that allows an attacker to do something the designer did not intend,
Buffer Overflow Defenses. ©2002, Jedidiah R. Crandall, Susan L. Gerhart, Jan G. Hogle. Buffer Overflow Defenses Author:
Using Memory Management to Detect and Extract Illegitimate Code for Malware Analysis Carsten Willems 1, Thorsten Holz 1, Felix Freiling 2 1 Ruhr-University.
Security flaws in Windows XP due to Kernel Complexity Presented by: Zubin Lalani Daniel Beech Professor : Mike Burmester.
Buffer Overflow Attack-proofing by Transforming Code Binary Gopal Gupta Parag Doshi, R. Reghuramalingam The University of Texas at Dallas 11/15/2004.
Buffer Overflow Proofing of Code Binaries By Ramya Reguramalingam Graduate Student, Computer Science Advisor: Dr. Gopal Gupta.
Buffer Overflow Group 7Group 8 Nathaniel CrowellDerek Edwards Punna ChalasaniAxel Abellard Steven Studniarz.
Buffer Overflow Attack Proofing of Code Binary Gopal Gupta, Parag Doshi, R. Reghuramalingam, Doug Harris The University of Texas at Dallas.
Lecture 9: Buffer Ovefflows and ROP EEN 312: Processors: Hardware, Software, and Interfacing Department of Electrical and Computer Engineering Spring 2014,
A Tool for Pro-active Defense Against the Buffer Overrun Attack D. Bruschi, E. Rosti, R. Banfi Presented By: Warshavsky Alex.
14.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts with Java – 8 th Edition Protection.
Privilege Escalation Two case studies. Privilege Escalation To better understand how privilege escalation can work, we will look at two relatively recent.
A Survey on Runtime Smashed Stack Detection 坂井研究室 M 豊島隆志.
Buffer Overflows Taught by Scott Coté.-. _ _.-. / \.-. ((___)).-. / \ /.ooM \ / \.-. [ x x ].-. / \ /.ooM \ -/ \ /-----\-----/---\--\ /--/---\-----/-----\ / \-
Group 9. Exploiting Software The exploitation of software is one of the main ways that a users computer can be broken into. It involves exploiting the.
Security Attacks Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Slides by Kent Seamons and Tim van der Horst Last Updated: Nov 11, 2011.
Lecture 5 Rootkits Hoglund/Butler (Chapters 1-3).
Buffer Overflows: Attacks and Defenses for the Vulnerability of the Decade Crispin Cowan SANS 2000.
IDS Intrusion Detection Systems CERT definition: A combination of hardware and software that monitors and collects system and network information and analyzes.
By Kyle Bickel.  Securing a host computer is making sure that your computer is secure when it’s connected to the internet  This be done by several protective.
CS703 - Advanced Operating Systems By Mr. Farhan Zaidi.
Securing a Host Computer BY STEPHEN GOSNER. Definition of a Host  Host  In networking, a host is any device that has an IP address.  Hosts include.
@Yuan Xue Worm Attack Yuan Xue Fall 2012.
HIPS. Host-Based Intrusion Prevention Systems  One of the major benefits to HIPS technology is the ability to identify and stop known and unknown attacks,
Secure Programming Dr. X
Buffer Overflow Defenses
Sabrina Wilkes-Morris CSCE 548 Student Presentation
Buffer Overflow Defenses
Secure Programming Dr. X
5.0 : Windows Operating System
Rootkit A rootkit is a set of tools which take the ability to access a computer or computer network at administrator level. Generally, hackers install.
CS 465 Buffer Overflow Slides by Kent Seamons and Tim van der Horst
Buffer Overflow Defenses
Operating System Introduction.
Presentation transcript:

Detection and Prevention of Buffer Overflow Exploit Cai Jun Anti-Virus Section Manager R&D Department Beijing Rising Tech. Corp. LTD.

Review of Buffer Overflow Exploit Time Virus Name Financial Loss 1989 Morris Worm $96,000, CodeRed (I/II) $2,600,000, SQL Slammer $1,200,000, Worm.Blaster$1,200,000, Worm.Sasser$500,000,000 ………

What is Buffer Overflow Exploit Definition of a Buffer Definition of a Buffer How Buffers Are Exploited How Buffers Are Exploited How to Exceed Program Space How to Exceed Program Space Overflow the Stack Overflow the Stack What Follows a Buffer Overflow What Follows a Buffer Overflow

An Example of Buffer Overflow

How to Detect and Prevent Buffer Overflow Exploit Static Detection Static Detection Compile Time Detection Compile Time Detection Network-based Detection Network-based Detection Host-based Detection Host-based Detection

Static Code Analysis (Part I) How it works? How it works? Source code level analysis

Static Code Analysis (Part II) Advantages Advantages Help to improve an application Disadvantages Disadvantages –Program analysis is inadequate –Modification and recompiling of source code are needed

Compile Time Detection (Part I) How it works? How it works? Stack-smashing protection

Compile Time Detection (Part II) Advantages Advantages Nearly 100% protection of “ simple function calls ” Disadvantages Disadvantages –Recompiling is needed –No sane way to protect “ complex function calls ”

Network based Detection (Part I) How it works? How it works? Analyze network data for attack code

Network-based Detection (Part II) Advantages Advantages Detect exploit code by rule Disadvantages Disadvantages Either high number of false positive alert or low number of true positive alert

Host-based Detection (Part I) How it works? How it works? Executable space protection –Hardware solution (CPU) –Software solution

NX Technology What is NX? What is NX? NX stands for ‘ No Execute ’ CPUs which support NX CPUs which support NX Sun's Sparc, Transmeta's Efficeon, newer 64-bit x86 processors: AMD64, IA-64, etc. OSs implement NX OSs implement NX Windows XP SP2, Windows Longhorn Linux with NX patch

Software Solution From Rising Tech. (Part I) Solution 1: TDI driver (only for Windows) How it works? How it works? use TDI driver to detect known buffer overflow exploit

Software Solution From Rising Tech. (Part II) Solution 1:TDI driver Advantages Advantages Detect viruses which exploit known vulnerabilities Disadvantages Disadvantages Fail to protect unknown vulnerabilities

Software Solution From Rising Tech. (Part III) Solution 2: StackChecker (Only for Windows) How it works? How it works? Install kernel driver to inspect system calls and detect invalid user calls from stack or heap

Software Solution From Rising Tech. (Part IV)

Solution 2: StackChecker Advantages Advantages Detect viruses which exploit buffer overflow Disadvantages Disadvantages Victim program will eventually crash despite of the warning

Summary (Part I) If you are a programmer Check your source code manually Check your source code manually Use aid tools to find hidden bugs Use aid tools to find hidden bugs Compile with StackGuard or other tools to avoid buffer overflow Compile with StackGuard or other tools to avoid buffer overflow

Summary (Part II) If you are a network administrator Apply NIDS product Apply NIDS product Update it promptly Update it promptly If you are a user Apply latest updates of your operate system Apply latest updates of your operate system Try StackChecker to detect real-time buffer overflow exploit Try StackChecker to detect real-time buffer overflow exploit

The End