行业新闻与博客

如何确保我的网站安全?基本指南

了解如何确保网站安全可能是与网站用户分享正面消息和必须通知他们数据已被泄露之间的区别。  

每个网站所有者都应该了解某些事情,其中非常重要的一点是如何确保您的网站安全(或者至少尽可能安全)。我们在这里提供的指导可以作为一些人的快速复习,也可以作为其他人探索的教育指南。

让我们来讨论一下。

如何确保您的网站安全(17 种方法)

让我们直接回答您想知道的问题:“如何确保我的网站安全?”

使用公钥加密技术发挥您的优势

1. 安装可保护您的主域(和任何子域)的 SSL/TLS 证书

考虑到我们是 SSL 商店,我们列表中的首要项目是网站安全证书也就不足为奇了。然而,我们这样做的原因并不纯粹是有偏见的。在您的网站上使用有效的 SSL/TLS 证书:

  • 是使用公钥加密保护传输中数据安全的行业最佳实践。
  • 提高您网站的 Google 搜索引擎排名。
  • 帮助遵守行业数据安全和隐私法律法规。
  • 通过数字信任支持您的品牌声誉和在客户中的地位。

当数据以明文形式传输时,很容易受到中间人 (MitM) 攻击。这意味着坏人可以查看并窃取敏感数据(信用卡、银行帐户信息、用户名和密码等),并用于实施犯罪。他们还可以注入恶意内容并造成许多其他问题。

如何确保网站安全的列表中的下一项与第一项密切相关......   

2. 使用自动化仔细管理您的 PKI 数字资产以避免停机

如果您的网站或 Web 应用程序上的 SSL/TLS 证书已过期、已撤销或无效,则意味着您(和您公司的客户支持团队)的日子会很糟糕。当证书无效时,您的网站、应用程序和客户将遇到停机或服务中断。

像这样的停机会给客户留下对您公司的坏印象,破坏关系并导致销售和收入损失。

查看我们的其他相关文章,了解有关过期证书的更多信息:

  • 当您的 SSL 证书过期时会发生这种情况
  • 您的安全证书已过期:修复方法如下(3 个步骤)
使用自动化来简化您的证书管理任务

如果您想让自己更轻松地完成这些任务,请考虑使用证书管理自动化工具。这些工具旨在让您能够全面了解网络以及遍布其中的加密资产,从而使证书管理变得更加轻松。

  1. 想知道您拥有哪些证书以及它们位于何处?完毕。
  2. 它们何时发行或将过期怎么样?一点也不麻烦。
  3. 知道谁负责管理它们怎么样?易如反掌。

3.使用值得信赖的安全扫描工具定期扫描您的网站

理想情况下,您应该使用日常网站扫描程序来识别漏洞和其他必须解决的漏洞利用机会。使用网站扫描工具可以帮助您查找和识别网站上可能存在的漏洞和恶意软件。

SiteLock 是一款监控工具,可通过自动扫描、检测和阻止网络威胁来增强网站的安全性。

4.使用 Web 应用程序防火墙(WAF)

Web 应用程序防火墙通常被认为是行业首选,可帮助组织保护其 Web 应用程序免受恶意行为者和网络攻击。它的工作是帮助您过滤和监控 HTTP/HTTPS 流量,以识别进出您的网站 /Web 应用程序的任何异常活动。

WAF 可以帮助您:

  • 识别流量激增和下降,
  • 观察流量来自哪里,以及
  • 帮助您阻止不良机器人流量。

这对于帮助您识别和缓解分布式拒绝服务 (DDoS) 攻击非常有用。

但不要认为仅使用 WAF 就足够了;使用此工具应该是更大的网络安全策略的一部分。

不确定您的网站或网络应用程序是否需要 WAF?问自己几个简单的问题:

  • 您是否通过网络应用程序收集客户的个人数据?
  • 您的组织从事电子商务活动吗?
  • 您想要更清楚地了解您的流量吗?
  • 您希望能够帮助识别和阻止 DDoS 攻击吗?

