BBM 461: SECURE PROGRAMMING INTRODUCTION. Ahmet Burak Can



Similar documents
CSCI 454/554 Computer and Network Security. Instructor: Dr. Kun Sun

The Information Security Problem

Weighted Total Mark. Weighted Exam Mark

Soran University Faculty of Science and Engineering Computer Science Department Information Security Module Specification

Security Testing. How security testing is different Types of security attacks Threat modelling

CIS 6930/4930 Computer and Network Security. Dr. Yao Liu

D. Best Practices D.1. Assurance The 5 th A

Computer Security. Principles and Practice. Second Edition. Amp Kumar Bhattacharjee. Lawrie Brown. Mick Bauer. William Stailings

Department of Computer & Information Sciences. INFO-450: Information Systems Security Syllabus

EECS 588: Computer and Network Security. Introduction January 14, 2014

Enterprise Cybersecurity Best Practices Part Number MAN Revision 006

CIS 4204 Ethical Hacking Fall, 2014

Networked Systems Security

Spyware. Michael Glenn Technology Management 2004 Qwest Communications International Inc.

What Every (Software) Engineer Needs To Know About Security. -- and -- Where To Learn It

CSE331: Introduction to Networks and Security. Lecture 1 Fall 2006

EECS 588: Computer and Network Security. Introduction

Penetration Testing Service. By Comsec Information Security Consulting

Application Intrusion Detection

RARITAN VALLEY COMMUNITY COLLEGE COURSE OUTLINE. CISY-274 Privacy, Ethics & Computer Forensics

External Supplier Control Requirements

How To Protect A Network From Attack From A Hacker (Hbss)

Internet Safety and Security: Strategies for Building an Internet Safety Wall

CSC 474 Information Systems Security

TCOM 562 Network Security Fundamentals

(General purpose) Program security. What does it mean for a pgm to be secure? Depends whom you ask. Takes a long time to break its security controls.

UVic Department of Electrical and Computer Engineering

CPSC 467: Cryptography and Computer Security

資 通 安 全 產 品 研 發 與 驗 證 (I) ICT Security Overview. Prof.. Albert B. Jeng ( 鄭 博 仁 教 授 ) 景 文 科 技 大 學 資 訊 工 程 系

FINAL DoIT v.4 PAYMENT CARD INDUSTRY DATA SECURITY STANDARDS APPLICATION DEVELOPMENT AND MAINTENANCE PROCEDURES

Certified Ethical Hacker (CEH) Ethical Hacking & Counter Measures Course 9962; 5 Days, Instructor-Led

Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 2 Systems Threats and Risks

Spam, Spyware, Malware and You! Don't give up just yet! Presented by: Mervin Istace Provincial Library Saskatchewan Learning

NETWORK SECURITY ASPECTS & VULNERABILITIES

Threat Modeling. Frank Piessens ) KATHOLIEKE UNIVERSITEIT LEUVEN

What is Web Security? Motivation

90% of data breaches are caused by software vulnerabilities.

Computer and Network Security

SECURING YOUR SMALL BUSINESS. Principles of information security and risk management

COB 302 Management Information System (Lesson 8)

10- Assume you open your credit card bill and see several large unauthorized charges unfortunately you may have been the victim of (identity theft)

Software & Hardware Security

ISO Information Security Management Systems Foundation

Foundstone ERS remediation System

Principles of Information Assurance Syllabus

Computer Security (EDA263 / DIT 641)

Loophole+ with Ethical Hacking and Penetration Testing

E-commerce. Security. Learning objectives. Internet Security Issues: Overview. Managing Risk-1. Managing Risk-2. Computer Security Classifications

IY2760/CS3760: Part 6. IY2760: Part 6

FORBIDDEN - Ethical Hacking Workshop Duration

Security Goals Services

Computer Security DD2395

ETHICAL HACKING APPLICATIO WIRELESS110 00NETWORK APPLICATION MOBILE MOBILE0001

The McAfee SECURE TM Standard

Cracking and Computer Security

