• No results found

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

N/A
N/A
Protected

Academic year: 2021

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

Copied!
7
0
0

Loading.... (view fulltext now)

Full text

(1)

Department of Computer & Information Sciences

INFO-450: Information Systems Security

Syllabus

Course Description

This course provides a deep and comprehensive study of the security principles and practices of information systems. Topics include basic information security concepts, common attacking techniques, common security policies, basic cryptographic tools, authentication, access control, software security, operating system security, and legal and ethical issues in information systems security.

Through this course, students shall be able to understand the basic principles and practices in information systems security. In particular, understand what the foundational theory is behind computer security, what the common threats are, and how to play with the games with attackers.

Textbook

 W. Stallings, “Computer Security: Principles and Practice,” 2st

Edition, Prentice Hall, ISBN: 0132775069, 2011.

Recommended Supplement

 M. Stamp, “Information Security: Principles and Practice,” 2st

Edition, Wiley, ISBN: 0470626399, 2011.

 M. E. Whitman and H. J. Mattord, “Principles of Information Security,” 4st

Edition, Course Technology, ISBN: 1111138214, 2011.

 M. Bishop, “Computer Security: Art and Science,” Addison Wesley, ISBN: 0-201-44099-7, 2002.

 G. McGraw, “Software Security: Building Security In,” Addison Wesley, ISBN: 0321356705, 2006.

Prerequisite

 CSCI-360: Computer Networks

 CSCI-342: Introduction to Information Security

Major Topics

1. Overview

1.1. Computer Security Concepts

1.2. Threats, Attacks, and Assets

1.3. Security Functional Requirements

1.4. A Security Architecture for Open Systems

(2)

1.6. Computer Security Strategy

PART ONE COMPUTER SECURITY TECHNOLOGY AND PRINCIPLES

2. Cryptographic Tools

2.1. Confidentiality with Symmetric Encryption

2.2. Message Authentication and Hash Functions

2.3. Public-Key Encryption

2.4. Digital Signatures and Key Management

2.5. Random and Pseudorandom Numbers

2.6. Practical Application: Encryption of Stored Data

3. User Authentication

3.1. Means of Authentication

3.2. Password-Based Authentication

3.3. Token-Based Authentication

3.4. Biometric Authentication

3.5. Remote User Authentication

3.6. Security Issues for User Authentication

3.7. Practical Application: An Iris Biometric System

3.8. Case Study: Security Problems for ATM Systems

4. Access Control

4.1. Access Control Principles

4.2. Subjects, Objects, and Access Rights

4.3. Discretionary Access Control

4.4. Example: UNIX File Access Control

4.5. Role-Based Access Control

4.6. Case Study: RBAC System for a Bank

5. Database Security

5.1. The Need for Database Security

5.2. Database Management Systems

5.3. Relational Databases

5.4. Database Access Control

5.5. Inference

5.6. Statistical Databases

5.7. Database Encryption

5.8. Cloud Security

6. Malicious Software

6.1. Types of Malicious Software (Malware)

6.2. Propagation–Infected Content–Viruses

6.3. Propagation–Vulnerability Exploit–Worms

6.4. Propagation–Social Engineering–SPAM E-mail, Trojans

6.5. Payload–System Corruption

6.6. Payload–Attack Agent–Zombie, Bots

6.7. Payload–Information Theft–Keyloggers, Phishing, Spyware

6.8. Payload–Stealthing–Backdoors, Rootkits

6.9. Countermeasures

7. Denial-of-Service Attacks

7.1. Denial-of-Service Attacks

7.2. Flooding Attacks

(3)

7.4. Application-Based Bandwidth Attacks

7.5. Reflector and Amplifier Attacks

7.6. Defenses Against Denial-of-Service Attacks

7.7. Responding to a Denial-of-Service Attack

PART TWO SOFTWARE SECURITY AND TRUSTED SYSTEMS

8. Buffer Overflow

8.1. Stack Overflows

8.2. Defending Against Buffer Overflows

8.3. Other Forms of Overflow Attacks

9. Software Security

9.1. Software Security Issues

9.2. Handling Program Input

9.3. Writing Safe Program Code

9.4. Interacting with the Operating System and Other Programs

9.5. Handling Program Output

10. Operating System Security

10.1. Introduction to Operating System Security

10.2. System Security Planning

10.3. Operating Systems Hardening

10.4. Application Security

10.5. Security Maintenance

10.6. Linux/Unix Security

10.7. Windows Security

10.8. Virtualization Security

11. Trusted Computing and Multilevel Security

11.1. The Bell-LaPadula Model for Computer Security