如果这些问题中任何一个的答案是“是”,那么您应该使用 Web 应用程序防火墙。

5.监控您的网站日志(自动化工具可以提供帮助)

网站和网络应用程序监控对于每个网站的安全都至关重要。但我们明白了;监控数字资产的日志就像修剪脚趾甲一样有吸引力。这是一项你并不真正想做的任务但是,好吧,必须有人来做

同样,网站日志提供与访问请求、更改、错误以及安全事件和事件相关的大量信息。但现实情况是,它们会生成大量数据,几乎不可能手动完成。(谁有时间?)

正如您可以想象的那样,这些工具会产生大量的“噪音”。值得庆幸的是,有一些自动日志分析工具可以帮助您收集和理解所有类型的数据。

维护最新的网站安全工具和插件(主要针对 WordPress 网站管理员)

您的网站使用 WordPress 吗?如果您像 W3Techs 估计的 43% 的网站一样,那么您的答案是肯定的。如果是这样,以下部分的讨论要点将主要适用于您。

6. 确保您使用的是主机客户端的最新软件版本

无论您使用哪种主机管理软件(例如,用于共享主机的 cPanel、Plesk、DirectAdmin),请确保您的服务器运行最新版本。如果不是,那么您需要升级到最新版本的界面。

应用系统补丁和更新使软件开发人员能够修复现在和 / 或将来可能给您带来问题的任何漏洞或问题。因此,与任何软件一样,请确保您的软件版本尽可能保持最新。

7.安装来自受信任(信誉良好)的开发者和发行商的插件

如果您是 WordPress 网站管理员,您可能非常熟悉 WordPress 插件、主题和其他附加组件。插件可以满足并简化各种需求和任务,提供灵活性和定制机会。

然而,缺点是,如果开发人员没有仔细管理和更新这些工具,安装这些工具可能会增加攻击面。(稍后会详细介绍。)使用保护不力和过时的网站插件会在网站的防御中产生原本可能不存在的漏洞。

正是由于这些原因(以及其他原因),如果您决定使用第三方插件和主题,您应该只选择来自定期更新其产品的信誉良好的开发人员 / 发行商的插件和主题。在决定使用哪个插件之前,请务必阅读评论并通过其他来源进行研究。

8.使所有主题和插件保持最新

WPScan 报告称,其数据库中 94% 的漏洞都是插件。据了解,跨站点脚本 (XSS) 攻击者会使用易受攻击的插件将恶意代码注入 WordPress 网站。根据严重程度,这种类型的攻击可以使坏人完全接管您的网站。 

由于这些原因(以及我们在最后两节中提到的原因),您必须保持主题和插件最新。这样做既是行业最佳实践,也是防止威胁行为者利用您网站上的漏洞的方法。

这在 WordPress 中非常简单。在 WordPress 仪表板的左侧导航栏中,单击“插件”,它将显示一个页面,其中列出了所有已安装的插件(包括活动的和停用的)。在这里,您可以手动更新、激活和停用插件,或启用自动更新。 注意:如果插件存在漏洞但尚未更新,您将不会在此处看到它。这也是定期(每日)进行漏洞扫描至关重要的另一个原因。

对于主题,只需查看左侧导航栏中的“更新”选项并向下滚动即可。如果任何主题需要更新,它会告诉您,并且只需单击两次即可选择更新它们。 

安全访问您的管理仪表板和其他敏感资源

9. 严格控制分配的管理权限和访问权限

好的,我们已经完成了回答以下问题的方法列表的一半:“如何确保我的网站安全?” 现在,请跟着我重复一遍:并非每个想要访问的人都需要访问。

仅仅因为员工想要对您的网站、数据库或其他相关资源进行管理员访问,就应该拥有它。只能在最低级别授予访问权限。这就是最小特权原则(PoLP,或也称为最小特权模型)背后的想法。

