|
知识路径: > 测试技术的分类 > Web应用测试 > Web应用运行测试 > 安全性测试 > 安全体系测试 >
|
考试要求:掌握
相关知识点:11个
|
|
|
|
检查应用程序对存储中、应用程序内存中以及网络中的敏感数据的处理方法。下表显示了与处理敏感数据相关的常见漏洞。
|
|
|
|
|
测试中要考虑下列问题,帮助验证应用程序处理敏感数据的方法。
|
|
|
|
机密信息包括了应用程序的配置数据,如账户密码和加密密钥。如果可能,明确其他避免保存机密信息的设计方法。如果要处理机密信息,由系统平台处理它们,尽可能不在应用程序中承担这一任务。如果确实要保存机密信息,则要考虑下列问题。
|
|
|
|
如果使用其他的实施技术,是否能避免存储机密信息。例如,如果只需了解用户是否知道密码,则无需存储密码。或者,仅保存单向的密码哈希值。
|
|
|
此外,如果使用Windows身份验证,可通过嵌套凭据来避免存储连接字符串。
|
|
|
|
如果使用加密,如何确保加密密钥的安全。考虑使用系统平台提供的DPAPI加密,这种加密能替用户完成密钥管理。
|
|
|
|
检查应用程序保存加密数据的方法。要获得尽可能高的安全性,应使用Windows ACL限制对加密数据的访问。确认应用程序不以明文或源代码形式存储机密信息。
|
|
|
如果使用本地安全机构(LSA),检索机密信息的代码必须使用管理员特权才可以运行,这将增加风险。另一种不要求扩展特权的方法是使用DPAPI。
|
|
|
|
检验应用程序访问机密信息的方法,以及它们以明文形式存留在内存中的时间。机密信息通常应根据需要检索,并尽快使用,然后丢弃。
|
|
|
|
如果是,应确保cookie是加密的,且不会永久保存在客户计算机中。
|
|
|
|
如果存储了敏感的应用程序数据(如客户信用卡详细信息),检查数据保护方法。
|
|
|
|
应使用强加密算法来加密。例如,使用较长的密钥(如Triple DES)。
|
|
|
|
数据的安全性与加密密钥安全性同等重要。因此,检查确保密钥安全的方法。在理想状况下,使用DPAPI加密密钥并保存在受限位置(如注册表项中)来确保安全。
|
|
|
|
如果通过网络传递敏感数据,应确保通过应用程序加密这些数据,或通过加密的通信链接来传递它们。
|
|
|
|
检查应用程序(或主机)是否在明文日志文件中记录用户账户密码这样的敏感数据。通常,必须避免这样做。确保应用程序不在查询字符串中传递敏感数据,因为查询字符串会被记录,并可在客户端浏览器地址栏中直接看到。
|
|
|