实用的网站安全指南

如何保护您的网站免受黑客攻击

您的网站不需要很有名就会受到攻击。自动化工具不断扫描互联网,寻找任何犯下有用错误的网站。良好的安全性归结为两项工作:消除您所知道的弱点,然后停止您无法预测的危险行为。

01哈登降低已知风险
02验证了解客户
03检查过滤请求
04强制执行保护运行
一、了解问题

黑客不需要选择你。

大多数网站攻击都是自动化的。扫描器从一个地址移动到另一个地址,识别软件,测试常见的登录路径,并探测已知的漏洞。他们并不关心您的网站是否属于跨国公司或邻里俱乐部。如果该漏洞有效,则该网站是有用的。

这改变了“为什么有人会攻击我?”的问题。到“当自动攻击到达我的网站时会发生什么?”

安全问题

攻击者只需获胜一次。你必须让攻击每次都失败。

工作01

消除你能找到的弱点。

保持软件最新、删除废弃的组件、限制访问并维护可恢复的备份。

工作02

阻止您无法预测的攻击。

验证客户端、检查请求并防止未经授权的文件、帐户和数据库更改。

01
减少攻击面

关闭你已经知道的漏洞。

阻止漏洞利用的最简单方法是在攻击者触及漏洞之前将其删除。这是基础工作,但基础工作可以防止很大的损害。

软件

及时更新

将 CMS、插件、主题、PHP 和服务器包保留在受支持的版本上。

更少的代码

删除不使用的内容

不活动或废弃的插件仍然可以让攻击者可以使用代码和文件。

访问

保护每个帐户

使用唯一的密码、多重身份验证以及每个人所需的最小权限。

恢复

保留经过测试的备份

将备份存储在远离网站的地方,并确认您可以在紧急情况之前恢复它们。

02
必要但还不够

修补是一场你不能每次都获胜的竞赛。

继续打补丁。只是不要将补丁计时作为唯一的安全边界。

软件是由人编写的,人也会犯错误。在有人报告之前,漏洞可能会存在数月。披露后,开发人员需要时间来生成修复程序,安全行业需要时间来构建规则,网站所有者仍然需要安装更新。

攻击者只需要该时间线上的一个有用的间隙。您的网站必须克服每一个差距。

01缺陷船舶

可能没有人知道它在那里。

02攻击者发现它

利用可能在披露之前就开始了。

03修复已发布

补丁或防火墙规则变得可用。

04你部署它

已知的开口终于关闭了。

03
更好的第一个问题

首先确定良好的流量。

很难描述攻击者可能发送的每个请求。更实际的做法是验证您的网站旨在服务的客户,然后限制其他一切。

大多数公共网站流量来自两大群体:使用真实网络浏览器和自动化服务(例如搜索爬虫、正常运行时间监视器、支付系统和集成工具)的人们。两个团体都可以在其中使用他们想要的任何名称 User-Agent 标头。一个自称 Googlebot 的脚本在其身份得到验证之前仍然只是一个脚本。

人类访客

验证浏览器

轻量级 JavaScript 检查可以确认自称是现代浏览器的客户端可以表现得像现代浏览器。

自动化服务

验证来源

可以根据预期的网络和 DNS 记录检查已知的机器人,而不是仅仅信任名称。

未知请求验证浏览器或机器人预期访问访问受限

这并不意味着盲目阻止每一个不熟悉的客户。公共 API、网络钩子、辅助工具和连接的服务可能需要仔细限定范围的例外。目标很简单:只为每个客户端提供其所需的访问权限,并且不为未经验证的自动化工具提供与受信任的管理员相同的自由。

04
请求后辩护

保护结果,而不仅仅是请求。

攻击在边缘可能看起来很普通,因为它以未经授权的方式使用真实功能。最强的最终控制询问请求在应用程序内试图做什么。

相同的功能

合法: 授权管理员安装经过审查的插件。

攻击: 未经身份验证的漏洞利用易受攻击的上传处理程序编写 PHP 后门。

两个路径都写入一个文件。授权使一种行为可以接受,而另一种行为则变得危险。

01

客户端控制

限制扫描仪、假冒浏览器和未知的自动化。

02

Web应用防火墙

在易受攻击的代码处理恶意输入之前阻止它。

03

运行时强制执行

拒绝未经授权的文件、帐户、数据库和网络操作。

04

扫描并审核

发现可疑的变化并调查需要注意的地方。

05
今天就这样做

五分钟的网站安全检查表。

您不需要立即解决所有安全问题。从消除最容易妥协的路径的更改开始。

  1. 01
    更新支持的软件

    安装当前的 CMS、插件、主题、PHP 和服务器版本。

  2. 02
    删除未使用的组件和帐户

    删除不再有目的的代码和访问。

  3. 03
    开启多重身份验证

    使用密码以外的方式保护管理员和托管帐户。

  4. 04
    确认异地备份

    确保最近的备份存在并且确实可以恢复。

  5. 05
    启用分层安全性

    使用客户端验证、WAF、运行时控制、扫描和有用日志。

  6. 06
    测试网站

    更改保护后检查登录、表单、结账、上传、API 和计划任务。

06
常见问题

网站安全问题

没有任何单一设置可以使网站无懈可击。良好的安全性可以减少机会、限制影响并保留恢复的途径。

保持软件更新就足够了吗?

不。更新是必要的,但在补丁可用之前或安装之前,缺陷可能会被利用。将更新与访问控制、客户端验证、请求过滤、运行时强制、监控和测试备份一起使用。

为什么有人会攻击一个小网站?

攻击者可能永远不会看到您的主页。自动化工具会扫描互联网的大部分内容并测试响应的站点。受感染的站点可用于发送垃圾邮件、重定向、凭据盗窃、恶意软件托管、搜索操纵或对其他系统的攻击。

防火墙可以阻止所有攻击吗?

不会。防火墙是一个重要的层,但某些漏洞利用看起来合法的请求或规则尚未识别的目标行为。运行时控件通过在代码执行时检查敏感操作来提供另一个边界。

我应该阻止每个机器人吗?

不需要。搜索爬虫、支付服务、监控工具、API 和集成可能是必要的。验证已知服务,默认限制未知自动化,并创建合法功能所需的最窄例外。

如果我认为该网站已被黑客入侵,我该怎么办?

保留日志和证据,必要时隔离站点,审核特权帐户和持久性,扫描文件和数据库,轮换凭据,并在适当时从经过验证的干净备份进行还原。不要认为安装更新可以消除现有的危害。

保护您的 WordPress 网站

让自动攻击安全失败。

BitFire 将经过验证的机器人控制、自适应 Web 应用程序防火墙、恶意软件分析和 PRO 运行时实施整合到一个 WordPress 安全系统中。

免费保护我的网站 →