例如,对网站管理仪表板的访问权限应仅限于那些在其角色中需要它的个人。应根据各个员工的工作职责和他们期望完成的任务来授予访问权限。就是这样。只需给予他们完成工作所需的绝对最低权限即可。

这意味着,负责撰写和发布博客文章的营销专家可能不需要与需要处理网站根目录的网络开发人员相同级别的访问权限。同样的想法也适用于访问您的服务器和其他敏感资源。请务必小心确保仅将管理员权限分配给角色需要这些权限的人员。

10. 要求使用安全、唯一的密码(和密码管理器)

虽然这看起来很简单,但实践强大的密码安全性是您可以让员工了解的最重要的一点之一。这是因为您员工的帐户(以及他们接触的所有内容)的安全性取决于他们用于访问帐户的凭据。

如果他们的密码是从其他帐户回收的,或者如果它们是几乎可以在任何违规列表中找到的常用密码,那么就您网站的安全而言,它们毫无用处。

我们看到了一个丑陋的例子,基因检测公司 23andMe 在数据泄露后指责客户,称他们正在重复使用在其他第三方数据泄露中受到损害的登录凭据。

设置密码要求并根据泄露 / 被破坏的密码和常用密码的已知数据库检查输入至关重要。这样,如果您的销售团队中的 Sam 尝试将其密码更改为已被识别为已泄露的密码,您可以这样做,以便他必须将其输入更改为其他密码。(注意:不要告诉用户该密码已被使用,这会泄露太多信息。相反,应告知用户他们的密码选择无效,并让他们重新输入新密码。我们将详细介绍稍后再说。)

此外,花时间向用户介绍所有帐户的密码安全最佳实践,包括其网站登录凭据。本主题应包括有关安全存储密码的对话(即,将它们保存在密码管理工具中,而不是将它们存储在便利贴上)。

11.实施零信任流程和程序

零信任背后的想法是,你永远不会自动信任任何东西或任何人,并且必须始终验证一切。(这一切都与持续身份验证有关。)实际上,每个公司都应该以这种方法为目标,以保护其网络和整体 IT 基础设施的安全。但这如何应用于您的网站呢?

当涉及到保护对网站的管理访问时,请依靠数字身份验证和身份验证方法,而不仅仅是传统的用户名密码组合。那么,当您尝试以管理员身份登录您的网站时,有哪些方法可以帮助您验证某人的数字身份呢?

实施人工验证安全措施(MFA、CAPTCHA 等)

消除不良机器人流量和暴力攻击者的第一步是实施多重身份验证 (MFA)、验证码 / reCAPTCHA 或等效替代方案,例如 Cloudflare Turnstile。

让我们快速回顾一下这些工具的用途:

  • 多重身份验证- 这些工具要求用户通过更复杂的方法证明其身份,从而为身份验证过程增加了另一层安全性。例如,您必须知道密码并拥有一部能够接收来自身份验证应用程序(例如 Google Authenticator 或 Okta)的推送通知的手机。
  • CAPTCHA 或 reCAPTCHA — 这些自动化安全机制要求您做一些事情来证明您是真人而不是机器人才能进行身份验证。例如,您可能必须挑选图片、单击机器人、回答数学问题、解决难题或以其他方式参与。
  • Cloudflare Turnstile — 这种验证码技术的替代方案运行 JavaScript 挑战,检测人类行为并在后台涉及密钥和令牌。这种机制不需要用户解决任何谜题或以类似的方式参与。
要求管理员使用安全连接

一点 CYA 对企业总是有帮助的——尤其是在我们这个诉讼日益频繁的世界。作为一个组织,您可以做的事情之一就是建立公司内部政策,涵盖每个员工都应遵守的既定行为和标准。

例如,当员工登录其工作设备时,您可以设置一个确认屏幕,传达他们必须确认才能访问设备的设定行为和标准。

