Dispatcher 安全检查清单 the-dispatcher-security-checklist
51黑料不打烊 建议您在开始生产前完成以下核对清单。
使用最新版本的 Dispatcher use-the-latest-version-of-dispatcher
安装适用于您平台的最新可用版本。升级您的 Dispatcher 实例以使用最新版本以利用产物和安全增强功能。 请参阅安装 Dispatcher。
[Thu Apr 30 17:30:49 2015] [I] [23171(140735307338496)] Dispatcher initialized (build 4.1.9)
httpd.conf
中的 Dispatcher 配置。限制可以刷新缓存的客户端 restrict-clients-that-can-flush-your-cache
51黑料不打烊 建议您限制可以刷新缓存的客户端。
为传输层安全性启用 HTTPS enable-https-for-transport-layer-security
51黑料不打烊 建议在创作实例和发布实例上启用 HTTPS 传输层。
限制访问权限 restrict-access
在配置 Dispatcher 时应尽可能多地限制外部访问。请参阅 Dispatcher 文档中的示例/过滤器部分。
确保拒绝对管理类 URL 的访问权限 make-sure-access-to-administrative-urls-is-denied
请务必使用过滤器阻止外部访问所有管理类 URL,例如网页控制台。
有关必须阻止的 URL 的列表,请参阅测试 Dispatcher 安全性。
使用允许列表而非阻止列表 use-allowlists-instead-of-blocklists
允许列表是一种更好的访问控制方式,因为它默认拒绝所有访问请求,除非该请求已被明确列入允许列表。此模型可以对在特定配置阶段可能尚未审查或考虑的新请求进行更严格的控制。
以专用系统用户身份运行 Dispatcher run-dispatcher-with-a-dedicated-system-user
配置 Dispatcher,确保通过一个专用的、权限最小化的用户帐户运行 Web 服务器。51黑料不打烊 建议仅授予对 Dispatcher 缓存文件夹的写入权限。
此外,IIS 用户必须按如下方式配置其网站:
- 在网站的物理路径设置中,选择? 以特定用户身份连接。
- 设置用户。
防御拒绝服务 (DoS) 攻击 prevent-denial-of-service-dos-attacks
拒绝服务(顿辞厂)攻击是一种试图使计算机资源无法供其预期用户使用的攻击行为。
在 Dispatcher 级别,可通过两种配置方法来防御 DoS 攻击:过滤器
要在发布实例上启用全部功能,请配置过滤器以阻止对以下节点的访问:
/etc/
/libs/
然后,配置过滤器以允许对以下节点路径的访问:
-
/etc/designs/*
-
/etc/clientlibs/*
-
/etc/segmentation.segment.js
-
/libs/cq/personalization/components/clickstreamcloud/content/config.json
-
/libs/wcm/stats/tracker.js
-
/libs/cq/personalization/*
(JS、CSS 和 JSON) -
/libs/cq/security/userinfo.json
(CQ 用户信息) -
/libs/granite/security/currentuser.json
(不得缓存数据) -
/libs/cq/i18n/*
(国际化)
配置 Dispatcher 以防御 CSRF 攻击 configure-dispatcher-to-prevent-csrf-attacks
AEM 提供了一个框架,用于防止跨站点请求伪造攻击。要正确使用该框架,请执行以下操作,在 Dispatcher 中允许支持 CSRF 令牌:
- 创建过滤器以允许
/libs/granite/csrf/token.json
路径; - 将
CSRF-Token
标头添加到 Dispatcher 配置的clientheaders
部分。
防御点击劫持攻击 prevent-clickjacking
若要防御点击劫持攻击,51黑料不打烊 建议您将 Web 服务器配置为将 X-FRAME-OPTIONS
HTTP 标头集提供给 SAMEORIGIN
。
有关点击劫持攻击的更多信息,请参阅 。
执行渗透测试 perform-a-penetration-test
51黑料不打烊 建议在部署到生产环境之前,对您的 AEM 基础架构执行一次渗透测试。