Ethical Hacking and Information Security. Foundation of Information Security. Detailed Module. Duration. Lecture with Hands On Session: 90 Hours

COSC 472 Network Security

E-BUSINESS THREATS AND SOLUTIONS

Design Principles for Protection Mechanisms. Security Principles. Economy of Mechanism. Least Privilege. Complete Mediation. Economy of Mechanism (2)

Web Application Security. Vulnerabilities, Weakness and Countermeasures. Massimo Cotelli CISSP. Secure

Guidelines for Website Security and Security Counter Measures for e-e Governance Project

Notes on Network Security - Introduction

Threats and Attacks. Modifications by Prof. Dong Xuan and Adam C. Champion. Principles of Information Security, 5th Edition 1

Promoting Network Security (A Service Provider Perspective)

What s Wrong with Information Security Today? You are looking in the wrong places for the wrong things.

Hackers: Detection and Prevention

CSCI 4541/6541: NETWORK SECURITY


Passing PCI Compliance How to Address the Application Security Mandates

Web Application Security

SECURITY PATCH MANAGEMENT INSTALLATION POLICY AND PROCEDURES

Who Are The Enemies? What Can They Do?

Introduction to Computer Security

Columbia University Web Security Standards and Practices. Objective and Scope

City University of Hong Kong. Information on a Course offered by Department of Computer Science with effect from Semester A in 2014 / 2015

20-CS X Network Security Spring, An Introduction To. Network Security. Week 1. January 7

FIREWALLS & NETWORK SECURITY with Intrusion Detection and VPNs, 2 nd ed. Chapter 4 Finding Network Vulnerabilities

Intro to Firewalls. Summary

PTSv2 in pills: The Best First for Beginners who want to become Penetration Testers. Self-paced, online, flexible access

Common Cyber Threats. Common cyber threats include:

FKCC AUP/LOCAL AUTHORITY

WEB SECURITY. Oriana Kondakciu Software Engineering 4C03 Project

LINUX / INFORMATION SECURITY

Course: Information Security Management in e-governance. Day 1. Session 5: Securing Data and Operating systems

IJMIE Volume 2, Issue 9 ISSN:

Commercial in confidence TELSTRA WHOLESALE ACCEPTABLE USE POLICY. Commercial-in-Confidence. Issue Number 1.5, 20 November 2012

Network Security 網 路 安 全. Lecture 1 February 20, 2012 洪 國 寶

ITSC Training Courses Student IT Competence Programme SIIS1 Information Security

FINAL DoIT v.8 APPLICATION SECURITY PROCEDURE

Network Security and Surveillance

Transcription:

BBM 461: SECURE PROGRAMMING INTRODUCTION 1 Ahmet Burak Can

COURSE MATERIAL Counter Hack Reloaded:A Step-by- Step Guide to Computer Attacks and Effective Defenses, Edward Skoudis, Tom Liston, Prentice Hall Hacking Exposed 7: Network Security Secrets & Solutions, Stuart McClure, Joel Scambray, George Kurtz, McGraw-Hill Osborne Media Secure Coding: Principles and Practices, Mark G. Graff, Kenneth R. Van Wyk, O'Reilly Media 2

COURSE MATERIAL Software Security: Building Security, Gary McGraw, Addison-Wesley Writing Secure Code: Practical Strategies and Proven Techniques for Building Secure Applications in a Networked World, Michael Howard, David LeBlanc, 2nd ed. Edition, Microsoft Press Foundations of Security: What Every Programmer Needs To Know, Neil Daswani, Christoph Kern, and Anita Kesavan Security in Computing, Charles P. Pfleeger, 3th Edition And Internet resources.. 3

CONTENTS Introduction to program security, fundementals of secure programming Attacks based on shell environment flaws Integer overflow attacks Buffer overflow attacks Input validation attacks, Format string attacks Links and race conditions, Temporary storage and randomness problems Canonicalization and Directory traversal problems Attacks on database systems Web environment and web applications Web application and session security, XSS, CSRF attacks, Security tests and static code analysis tools 4

