SYSTEM$CLIENT_VULNERABILITY_INFO

SYSTEM$CLIENT_VULNERABILITY_INFO

Snowflake 클라이언트와 드라이버에 대한 CVE(공통 취약점 및 노출) 수정 및 관련 취약점에 대한 세부 정보를 반환해요.

참고 항목:

  • SYSTEM$CLIENT_VERSION_INFO

출처: Snowflake SQL Reference - SYSTEM$CLIENT_VULNERABILITY_INFO

본문

구문

SYSTEM$CLIENT_VULNERABILITY_INFO()

인자

없음

반환

객체 배열을 포함하는 JSON 문자열을 반환해요. 각 객체는 SnowSQL, JDBC 드라이버 등 특정 클라이언트와 드라이버에 대한 정보를 포함해요.

각 JSON 객체는 다음 구조를 포함해요.

{
  "clientId": "GO",
  "vulnerabilities": [
    {
      "cve": "CVE-2023-34231",
      "severity": "high",
      "maxAffected": "1.6.18"
    },
    {
      "cve": "CVE-2025-46327",
      "severity": "low",
      "minAffected": "1.7.0",
      "maxAffected": "1.13.2"
    }
  ]
}

여기서:

clientId

  • 클라이언트 또는 드라이버의 내부 ID예요. 가능한 값은 다음과 같아요. DOTNETDriver, GO, JDBC, JSDriver(Node.js), ODBC, PHP_PDO, PythonConnector, SnowSQL, SQLAPI

vulnerabilities

  • 클라이언트 또는 드라이버에 영향을 주는 취약점 배열이에요. 각 취약점은 다음 이름/값 쌍을 가진 객체로 표현돼요.
    • cve — 취약점의 CVE 식별자예요.
    • severity — 취약점의 심각도 수준이에요. 가능한 값: none, low, medium, high, critical.
    • minAffected — 이 취약점을 포함하는 클라이언트 또는 드라이버의 최소 버전이에요. 이 필드는 선택 사항인데, 일부 취약점은 클라이언트나 드라이버의 첫 버전에 발생할 수 있기 때문이에요.
    • maxAffected — 이 취약점을 포함하는 최대 버전이에요.

사용법 참고 사항

없음

예제

다음 예제는 SYSTEM$CLIENT_VERSION_INFO 및 SYSTEM$CLIENT_VULNERABILITY_INFO 시스템 함수를 호출해요. 예제는 이 함수들이 반환한 JSON 문자열을 파싱해 데이터를 표 형식으로 보여줘요.

-- CLIENT VERSION INFO

SELECT
      value:clientAppId::VARCHAR clientAppId
    , value:clientId::VARCHAR clientId
    , value:minimumNearingEndOfSupportVersion::VARCHAR minimumNearingEndOfSupportVersion
    , value:minimumSupportedVersion::VARCHAR minimumSupportedVersion
    , value:recommendedVersion::VARCHAR recommendedVersion
    , value:deprecatedVersions deprecatedVersions
    , value:_customSupportedVersions_ customSupportedVersions
FROM
    TABLE(FLATTEN(PARSE_JSON(SYSTEM$CLIENT_VERSION_INFO())));

-- CLIENT VULNERABILITY INFO

SELECT
    c:clientId::VARCHAR clientId
    , f.value:cve::VARCHAR cve
    , f.value:maxAffected::VARCHAR maxAffected
    , f.value:minAffected::VARCHAR minAffected
    , f.value:severity::VARCHAR severity
FROM
    (
        SELECT value c
        FROM TABLE(FLATTEN(PARSE_JSON(SYSTEM$CLIENT_VULNERABILITY_INFO())))
    ) c,
    lateral flatten(input => c, path => 'vulnerabilities' ) f;

더 알아보기