Cybersecurity Techniques and Operations
This course introduces tools and techniques used to secure and analyze large computer networks and systems. Students will systematically learn C programming in the first part of the course, which forms a foundation for many cybersecurity operations, such as malware analysis, understanding network protocol stack, etc. In the second part, students will explore and map networks using a variety of diagnostic software tools, learn advanced packet analysis, configure firewalls, write intrusion detection rules, perform forensic investigation, and practice techniques for penetration testing. The objectives are:
- Understand the concepts and major constructs of the C programming language,
- Master the programming skills of the C programming language,
- Be able to analyze the C source code to infer the functionality of a given code segment, C function, C program etc,
- Grasp the needed techniques and skills to write a C program in cybersecurity operations such as a network protocol stack,
- Monitor and analyze network traffic. Identify and trace the traffic when intrusion is detected in the network,
- Identify and evaluate the vulnerabilities in the network and implement effective countermeasures to protect the network,
- Master the technologies to exploit the vulnerabilities in a remote system,
- Analyze the vulnerabilities in wireless communication network,
- Manage data and personal information in a secure manner.
Course Material
There are both programming assignments for C programming and hands-on labs for cybersecurity and operations.
The programming assignments are as follows:
- Write a function htoi(s), which concerts a string of hexadecimal digits into its equivalent integer value.
- Write a function any(s1, s2) that returns the first location in the string s1 where any character from the string s2 occurs, or -1 if s1 contains no characters from s2.
- Using pointer, write a function strcat(s, t) that copies string t to the end of string s
- Write a program expr, which evaluates a reverse Polish expression from the command line. For example expr 2 3 4 + * evaluates 2* (3 + 4).
- Write a program to compare two files, printing the first line where they differ.
The hands-on labs are as follows:
- Traffic tracing through Wireshark and TCPdump
- Firewall configuration with pfSense
- Penetration test on Windows
- Password cracking
- Information hiding