11.2. Other Formal Models for Computer Security

11.3. The Concept of Trusted Systems

11.4. Application of Multilevel Security

11.5. Trusted Computing and the Trusted Platform Module

11.6. Common Criteria for Information Technology Security Evaluation

11.7. Assurance and Evaluation

PART THREE MANAGEMENT ISSUES

12. IT Security Management and Risk Assessment

12.1. IT Security Management

12.2. Organizational Context and Security Policy

12.3. Security Risk Assessment

12.4. Detailed Security Risk Analysis

12.5. Case Study: Silver Star Mines

13. IT Security Controls, Plans, and Procedures

13.1. IT Security Management Implementation

13.2. Security Controls or Safeguards

13.3. IT Security Plan

13.4. Implementation of Controls

13.5. Implementation Follow-up

(4)

14. Physical and Infrastructure Security

14.1. Overview

14.2. Physical Security Threats

14.3. Physical Security Prevention and Mitigation Measures

14.4. Recovery from Physical Security Breaches

14.5. Example: A Corporate Physical Security Policy

14.6. Integration of Physical and Logical Security

15. Human Resources Security

15.1. Security Awareness, Training, and Education

15.2. Employment Practices and Policies

15.3. E-Mail and Internet Use Policies

15.4. Computer Security Incident Response Teams

16. Security Auditing

16.1. Security Auditing Architecture

16.2. The Security Audit Trail

16.3. Implementing the Logging Function

16.4. Audit Trail Analysis

16.5. Example: An Integrated Approach

17. Legal and Ethical Aspects

17.1. Cybercrime and Computer Crime

17.2. Intellectual Property

17.3. Privacy

17.4. Ethical Issues

Learning Outcomes

A student completing this course is expected to be able to:

1. State the basic concepts in information systems security, including security technology and principles, software security and trusted systems, and IT security management.

2. Explain concepts related to various cryptographic tools.

3. State the requirements and mechanisms for identification and authentication.

4. Explain and compare the various access control policies and models as well as the assurance of these models.

5. State the characteristics of typical security architectures, including multi-level security systems.

6. State the criteria of evaluating secure information systems, including evaluation of secure operating systems and secure network systems.

7. List the database security issues and solutions, including models, architectures, and mechanisms for database security.

8. State program security issues, including virus, worm, and logical bombs.

9. State the basic concepts and general techniques in security auditing and risk assessment. 10. State the issues related to administration security, physical security, and program security. 11. Determine appropriate mechanisms for protecting information systems ranging from

(5)

Grading

Letter Grade A 90 – 100 B 80 – 89 C 70 – 79 D 60 – 69 F 0 – 59

Evaluation Procedures

Homework Assignment 20% Quiz 10% Midterm Exam 10% Final Exam 20% Project &Presentation 40%

Projects

The group projects will involve setting up systems and writing programs that demonstrate important concepts and mechanisms introduced in the classes. The most common reason for not doing well on projects is not starting them early enough. You will be given plenty of time to complete each project. However, if you wait until the last minute to start, you may not be able to finish. Start early and plan to have it finished a few days ahead of the due date.

Many unexpected problems typically arise during programming, particularly when debugging. You should plan for these things to happen. The department computer lab will be available for project work. We will also make an environment available for you that can be used to work on projects on your own computer. Your lack of staring early is not an excuse for turning in your project late, including having your computer crash. There are a number of sources for help. This includes office hours, and discussion groups on the class website.

Group Rules: each group is to have a maximum 2 people. This means that you can work on your

project individually or with another person. If you work in a group of two, you may collaborate on ONLY with your group member and not with a member of another group. Group selection is made by emailing the instructor by the 3rd class meeting. Once you select a group member, you may not change group membership. Each project submitted by a group will include a separate submission by each group member indicating a percentage describing each group member’s contribution. Equal contribution means each member (in a 2 person group) contribute 50%. Anything different from equal contribution will result in a reduction in grade from the group member who contributes less and an increase in grade for the group member who contributes more.

The oral class presentation will be done in groups of 2. If there are an odd number of students registered for the class, a single student will have the option of either presenting individually or joining a group (making a single group of 3).

Homework

All work will be submitted electronically. Homework and Projects are due at 11:59 PM on the due date described in the assignments. Late policy is as follows:

(6)

 A grade of zero for >2 days of lateness

Note: plagiarism, copying, or cheating of any kind will result in a minimum of an “F” in the course for all parties involved and a maximum of expulsion from the University should I warrant the need to report it to the Student Judicial Affairs office.

Attendance Policy

