Parser-Free Querying of Security Logs
本文介绍了 Sieve,这是一个利用基于自动提取的日志格式上下文的大型语言模型来为自然语言安全查询生成可执行代码的系统,与手动脚本相比,其在复杂时序和跨事件日志分析中显著降低了错误率。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象你是一名试图侦破罪案的安保侦探。你面前有一大堆证据:数百万页由不同人员(服务器、防火墙、用户账户)留下的手写笔记、收据和日志。问题在于,每个人的字迹都杂乱无章且不一致。有人将日期写成"Jan 1",有人写成"01/01",还有人只写"Monday"。有些笔记写在便利贴上,有些写在餐巾纸上,墨水颜色也各不相同。
要破案,你需要提出具体问题,例如:“向我展示凌晨 2 点到 4 点之间所有试图闯入大楼的记录。”
旧方法:过度劳累的图书管理员
传统上,安全团队试图通过雇佣一群图书管理员(解析器)来解决这个问题,让他们阅读每一张笔记,辨认字迹风格,并将所有内容重写为完美、统一的电子表格。
- 优点:一旦电子表格完成,提问就会变得快速且简单。
- 缺点:构建电子表格耗时极长。每当有人开始以略有不同的方式书写笔记时,图书管理员们就必须停下,学习新风格并重写规则。如果出现了一种从未见过的笔记类型,整个系统就会瘫痪,直到图书管理员修复它为止。
替代方案:grep 侦探
另一种选择是完全跳过图书管理员。你只需拿起放大镜(如 grep 这样的工具),亲自扫描那些原始、杂乱的笔记。
- 优点:你可以立即开始,无需等待图书管理员。
- 缺点:你必须确切知道每一种可能的字迹风格长什么样。如果你漏掉了“闯入”(break-in)这个词的某种变体,你就会错过线索。此外,像“找出在 60 秒内从两个不同门进入的人”这样复杂的问题,仅靠手动逐行扫描文本是极难完成的。
新方案:Sieve(智能翻译器)
这篇论文介绍了 Sieve,一个能瞬间为你定制工具的超级智能翻译系统。
以下是 Sieve 的工作原理,使用一个简单的类比:
- 提问:你用 plain English(通俗英语)向 Sieve 提问:“找出所有在 5 分钟窗口期内尝试闯入超过 10 次的 IP 地址。”
- 快速扫描:Sieve 不会阅读整本百万页的书,而是快速翻阅前几页,查看字迹风格。它会生成一张微小的“作弊表”,列出笔记的不同书写方式(例如:“哦,有时他们说'Failed password',有时说'Auth failure'")。
- 代码编写:Sieve 将你的问题和这张微小的作弊表发送给一个非常智能的 AI(大语言模型)。AI 不会阅读整本书;它仅利用作弊表来编写一个定制计算机脚本(就像一个微型机器人程序),专门用于搜寻你的答案。
- 执行:这个定制脚本在原始笔记上运行。由于它是 AI 根据作弊表编写的,它确切知道如何查找"Failed password"和"Auth failure",并如何进行计数。
- 结果:脚本给出答案。如果脚本出错(例如拼写错误),Sieve 会检测到错误,告知 AI,并要求其重写脚本。它会尝试最多四次,直到得到正确结果。
为什么这很重要
该论文在 5 种不同类型的日志上测试了 133 个不同的安全问题。以下是他们的发现:
- 在处理难题时比人类更聪明:当问题很简单(例如“查找单词'error'")时,Sieve 的表现与人类专家编写快速脚本一样好。但当问题很复杂(例如“找出跨时间和不同人员的模式”)时,Sieve 犯的错误比人类从头编写脚本少了 3 倍。
- 无需预先完美的图书管理员:Sieve 不需要预先制作好的电子表格。它直接在杂乱的原始笔记上工作。
- 简单更好:论文发现,你不需要一个花哨、昂贵的 AI 来先辨认字迹风格。一个简单的、快速的算法,只需统计某些短语出现的频率,其效果就与复杂方法一样好。
- 安全且可靠:AI 不仅仅是猜测答案;它编写的是像普通计算机程序一样运行的代码。这意味着结果是确定性的(同一个问题总是得到相同的答案),并且你可以查看代码以确切了解它是如何工作的。
总结
Sieve 弥合了搜索原始文本的速度与结构化数据库的强大功能之间的差距。它让安全分析师能够用通俗英语提出复杂问题,并立即获得准确答案,而无需等待工程师构建新的数据库架构,也无需自己费力编写复杂的脚本。它将“杂乱的笔记本”即时转化为可搜索的数据库,一次解决一个问题。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。