在您记录的程序中,请务必指定在访问安全数字资产和系统(包括您网站的管理仪表板)时,授权用户必须始终使用安全的加密连接。以下是实现此目的的两种方法:

  1. 要求办公室员工通过公司的安全以太网进行连接,或者
  2. 要求远程工作的用户使用基于 PKI 客户端身份验证证书的安全 VPN 连接。

您还可以将此作为员工在招聘和雇用流程中必须阅读、承认并同意遵守的政策之一。

12. 限制无效登录尝试

对于了解如何保护网站来说这是一个大问题。如果您不希望人们试图强行进入,防止他们这样做的一个很好的安全措施是设置帐户锁定阈值。例如,您可以将其设置为任何用户尝试输入密码的次数不得超过三次。之后,该账户将被锁定一段指定时间(10 分钟、3 小时、24 小时等)。

这种方法有助于防止攻击者使用猜测的用户名-密码组合释放脚本,以暴力方式进入您的网站。出于同样的原因,这也有利于撞库和其他类似的攻击。

13.使用允许列表和阻止列表来限制对管理控件的访问

允许列表(以前称为白名单)和阻止列表(以前称为黑名单)是网站管理员可以精细控制对其数字资产的访问的工具。它们可用于多种场景,包括网站白名单和电子邮件帐户。

对于网站,白名单通常依赖于用户的 IP 地址。例如,您可以使用白名单将网站特定部分(例如登录页面)的访问权限限制为仅允许一个或多个指定用户通过将其 IP 地址包含在白名单中。

同样,您可以使用阻止列表来阻止特定用户访问您网站的部分内容。

想象一下这样一个场景:您在一个受限制的封闭社区购买了一套漂亮的房子。

  • 如果您希望只有某些人可以进入房屋,您可以向社区的安全团队提供允许进入的授权用户列表(白名单)。
  • 如果您不想让某人进入您的新住所,您可以向门口的警卫提供该人的信息。该人将被禁止访问该财产(黑名单)。

使用允许列表时,您可以将默认访问设置设置为拒绝,从而排除未明确注明 IP 地址的任何人。但是如何使用它来仅允许来自指定 IP 地址的连接呢?

  • 安装启用白名单 / 黑名单功能的插件(适用于 WordPress 用户)。
  • 更新站点的.htaccess文件以列出特定 IP 地址。(注意:这只能由经验丰富的网站管理员来完成。)
  • 设置防火墙规则以强制执行您的白名单。

14.使用加盐来提高存储的密码哈希值的安全性

如果您的网站允许用户通过创建用户名和密码登录,那么本部分适合您。密码加盐是数据库安全中的一种重要做法,用于保护存储的密码相关详细信息。您永远不想在数据库中存储明文密码,因为它们很容易通过哈希表和彩虹表攻击而受到损害。相反,您应该存储的是加盐密码哈希值。

此过程涉及获取输入(即明文密码)并在应用加密哈希函数之前向其添加盐(随机的、唯一的数据字符串)。这会生成一个唯一的密码哈希值,您可以使用它来代替明文密码。

让我们想象一下使用密码Password123和盐值+Oa8kFpYobjX: 

密码 123+Oa8kFpYobjX = e72fd887c202a4367b8a96d42d1a1e10

即使两个用户使用相同的密码,当在应用哈希函数之前向其添加唯一的盐值时,每个用户的密码得到的哈希值将完全不同。

不要泄露太多信息

保护您的账户相关信息就像玩扑克一样:您需要保守秘密,不要让其他玩家知道您的计划。同样,当涉及到帐户安全时,您不想在错误响应消息中泄露太多信息。

例如,当用户尝试使用错误的密码登录网站时,经常会看到一条消息返回,指出他们输入了错误的密码。虽然从表面上看,这似乎是标准响应,但这种方法可能会降低网站的安全性,因为它为网络犯罪分子提供了可用于撞库攻击的有用信息。

