日志服务依托全球白帽子共享安全资产库,提供安全检测函数。您只需通过日志中的IP地址、域名或者URL,即可检测其是否安全。本文介绍安全检测函数的基本语法及示例。
应用场景
安全检测函数适用如下场景:
- 针对服务运维有较强需求的企业和机构(例如互联网、游戏、咨询等),其IT人员和安全运维人员可及时发现可疑访问、攻击及侵入网站等行为,并及时采取措施。
- 针对内部资产保护有较强需求的企业和机构(例如银行、证券、电商等),其IT人员和安全运维人员可及时发现内部访问危险网站及下载木马等行为,并及时采取行动。
功能特点
安全检测函数具备如下功能特点:
- 可靠:依托全球共享的白帽子安全资产库,并及时更新。
- 快速:检测百万IP地址、域名或URL仅需几秒钟。
- 简单:支持任何网络日志,调用3个SQL函数security_check_ip、security_check_domain、security_check_url即可获得结果。
- 灵活:交互式查询及可视化展示,支持创建告警。
函数列表
日志服务支持如下安全检查函数。
注意 在日志服务分析语句中,表示字符串的字符必须使用单引号('')包裹,无符号包裹或被双引号("")包裹的字符表示字段名或列名。例如:'status'表示字符串status,status或"status"表示日志字段status。
函数名称 | 语法 | 说明 |
---|---|---|
security_check_ip函数 | security_check_ip(x) | 检查IP地址是否安全。 |
security_check_domain函数 | security_check_domain(x) | 检查域名是否安全。 |
security_check_url函数 | security_check_url(x) | 检查URL是否安全。 |
security_check_ip函数
security_check_ip函数用于检查IP地址是否安全。
语法
security_check_ip(x)
参数说明
参数 | 说明 |
---|---|
x | 参数值为IP地址。 |
返回值类型
bigint类型,取值说明:
- 1:不安全。
- 0:安全。
示例
通过client_ip字段统计网站的不安全客户端信息。
- 查询和分析语句
* | SELECT client_ip, ip_to_country(client_ip,'en') AS country, ip_to_provider(client_ip) AS provider, count(1) AS PV WHERE security_check_ip(client_ip) = 1 GROUP BY client_ip ORDER BY PV DESC
- 查询和分析结果
security_check_domain函数
security_check_domain函数用于检查域名是否安全。
语法
security_check_domain(x)
参数说明
参数 | 说明 |
---|---|
x | 参数值为域名。 |
返回值类型
bigint类型,取值说明:
- 1:不安全。
- 0:安全。
示例
通过网站域名统计网站每分钟出现不安全访问的次数,并通过折线图展示。
- 查询和分析语句
status : * | SELECT count_if( security_check_domain (http_referer) != 0 ) AS "问题总数", time_series(__time__, '1m', '%H:%i:%s', '0') AS time GROUP BY time
- 查询和分析结果
security_check_url函数
security_check_url函数用于检查URL地址是否安全。
语法
security_check_url(x)
参数说明
参数 | 说明 |
---|---|
x | 参数值为URL地址。 |
返回值类型
bigint类型,取值说明:
- 1:不安全。
- 0:安全。
示例
通过URL地址统计网站每分钟安全访问的次数,并通过折线图展示。
- 查询和分析语句
status : * | SELECT count_if( security_check_url (request_uri) = 0 ) AS "安全总数", time_series(__time__, '1m', '%H:%i', '0') as time GROUP BY time LIMIT 20
- 查询和分析结果