恶意 URL 检测

正常 NEW

多维度 URL 检测(黑名单/启发式/品牌仿冒/IDN 同形字/IP 风险联动)。

协议:HTTP 格式:JSON 版本:v1.0.0日调用量:1399次
¥ 0.004 / 次
按次计费
购买次数包更优惠,低至 0.0032 元/次

单 URL 检测

检测单个 URL

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST http://www.shujuyu.cn/v1/api/url/scan JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取
url string 是 待检测 URL,最长 2048 字符
check_ip_risk boolean 否 是否联动 IP 风险查询,默认 true;设为 false 可关闭 L4 层

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.url string 原始链接地址
data.url_normalized string 规范化后的 URL
data.host string 主机名
data.scheme string 协议(http / https)
data.port integer 端口
data.path string 路径
data.query string 查询字符串
data.is_internal_ip boolean host 是否为内网或保留 IP
data.is_malicious boolean 是否判定为恶意(score ≥ 80)
data.score integer 风险评分(0-100,各信号权重之和,上限 100)
data.level string 风险等级:block(≥80)/ high(≥50)/ medium(≥20)/ low
data.categories array 风险分类列表(如 phishing、brand_impersonation、malicious_host、invalid_form、reserved_ip)
data.signals array 风险信号列表,每项含 name、weight、detail
data.signals[].name string 信号名称
data.signals[].weight integer 该信号权重(计入总分)
data.signals[].detail string 信号说明
data.ip_risk object IP 风险画像(条件返回);host 为内网/保留 IP、未命中 IP 风险库或关闭 IP 联动时该键不返回
data.ip_risk.ip string host 解析到的 IP
data.ip_risk.host string 被检测的主机名
data.ip_risk.is_risky boolean 是否命中风险库
data.ip_risk.tags array IP 风险标签
data.ip_risk.severity_num integer 风险等级数值(1-4,4 表示解析出的 IP 命中内网/保留段)
data.ip_risk.risk_score integer IP 风险分
data.ip_risk.hit_count integer 历史命中次数
data.duration_ms integer 检测耗时(毫秒)

请求示例

返回示例

{"msg":"success","code":200,"data":{"url":"http://example.com","host":"example.com","path":"/","port":80,"level":"low","query":"","score":0,"scheme":"http","ip_risk":null,"signals":[],"categories":[],"duration_ms":15,"is_malicious":false,"is_internal_ip":false,"url_normalized":"http://example.com/"}}

健康检查

服务存活探测

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET http://www.shujuyu.cn/v1/api/url/ping JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.version string 数据版本
data.time string 服务器当前时间

请求示例

返回示例

{"msg":"pong","code":200,"data":{"time":"2026-10-25 01:37:32","version":"1.0"}}

批量检测

批量检测最多 10 个 URL

调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST http://www.shujuyu.cn/v1/api/url/scan-batch JSON

请求参数

参数名类型必填说明
key string 是 您的API密钥,可在个人中心获取
urls array 是 待检测 URL 数组,一次最多 10 个,超出返回 4002
check_ip_risk boolean 否 是否联动 IP 风险查询,默认 true;设为 false 可关闭 L4 层

返回参数说明

参数名类型说明
code integer 状态码,200 表示成功
msg string 返回消息
data object 业务数据
data.total integer 去重后的结果条数(重复 URL 合并为一条,空串按非法 URL 计入)
data.malicious integer 判定为恶意的条数
data.clean integer 未判定为恶意的条数
data.results object 检测结果,键为原始 URL
data.results.{url} object 单个 URL 的检测结果
data.results.{url}.url string 原始链接地址
data.results.{url}.url_normalized string 规范化后的 URL
data.results.{url}.host string 主机名
data.results.{url}.scheme string 协议(http / https)
data.results.{url}.port integer 端口
data.results.{url}.path string 路径
data.results.{url}.query string 查询字符串
data.results.{url}.is_internal_ip boolean host 是否为内网或保留 IP
data.results.{url}.is_malicious boolean 是否判定为恶意(score ≥ 80)
data.results.{url}.score integer 风险评分(0-100,各信号权重之和,上限 100)
data.results.{url}.level string 风险等级:block(≥80)/ high(≥50)/ medium(≥20)/ low
data.results.{url}.categories array 风险分类列表(如 phishing、brand_impersonation、malicious_host、invalid_form、reserved_ip)
data.results.{url}.signals array 风险信号列表,每项含 name、weight、detail
data.results.{url}.signals[].name string 信号名称
data.results.{url}.signals[].weight integer 该信号权重(计入总分)
data.results.{url}.signals[].detail string 信号说明
data.results.{url}.ip_risk object IP 风险画像(条件返回);host 为内网/保留 IP、未命中 IP 风险库或关闭 IP 联动时该键不返回
data.results.{url}.ip_risk.ip string host 解析到的 IP
data.results.{url}.ip_risk.host string 被检测的主机名
data.results.{url}.ip_risk.is_risky boolean 是否命中风险库
data.results.{url}.ip_risk.tags array IP 风险标签
data.results.{url}.ip_risk.severity_num integer 风险等级数值(1-4,4 表示解析出的 IP 命中内网/保留段)
data.results.{url}.ip_risk.risk_score integer IP 风险分
data.results.{url}.ip_risk.hit_count integer 历史命中次数
data.results.{url}.duration_ms integer 检测耗时(毫秒)

