1. A method for protecting software, the method comprising: executing protected software in a testing environment, the testing environment insulating the protected software from attacks; running a protective software framework to monitor the protected software while the protected software executes in the testing environment, the protective software framework detecting spurious events, the spurious events being benign security events caused by the protected software while executing in the testing environment, a security event being a violation of a security policy, the benign security events being security events caused by the protected software when the protected software is operating as intended; identifying a remediation for the security event, the remediation being a relaxation of the security policy; maintaining information indicating an association between the security event and the remediation; executing the protected software in a production environment in which the protected software is subject to attacks; running the protective software framework to monitor the protected software while the protected software executes in the production environment, the protective software framework enforcing the security policy that is relaxed according to the remediation.