Rapid7普遍VPN
如果Rapid7不支持VPN解决方案的日志记录格式,您仍然可以将数据发送到InsightIDR的用户行为分析引擎,只要您转换日志以满足此通用事件格式(UEF)合同的要求。
通用VPN事件源支持多种事件类型:
- VPN_会话_IP_已分配
- VPN_会话_终止
指定的VPN\u会话\u IP\u的必填字段
当您发起VPN会话时,必须向InsightIDR发送一个VPN_SESSION_IP_ASSIGNED事件,该事件具有分配给该帐户的特定IP地址。
不要从多个用户帐户使用单个IP的设备发送VPN会话事件。
InsightIDR仅支持在VPN会话中固定分配给单个用户的IP,并在VPN会话终止时返回给池的情况下监控VPN会话。如果不这样做,就会导致产品中出现意想不到的行为和检测。
领域 |
必修的? |
验证 |
描述 |
|---|---|---|---|
事件类型 |
对 |
VPN_会话_IP_已分配 |
此通用事件的事件类型。 |
版本 |
对 |
InsightIDR目前支持版本“v1”。 |
VPN会话IP分配事件类型的版本。将来可能会添加新版本,并添加、删除或修改文档化字段。 |
时间 |
对 |
必须是具有毫秒精度的有效ISO 8601扩展时间戳,例如: |
ISO 8601扩展时间戳。 |
账户 |
对 |
这应该是一个非空字符串,例如 |
VPN会话关联的帐号。如果该帐户与用户关联的任何已知帐户相匹配,InsightIDR将把VPN会话属性归于该用户。 |
帐户\u域 |
不 |
该值必须为null或非空,例如 |
帐户的Active Directory域。 |
分配的ip |
对 |
这必须是IPv4地址或IPv4映射的IPv6地址。 |
在VPN会话期间分配此帐户的IP地址。 |
自定义数据 |
不 |
必须是一个JSON对象。 |
使用此字段发送任何其他信息。该数据可用于日志搜索和LEQL查询。 |
VPN_SESSION_IP_ASSIGNED with Ingress的必填字段
您可以选择随VPN_SESSION_IP_ASSIGNED事件发送以下附加字段,这使InsightIDR能够检测并可视化来自此事件的进入活动:
- 来源(ip)
- 身份验证\u目标
- 认证结果
如果这三个字段都存在且有效(除了常规VPN字段),则Universal VPN事件源也将把Universal VPN event解释为一个VPN动作和进入活动Rapid7通用入口身份验证文件
如果这三个字段中有一个或多个存在但缺少数据,InsightIDR将完全放弃VPN和Ingress事件。
为了让VPN和Ingress事件被接受,所有可选字段必须是存在且有效的。
领域 |
必修的? |
验证 |
描述 |
|---|---|---|---|
事件类型 |
对 |
VPN_会话_IP_已分配 |
此通用事件的事件类型。 |
版本 |
对 |
InsightIDR目前支持版本“v1”。 |
VPN会话IP分配事件类型的版本。将来可能会添加新版本,并添加、删除或修改文档化字段。 |
时间 |
对 |
必须是具有毫秒精度的有效ISO 8601扩展时间戳,例如: |
ISO 8601扩展时间戳。 |
账户 |
对 |
这应该是一个非空字符串,例如 |
VPN会话关联的帐号。如果该帐户与用户关联的任何已知帐户相匹配,InsightIDR将把VPN会话属性归于该用户。 |
帐户\u域 |
不 |
该值必须为null或非空,例如 |
帐户的Active Directory域。 |
分配的ip |
对 |
这必须是IPv4地址或IPv4映射的IPv6地址。 |
在VPN会话期间分配此帐户的IP地址。 |
来源(ip) |
对 |
这必须是IPv4地址或IPv4映射的IPv6地址。 |
认证的源IP地址。InsightIDR将只考虑公网/可路由IP地址作为有效的进入活动。 |
认证结果 |
对 |
这必须是“成功”或“失败”。 |
验证结果。 |
身份验证\u目标 |
对 |
每个应用程序或服务必须是唯一的字符串值。字母数字字符、空格和字符 |
认证尝试发生的VPN名称。当将鼠标悬停在入口图标上时,此字段的值将出现。也可以是一般的值吗 |
自定义数据 |
不 |
必须是一个JSON对象。 |
VPN事件的附加信息,不用于解释该事件。将显示在source_data的日志搜索中。 |
VPN_会话_终止所需的字段
当您终止VPN会话时,必须使用其会话被终止的帐户发送VPN_会话_终止事件。会话终止后,InsightIDR将不再根据会话启动时分配的IP地址将活动属性赋予用户。
如果日志中未包含生成VPN会话终止事件所需的信息,则当另一个VPN会话IP分配事件观察到该IP时,分配的IP将被转移到新会话。
领域 |
必修的? |
验证 |
描述 |
|---|---|---|---|
事件类型 |
对 |
该字段必须是vpn_session_terminate,以表示通用事件的类型。 |
此通用事件的事件类型。 |
版本 |
对 |
InsightIDR目前支持版本“v1”。 |
VPN_会话_终止事件版本。将来可能会添加新版本,并添加、删除或修改文档化字段。 |
时间 |
对 |
必须是具有毫秒精度的有效ISO 8601扩展时间戳,例如: |
ISO 8601扩展时间戳。 |
账户 |
对 |
这应该是一个非空字符串,例如 |
与VPN会话关联的帐户。如果该帐户匹配与用户关联的任何已知帐户,InsightIDR将查找该用户的任何现有IP映射并将其删除。 |
帐户\u域 |
不 |
该值必须为null或非空,例如 |
帐户的Active Directory域。 |
自定义数据 |
不 |
必须是一个JSON对象。 |
使用此字段发送任何其他信息。该数据可用于日志搜索和LEQL查询。 |
示例格式
您必须以UTF-8格式向InsightIDR收集器发送事件,每条日志行表示一个事件,并用一条新行分隔每个事件。
例如:{“event_type”:“VPN_SESSION_IP_ASSIGNED”、“版本”:“v1”,“时间”:“2018 - 06 - 07年t18:18:31.123z”、“账户”:“jdoe”、“assigned_ip”:“10.6.100.40”、“source_ip”:“33.5.45.40”、“authentication_result”:“成功”,“authentication_target”:“波士顿办公室”VPN}
发送到InsightIDR的每个事件不能包含换行符;InsightIDR只允许换行来分隔通用事件。
以下是一些具有可读格式的通用VPN事件示例:
1.
{
2.
“事件类型”:“VPN会话IP分配”,
3.
“版本”:“v1”,
4.
“时间”:“2018-06-07T18:18:31.123Z”,
5.
“账户”:“jdoe”,
6.
“已分配ip”:“10.6.100.40”,
7.
“来源ip”:“33.5.100.40”,
8.
“authentication_result”:“成功”,
9
authentication_target: Boston Office VPN
10
}
或:
1.
{
2.
“事件类型”:“VPN会话IP分配”,
3.
“版本”:“v1”,
4.
“时间”:“2018-06-07T18:18:31.123Z”,
5.
“账户”:“jdoe”,
6.
“帐户\域”:“公司”,
7.
“已分配ip”:“10.6.100.40”
8.
}
或:
1.
{
2.
“事件类型”:“VPN会话IP分配”,
3.
“版本”:“v1”,
4.
“时间”:“2018-06-07T18:18:31.123Z”,
5.
“账户”:“jdoe”,
6.
“帐户\域”:“公司”,
7.
“已分配ip”:“10.6.100.40”,
8.
“自定义数据”:{
9
“键”:“值”
10
}
11
}
12
或:
1.
2.
{
3.
:“event_type VPN_SESSION_TERMINATION”,
4.
“版本”:“v1”,
5.
“时间”:“2018-06-07T18:18:31.123Z”,
6.
“账户”:“jdoe”,
7.
“帐户\域”:“公司”
8.
}