请求示例

返回示例

{"msg":"success","code":200,"data":{"clean":1,"total":2,"results":{"http://example.com":{"url":"http://example.com","host":"example.com","path":"/","port":80,"level":"low","query":"","score":0,"scheme":"http","ip_risk":null,"signals":[],"categories":[],"duration_ms":9,"is_malicious":false,"is_internal_ip":false,"url_normalized":"http://example.com/"},"http://advert-recovery-support-center-verify-active.cf/verify":{"url":"http://advert-recovery-support-center-verify-active.cf/verify","host":"advert-recovery-support-center-verify-active.cf","path":"/verify","port":80,"level":"block","query":"","score":80,"scheme":"http","ip_risk":null,"signals":[{"name":"blacklist_host_exact","detail":"host 命中恶意域名 (标签: phishing,phishing,phishing,phishing,phishing)","weight":50},{"name":"suspicious_tld","detail":"可疑 TLD: .cf","weight":10},{"name":"phishing_keyword","detail":"钓鱼关键词: verify","weight":12},{"name":"many_hyphens","detail":"域名标签含 5 个连字符","weight":8}],"categories":["phishing"],"duration_ms":171,"is_malicious":true,"is_internal_ip":false,"url_normalized":"http://advert-recovery-support-center-verify-active.cf/verify"}},"malicious":1}}

产品说明

接口说明

多维度 URL 检测接口,用于判断给定链接是否属于钓鱼、恶意、仿冒或内网探测类地址,并给出 0-100 的风险评分与风险等级。检测在服务端完成,不会主动访问目标站点的页面内容。

检测流程

  • L1 格式校验:解析协议、主机、端口、路径与查询参数;URL 格式非法时直接判定为 block(100 分)。
  • 内网/保留 IP 拦截:host 命中内网或保留网段时直接判定为 block(100 分),用于拦截 SSRF 与内网探测。
  • L2 黑名单匹配:按完整 URL、域名、路径三个层级匹配恶意地址库。
  • L3 启发式特征:识别 IP 直连、可疑顶级域、钓鱼关键词、连字符过多、非标准端口、超长查询串等特征。
  • L4 IP 风险联动:将 host 解析为 IP 后查询 IP 风险库;可通过 check_ip_risk=false 关闭该层。

评分与判定

  • 总分为各条风险信号权重之和,上限 100 分。
  • score >= 80:等级 block,is_malicious=true。
  • 50 <= score < 80:等级 high。
  • 20 <= score < 50:等级 medium。
  • score < 20:等级 low。

调用限制

  • 单条检测:url 最长 2048 字符,超出返回 400000。
  • 批量检测:urls 一次最多 50 个,超出返回 400000。

核心功能

多维度检测
格式校验 → 黑名单匹配 → 启发式特征 → IP 风险联动,四层依次执行
风险评分与等级
输出 0-100 分及 block / high / medium / low 四级结论
可解释信号
signals 列出每条命中特征的名称、权重与说明,便于排查与二次决策
批量检测
一次最多检测 50 个 URL,按原始 URL 返回结果
SSRF 防护
host 为内网或保留 IP 时直接判定为高风险,避免内网探测

使用场景

短链与外链跳转前的安全预检
评论、私信、表单提交内容的 URL 风控
邮件与 IM 中钓鱼链接的批量筛查
爬虫抓取前的目标准入校验
品牌仿冒域名与 IDN 同形字监测

费用计算

按次计费单价
¥0.004 / 次
每次调用接口从账户余额中扣除相应费用,VIP 用户可享折扣

扣费优先级

免费额度
次数包
余额扣费

计费方式详解

