Формат ответа на POST-запрос на сканирование

05 марта 2024

ID 193001

Если POST-запрос был успешно обработан, тело ответа будет содержать JSON-объект со следующими полями:

{

"object": "%SCAN_OBJECT%",

"scanResult": "%SCAN_RESULT%",

"detectionName": "%DETECTED_OBJECT%",

"name": "%SCAN_OBJECT_NAME%",

"containsOfficeMacro": "%IS_MACRO_CONTAINED%",

"subObjectsScanResults": [

{

"object": "%SCAN_FILE%",

"scanResult": "%SCAN_RESULT%",

"detectionName": "%DETECTED_OBJECT%",

"containsOfficeMacro": "%IS_MACRO_CONTAINED%"

},

...

{

"object": "%SCAN_FILE%",

"scanResult": "%SCAN_RESULT%",

"detectionName": "%DETECTED_OBJECT%",

"containsOfficeMacro": "%IS_MACRO_CONTAINED%"

}

]

}

Здесь:

  • object – абсолютный путь до просканированного файла (если запрос был послан к /api/v3.0/scanfile) или строка "memory" (если запрос был послан к /api/v3.0/scanmemory).
  • scanResult – результат сканирования веб-адреса. Может иметь следующие значения:
    • CLEAN
    • DETECT
    • DISINFECTED
    • DELETED
    • NON_SCANNED
    • SERVER_ERROR

    Если запрос был послан к /api/v3.0/scanfile или к /api/v3.0/scanmemory, причина того, что объект не сканируется, может быть добавлена к результату NON_SCANNED. Например:

    {

    "object": "\/home\/user\/Documents\/filestoscan\/test.zip",

    "scanResult": "NON_SCANNED (PASSWORD PROTECTED)",

    "containsOfficeMacro": "false"

    }

    Возможные значения:

    • NON_SCANNED (CANCELED)

      Сканирование отменено.

    • NON_SCANNED (CORRUPTED)

      Сканируемый объект поврежден.

    • NON_SCANNED (ACCESS DENIED)

      Доступ к объекту запрещен.

    • NON_SCANNED (SKIPPED)

      Сканирование пропущено.

    • NON_SCANNED (PASSWORD PROTECTED)

      Проверяемый объект защищен паролем.

    • NON_SCANNED

      Причина, по которой объект не сканируется, не определена.

  • detectionName – имя обнаруженного вредоносного объекта в классификации "Лаборатории Касперского".
  • name – имя объекта, указанного в поле name тела запроса (если запрос был послан к /api/v3.1/scanmemory). Если сканируемый объект имеет вложенные подобъекты, элемент name указывается только в родительском объекте.
  • containsOfficeMacro – переменная логического типа, которая имеет значение true, если в просканированном объекте был обнаружен макрос, и false в противоположном случае.
  • subObjectsScanResults – массив, состоящий из результатов сканирования подобъектов, вложенных в просканированный объект. Это поле и все вложенные в него поля будут добавлены в ответ, только если просканированный объект включает вложенные подобъекты.
    • subObjectsScanResults/object – путь до вложенного подобъекта. Обратите внимание, что путь к подобъекту отделен от пути к родительскому объекту двумя косыми чертами (//), например:

      /home/user/archive.tar//folder/subobject

    • subObjectsScanResults/scanResult – результат сканирования вложенного подобъекта.
    • subObjectsScanResults/detectionName – имя обнаруженного вредоносного объекта в классификации "Лаборатории Касперского".
    • subObjectsScanResults/containsOfficeMacro – переменная логического типа, которая имеет значение true, если в просканированном подобъекте был обнаружен макрос, и false в противоположном случае.

Если POST-запрос был обработан с ошибкой, тело ответа будет содержать JSON-объект с единственным полем error:

{

"error": "%СООБЩЕНИЕ ОБ ОШИБКЕ%"

}

Здесь поле error содержит описание ошибки, которая произошла во время обработки запроса.

Дополнительные поля в протоколе KAV версии 3.1

Поле reason появляется только в том случае, если вы используете протокол KAV версии 3.1. В этом поле указывается причина, по которой объект не проверяется. Это поле появляется, если запрос был послан к /api/v3.1/scanfile или к /api/v3.1/scanmemory и если значение поля scanResult равно NON_SCANNED.

Возможные значения:

  • Canceled

    Сканирование отменено.

  • Corrupted

    Сканируемый объект поврежден.

  • Access denied

    Доступ к объекту запрещен.

  • Skipped

    Сканирование пропущено.

  • Password protected

    Проверяемый объект защищен паролем.

  • Max depth exceeded

    Превышена максимальная глубина распаковки вложенных архивов при сканировании.

Вам помогла эта статья?
Что нам нужно улучшить?
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!