近日对数据库的Web托管公司DreamHost的FTP密码数据库的攻击事件突出了日益增加的数据库泄露趋势。虽然这些数据库包含敏感的身份信息,但是这些数据库的保护力度远远赶不上那些包含PII的数据库。专家警告说,如果企业真的关心他们的安全和合规计划,就必须找出更好的方法来保护数据库中的密码,或者完全摒弃这种存储方法而寻求更好的密码存储办法。
上个月,黑客攻入了DreamHost公司包含密码的数据库(密码以纯文本格式存储在传统表格中),泄露了该公司所有共享托管账户的FTP登录密码。
“这个被攻击的数据库包含客户登录FTP服务器的登录信息,黑客可以使用这些登录信息来假冒客户访问FTP服务器,”Imperva公司高级安全分析师Noa Bar-Yosef表示,“造成的结果就是,黑客可以访问客户文件、下载文件,甚至上传他们自己的文件。”
据Bar-Yosef称,除了遵循数据库安全第一条规则(知道你的数据所在位置)外,DreamHost显然没有遵循数据库密码存储的一些最佳做法。
“为了保护用户密码,企业必须部署强有力的密码政策,并在加密之前存储好密码。黑客通常都能够非常迅速地攻击加密密码。这里的关键是加大黑客的工作难度,”她表示,“这不仅保护禁止使用常见密码,而且还要禁止使用键盘序列密码。使用密码短句是一个很好的办法,因为密码短句能够提供足够的长度来防止黑客对密码的暴力攻击。”
同时,Bar-Yosef认为,大多数企业在涉及加密密钥时还要加大力度,因为简单的加密并不足以阻止黑客。
“黑客采用一些技术(例如彩虹表)来找到原始密码,”她表示,“然而,企业可以给每个密码增加一个随机值,从而让黑客的密码破解工作变得更加困难。”
然而,一些身份验证专家认为,关于密码存储在数据库的安全问题并不是单靠这些最佳做法就可以解决的,他们认为只有避免将密码存储在不安全的分布式数据库才能够从根本上预防这些数据泄露事故。
“我们的观点是从一开始就应该摒弃将密码存储在数据库的观念,”身份管理公司Cyber-Ark Software公司执行副总裁Adam Bosnian表示,“在前端部署一个安全的登录凭证管理系统,这一切问题都可以解决。”
Bosnian表示,开发人员每次在开发一个应用程序时,往往会重塑身份管理系统,基本上是将密码管理硬编码到他们的中间件中,并将密码存储在不安全的数据库,这使得很难对密码进行集中管理和保护。
另一家身份管理公司Viewfinity首席执行官Leonid Shtilman表示,这种非集中式管理会让企业陷入非常危险的境地。
“这些账户实际上没有出现在IT管理人员的行政账户(由AD管理)标准跟踪清单上,并可能被恶意软件用以通过‘本地’ 管理员账户在本地计算机上安装恶意软件,”Shtilman表示,“对IT环境的进一步渗透就是捕获密码,包括访问关键数据的密码。IT安全和运营管理人员必须想办法缓解这种风险。”
身份管理公司Lieberman Software公司首席执行官Phil Lieberman表示,现在市面上有工具可以解决这个问题,真正的问题在于让所有人关心这个问题。
“web应用程序使用包含重要登录凭证以及数据库凭证的中间件堆栈,而这些凭证信息一般没有得到主动管理。这种情况的产生是因为缺乏管理密码修改过程需要的必要的资源和技能,”Lieberman表示,“IT管理人员和数据库管理员对于凭证信息的不当管理既不会得到褒奖也不会受到惩罚,而高层管理人员通常根本不知道什么是中间件,甚至不知道什么是连接字符串以及需要如何进行管理。”
即使当企业购买一个管理平台,如果开发人员没有好好利用这个平台,企业仍然会看到密码散落在各处。即使部署了这些管理平台,每个部门都应该对开发人员进行重新培训以正确利用身份管理平台,否则企业为平台支付的资金将付诸东流。
“应用程序开发团队仍然不断将硬编码凭证放入系统中,因为双方并没有连接好,”他表示,“企业必须从上到下制定一套使用规范。”