跳到正文

IP通信样本溯源查询

接口说明

该接口用于根据输入的服务器IP地址,查询与该 IP 存在网络通信行为(比如:浏览网页,看视频,发送邮件等)的文件(具体依赖用户行为)对应的 MD5 哈希值列表,并返回每个 MD5 样本首次出现的时间戳,为网络安全分析、恶意文件溯源等场景提供数据支撑。另外,用户可以通过指定port筛选指定端口号的数据。

请求地址

https://api.f.360.cn/ips/std/internal/v2/communicate_files

请求方法

POST

请求参数

参数名类型位置是否必填示例值说明
queryobjectbody是
{
  "keywords": [
    {
      "field": "ip",
      "value": "1.1.129.213"
    }
  ]
}
查询条件,所有请求参数的父级结构
query.keywordsArray(object)body是
[
  {
    "field": "ip",
    "value": "1.1.129.213"
  }
]
查询条件,所有请求参数的子级结构
query.keywords.[0].fieldstringbody是ip查询条件的字段名,目前只支持:ip
query.keywords.[0].valuestringbody是1.1.129.213查询条件的字段值,为单个ip
query.keywords.[1].fieldstringbody否port查询条件的字段名,只支持port,可以筛选响应数据的具体端口
query.keywords.[1].valuestringbody否80查询条件的字段值,为单个端口号

响应参数

名称类型示例值描述
codestring0响应状态码
dataArray(object)
[
  {
    "first_time": "1677657536",
    "md5": "33dee5fb98d3258d94b5a3723e8445df"
  }
]
响应具体信息
first_timestring1677657536每个 MD5 样本首次出现的时间戳
md5string33dee5fb98d3258d94b5a3723e8445df32位的样本hash
msgstringok响应状态信息

请求示例

支持cUrl、Python、Java、PHP、Go语言的请求,示例如下

#!/usr/bin/env bash
set -euo pipefail

APPID=""  # apikey
SECRET=""  # salt
URL="https://api.f.360.cn/ips/std/internal/v2/communicate_files"
BODY='{"query":{"keywords":[{"field":"ip","value":"1.2.3.4"}]}}'

NONCE=$(printf '%08d' $((RANDOM % 100000000)))
TIMESTAMP=$(date +%s)
BODY_MD5=$(printf '%s' "$BODY" | openssl dgst -md5 -hex | awk '{print $NF}')
SIGNATURE=$(printf '%s' "${BODY_MD5}${APPID}${NONCE}${TIMESTAMP}${SECRET}" | openssl dgst -md5 -hex | awk '{print $NF}')
SIGNATURE=${SIGNATURE:16}

curl --location --request POST "$URL" \
  --header "Content-Type: application/json" \
  --header "X-360-Key: ${APPID}" \
  --header "X-360-Nonce: ${NONCE}" \
  --header "X-360-Timestamp: ${TIMESTAMP}" \
  --header "X-360-Signature: ${SIGNATURE}" \
  --data "${BODY}"

响应示例

业务正常响应

{
    "_oid": 1,
    "code": "0",
    "data": [
        {
            "first_time": "1701445005",
            "md5": "2077fb0d1dfa79a16e375f8cba29dce2"
        },
        {
            "first_time": "1709447097",
            "md5": "974dcbff9bbdf5a8372acf747ac58c4a"
        },
        {
            "first_time": "1736564475",
            "md5": "5c585efa914284dea107eedb31395002"
        },
        {
            "first_time": "1697730934",
            "md5": "654d30f16fc191a5eaac4f0882548b8e"
        },
        {
            "first_time": "1701542999",
            "md5": "9a91091f277623fd3ae1f87150844505"
        }
    ],
    "msg": "ok",
    "status": 0
}

业务异常响应

{
    "code": "GS00302",
    "msg": "current uri works business now, please try again later"
}