返回资讯中心
外部精选
软件工程
#开发者实时流

开发者自建主机入侵哨兵ARTEX,可检测并终止恶意程序

来源标题:My lunch-break response to ARTEX: a host intrusion sentinel

名为ARTEX的开源主机入侵检测工具可自动识别疑似攻击行为,并默认立即终止敌对程序及其启动的所有进程。该工具受FBI关于智能体入侵框架的警告启发而开发,针对Web Shell、远程访问植入、Active Directory攻击等场景。目前仍为草稿状态,尚未正式发布。

Hacker News 最新gary23w2026/11/14 · 今天30 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

一款你自己运行的主机入侵哨兵。每台机器上有一个小型 agent,监视正在运行的程序及其网络连接,在代码中对所见内容打分,并把看起来像攻击的案例上报到你部署在自己 Cloudflare 账户中的服务。默认情况下,它还会当场终止敌对程序以及该程序启动的一切。

它是在回应 FBI FLASH-20261113-001 关于 agentic 入侵框架的通报时构建的,针对的是这些工具在机器上所做的那些事:web shell、加载器、远程访问植入、Windows 机器之间的横向移动、Active Directory 攻击,以及自动化操作者的节奏和重复性。

状态:草稿,尚未发布。在依赖它之前,请先阅读“哪些已经测试、哪些尚未测试”。

每台机器 你的 Cloudflare 账户 ┌──────────────────────────────┐ HTTPS 出站 ┌─────────────────────────────────┐ │ agent/sentinel_agent.py │ ────────────► │ server/src/worker.mjs (Worker) │ │ 传感器 → 打分 → 案例 │ ◄──────────── │ 案例、决策、学习 │ │ 暂停 / 停止(如获批准) │ 决策、 │ D1 数据库,可选 AI │ └──────────────────────────────┘ 权重 └─────────────────────────────────┘

agent 读取操作系统自带的进程表和连接表。它不抓包,也不读取文件内容。它不开放任何端口。打分在机器上完成。

只有案例会离开机器:一个达到 SUSPECT 或 HOSTILE 级别的程序,以及触发该级别的信号、启动它的程序、它通信过的地址。命令行永远不会离开机器;agent 上报的是匹配了哪个模式,而不是文本内容。

服务会校验每个字段,重新对信号打分(级别绝不采信设备上报的值),加密存储案例,发出告警,并返回两样东西:运营者对 agent 已暂停程序的决策,以及学习到的信号权重。

它会在限定范围内采取行动。它绝不触碰操作系统进程、安全软件、容器运行时、远程访问(sshd)、Web 服务器本身,以及用户正在使用的浏览器、邮件或文档程序:它终止的是这些程序启动的有害对象,而不是这些程序本身。它绝不会向已经退出的进程发送信号。

响应模式 模式 agent 对敌对程序采取什么动作 何时选择它 kill 立即终止该程序及其启动的一切,然后上报所做的事 入侵者的几分钟比一个被误停的任务更重要 decide 立即冻结它,然后由服务的决策模型给出停止、释放或保持 你已有模型,并希望误报的代价是几秒,而不是一个程序 pause 冻结它(可逆),等待运营者停止或释放 错误停止会导致故障 report 什么都不做;只上报 你正在评估,或由其他工具响应

用服务变量 RESPONSE_MODE 设置整个部署的上限,用注册时的 --mode 设置单台机器自己的模式。机器实际采用两者中较低的那个。

默认行为。RESPONSE_MODE 留空时,配置了模型的部署运行 decide,没有配置模型的部署运行 kill。除非另有指示,agent 请求 kill。

decide 如何工作。agent 在程序被判定为敌对的瞬间就将其冻结,因此在做出决策时攻击已经被阻止。服务会向模型询问一次,限时八秒,并在同一次交互中给出回答:

如果模型失败或超时,由 DECISION_FALLBACK 决定:kill(默认)或 hold。如果 agent 在二十秒内完全没有收到服务的任何回应,它会自行应用相同的回退策略。

Kill 不可逆。在 kill 模式下,一次误报会终止一个合法程序;decide 的存在正是为了避免这种情况。agent 只对

几乎没有正当用途的特定启动链,或证据跨越三个类别的案例采取行动,并且被运营者标记为“ours”的程序永远不会再被触碰。即便如此:在错误停止代价高昂的机器上,先运行 pause 或 report,观察它本来会做什么。

如果你运行 report 或 pause,也请同时运行 AI 分析师(见“AI 部分”)。在这些模式下,除非有人阅读案例,否则任何攻击都不会被终止,而自动化入侵者以分钟为单位行动。第二个独立模型阅读每个案例并建议停止或释放,可以缩短这段等待;把它与你组织已在使用的任何 AI 分开,以免一个被攻陷或混乱的系统评判自己的工作。

领域 信号 邮件与诱饵 由邮件、文档和浏览器程序启动的脚本;从附件和压缩包中运行的程序;快捷方式以及“粘贴此命令”式启动 Web 应用 由 Web 服务器启动的 shell 或解释器;下载并运行和反向 shell 命令;who-am-I 命令 加载器与植入 被用作加载器的系统工具(MSBuild、cmstp、regsvr32、rundll32、mshta);临时文件夹中与互联网通信的程序;规律的回连时序;扇出扫描 Windows 域 凭据转储和 Kerberoasting 命令;域枚举;WinRM、WMI 和 PsExec 会话内的 shell;以及当 agent 以管理员权限运行时,Security 日志中针对 Kerberoasting、DCSync、失败登录突发、日志被清除和特权组变更的模式 自动化操作者 在一个立足点下以机器速度涌出的一连串不同命令;近乎复制的重试;同一命令同时启动两次 Web 请求 从 Web 服务器自己的访问日志(nginx、Apache、IIS)读取:目录模糊测试、注入形态的请求以及应用是否回应了它们、遍历记录编号、登录猜测、带命令参数调用服务端脚本,以及携带请求体的请求出现大量应用失败 Web 文件夹 agent 启动后出现在 Web 文件夹中的服务端脚本,且周围没有发布活动 隧道 按名称识别 Chisel;按程序名加安装文件夹或端口识别 SoftEther;按客户端、按任何通过本地 Tor 代理发送流量的程序,以及按来自 Tor Project 公布的出口节点的入站连接识别 Tor

(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →