CS338 Computer Security Monday, 4 November 2024 + Hey US citizens: Vote + The rest of the term - Your project (Nov 13) - A takehome exam - Definitely some stuff due Nov 20 - Maybe some stuff due Nov 25 - Labs - Topics - A visit from a CISO (Nov 15) - Authentication (esp. passwords) - Pen-testing overview - Secure coding overview - Malware - ??? what do you want to learn about ??? - Lab on SQL injection - Defensive security software; including firewalls - More cryptography - Famous hacks - Dark web; Tor - Reverse engineering - How do they do crazy hacking and not get caught - Forensics - Attribution - Hardware security (Spectre, Meltdown, Rowhammer,...) - Personal security--what can I do? + Injection attacks, part 1: command injection - http://danger.jeffondich.com/imagelist.php - http://danger.jeffondich.com/imagelist2.php - What do I think the code looks like? ... system("ls -l uploadedimages/*." . $_REQUEST['extension']); ... - Fundamental problem - You can't trust user-provided data - Need to "sanitize" it or analyze it before using it for other purposes (especially if user-provided data becomes part of command execution) - Possible solutions - Restrict the possible inputs to a fixed set - Quite reliable, but hard to maintain - - Eliminate shell-special characters like ; - Does the server-side programming language have tools to help you? + Lab: nmap ======= + Pen-testing overview - Scope & rules of engagement - contracts - "get out of jail free" cards - ... - External, network-only, no physical, etc - Host detection - Port scanning -