您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件开发专栏 > 数据库 > 正文

如何在复杂的后端系统中保证数据库安全?

发表于:2019-07-03 作者:张晓艺 来源:IT168网站

以技术为中心的时代,信息至关重要。数据库及其安全性已成为每个企业极具挑战性的任务。数据库可以包含关键信息,例如个人身份、信用卡信息、金融交易以及应用程序密码,这些都是对黑客和网络犯罪分子有价值的信息。根据金雅拓的数据泄露水平指数,2018年上半年大约有35亿条记录违规,比2017年上半年增加了72%。数据泄露的后果对企业来说代价是非常昂贵的。即使是一个小漏洞或错误,也可能让攻击者掌握耗资数百万的数据库系统。为了防止这种事情的发生,企业应该防患于未然,考虑一切有可能破坏数据库的因素,防止有价值的信息受到损害。


复杂的后端系统中,企业数据库中的关键信息极易受到网络威胁。以下方法可以帮助企业在很大程度上保护数据库:

  • 隔离Web服务器和数据库
  • 设置Web应用程序防火墙(WAF)和反恶意软件解决方案
  • 实施数据加密和备份
  • 用户帐户管理
  • 定期更新和实施补丁

1、隔离Web服务器和数据库

在同一台机器上部署应用程序和数据库会导致攻击者更容易进入系统,因为只需破解一台服务器的管理员帐户就能访问整个数据库,这是一个巨大的安全漏洞。

为了保护企业的敏感信息不受未经授权的访问,IT管理员应该将服务器(应用程序和数据库)保存在不同的物理机上。应用程序的高性能主机服务器可能最好,但为了存储客户的有价值数据,企业必须选择单独的数据库服务器,该服务器需支持高级安全特性(如多因素身份验证)和适当的访问权限。

2、设置Web应用程序防火墙(WAF)和反恶意软件解决方案

设置防火墙是阻止攻击者的另一种有效方法。防火墙通过拒绝未经授权的访问来确保数据库安全,但如果需要,它可以监控公司员工访问服务器的行为。例如,SQL注入是攻击者为入侵系统而进行的最常见的攻击,但这可以通过适当的防火墙配置来检查并防范。

一旦企业建立了数据库,就应该确保计算机被防火墙完全保护,防火墙能够过滤任何出站连接和任何想要访问有用信息的请求(除了必要的请求)。此外,企业应该确保数据库服务器也可以通过安装反恶意软件和反勒索软件来防范恶意攻击,或者只允许来自可信源或特定web服务器的访问,定期检查数据库服务器上的防火墙规则,并定期通过网络扫描或允许ISP扫描进行测试。另外,应该关闭数据库服务器上从未使用或不必要的服务。

3、实施数据加密和备份

意外时刻都会发生,企业应该时刻准备好额外的保护层,以防止数据受到损害。这个额外的保护层可以通过加密实现,这样攻击者即使可以访问数据库,也需要再去破解密码。

第一阶段的加密需要使用应用程序服务器或数据库服务器上的私钥来实现。因此,即使攻击者获得对数据库的访问权限,他们也无法轻松解密或读取数据。第二阶段需要对传输中的数据进行加密,这意味着数据在通过网络从应用服务器移动到数据库服务器之前就被加密,反之亦然。

4、用户帐户管理

除了犯罪分子,企业的员工也可能会对有价值的数据构成重大威胁。很多具有不同角色的用户可能经常访问数据库,他们可能没有恶意,但仍有可能大规模泄露机密信息。这就是为什么管理用户帐户变得至关重要的原因。

企业应该尽量使访问数据库的用户最少。只有在需要时,才应向授权用户提供使用一次性密码(OTP)技术访问数据库的权限,以避免用户在其他时间进行任何未经授权的访问。应强制使用强密码来访问数据库,数据库凭据应以哈希加盐法存储,这样它们就不可读了。另外,应定期维护活动日志,以监控与查询和请求相关的所有活动。如果企业遇到数据泄露,审计和日志记录可以帮助调查可疑活动。

5、定期更新和实施补丁

许多后端系统在其应用程序中使用第三方api、应用程序和插件,这可能是网络罪犯的目标。为了解决这个问题,企业应该建立健全的应用更新系统,以避免网络罪犯利用任何已知的漏洞对系统进行破坏。

保持所有第三方软件、api和插件更新到最新版本,这些更新应该定期进行或者在API和插件供应商发布新补丁时进行,这确保了最新的版本能够用最新的网络威胁免疫系统。不仅如此,应用程序中不使用的插件、api或服务应该完全从系统中删除或停用。

关于数据库保护的其他建议

无论数据库服务器受到多大程度的保护,攻击者总有可能渗入系统,所以要经常备份数据库的加密副本,这就保证了即使数据库被破坏时也可以恢复数据。

设置数据库代理也可能是一个很好的解决方案,因为它位于应用程序和数据库之间。它能解析查询,只接受来自应用程序服务器的请求,并阻止任何其他未通过可信源生成的请求。

数据库安全对企业来说至关重要,企业有义务保护客户的数据安全,以免造成任何法律后果并失去客户信任。以上方法,不仅有助于保护数据库,降低数据泄露处理不当的风险,而且还可确保企业做好面对不可控攻击的准备。