CIS 4615 meeting -*- Outline -*- * static analysis tools ** two purposes ------------------------------------------ TWO KINDS OF STATIC ANALYSIS TOOLS 1. For vulnerability analysis code implementation problems attempts to find: - SQL and command injection - buffer overflow - format string - race conditions - failure to handle errors properly - integer overflows - XSS 2. For investigating possible malware finds information about a program: - if it is known malware (hash code) - what strings it uses - if the file is "packed" (obfuscated) - what it imports (links to) ------------------------------------------ Q: Will a vulnerability analysis find design flaws? No, it is much harder to get the design out of the code Q: Will a tool tell if a program is malware? Not definitively, but if it hashes to known malware then yes otherwise you just get information from it.