ATT&CK-CN V1.01 Last Update: 2019-11 [返回索引页]

译者: 林妙倩(清华大学网络研究院网络空间安全实习生)、戴亦仑(赛宁网安) 原创翻译作品,如果需要转载请取得翻译作者同意。

数据来源:ATT&CK Matrices

原文: https://attack.mitre.org/techniques/T1100

术语表: /attack/glossary

Web Shell

Web shell 是可公开访问的 Web 服务器上的 Web 脚本,它使攻击者能够利用 Web 服务器作为进入网络的网关。Web shell 可以提供 Web 服务器系统上的一组可执行函数或命令行界面。除了服务器端脚本之外,Web shell 还可用于与 Web 服务器通信的客户机接口程序(参见,例如,China Chopper Web shell 客户端)。 Web shell 可以作为冗余访问 (Redundant Access) 或持久化机制,以防攻击者的主要访问方法被检测到并禁止。

缓解

确保定期对外部 Web 服务器打补丁,以防止攻击者通过利用漏洞进行访问以获得远程代码访问权,或通过文件包含弱点(可能允许攻击者上传自动作为 Web 页面提供服务的文件或脚本)。 审计帐户和组权限,确保账户用于管理服务器不与一些内部网络用户的账户和权限重叠,这些用户可以通过凭据访问并用于登录到 Web 服务器和种植 Web shell 或从 Web 服务器转移到内部网络。

检测

Web shell 可能难以检测到。 与其他形式的持久性远程访问不同,它们不发起连接。 服务器上的 Web shell 可能很小且看起来无害。 例如,China Chopper Web shell 的 PHP 版本是以下简短的 payload: <?php @eval($_POST['password']);> 然而,存在检测机制。进程监控可用于检测执行可疑操作(如运行 cmd 或访问不在 Web 目录中的文件)的 Web 服务器。 文件监视可用于检测 Web 服务器的 Web 目录中与 Web 服务器内容更新不匹配的文件的更改,并可表明 Web shell 脚本的植入。 记录尝试对服务器进行的身份验证,以及与服务器和内部网络之间的任何异常的通信模式。