# Общие рекомендации по безопасности

## Типы кибератак

Кибератаки можно разделить на три группы: инъекционные атаки, атаки с подменой биометрии (presentation attacks), атаки на интеграцию. Ниже приведены примеры для мобильных и Web SDK.

### **Инъекционные атаки**

Инъекционная атака на систему проверки liveness – это попытка обойти механизмы верификации путем подмены данных или модификации логики выполнения клиентского SDK. Как правило, такие атаки реализуются через инъекцию кода, компрометацию среды выполнения или подмену источника видеопотока (например, перехват и подстановка видео в реальном времени с использованием виртуальных камер или манипуляции с JavaScript-логикой в Web SDK). Их цель – заставить систему принять поддельный или заранее записанный контент за живое присутствие пользователя.

Примеры для мобильных SDK:

* Виртуальные камеры.
* Компрометация целостности файловой системы.
* Хукинг функций и модификация приложения.
* Эмуляторы и облачные устройства.

Для Web:

* Виртуальные камеры.
* Атаки с инъекцией кода.

### **Атаки с подменой биометрии (Presentation Attacks)**

Атака с подменой биометрии – попытка обмануть систему, предъявив заранее записанный или искусственно созданный контент, имитирующий реального пользователя, чтобы пройти проверку liveness без участия живого человека. Такие атаки направлены не на SDK напрямую, а на биометрические модели на бэкенде. Они могут включать:

* Фотографии,
* Видеозаписи,
* 3D-маски,
* Экраны других устройств,
* И другие медиаматериалы, создающие иллюзию присутствия в кадре живого человека.

### **Прочие атаки (манипуляции с системой)**

Сюда относятся атаки, при которых злоумышленники воздействуют на интеграцию модуля проверки liveness в приложение или бэкенд – с целью обойти или подменить результаты проверки. Как правило, это патчинг приложения, внедрение хуков или эксплуатация уязвимостей в механизмах верификации. Один из характерных примеров – атака типа Man-in-the-Middle (MitM) / SSL Interception: подмена или модификация данных в процессе сетевой передачи с нарушением SSL/TLS или обходом certificate pinning.

## Встроенные механизмы защиты Oz

С ростом числа кибератак безопасность стала нашим главным приоритетом. Мы обеспечиваем защиту в том числе от комплексных многовекторных атак. Ваши данные в безопасности на всех этапах: захват медиа, передача данных и анализ. Это достигается за счет множества механизмов на разных уровнях, которые работают совместно, дополняя и усиливая друг друга. Например:

* Мы не принимаем данные с виртуальных камер и эмуляторов.
* В нативных SDK можно настроить SSL-pinning и защиту медиафайлов с помощью request payload.
* Для Web SDK логику принятия решений можно вынести на бэкенд, исключив возможность манипуляций с данными в контексте браузера.

Наше ПО разработано для встраивания и включает механизмы верификации целостности собственной среды выполнения, однако целостность хост-приложения при этом не валидируется. Защита хост-приложения (например, с помощью антитамперинга, обфускации кода и контроля целостности среды выполнения) остается ответственностью владельца приложения. Без этих мер даже защищенный SDK может стать уязвимым на уровне приложения или платформы.

#### Рекомендации по защите хост-приложения

**Убедитесь, что ваши политики безопасности охватывают следующее:**

* Использование корпоративных SSL-сертификатов.
* Ограничение доступа к непроверенным источникам.
* Использование SSL-прокси.
* Контроль подключений через SNI / TLS Handshake.
* Наличие и соблюдение задокументированных рекомендаций по безопасности.

**Для мобильных приложений** используйте Play Integrity (Android) и App Attest (iOS).

**В части наших SDK рекомендуем:**

* Всегда использовать актуальную версию – практически каждый релиз содержит улучшения в области безопасности.
* Настроить SSL-pinning для нативных SDK.
* Для Web SDK: получать и обрабатывать результаты анализа на бэкенде, чтобы исключить возможные манипуляции в контексте браузера, а также использовать режим `Safe` при настройке ответов.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.ozforensics.com/oz-knowledge-ru/rukovodstva/rukovodstvo-razrabotchika/obshie-rekomendacii-po-bezopasnosti.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
