当前位置: 首页 > 知识库问答 >
问题:

用regex从payload_printable字段提取Splunk域

长孙景天
2023-03-14

我试图从Splunk payload_printable字段中提取一个域(源是Suricata日志),发现这个正则表达式在大多数情况下都能正常工作:

source="*suricata*" alert.signature="ET JA3*" 
| rex field=payload_printable "(?<dom>[a-zA-Z0-9\-\_]{1,}\.[a-zA-Z0-9\-\_]{2,}\.[a-zA-Z0-9\-\_]{2,})"
| table payload_printable, dom

正则表达式为:

(?<dom>[a-zA-Z0-9\-\_]{1,}\.[a-zA-Z0-9\-\_]{2,}\.[a-zA-Z0-9\-\_]{2,})
...........^aO+.t....]......$.....mT*l.......&.,.+.0./.$.#.(.'.
...........=.<.5./.
...].........activity.windows.com..........
.................
.......................#...........
...........^aO+]v;.~........:.Y.zORw._I..K>..&.,.+.0./.$.#.(.'.
...........=.<.5./.
...].........activity.windows.com..........
.................
.......................#...........
...........^h.'`.o2...
.y.k>..e.ef...]..8.G..&.,.+.0./.$.#.(.'.
...........=.<.5./.
...p.........arc.msn.com..........
.................
.......................#.........h2.http/1.1...................

我不知道该怎么做。谢谢你的帮助。

共有1个答案

申屠浩歌
2023-03-14

该正则表达式将匹配域名并正确匹配您给出的两个示例:

"(?<dom>(?:[a-z0-9](?:[a-z0-9-_]{0,61}[a-z0-9])?\.)+[a-z0-9][a-z0-9-_]{0,61}[a-z0-9])"
 类似资料:
  • 如何使用splunk查询将日志中所需的数据提取到自定义字段中? 我尝试过使用rex命令进行多次查询,将日志中的某些部分数据提取到一些自定义字段中,但我从未在splunk显示所有输出字段的输出中看到这些数据。 请建议。

  • 此regex:使用多个组匹配表达式。regex的要点是它捕获两个成对的模式,其中regex的第一部分必须跟在regex的第二部分后面。 如何提取这两个组中的每一个? 这里的关键是regex匹配两次,每次包含2个组。我希望每个匹配都有一个它自己的列表,这个列表包含2个元素,每个组一个。

  • 美化的json响应: } 我需要提取docId、id、nameId,因为我总是知道代码。 添加了groovy脚本来设置参数:

  • 我使用的是ApacheJMeter5.3。我有一个HTTP请求,它返回JSON响应,如下所示: 有没有办法使用JSON提取器从“certificates”对象(本例中为4b89aa6c131)中提取第一个字段名?

  • 本文向大家介绍Python Regex从字符串中提取最大数值,包括了Python Regex从字符串中提取最大数值的使用技巧和注意事项,需要的朋友参考一下 使用正则表达式从字符串中提取最大数值的最简单方法是- 使用regex模块从字符串中提取所有数字 从这些数字中找到最大值 例如,对于输入字符串- 这个城市有121005人,邻近城市有1587469人,而遥远城市有18775994人。 我们应该得到