Finding Attacks And Vulnerabilities In Critical Systems