先前未知可执行文件到互联网的可疑网络活动
编辑先前未知可执行文件到互联网的可疑网络活动
编辑此规则监控来自位于可疑目录中的先前未知可执行文件的互联网网络连接。来自此规则的警报可能表示存在潜在的恶意活动,例如尝试建立与未知或可疑目的地(如命令和控制服务器)连接的未经授权或可疑进程的执行。检测和调查此类行为有助于识别和缓解潜在的安全威胁,保护系统及其数据免受潜在的损害。
规则类型:new_terms
规则索引:
- auditbeat-*
- filebeat-*
- packetbeat-*
- logs-endpoint.events.*
- endgame-*
严重性:低
风险评分: 21
运行频率:5 分钟
搜索索引范围:now-59m (日期数学格式,另请参见 额外回溯时间
)
每次执行的最大警报数: 100
参考:无
标签:
- 域:端点
- 操作系统:Linux
- 用例:威胁检测
- 战术:命令和控制
- 数据源:Elastic Endgame
- 数据源:Elastic Defend
版本: 11
规则作者:
- Elastic
规则许可证:Elastic License v2
调查指南
编辑分类和分析
调查先前未知可执行文件到互联网的可疑网络活动
安装后,恶意软件通常会呼叫其命令和控制服务器,以接收其操作员的进一步指示。
此规则利用新的术语规则类型来检测先前未知的进程,这些进程会启动与外部 IP 地址的网络连接。
注意:本调查指南使用 Elastic Stack 8.5.0 版本中引入的 Osquery Markdown 插件。较旧的 Elastic Stack 版本将在此指南中显示未呈现的 Markdown。本调查指南使用 占位符字段将警报数据动态传递到 Osquery 查询中。占位符字段是在 Elastic Stack 8.7.0 版本中引入的。如果您使用的是 Elastic Stack 8.6.0 或更早版本,则需要手动调整本调查指南的查询以确保它们正确运行。
可能的调查步骤
- 识别任何可疑网络活动或异常的迹象,这些迹象可能表明存在恶意行为。这可能包括意外的流量模式或不寻常的网络行为。
- 调查侦听端口和打开的套接字,以查找潜在的恶意进程、反向 shell 或数据泄露。
- !{osquery{"label":"Osquery - 检索侦听端口","query":"SELECT pid, address, port, socket, protocol, path FROM listening_ports"}}
- !{osquery{"label":"Osquery - 检索打开的套接字","query":"SELECT pid, family, remote_address, remote_port, socket, state FROM process_open_sockets"}}
- 识别执行该操作的用户帐户,分析该帐户,并检查该帐户是否应执行此类操作。
- !{osquery{"label":"Osquery - 检索特定用户的信息","query":"SELECT * FROM users WHERE username = {{user.name}}"}}
- 调查用户当前是否已登录并处于活动状态。
- !{osquery{"label":"Osquery - 调查帐户身份验证状态","query":"SELECT * FROM logged_in_users WHERE user = {{user.name}}"}}
- 调查未知进程的脚本执行链(父进程树)。检查其可执行文件的普遍性以及它们是否位于预期位置。
- !{osquery{"label":"Osquery - 按用户检索正在运行的进程","query":"SELECT pid, username, name FROM processes p JOIN users u ON u.uid = p.uid ORDER BY username"}}
- !{osquery{"label":"Osquery - 检索进程信息","query":"SELECT name, cmdline, parent, path, uid FROM processes"}}
- 调查过去 48 小时内与用户/主机相关的其他警报。
- 如果放置了脚本或可执行文件,则检索这些文件并确定它们是否是恶意的
- 使用私有沙盒恶意软件分析系统进行分析。
- 观察并收集有关以下活动的信息
- 尝试联系外部域和地址。
- 检查域是否是新注册的或意外的。
- 检查域或 IP 地址的信誉。
- 文件访问、修改和创建活动。
相关规则
- 通过 cat 检测到的网络活动 - afd04601-12fc-4149-9b78-9c3f8fe45d39
误报分析
- 如果此活动与新的良性软件安装活动相关,请考虑添加例外,最好是结合用户和命令行条件。
- 尝试通过考虑用户、计算机或业务目的来了解执行的上下文。少量端点(如具有独特软件的服务器)可能看起来不寻常,但满足特定的业务需求。
响应和补救
- 根据分类结果启动事件响应流程。
- 隔离受影响的主机,以防止进一步的攻击后行为。
- 如果分类识别出恶意软件,请在环境中搜索其他受感染的主机。
- 实施临时网络规则、程序和分段来控制恶意软件。
- 停止可疑进程。
- 立即阻止已识别的危害指标 (IoC)。
- 检查受影响的系统中是否存在其他恶意软件后门,例如反向 shell、反向代理或投放器,攻击者可能会使用它们来重新感染系统。
- 删除并阻止在分类期间识别出的恶意工件。
- 调查在受攻击者破坏或使用的系统上的凭据暴露情况,以确保识别出所有受损帐户。重置这些帐户和其他可能受损的凭据(如电子邮件、业务系统和 Web 服务)的密码。
- 运行完整的反恶意软件扫描。这可能会显示系统中遗留的其他工件、持久性机制和恶意软件组件。
- 确定攻击者滥用的初始向量,并采取措施防止通过同一向量进行重新感染。
- 利用事件响应数据和日志记录来提高平均检测时间 (MTTD) 和平均响应时间 (MTTR)。
设置
编辑设置
此规则需要来自以下集成之一的数据:- Elastic Defend - Auditbeat - Filebeat - Packetbeat
Elastic Defend 集成设置
Elastic Defend 使用 Fleet 集成到 Elastic Agent 中。配置后,集成允许 Elastic Agent 监控主机上的事件并将数据发送到 Elastic Security 应用程序。
先决条件
- Elastic Defend 需要 Fleet。
- 要配置 Fleet Server,请参阅文档。
应执行以下步骤,以便在 Linux 系统上添加 Elastic Defend 集成
- 转到 Kibana 主页,然后单击“添加集成”。
- 在查询栏中,搜索“Elastic Defend”,然后选择集成以查看有关它的更多详细信息。
- 单击“添加 Elastic Defend”。
- 配置集成名称,并可选择添加描述。
- 选择您要保护的环境类型,即“传统端点”或“云工作负载”。
- 选择配置预设。每个预设都带有针对 Elastic Agent 的不同默认设置,您可以在稍后通过配置 Elastic Defend 集成策略来进一步自定义这些设置。帮助指南。
- 我们建议选择“完整 EDR(端点检测和响应)”作为配置设置,它提供“所有事件;所有预防措施”
- 在“新代理策略名称”中输入代理策略的名称。如果已存在其他代理策略,则可以单击“现有主机”选项卡,然后选择现有的策略。有关 Elastic Agent 配置设置的更多详细信息,请参阅帮助指南。
- 单击“保存并继续”。
- 要完成集成,请选择“将 Elastic Agent 添加到您的主机”,然后继续执行下一部分,以在您的主机上安装 Elastic Agent。有关 Elastic Defend 的更多详细信息,请参阅帮助指南。
Auditbeat 设置
Auditbeat 是一种轻量级 shipper,您可以将其安装在服务器上,以审核用户和进程在系统上的活动。例如,您可以使用 Auditbeat 来收集和集中来自 Linux 审核框架的审核事件。您还可以使用 Auditbeat 来检测对关键文件(如二进制文件和配置文件)的更改,并识别潜在的安全策略违规行为。
应执行以下步骤,以便在 Linux 系统上添加 Auditbeat
Filebeat 设置
Filebeat 是一个轻量级的托运器,用于转发和集中日志数据。它作为代理安装在您的服务器上,Filebeat 会监控您指定的日志文件或位置,收集日志事件,并将它们转发到 Elasticsearch 或 Logstash 以进行索引。
应执行以下步骤,以便在 Linux 系统上添加 Filebeat
Packetbeat 设置
Packetbeat 是一个实时的网络数据包分析器,您可以使用它进行应用程序监控、性能分析和威胁检测。Packetbeat 的工作原理是捕获您的应用服务器之间的网络流量,解码应用层协议(HTTP、MySQL、Redis 等),将请求与响应相关联,并记录每次事务的有趣字段。
应执行以下步骤,以便在 Linux 系统上添加 Packetbeat
规则查询
编辑host.os.type:linux and event.category:network and event.action:(connection_attempted or ipv4_connection_attempt_event) and process.executable : ( /etc/crontab or /etc/rc.local or ./* or /boot/* or /dev/shm/* or /etc/cron.*/* or /etc/init.d/* or /etc/rc*.d/* or /etc/update-motd.d/* or /home/*/.* or /tmp/* or /usr/lib/update-notifier/* or /var/log/* or /var/tmp/* ) and process.name : * and not ( process.executable : ( /tmp/newroot/* or /tmp/snap.rootfs* or /etc/cron.hourly/BitdefenderRedline or /tmp/go-build* or /srv/snp/docker/* or /run/containerd/* or /tmp/.mount* or /run/k3s/containerd/* or /tmp/selenium* or /tmp/tmp.*/juliainstaller or /tmp/.criu.mntns* or /home/*/.local/share/containers/* or /etc/update-motd.d/* ) or source.ip:(10.0.0.0/8 or 127.0.0.0/8 or 172.16.0.0/12 or 192.168.0.0/16) or process.name : ( apt or chrome or curl or dnf or dockerd or dpkg or firefox-bin or git-remote-https or java or kite-update or kited or node or rpm or saml2aws or selenium-manager or solana-validator or wget or yum or ansible* or aws* or php* or pip* or python* or steam* or terraform* ) or destination.ip:( 0.0.0.0 or 10.0.0.0/8 or 100.64.0.0/10 or 127.0.0.0/8 or 169.254.0.0/16 or 172.16.0.0/12 or 192.0.0.0/24 or 192.0.0.0/29 or 192.0.0.10/32 or 192.0.0.170/32 or 192.0.0.171/32 or 192.0.0.8/32 or 192.0.0.9/32 or 192.0.2.0/24 or 192.168.0.0/16 or 192.175.48.0/24 or 192.31.196.0/24 or 192.52.193.0/24 or 192.88.99.0/24 or 198.18.0.0/15 or 198.51.100.0/24 or 203.0.113.0/24 or 224.0.0.0/4 or 240.0.0.0/4 or "::1" or "FE80::/10" or "FF00::/8" ) )
框架: MITRE ATT&CKTM
-
策略
- 名称:命令和控制
- ID: TA0011
- 参考 URL: https://attack.mitre.org/tactics/TA0011/
-
技术
- 名称:应用层协议
- ID: T1071
- 参考 URL: https://attack.mitre.org/techniques/T1071/