Attendance is mandatory. It is the responsibility of the student to ensure that they sign the sign-in sheet prior to leavsign-ing class. Students that have not signed the sign-sign-in sheet will be considered absent even if they attended class for that day.

Students are allowed a maximum of two unexcused absences during the semester. Students that have more than two unexcused absences but less than or equal to four unexcused absences will have their course average reduced by five points. In addition, for each unexcused absence above four, students will receive an additional two points off from their course average.

Excused absences require documentation from an authorized party. An absence due to medical reasons will require a note or document from a medical practitioner or institution. Where possible, permission to be absent from class should be obtained in advance. Attempting to obtain permission for being absent after the fact and without proper documentation is not acceptable.

Cell Phone Policy

Cell phones should be turned off or in silent mode and should be tucked away somewhere not visible to anyone, especially to the instructor. Students will receive a warning on their first infraction of this policy and will be asked to leave the class on each additional infraction and considered absent. In addition, the student will receive an “F” on any graded work that is due or carried out on that day. Under no circumstance is a student to use the phone in class in any capacity. This includes text messaging! Students that leave the class to talk on their cell phones will not be allowed to return to class. This policy is in effect from the start of class until the instructor dismisses the class.

Test Taking Policy

During a scheduled exam or quiz, you are required to clear all material from the desk or table prior to beginning your exam or quiz. All books, bags, and other personal material should be placed on the floor. Cell phone policy remains in effect during an exam or quiz. This means that the use of a cell phone without permission from the instructor will result in a zero. Please make sure to use the restroom prior to beginning your exam. If you must use the rest room during the exam, you will need to submit your exam or quiz and it will be graded as is.

Cheating and Collaboration Policy

Collaboration is a healthy and constructive way to learn and accomplish tasks. Unfortunately, many students often do not realize that what they believe to be collaboration is actually cheating. Cheating on assignments or projects does not benefit anyone, especially you, and undermines our trust. Because the line between collaboration and cheating can get confusing for students, especially those not exposed to proper collaboration behavior, you are asked to carefully consider what is discussed in this section; however, the rule of thumb should always be that when in doubt about whether a particular action can be considered cheating, ask your instructor.

(7)

when your instructor allows you to use material in the public domain; however, you will be required to reference the work.

For the purpose of this course, using snippet of code from classmates accomplishes nothing! In the end, it is about what you have learned. Your grade means absolutely nothing to anyone once they figure out you cannot program. In the same token, helping someone by looking at their code, more often than none, leads to copying at some level. Please note that this is not the same as looking at someone else’s code to learn to become a better programmer. In general, you are better off asking your instructor prior to looking at another classmate’s code.

Verbal collaboration is generally acceptable. Examples of acceptable collaboration:

 Discussing ambiguities in assignments or course materials to gain a better understanding of them;

 Providing assistance with Java, either in using the system facilities or with debugging tools.  Discussing and explaining code provided in the course.

 Obtaining help on general programming issues (i.e. what does a specific error mean?);

As a general rule, if you do not understand or cannot explain what you are handing in, or if you have written the same code as someone else, you are probably cheating. If you have given somebody

some code, simply so that it can be used in that person's project, you are probably cheating. Here are some examples of clear cases of cheating:

 Copying files or parts of files (such as source code, written text, or unit tests) from another person or source.

 Copying (or retyping) files or parts of files with minor modifications such as style changes or minor logic modifications.

 Allowing someone else to copy your code or written assignment in any form.  Getting help from someone whom you do not acknowledge on your solution.

The policies in this section were adapted from those instituted in the Computer Science Department at Carnegie Mellon University.

References

Related documents

1777 First Thanksgiving proclaimed by national authority (Continental Congress) for all 13 states on December 18 (many states had individual Days of Thanksgiving earlier that

Population size structure, growth and reproduction of the European anchovy (Engraulis encrasicolus, L.) in the Lagoon of Lesina (south-western Adriatic Sea,

Hence once DMSA has ruled out renal scarring, we can begin treatment as for a lower urinary tract infection.. Treatment

When we were developing methodology we firstly created simple software development life cycle for object oriented software development and then we integrated

CITY OF PAWTUCKET’S PURCHASING OFFICE GENERAL CONDITIONS OF PURCHASE All City of Pawtucket purchase orders, contracts, solicitations, delivery orders and service requests shall

China and Rome Compared, edited by Fritz-Heiner Mutschler and Achim Mittag, 169–93. Oxford: Oxford

The purpose of this paper is to contribute to the understanding of the gender gap in investor behavior by taking a behavioral perspective and, specifically, resting on the concept of