Security Vulnerabilities at the Source Code Level
Software powers everything from critical infrastructure to personal devices, so the security of source code is of utmost importance. Not only can attackers compromise applications, as discussed in Chapter 22, Securing Software Development, but rogue developers can also write malware into “trusted” applications. One positive way this is done is by developers programming “cheat codes” into a video game. These are used for video game testing but are later leaked so that users can enjoy the game more. However, malicious developers can write malware that establishes a communication link, known as beaconing, allowing the hacker to compromise your computer or even a nuclear facility (see the article on Stuxnet in Further Reading). In this section of the chapter, we will first look at different application testing approaches and then discuss some root causes of security weaknesses.
Testing
Computer applications...