CPRE431 introduces mechanisms for protecting information systems from accidental and intentional threats. Topics include basic cryptography, authentication, access control, malicious code, network security mechanisms (firewalls, intrusion detection, SSL/TLS), ethics, and legal issues. Labs and programming assignments focus on practical security tools, cryptanalysis, and system configuration.
Scenario: Acting as the security administrator for a company, students analyze an encrypted attachment suspected of leaking confidential data. The file name hints that the password is the MD5 hash of the file name with extension. Students use OpenSSL to compute hashes, decrypt the archive, and identify hidden or encrypted items inside.
Scenario: A VM is provided with an administrator and several users. Students are given an administrator's hash from /etc/shadow and must determine hash type, salt, and crack other user passwords using appropriate tools and methods. This lab reinforces understanding of password hashing, salts, and practical cracking techniques.
Students reproduce a Slowloris-style denial-of-service experiment on an isolated CloudLab slice. The lab provides hands-on experience with resource exhaustion attacks in a controlled environment; students must be careful not to affect external infrastructure and must follow CloudLab policies.
Students practice creating iptables rules to filter and control traffic, implement basic firewall rules, and observe how changes affect connectivity and service accessibility.