ATD文档中心 logo ATD文档中心

说明

接口以POST方式调用,body格式为json,其中旧字段名将于后续版本中删除。

1. request body数据样例

{
	"host": "test.baishancloud.com",
	"info": [{
		"time_local": 1608793247,
		"@timestamp": "2020-12-24T15:00:47.000+0800",
		"url_pattern": "test.baishancloud.com/inc/ajax.php?ac=digg&ac2=&tab=vod+union+select*//**//*+null,md5(1231412414)+from+mac_manager+--%20",
		"url.pattern": "test.baishancloud.com/inc/ajax.php?ac=digg&ac2=&tab=vod+union+select*//**//*+null,md5(1231412414)+from+mac_manager+--%20",
		"reason": "SQL注入",
		"event.reason": "SQL注入",
		"perspective_name": "ip",
		"atd.key": "ip",
		"perspective_value": "124.1.1.2",
		"atd.value": "124.1.1.2",
		"policy_id": "100101",
		"rule.id": "100101",
		"pv": 20,
		"event.pageview_count": 20,
		"ip": "124.1.1.2",
		"client.ip": "124.1.1.2",
		"url": "test.baishancloud.com/inc/ajax.php",
		"url.original": "test.baishancloud.com/inc/ajax.php",
		"path": "/inc/ajax.php",
		"url.path": "/inc/ajax.php",
		"score": 100,
		"event.risk_score": 100,
		"time_range": [1608793187, 1608793247],
		"event.start": "2020-12-24T14:59:47.000+0800",
		"event.end": "2020-12-24T15:00:47.000+0800",
		"atdrt_report_time_local": "2020-12-24T15:00:47.448+0800",
		"event.created": "2020-12-24T15:00:47.448+0800",
		"path_count": 1,
		"path_pv": 1,
		"event.path_count": 1,
		"sliding_window": "1min",
		"rule.duration": "1min",
		"expire": 1800,
		"expire_time": 1800,
		"respond.duration": 1800,
		"host": "test.baishancloud.com",
		"atd.domain": "test.baishancloud.com",
		"service": "web",
		"service.type": "web",
		"service_category": "web",
		"event.type": "web",
		"engine_type": "policy",
		"event.provider": "policy",
		"action": "online",
		"event.action": "online",
		"country": "韩国",
		"client.geo.country_name": "韩国",
		"province": "Seoul-teukbyeolsi",
		"client.geo.region_name": "Seoul-teukbyeolsi",
		"district": "-",
		"client.geo.district_name": "-",
		"city": "Seoul",
		"client.geo.city_name": "Seoul",
		"idc": "-",
		"client.as.organization.name": "-",
		"export_ip": 10,
		"client.export_probability": 10,
		"not_ban_reason": "未开启拦截",
		"respond.ignore_reason": "未开启拦截",
		"action_ban": false,
		"is_data_center": "no",
		"in_white_list": false,
		"ip_tag": [],
		"tags": [],
		"logical_operator": "and",
		"rule.logical_operator": "and",
		"search_engine_name": "",
		"client.search_engine_name": "",
		"respond.status": [],
		"ip_credit": "{\"is_legal\": \"yes\", \"is_local\": \"no\", \"latest\": [], \"trend\": [[1606147200, 0, null], [1606233600, 0, null], [1606320000, 0, null], [1606406400, 0, null], [1606492800, 0, null], [1606579200, 0, null], [1606665600, 0, null], [1606752000, 0, null], [1606838400, 0, null], [1606924800, 0, null], [1607011200, 0, null], [1607097600, 0, null], [1607184000, 0, null], [1607270400, 0, null], [1607356800, 0, null], [1607443200, 0, null], [1607529600, 0, null], [1607616000, 0, null], [1607702400, 0, null], [1607788800, 0, null], [1607875200, 0, null], [1607961600, 0, null], [1608048000, 0, null], [1608134400, 0, null], [1608220800, 0, null], [1608307200, 0, null], [1608393600, 0, null], [1608480000, 0, null], [1608566400, 0, null], [1608652800, 0, null], [1608739200, 0, null]], \"score\": null, \"ip\": \"124.1.1.2\", \"addr\": [{\"country\": \"\\u97e9\\u56fd\", \"province\": \"Seoul-teukbyeolsi\", \"city\": \"Seoul\", \"district\": \"-\", \"accuracy\": \"\\u57ce\\u5e02\\u7ea7\", \"location\": {\"latitude\": \"37.572457\", \"longitude\": \"126.973047\", \"radius\": \"\"}, \"idc\": \"-\", \"user\": \"-\"}], \"search_engine\": {\"name\": \"\", \"status\": \"\"}, \"credit\": {\"is_local\": \"no\", \"dirty\": \"0.00\", \"office\": 10.41, \"family\": 6.59, \"base_station\": 3.16, \"edu_station\": 3.16, \"person\": 11, \"active\": 5, \"user_count\": 1, \"export_ip\": 10}, \"services\": [], \"tag_list\": [], \"ports\": [], \"is_near\": true, \"is_black\": \"no\", \"is_spam\": \"no\", \"is_proxy\": \"no\", \"is_virus\": \"no\", \"is_tor\": \"no\", \"is_wangba\": \"no\", \"is_data_center\": \"no\", \"type\": {}, \"is_abuse\": \"no\", \"is_spider\": \"no\", \"export_score\": \"60\", \"cache_at\": 1608790831}",
		"client.credit": "{\"is_legal\": \"yes\", \"is_local\": \"no\", \"latest\": [], \"trend\": [[1606147200, 0, null], [1606233600, 0, null], [1606320000, 0, null], [1606406400, 0, null], [1606492800, 0, null], [1606579200, 0, null], [1606665600, 0, null], [1606752000, 0, null], [1606838400, 0, null], [1606924800, 0, null], [1607011200, 0, null], [1607097600, 0, null], [1607184000, 0, null], [1607270400, 0, null], [1607356800, 0, null], [1607443200, 0, null], [1607529600, 0, null], [1607616000, 0, null], [1607702400, 0, null], [1607788800, 0, null], [1607875200, 0, null], [1607961600, 0, null], [1608048000, 0, null], [1608134400, 0, null], [1608220800, 0, null], [1608307200, 0, null], [1608393600, 0, null], [1608480000, 0, null], [1608566400, 0, null], [1608652800, 0, null], [1608739200, 0, null]], \"score\": null, \"ip\": \"124.1.1.2\", \"addr\": [{\"country\": \"\\u97e9\\u56fd\", \"province\": \"Seoul-teukbyeolsi\", \"city\": \"Seoul\", \"district\": \"-\", \"accuracy\": \"\\u57ce\\u5e02\\u7ea7\", \"location\": {\"latitude\": \"37.572457\", \"longitude\": \"126.973047\", \"radius\": \"\"}, \"idc\": \"-\", \"user\": \"-\"}], \"search_engine\": {\"name\": \"\", \"status\": \"\"}, \"credit\": {\"is_local\": \"no\", \"dirty\": \"0.00\", \"office\": 10.41, \"family\": 6.59, \"base_station\": 3.16, \"edu_station\": 3.16, \"person\": 11, \"active\": 5, \"user_count\": 1, \"export_ip\": 10}, \"services\": [], \"tag_list\": [], \"ports\": [], \"is_near\": true, \"is_black\": \"no\", \"is_spam\": \"no\", \"is_proxy\": \"no\", \"is_virus\": \"no\", \"is_tor\": \"no\", \"is_wangba\": \"no\", \"is_data_center\": \"no\", \"type\": {}, \"is_abuse\": \"no\", \"is_spider\": \"no\", \"export_score\": \"60\", \"cache_at\": 1608790831}"
	}]
}