例如,如果您明确指定密码不正确,那么它会让他们知道用户名是正确的。然后,他们可以使用该用户名并尝试不同的密码组合,直到成功。    

实施数据库强化技术

15. 对数据库的安全访问(物理和远程)

您的网站和数据库是独立的,但相互关联的数字资产必须受到保护。网站使用数据库作为各种内容(例如网站副本、图形、视频媒体等)的后端存储和管理系统。他们依靠数据库来存储可以检索并显示给用户的数据,而无需将所有内容直接硬编码在网站上。 

强大的数据库安全性允许对数据进行授权访问,同时仍然保持数据库本身的机密性、完整性和可用性 (CIA)。

您可以使用物理安全措施 - 锁定数据库服务器、使用 ID 卡实施安全访问、安装摄像头等。但是,如果您的数据库不在本地,该怎么办?然后,至少使用单独的数据库供内部和外部使用。要求授权用户通过 VPN 使用基于客户端身份验证的安全连接来连接到您的数据库。请记住:仅向角色需要访问权限的人员授予访问权限! 

16. 保护您的 Web 应用程序和表单免受常见数据库攻击

还记得我们提到过坏人总是寻找最简单的切入点吗?其中一种方法是在您网站的 Web 应用程序中搜索他们可以利用的 SQL 注入缺陷。使数据库更安全地抵御 SQL 攻击技术的一些方法包括:

  • 使用参数化数据库查询
  • 清理网络应用程序输入
  • 保持后端组件(库、框架、数据库软件等)最新

查看我们的其他资源,详细了解如何保护您的 Web 应用程序和数据库免受 SQL 注入。

17. 使用自定义端口帮助减少日志混乱并限制自动攻击

网络犯罪分子喜欢瞄准“容易实现的目标”,即网络安全机制过时、蹩脚或不存在的网站和数据库,这已不是什么秘密。为什么?因为它们很容易挑选。这就相当于鲨鱼瞄准了一只受伤的海豹,而不是一只可以反击的健康、身体健全的海豹。

使用默认端口号是坏人容易利用的机会之一。端口允许信息在网站和连接到该网站的浏览器之间流动。例如,安全外壳 (SSH) 协议常用的端口是端口 22。例如,IONOS 建议将其更改为“1024 到 65536”范围之间的端口。根据 IANA TCP 和 UDP 端口号分配指南,“众所周知的端口由 IANA 分配,范围为 0-1023”,因此最好避免将它们用于部署或产品发布。

简而言之,从默认端口号更改为自定义端口号是一种通过模糊性创建安全层的方法。

然而,值得注意的是,端口扫描本身在技术上并不是一种威胁。这是一种侦察方法,可为攻击者提供可用来对付您的信息。虽然更改端口号并不能阻止坏人决心找出您正在使用的端口,但它可以消除大量扫描默认端口的家伙、女孩和机器人。那么,为什么不关闭该窗口,不让攻击者有机会“进入”您的网站或 Web 服务呢? 

要确定要使用的端口号,请查看互联网号码分配机构 (IANA) 的服务名称和传输协议端口号注册表,以了解哪些号码不用于其他服务。

关于如何确保网站安全的最终要点

过去,潜在客户可以在黄页中查找您的广告和列表,或者遵循家人和朋友的推荐。虽然口碑仍然发挥着至关重要的作用,但您的网站通常为客户提供了您公司的第一印象。

这就是为什么拥有一个信息丰富、有用、性能良好且安全的网站很重要。没有人(包括我自己)喜欢收到他们所使用的网站或服务已被泄露的公司的通知。如果您现在就采取措施使您的网站、网络应用程序和其他数字资产尽可能安全,您就可以避免导致未来泄露的陷阱和安全问题。

我们希望您发现这篇文章内容丰富且有用。对于如何保护网站还有其他见解和建议吗?在下面的评论中分享它们。

需要帮助吗?联系我们的支持团队 在线客服