我一直试图围绕网络安全编写软件要求。
我正在设计一个系统,其中两个设备通过蓝牙进行通信,(例如)我将(1)启用BLE功能以帮助防范中间人攻击,(2) )添加更多代码,使其更不可能。
我遇到困难时,正在编写此功能的要求。
我不能说"应用程序应该防止中间人攻击"因为那是不可测试的。
我不能说"应用程序应该非常努力地防止中间人攻击"因为它听起来很愚蠢而且不可测试。
我在编写代码I的要求时遇到了类似的问题,以防止拒绝服务攻击和一般窃听。
请注意,我并未询问如何在蓝牙中执行此操作 - 我在编写此应用程序的需求文档时寻求帮助,以便生成的要求为"Unambiguous, Testable (verifiable), Clear (concise, terse, simple, precise), Correct, Understandable, Feasible (realistic, possible), Independent, and Atomic."
答案 0 :(得分:0)
安全要求通常通过引用检查表和最佳实践(如OWASP)并通过审核(来自第三方)进行测试。
The Robertson & Robertson book dedicates a whole chapter to security requirements,这是一本有趣的读物。
答案 1 :(得分:0)
如果您遵循owasp模型,那么您将获得有关网络安全要求的信息。第二件事是,如果您使用https模型而不是http,那么您将免受中间人攻击,如果您的要求是确保安全,则您应该使用黑盒测试或防火墙。