字段解释:

旧字段名 新字段名 类型 取值范围 说明
host host string - 域名
info info array - 拦截数据数组
info[0].time_local info[0].@timestamp int - unix 时间戳
info[0].perspective_name info[0].”atd.key” enum [“ip”,”id”] 分析维度的名称,目前ATD支持的分析维度有IP和ID两种,其中ID为用户指定的user_id、device_id等可以唯一标示一个用户的ID
info[0].perspective_value info[0].”atd.value” string - 分析维度的值
info[0].ip info[0].”client.ip” string - 当分析维度为IP时,值为攻击IP;当分析维度不为IP时,攻击IP可能为多个,所以值为攻击IP列表,多IP之间以,分割
info[0].path info[0].”url.path” string - 被访问最多的路径
info[0].path_count info[0].”event.path_count” int - 被访问最多路径的请求数
info[0].pv info[0].”event.pageview_count” int - 本次时间窗⼝内的总请求数
info[0].engine_type info[0].”event.provider” enum [“policy”,”deep”,”learning”] 识别本次攻击的算法引擎的名称,policy:实时引擎,deep:深度引擎,learning:学习引擎
info[0].reason info[0].”event.reason” string - 命中的攻击类型,目前ATD可以识别的攻击类型包括:爬虫、账号类攻击、CC攻击、慢速攻击、异常流量包攻击、刷单类攻击、路径扫描、危险UA、SQL注入、命令注入、跨站脚本、异常路径访问等
info[0].url_pattern info[0].”url.pattern” string - 路径特征,具有相同结构的url用url_pattern表示,如www.abc.com/a/123.html和www.abc.com/a/456.html的url_pattern为www.abc.com/a/*.html
info[0].expire info[0].”respond.duration” int [60-86400] 被拦截IP禁用时长,IP每次被识别为威胁拦截时的禁用时长,单位为:秒。禁用时长到期后,IP解禁可继续访问
info[0].score info[0].”event.risk_score” int [1-100] 威胁分数,1-25为疑似,26-55为低威胁,56-85为中威胁,86-100为高威胁
info[0].action info[0].”event.action” string - 命中的攻击判定策略配置的处理动作
info[0].time_range   int - 时间窗口
  info[0].event.start string - 窗口开始
  info[0].event.end string - 窗口结束
info[0].atdrt_report_time_local info[0].event.created string - 事件产生时间

以下数据只在perspective_name为ip时有效:

旧字段名 新字段名 类型 取值范围 解释
info[0].in_white_list   boolean [true,false] 是否在⽩名单中
info[0].is_data_center   enum [“yes”, “no”] 是否是数据中心/云服务商
  info[0].tags enum [‘abuse’, ‘black’, ‘c2’, ‘local’, ‘proxy’, ‘spam’, ‘spider’, ‘tor’, ‘virus’, ‘wangba’, ‘white_list’, ‘ban’] 关于事件或ip的若干标签
info[0].country info[0].”client.geo.country_name” string - 国家
info[0].province info[0].”client.geo.region_name” string -
info[0].city info[0].”client.geo.city_name” string -
info[0].district info[0].”client.geo.district_name” string -
info[0].idc info[0].”client.as.organization.name” string - 机房或网络运营商
info[0].export_ip info[0].”client.export_probability” float [0-100] 人群出口IP的概率,返回的数据中省略了%,推荐参考值,当该值大于60时可以认为是人群出口IP
info[0].ip_credit info[0].”client.credit” object - IP信⽤等级数据,json格式,需解析
info[0].ip_credit.is_local info[0].”client.credit”.is_local enum [“yes”,”no”] 是否为内网IP
info[0].ip_credit.search_engine info[0].”client.credit”.search_engine object - 搜索引擎IP信息
info[0].ip_credit.search_engine.status info[0].”client.credit”.search_engine.status enum [“yes”,”no”,””] 当前IP是否为健康的搜索引擎爬虫IP,”yes”:健康的搜索引擎IP,”no”:恶意的搜索引擎IP,”“:不是搜索引擎IP
info[0].ip_credit.search_engine.name info[0].”client.credit”.search_engine.name string - 具体的搜索引擎名称
info[0].ip_credit.is_near info[0].”client.credit”.is_near boolean [true,false] 内部临时数据,可忽略
info[0].ip_credit.addr info[0].”client.credit”.addr array - IP地址信息
info[0].ip_credit.addr[0].province info[0].”client.credit”.addr[0].province string - 省份
info[0].ip_credit.addr[0].city info[0].”client.credit”.addr[0].city string - 城市
info[0].ip_credit.addr[0].district info[0].”client.credit”.addr[0].district string - 地区
info[0].ip_credit.addr[0].country info[0].”client.credit”.addr[0].country string - 国家
info[0].ip_credit.addr[0].location info[0].”client.credit”.addr[0].location object - IP地理位置信息
info[0].ip_credit.addr[0].location.latitude info[0].”client.credit”.addr[0].location.latitude float - IP的纬度
info[0].ip_credit.addr[0].location.radius info[0].”client.credit”.addr[0].location.radius float - IP覆盖范围半径,单位:KM
info[0].ip_credit.addr[0].location.longitude info[0].”client.credit”.addr[0].location.longitude float - IP的经度
info[0].ip_credit.addr[0].idc info[0].”client.credit”.addr[0].idc string - 机房或网络运营商
info[0].ip_credit.addr[0].accuracy info[0].”client.credit”.addr[0].accuracy enum [“洲”,”国家”,”省”,”城市”,”区县”,”街道”] 地理位置的精确度
info[0].ip_credit.cache_at info[0].”client.credit”.cache_at int - 内部临时数据,可忽略
info[0].ip_credit.export_score info[0].”client.credit”.export_score string - 内部临时数据,可忽略
info[0].ip_credit.ip info[0].”client.credit”.ip string - 返回的IP,如果
info[0].ip_credit.credit info[0].”client.credit”.credit object - IP信用数据
info[0].ip_credit.credit.user_count info[0].”client.credit”.credit.user_count int [1-9] 人数范围标识:’1’:’1’,’2’:’2-5’,’3’:’6-10’,’4’:’11-30’,’5’:’31-50’,’6’:’51-100’,’7’:’101-500’,’8’:’501-2000’,’9’:’2000+’
info[0].ip_credit.credit.office info[0].”client.credit”.credit.office float [0-100] 当前IP为办公网的概率
info[0].ip_credit.credit.family info[0].”client.credit”.credit.family float [0-100] 当前IP为住宅小区的概率
info[0].ip_credit.credit.export_ip info[0].”client.credit”.credit.export_ip float [0-100] 当前IP为人群出口的概率
info[0].ip_credit.credit.person info[0].”client.credit”.credit.person float [0-100] 当前IP为真人的概率
info[0].ip_credit.credit.dirty info[0].”client.credit”.credit.dirty float [0-100] 当前IP的污点概率
info[0].ip_credit.credit.active info[0].”client.credit”.credit.active float [0-100] 当前IP的活跃度
info[0].ip_credit.credit.base_station info[0].”client.credit”.credit.base_station float [0-100] 当前IP是基站的概率
info[0].ip_credit.credit.edu_station info[0].”client.credit”.credit.edu_station float [0-100] 当前IP是教育网的概率
info[0].ip_credit.is_virus info[0].”client.credit”.is_virus enum [“yes”,”no”] 传入IP是否有病毒标签
info[0].ip_credit.is_abuse info[0].”client.credit”.is_abuse enum [“yes”,”no”] 传入IP是否有恶意活动标签
info[0].ip_credit.is_spider info[0].”client.credit”.is_spider enum [“yes”,”no”] 传入IP是否有爬虫标签
info[0].ip_credit.is_spam info[0].”client.credit”.is_spam enum [“yes”,”no”] 传入IP是否有垃圾邮件标签
info[0].ip_credit.is_legal info[0].”client.credit”.is_legal enum [“yes”,”no”] 传入IP是否符合语法标准
info[0].ip_credit.is_black info[0].”client.credit”.is_black enum [“yes”,”no”] 传入IP是否为高危IP
info[0].ip_credit.is_data_center info[0].”client.credit”.is_data_center enum [“yes”,”no”] 传入IP是否为数据中心IP
info[0].ip_credit.is_proxy info[0].”client.credit”.is_proxy enum [“yes”,”no”] 传入IP是否为代理IP
info[0].ip_credit.is_tor info[0].”client.credit”.is_tor enum [“yes”,”no”] 传入IP是否为洋葱路由IP
info[0].ip_credit.is_wangba info[0].”client.credit”.is_wangba enum [“yes”,”no”] 传入IP是否为网吧IP
info[0].ip_credit.trend info[0].”client.credit”.trend array - 威胁趋势
info[0].ip_credit.trend[0][0] info[0].”client.credit”.trend[0][0] int - 日期0点时间戳
info[0].ip_credit.trend[0][1] info[0].”client.credit”.trend[0][1] int - 记录数量
info[0].ip_credit.trend[0][2] info[0].”client.credit”.trend[0][2] enum [“low”,”medium”,”high”,null] 威胁等级
info[0].ip_credit.score info[0].”client.credit”.score enum [“low”,”medium”,”high”,null] 威胁等级
info[0].ip_credit.type info[0].”client.credit”.type dict - 历史威胁事件名称和计数的key-val对
info[0].ip_credit.latest info[0].”client.credit”.latest array - 近期威胁事件记录
info[0].ip_credit.latest[0].timestamp info[0].”client.credit”.latest[0].timestamp int - 更新时间戳
info[0].ip_credit.latest[0].hits info[0].”client.credit”.latest[0].hits int - 命中次数
info[0].ip_credit.latest[0].score info[0].”client.credit”.latest[0].score enum [“low”,”medium”,”high”,null] 威胁等级
info[0].ip_credit.latest[0].type info[0].”client.credit”.latest[0].type string - 威胁事件名称
info[0].ip_credit.latest[0].loc info[0].”client.credit”.latest[0].loc string - 攻击源地理位置

说明:
在ATD中,当某IP的人群出口IP概率值(info[0].export_ip)大于60时,认为是人群出口IP。

2. response body数据样例

{
  "code": 0,
  "msg": "success",
  "data": []
}

字段解释:

字段名 类型 取值范围 解释
code int - 调⽤结果, 0表示成功,⾮0表示失败
msg string - 提示信息
data array - ⽤于返回结果数据,这⾥填空数组即可

3. 调用示例

说明:
1、在验证时,我们将向您发送如上样例的POST数据包;
2、如果在3秒内返回结果,并且(1)返回的数据为JSON格式;(2)code值为0,则将验证通过。

[root@bs203 ~]# curl http://172.18.1.203:8001/v1/firewall/action -d '
{
	"host": "test.baishancloud.com",
	"info": [{
		"time_local": 1608793247,
		"@timestamp": "2020-12-24T15:00:47.000+0800",
		"url_pattern": "test.baishancloud.com/inc/ajax.php?ac=digg&ac2=&tab=vod+union+select*//**//*+null,md5(1231412414)+from+mac_manager+--%20",
		"url.pattern": "test.baishancloud.com/inc/ajax.php?ac=digg&ac2=&tab=vod+union+select*//**//*+null,md5(1231412414)+from+mac_manager+--%20",
		"reason": "SQL注入",
		"event.reason": "SQL注入",
		"perspective_name": "ip",
		"atd.key": "ip",
		"perspective_value": "124.1.1.2",
		"atd.value": "124.1.1.2",
		"policy_id": "100101",
		"rule.id": "100101",
		"pv": 20,
		"event.pageview_count": 20,
		"ip": "124.1.1.2",
		"client.ip": "124.1.1.2",
		"url": "test.baishancloud.com/inc/ajax.php",
		"url.original": "test.baishancloud.com/inc/ajax.php",
		"path": "/inc/ajax.php",
		"url.path": "/inc/ajax.php",
		"score": 100,
		"event.risk_score": 100,
		"time_range": [1608793187, 1608793247],
		"event.start": "2020-12-24T14:59:47.000+0800",
		"event.end": "2020-12-24T15:00:47.000+0800",
		"atdrt_report_time_local": "2020-12-24T15:00:47.448+0800",
		"event.created": "2020-12-24T15:00:47.448+0800",
		"path_count": 1,
		"path_pv": 1,
		"event.path_count": 1,
		"sliding_window": "1min",
		"rule.duration": "1min",
		"expire": 1800,
		"expire_time": 1800,
		"respond.duration": 1800,
		"host": "test.baishancloud.com",
		"atd.domain": "test.baishancloud.com",
		"service": "web",
		"service.type": "web",
		"service_category": "web",
		"event.type": "web",
		"engine_type": "policy",
		"event.provider": "policy",
		"action": "online",
		"event.action": "online",
		"country": "韩国",
		"client.geo.country_name": "韩国",
		"province": "Seoul-teukbyeolsi",
		"client.geo.region_name": "Seoul-teukbyeolsi",
		"district": "-",
		"client.geo.district_name": "-",
		"city": "Seoul",
		"client.geo.city_name": "Seoul",
		"idc": "-",
		"client.as.organization.name": "-",
		"export_ip": 10,
		"client.export_probability": 10,
		"not_ban_reason": "未开启拦截",
		"respond.ignore_reason": "未开启拦截",
		"action_ban": false,
		"is_data_center": "no",
		"in_white_list": false,
		"ip_tag": [],
		"tags": [],
		"logical_operator": "and",
		"rule.logical_operator": "and",
		"search_engine_name": "",
		"client.search_engine_name": "",
		"respond.status": [],
		"activeLearning": "{\"model_status\": \"not ready\"}",
		"_id": "1608793247_test.baishancloud.com_ip_124.1.1.2_lqi9Xl",
		"ip_credit": "{\"is_legal\": \"yes\", \"is_local\": \"no\", \"latest\": [], \"trend\": [[1606147200, 0, null], [1606233600, 0, null], [1606320000, 0, null], [1606406400, 0, null], [1606492800, 0, null], [1606579200, 0, null], [1606665600, 0, null], [1606752000, 0, null], [1606838400, 0, null], [1606924800, 0, null], [1607011200, 0, null], [1607097600, 0, null], [1607184000, 0, null], [1607270400, 0, null], [1607356800, 0, null], [1607443200, 0, null], [1607529600, 0, null], [1607616000, 0, null], [1607702400, 0, null], [1607788800, 0, null], [1607875200, 0, null], [1607961600, 0, null], [1608048000, 0, null], [1608134400, 0, null], [1608220800, 0, null], [1608307200, 0, null], [1608393600, 0, null], [1608480000, 0, null], [1608566400, 0, null], [1608652800, 0, null], [1608739200, 0, null]], \"score\": null, \"ip\": \"124.1.1.2\", \"addr\": [{\"country\": \"\\u97e9\\u56fd\", \"province\": \"Seoul-teukbyeolsi\", \"city\": \"Seoul\", \"district\": \"-\", \"accuracy\": \"\\u57ce\\u5e02\\u7ea7\", \"location\": {\"latitude\": \"37.572457\", \"longitude\": \"126.973047\", \"radius\": \"\"}, \"idc\": \"-\", \"user\": \"-\"}], \"search_engine\": {\"name\": \"\", \"status\": \"\"}, \"credit\": {\"is_local\": \"no\", \"dirty\": \"0.00\", \"office\": 10.41, \"family\": 6.59, \"base_station\": 3.16, \"edu_station\": 3.16, \"person\": 11, \"active\": 5, \"user_count\": 1, \"export_ip\": 10}, \"services\": [], \"tag_list\": [], \"ports\": [], \"is_near\": true, \"is_black\": \"no\", \"is_spam\": \"no\", \"is_proxy\": \"no\", \"is_virus\": \"no\", \"is_tor\": \"no\", \"is_wangba\": \"no\", \"is_data_center\": \"no\", \"type\": {}, \"is_abuse\": \"no\", \"is_spider\": \"no\", \"export_score\": \"60\", \"cache_at\": 1608790831}",
		"client.credit": "{\"is_legal\": \"yes\", \"is_local\": \"no\", \"latest\": [], \"trend\": [[1606147200, 0, null], [1606233600, 0, null], [1606320000, 0, null], [1606406400, 0, null], [1606492800, 0, null], [1606579200, 0, null], [1606665600, 0, null], [1606752000, 0, null], [1606838400, 0, null], [1606924800, 0, null], [1607011200, 0, null], [1607097600, 0, null], [1607184000, 0, null], [1607270400, 0, null], [1607356800, 0, null], [1607443200, 0, null], [1607529600, 0, null], [1607616000, 0, null], [1607702400, 0, null], [1607788800, 0, null], [1607875200, 0, null], [1607961600, 0, null], [1608048000, 0, null], [1608134400, 0, null], [1608220800, 0, null], [1608307200, 0, null], [1608393600, 0, null], [1608480000, 0, null], [1608566400, 0, null], [1608652800, 0, null], [1608739200, 0, null]], \"score\": null, \"ip\": \"124.1.1.2\", \"addr\": [{\"country\": \"\\u97e9\\u56fd\", \"province\": \"Seoul-teukbyeolsi\", \"city\": \"Seoul\", \"district\": \"-\", \"accuracy\": \"\\u57ce\\u5e02\\u7ea7\", \"location\": {\"latitude\": \"37.572457\", \"longitude\": \"126.973047\", \"radius\": \"\"}, \"idc\": \"-\", \"user\": \"-\"}], \"search_engine\": {\"name\": \"\", \"status\": \"\"}, \"credit\": {\"is_local\": \"no\", \"dirty\": \"0.00\", \"office\": 10.41, \"family\": 6.59, \"base_station\": 3.16, \"edu_station\": 3.16, \"person\": 11, \"active\": 5, \"user_count\": 1, \"export_ip\": 10}, \"services\": [], \"tag_list\": [], \"ports\": [], \"is_near\": true, \"is_black\": \"no\", \"is_spam\": \"no\", \"is_proxy\": \"no\", \"is_virus\": \"no\", \"is_tor\": \"no\", \"is_wangba\": \"no\", \"is_data_center\": \"no\", \"type\": {}, \"is_abuse\": \"no\", \"is_spider\": \"no\", \"export_score\": \"60\", \"cache_at\": 1608790831}"
	}]
}
'
{
    "msg": "success", 
    "code": 0, 
    "data": []
}