1 免费额度
· 接口每日免费额度已关闭
· VIP 用户月度免费额度:
· 个人版:每月 5000 次,本接口月上限 5000 次
· 专业版:每月 30000 次,本接口月上限 30000 次
· 企业版:每月 200000 次,本接口月上限 200000 次
· 账户如有注册/活动赠送的免费次数,会优先于接口免费额度扣减
· VIP 月度免费额度仅适用于单次售价不高于 ¥0.0800/次 的接口;接口每日免费额度按接口配置执行
VIP 月度免费额度每月重置,未使用部分不累计至下月。
2 次数包
预付费购买固定调用次数,最高可省 20%(相对按次付费),用完为止。
次数包为独立计费,不与 VIP 折扣叠加。
请在有效期内使用,过期后未使用的次数不可再用。
3 余额扣费
按次从账户余额扣除费用;所有用户可享量折扣,VIP 用户额外享 VIP 折扣。
扣费公式:实际扣费 = 接口单价 × (1 - VIP 折扣比例 - 量折扣比例),并受总折扣上限和最低利润率保护约束
VIP 折扣: 个人版9折 专业版8折 企业版7折
量折扣: 月付费调用 ≥1000 次享 2%、 月付费调用 ≥10000 次享 5%、 月付费调用 ≥20000 次享 10%
· 量折扣按账号当月全部接口的付费调用次数统计,达到更高档位时按更高档位计算
总折扣上限:VIP 折扣 + 量折扣合计不超过 50%
最低利润率保护:折后价不得低于成本价 × (1 + 15%);若接口售价本身低于该保护价,则取消折扣并按售价计费
余额不足时调用将失败,请及时充值。

次数包方案

方案名称调用次数价格折算单价比按次付费节省有效期
100次调用包 100 次 ¥0.4 ¥0.0040/次 - 365 天
500次调用包 500 次 ¥1.9 ¥0.0038/次 省5% 365 天
1000次调用包 1000 次 ¥3.6 ¥0.0036/次 省10% 365 天
5000次调用包 5000 次 ¥17 ¥0.0034/次 省15% 365 天
10000次调用包 10000 次 ¥32 ¥0.0032/次 省20% 365 天

VIP 权益对比

等级每月免费次数本接口月免费上限折扣VIP 折后单价
免费版 按接口配置 — - ¥0.004/次
个人版 5000 次 5000 次 10% ¥0.0036/次
专业版 30000 次 30000 次 20% ¥0.0032/次
* VIP 月度免费额度每月重置。每月免费次数为账号级 VIP 月额度,本接口月免费上限为其中对本接口的限制(接口可单独设置上限或关闭)。VIP 折扣仅适用于余额扣费方式,VIP 折后单价不含量折扣。 本接口已关闭接口级月度免费额度(不影响 VIP 月度免费额度)。接口每日免费额度已关闭。

费用计算示例

* 以下示例未包含量折扣,量折扣按账号当月全部接口的付费调用量另行计算。
示例1:普通用户按次付费
调用 1000 次,费用 = 0.004 × 1000 = ¥4.00
示例2:个人版用户按次付费(仅 VIP 折扣,已考虑最低利润率保护)
调用 1000 次,折扣约 10%,费用 = 0.004 × (1 - 10%) × 1000 ≈ ¥3.60
示例3:购买「500次调用包」次数包
支付 ¥1.90,获得 500 次调用,折算单价 ¥0.0038/次
同等次数按次付费需 ¥2.00,次数包可节省 ¥0.10

错误码说明

错误码说明解决方案
200 请求成功 -
400000 请求参数错误 检查参数名、格式与取值;url 最长 2048 字符,urls 数组最多 10 个
401000 认证失败 检查 Authorization: Bearer 密钥是否正确、是否过期
402000 账户余额不足 充值后重试
403000 无访问权限 确认密钥权限、接口范围与 IP 白名单是否满足要求
404001 接口或端点不存在 检查 API 与端点的请求路径
409000 请求冲突 请稍后重试
422000 参数校验失败 检查参数格式与取值
429000 请求频率或额度超限 降低调用频率,或升级套餐提升额度
500000 服务器内部错误 携带响应中的 request_id 联系技术支持
502000 服务暂时不可用 稍后重试
503000 服务暂时不可用 稍后重试
504000 请求超时 稍后重试

更新日志

v1.0.0 2026-08-02
  • 上线多维度 URL 检测能力(格式校验、黑名单匹配、启发式特征、IP 风险联动)
  • 提供单 URL 检测与批量检测(单次最多 50 个)
  • 支持 check_ip_risk 参数关闭 IP 风险联动