Instructor | Announcements
| Course Info | Class Material
| Schedule | Project |
Grade | General Policy | Related
Links
CmpE 209 |
Network
Security
|
Spring 2008
|
|
Instructor
Richard Sinn
Email: richardsinn@yahoo.com
Office Hours: After class, by appointment or email only
Richard Sinn has been teaching in the Computer Engineering and Computer Science
departments at San Jose State University since 1998. He also served as Adjunct
Professor at University of Minnesota. In addition to his teaching career, Richard
is the Security Architect at the Real Time Communication group at Yahoo! Inc.
Prior to this he held various senior positions at IBM, Oracle and different
Silicon Valley startup companies. Richard is an inventor and has filed over
ten invention disclosures (patents). He is also a frequent writer for various
magazines and journals, and a frequent speaker at regional and national technology
conferences.
Announcements
Check back every now and then for updates.
Add code:
Available when someone drops.
Class time:
Every Tuesday 7:00pm <-----
Class room:
ENG341
Initial creation.
Environment
Please consider how you set up your evaluation environments - be it homework,
on-campus quizzes and exams, to minimize chances of (temptations to) cheating.
In particular:
During tests:
- Make sure there is plenty of space between students.
- Always proctor exams and tests, and preferably by sitting at the back of
the room rather than at the front. Do not leave the testing room during the
test. If you cannot proctor the class yourself, contact me and I will endeavor
to find a proctor for you.
- If the test is closed-book, require all backpacks to be zipped shut, all
PDAs, computers and phones to be handed in, and any access to either without
explicit proctor permission should be an immediate F in the class.
For homework: We have started using on-line support systems to catch cheaters.
So I would very strongly urge you:
- For code assignments: Run them all through MOSS
- For essays etc: Run them all through turnitin.com (SJSU has a site subscription,
I have been told.)
- Make sure individual contributions are ensured in team projects. This can
be done through various means: Sign-offs, quizzes on the content of common work,
etc.
Remember: A grade reflects an evaluation of the individual student's achievements.
Your evaluation system has to reflect that objective.
Course Information
Objectives
Network security protocols and applications, cryptography algorithms, authentication
systems, intrusion detection, network attacks and defenses, system-level security
issues, and how to build secure systems. Prerequisite: CmpE 206 and EE 281.
This semester is programming oriented. Topics include:
- Security theories
- Thrust model
- Network programming with security- Java
- Network programming with security - C/C++
- Protocols info - SSL, LDAP, IPSec, etc.
- IDS
- Network Attack / Defense
- Security Level
- Building secure system
Grading
Apart from big term project(s) and presentation, there are homework assignments,
a mid-term exam and a final exam. Some exams might be take-home. The weightings
for grading are: Term Project(s) 40%, Homework 20%, Midterm 10%, Final Exam
10%, and Team Presentation 20%.
No Late Assignment Submission. Put everything in an envelop when submit any
material.
Policy Info
University, College, or Department Policy Information
a. Academic integrity statement (from Office of Judicial Affairs): “Your own
commitment to learning, as evidenced by your enrollment at San José State University,
and the University’s Academic Integrity Policy requires you to be honest in
all your academic course work. Faculty members are required to report all infractions
to the Office of Judicial Affairs.
b. Campus policy in compliance with the Americans with Disabilities Act: “If
you need course adaptations or accommodations because of a disability, or if
you need special arrangements in case the building must be evacuated, please
make an appointment with me as soon as possible, or see me during office hours.
Presidential Directive 97-03 requires that students with disabilities requesting
accommodations must register with DRC to establish a record of their disability.”
c. Policies or information required by the department, or college with which the
class is associated.
Class Material
Lecture Notes
Textbook:
Non-Textbook: Reading material will be online on this web site before every
lecture. Reading this semester:
- HTTP: http://www.w3.org/Protocols/, ftp://ftp.isi.edu/in-notes/rfc2616.txt
- FTP: http://www.ietf.org/rfc/rfc0959.txt
- BitTorrent: http://www.bittorrent.com/protocol.html
- DNS: http://www.faqs.org/rfcs/rfc1035.html, http://www.faqs.org/rfcs/dns-rfcs.html
- IKE: http://www.ietf.org/rfc/rfc2409.txt
- IPSEC Intro: http://www.cisco.com/univercd/cc/td/doc/product/ismg/policy/ver23f/ipsec/ch01.htm
- XKMS: http://www.w3.org/TR/2005/REC-xkms2-20050628/
- ICE: http://www.w3.org/TR/1998/NOTE-ice-19981026
- LDAP: http://www.faqs.org/rfcs/rfc2251.html
- OCSP: http://www.faqs.org/rfcs/rfc2560.html
- SSL/TLS: http://wp.netscape.com/eng/ssl3/draft302.txt
- DHCP: http://rfc.net/rfc2131.html
- NFS: http://www.faqs.org/rfcs/rfc1813.html
- Kerberos: http://web.mit.edu/kerberos/www/
Reference
Pick one of the references for term paper. Please spend the time to
read and actually reseach (program) into the topics. The class expects
a high quality research paper, not some collection of combined internet
web pages ...
Full
Reference List is here
|
|
Schedule
Jan 29, 2008-Tue
Feb 5, 2008-Tue:
February 4 Last Day to Drop Courses Without an Entry on Student's
Permanent Record
February 11 Last Day to Add Courses & Register Late
Feb 12, 2008-Tue:
- Essential PKI
- Services
- Certificate and Processing
- CRL
- Components
- Reading: SST Book Chapter 3
- Project List
- Presentation List
- Homework 1 (Web Protocol Security Analysis)
Feb 19, 2008-Tue:
Feb 26, 2008-Tue:
- Threat Model
- Team Presentation Info
- Project Info
- Reading: SST Book Chapter 4
- Threat Model part II
- Reading: Chapter 5, 6, 7
- Homework 1 Due
Mar 4, 2008-Tue:
- Authentication and Authorization
- Kerberos Preso
(Contributed from other sources)
- JAAS
- Web SSO related materials
- Project Description / Discussion
- Reading: Chapter 5, 6, 7
- Homework 2
Mar 11, 2008-Tue:
- How to use turnitin.com
- Go to http://www.turnitin.com/
- Click New user
- Select Student
- Next
- Class id is: 2216947
- Password is my first name in lower case
- Enter your email
- Enter your password
- Select a question and enter an answer
- Enter your first name and last name
- I agree
- Login
- Enter the cmpe209 spring 2008
- Try out submit for testing (if you submit the same paper, it will
mark as copy ..)
- After submit, you can checkout the originality report. (Learn to use
it. The report takes a while to generate.)
- The final team paper must be submitted under turnitin.com. If the
originality report shows that you plagiarize in the paper. You will
fail the class.
- Network Programming with OpenSSL
- SSL / IPSec (Presentation)
- Preso is contributed from other sources.
- Network Authentication (pdf from other source)
- Reading: Chapter 5, 6, 7
- Homework 2 Due
- Homework 3
- Master Project Info
- Team presentation: Zion, An Analysis of RFID Security (Preso, Report)
- Team presentation: Hackers, An Analysis of RTSP network security (Preso,Report)
Mar 18, 2008-Tue:
March 24 - March 28: Spring Break
Apr 1, 2008-Tue:
- Mid-term (In Class - Close book)
- Project Part I Due
Apr 8, 2008-Tue:
- Intro to IDS (Modified Internet Slides)
- IPSec (Guest speakers ... Be on time!)
- Radius
- IDS, etc.
- Tunneling (ATMP, L2F, L2TP, PPTP)
- Wireless Authentication Protocols
- Reading: Chapter 5, 6, 7
- Team Presentation: Secure, An Analysis of SIP security (Preso, Report)
- Team Presentation: Warriors, An Analysis of Mobile IP Security (Preso, Report)
- DHCP / BOOTP
- Kerberos
- Reading: Chapter 8
Apr 15, 2008-Tue:
- Guest Speaker from Cisco, Radius Preso
- No Office hour after guest lecture
- Reading: Chapter 8
- Save your mid term question next week
- Team preso moved to next week
Questions and Admin:
- Show me your midterm if you are Taulant Haka?
- Show me your group name if you are kuldipsinh rana or Toulaut Halca
- Mid term distribution:
98 |
92 |
88 |
87 |
87 |
83 |
81 |
78 |
78 |
74 |
73 |
73 |
73 |
73 |
72 |
72 |
71 |
71 |
68 |
68 |
65 |
60 |
60 |
58 |
57 |
57 |
56 |
55 |
55 |
55 |
54 |
52 |
52 |
52 |
49 |
49 |
48 |
47 |
45 |
43 |
35 |
Apr 22, 2008-Tue:
Final and Presentation
Apr 29, 2008-Tue:
May 6, 2008-Tue:
May 13, 2008-Tue:
|
|
Term Project
Description
Your team is a well known group of network security experts. As a result, the
whole team is hired by the government to implement the Secure Data Exchange
System (SDES). SDES will be used by high ranking officials in the government.
The basic goal of the system is to enable exchange of data in the MOST secure
fashion. Here is the list of requirements for SDES:
- A group of users will use SDES.
- Data is classified into four different levels: Unclassified, Confidential,
Secret, Top Secret.
- A user must have the proper classification in order to get to the data with
the same classification. E.g. a secret user can get to secret data.
- A higher level classification allows read/write access to lower level classification(s).
E.g. Confidential user can access Unclassified and Confidential
data but not Secret data. Top Secret user can access all Unclassified,
Confidential, Secret and Top Secret data.
- A user obtains a classification in the system by successfully authenticated
into SDES using an authentication protocol (e.g. RADIUS, LDAP, etc.).
- The protocol authentication must be implemented using JAAS.
JAAS implements a Java version of the standard Pluggable Authentication Module
(PAM) framework. JAAS authentication is performed in a pluggable fashion. This
permits applications to remain independent from underlying authentication technologies.
New or updated authentication technologies can be plugged under an application
without requiring modifications to the application itself. Read chapter 1, 5,
6, 7 of the textbook. Read them in order to obtain the full picture.
Grading
Project team has to decide on various issues such as:
- How sharing can be accomplished? (Web server, local server, etc.)
- Which protocol to pick for each JAAS module?
- What specific part of the protocol to implement or use open source?
- How much programming the group should do?
- Should open source programming be used in the project?
- Should the system be implemented using client/server or pure web based?
- What extra features should be implemented in the project?
- What about ... etc, etc ...
As the whole class will be working on similar projects, relative grading will
be used. In other words, all the projects will be ranked within the class and
points will be assigned accordingly. There are two parts in the project:
- Part I: Requirement Analysis and Design 33%
- Part II: Final report and/or Implementation 67%
Handin
Project Part I consists of a document includes the following:
- Detail project plan. The list of features and functions should be included
in the project.
- Schedule and division of work among team members
- Prototype results
Project Final Part will be covered later in class
Final Word of Warning
This is not an "easy" class and the project is an essential part
of the overall grade. People who did not deliver the project well enough could
really hurt their grade as the project contains more than 40% of the overall
grade.
Avoid:
- Forming group late
- Changing group in the middle of the semester
- Start late and rush any part of the project
- Form a group of less than 4/5 people
- Not enough extra features if the group is more than 5 people
- Did the final integration of the project late
- Do not do enough testing
- All but actually one person in the group does all the programming (No, people
do not get lucky and teammate will complain...)
Team Research Presentation (Lab)
Each team will be given one topic to research and present during the
semester. Mid-term and final will contain some questions related to the topics
presented. The team needs to prepare the following:
- PowerPoint Presentantion of the topic
- A 5 short-paper with detail reference on the topic
- Perform face-to-face presentation in class (15 min)
The following are the possible topics:
- RFID network protoco
- SMTP
- SNMPl
- SSH
- SCP
- Kerberos
- Radius
- Network Intrusion Detection
- SOAP
- UDDI
- XKMS
- NAT
- EAP
- IPX/SPX
- POP3/IMAP4
- BGP
- EGP
- IGP
- RIP
- OSPF
- Socks
- More tables from TCP/IP suite:
Data Link Layer |
ARP/RARP |
Address Resolution Protocol/Reverse Address |
DCAP |
Data Link Switching Client Access Protocol |
Network Layer |
DHCP |
Dynamic Host Configuration Protocol |
DVMRP |
Distance Vector Multicast Routing Protocol |
ICMP/ICMPv6 |
Internet Control Message Protocol |
IGMP |
Internet Group Management Protocol |
IP |
Internet Protocol version 4 |
IPv6 |
Internet Protocol version 6 |
MARS |
Multicast Address Resolution Server |
PIM |
Protocol Independent Multicast-Sparse Mode (PIM-SM) |
RIP2 |
Routing Information Protocol |
RIPng for IPv6 |
Routing Information Protocol for IPv6 |
RSVP |
Resource ReSerVation setup Protocol |
VRRP |
Virtual Router Redundancy Protocol |
Transport Layer |
ISTP |
|
Mobile IP |
Mobile IP Protocol |
RUDP |
Reliable UDP |
TALI |
Transport Adapter Layer Interface |
TCP |
Transmission Control Protocol |
UDP |
User Datagram Protocol |
Van Jacobson |
compressed TCP |
XOT |
X.25 over TCP |
Session Layer |
BGMP |
Border Gateway Multicast Protocol |
Diameter |
|
DIS |
Distributed Interactive Simulation |
DNS |
Domain Name Service |
ISAKMP/IKE |
Internet Security Association and Key Management Protocol and Internet
Key Exchange Protocol |
iSCSI |
Small Computer Systems Interface |
LDAP |
Lightweight Directory Access Protocol |
MZAP |
Multicast-Scope Zone Announcement Protocol |
NetBIOS/IP |
NetBIOS/IP for TCP/IP Environment |
Application Layer |
COPS |
Common Open Policy Service |
FANP |
Flow Attribute Notification Protocol |
Finger |
User Information Protocol |
FTP |
File Transfer Protocol |
HTTP |
Hypertext Transfer Protocol |
IMAP4 |
Internet Message Access Protocol rev 4 |
IMPPpre/IMPPmes |
Instant Messaging and Presence Protocols |
IPDC |
IP Device Control |
IRC |
·Internet Relay Chat Protocol |
ISAKMP |
Internet Message Access Protocol version 4rev1 |
ISP |
|
NTP |
Network Time Protocol |
POP3 |
Post Office Protocol version 3 |
Radius |
Remote Authentication Dial In User Service |
RLOGIN |
Remote Login |
RTSP |
Real-time Streaming Protocol |
SCTP |
Stream Control Transmision Protocol |
S-HTTP |
Secure Hypertext Transfer Protocol |
SLP |
Service Location Protocol |
SMTP |
Simple Mail Transfer Protocol |
SNMP |
Simple Network Management Protocol |
SOCKS |
Socket Secure (Server) |
TACACS+ |
Terminal Access Controller Access Control System |
TELNET |
TCP/IP Terminal Emulation Protocol |
TFTP |
Trivial File Transfer Protocol |
WCCP |
Web Cache Coordination Protocol |
X-Window |
X Window |
Routing |
BGP-4 |
Border Gateway Protocol |
EGP |
Exterior Gateway Protocol |
EIGRP |
Enhanced Interior Gateway Routing Protocol |
HSRP |
Cisco Hot Standby Router Protocol |
IGRP |
Interior Gateway Routing |
NARP |
NBMA Address Resolution Protocol |
NHRP |
Next Hop Resolution Protocol |
OSPF |
Open Shortest Path First |
TRIP |
Telephony Routing over IP |
Tunneling |
ATMP |
Ascend Tunnel Management Protocol |
L2F |
The Layer 2 Forwarding Protocol |
L2TP |
Layer 2 Tunneling Protocol |
PPTP |
Point to Point Tunneling Protocol |
Security |
AH |
Authentication Header |
ESP |
Encapsulating Security Payload |
TLS |
Transport Layer Security Protocol |
Grade
Email sinn@openloop.com to check your grade if necessary.
General Policy
The university and departmental policies and deadlines for course drop will
be applied. Makeup exams cannot be offered, except under exceptional conditions,
such as documented serious illness/accident, etc., and only at the professor's
discretion.
Each student is responsible for his/her individual assignment, and must not
copy anyone else's work. Students who borrow solutions from others will find
themselves unable to pass the course. The minimum penalty for every student
involved in the duplication of individual assignments or exams will be receiving
a zero score on the submitted work.
For group project, all the work has to be done by your OWN group. Do not try
to download "free code" from the Internet and hand in as a project. WE WILL
FIND OUT. Do not share your work with others. So DO YOUR OWN WORK and EARN your
grade.
Related Links
- Past Class Grading and Info
- Software Engineering Institute
- Special Interest Group on Software Engineering (SIGSOFT)
|
|
- IBM San Francisco Project
- Object Management Group
- Rational Software Corporation
- http://www.protocols.com/pbook/tcpip1.htm
|
Richard's Recent Articles
- Identity
Management with Provisioning, Oblix, Inc.
- Certificate
Management System, Oblix, Inc.
- Understanding
Public Key Infrastructure, IBM Developer Toolbox
- XML
By Example, IBM Developer Connection Magazine.
- Going
Remote: Mobilizing R5 Users, Domino Professional Magazine.
- Universal
Database Integration: he Sky is the Limit, Midrange Computing.
- Enhance
Business Intelligence with Data Replication Solution, AS/400 Technology
Journal.
- Deliver
Data Where You Need It: A Replication Solution for Windows NT,
IBM Developer Connection Magazine.
- Building
Java Apps with Lotus eSuite DevPack, Part II: DevPack in Action,
Domino Professional Magazine.
- Building
Java Apps with Lotus eSuite DevPack, Part I: DevPack Overview, Domino
Professional Magazine.
- AS/400's
NetWare Integration Adds TCP/IP Support, NEWS/400.
- Take
the Java Plunge, Midrange Computing.
- Consolidate
Your Network with Novell-AS/400 Integration, Midrange Computing.
- Configuring
and Administering Lotus eSuite WorkPlace, NEWS/400.
- Lotus
eSuite WorkPlace: Business Tools for Network Computing, NEWS/400.
- AS/400
and NetWare: Together the better since V3R7, NEWS/400
|
Instructor | Announcements
| Course Info | Class Material
| Schedule | Project |
Grade | General Policy | Related
Links