GRADING POLICY Midterm 30% Report 20% Final Exam 45% Attendance 5% Homeworks will be provided to enhance your understanding. You will asked about homeworks in the exam. 5

WHICH SECURITY CONCEPT? Network Security Computer Security Computer Security Information Security 6

WHY COMPUTER SECURITY? Computers are under attacks and suffer damages Who are the attackers? bored teenagers, criminals, organized crime organizations, rogue states, industrial espionage, angry employees, Why they do it? enjoyment, fame, profit, computer systems are where the moneys are 7

COMPUTER SECURITY ISSUES Computer worms E.g., Morris worm (1988), Melissa worm (1999) Computer viruses Distributed denial of service attacks Computer break-ins Email spams E.g., Nigerian scam, stock recommendations Identity theft Botnets Serious security flaws in many important systems electronic voting machines Spyware 8

HOW BIG IS THE SECURITY PROBLEM? 6000 CERT Vulnerabilities reported 5000 4000 3000 2000 1000 0 1995 1997 1999 2001 2003 2005 9

WHY DOES THIS HAPPEN? Lots of buggy software & wrong configurations... Awareness is the main issue Some contributing factors Few courses in computer security Programming text books do not emphasize security Few security audits Unsafe program languages Programmers are lazy Consumers do not care about security Security may make things harder to use Security is difficult, expensive and takes time 10

WHAT IS THIS COURSE ABOUT? Learn how to prevent attacks and/or limit their consequences. No silver bullet; man-made complex systems will have errors; errors may be exploited Large number of ways to attack Large collection of specific methods for specific purposes Learn to think about security when doing things Learn to understand and apply security principles 11

SECURITY GOALS Privacy (secrecy, confidentiality) only the intended recipient can see the communication Authenticity (integrity) the communication is generated by the alleged sender Authorization limit the resources that a user can access Availability make the services available 99.999 % of time Non-repudiation no party can refuse the validity of its actions Auditing Take a log of everything done in the system 12

TERMINOLOGIES Vulnerabilities (weaknesses) : A flaw in software, hardware, or a protocol that can be leveraged to violate security policies Threats (potential scenario of attack) Attack Exploit (n) - Code that takes advantage of a vulnerability Exploit (v) - To use an exploit to compromise a system through a vulnerability Controls (security measures) 13

SECURITY PRINCIPLES Principle of weakest link Principle of adequate protection Goal is not to maximize security, but to maximize utility while limiting risk to an acceptable level within reasonable cost Principle of effectiveness Controls must be used and used properly to be effective. they must be efficient, easy to use, and appropriate Psychological acceptability Principle of defense in depth Security by obscurity doesn t work 14

LAYERS OF COMPUTER SYSTEMS Computer systems has multiple layers Hardware Operating systems System software, e.g., databases Applications Computer systems are connected through networks Computer systems are used by humans 15

WHY OLD SOFTWARE CAN BECOME INSECURE? Security objectives or policies have changed Laws have changed Business model changed Company processes changed Environment has changed Configuration is out of date Operating system has changed Risks are different Protections have changed (e.g., firewall rules) Employees, units responsibilities have changed Vulnerabilities have been found Exploits, worms, viruses exploit them Input has changed e.g., old application made to work online (with a wrapper) Protocol changed 16

TAXONOMY OF MALICIOUS PROGRAMS Malicious Programs Needs Host Program Independent Trapdoors Logic Bombs Trojan Horses Viruses Worms Zombies Rootkits Rabbit Replicate 17

ETHICAL USE OF SECURITY INFORMATION We discuss vulnerabilities and attacks Most vulnerabilities have been fixed Some attacks may still cause harm Do not try these at home Purpose of this class Learn to prevent malicious attacks Use knowledge for good purposes 18

LAW ENFORCEMENT David Smith Melissa virus: 20 months in prison Ehud Tenenbaum ( The Analyzer ) Broke into US DoD computers sentenced to 18 months in prison, served 8 months Dmitry Sklyarov Broke Adobe ebooks Arrested by the FBI, prosecuted under DMCA, stayed in jail for 20 days, 19