the majority of vulnerabilities in software originate in design defects and
coding flaws that manifest, in the compiled software, as exploitable faults.
Faults become exploitable, and thus represent vulnerabilities, only if they are
accessible by an attacker. The more faults that are exposed, the more potential