Security policy

First edition, 31 August 2026.

Reporting a vulnerability

Write to security@minice.ai in English or Russian. Include what you did, what you expected, and what happened.

There is no bug bounty. We say so rather than letting silence imply one. If a report gets no human answer within 10 working days, that is our failure and publishing after that point is reasonable.

Safe harbour

Follow this section and we will treat your work as research, not as an attack. We will not pursue you and will not ask a platform or host to.

You may, against the hosts in scope:

Please do not:

Scope

In scope — we operate these:

Out of scope, each for a stated reason:

Two things worth knowing before you test

The desktop client is not a security boundary.Its own “authorized” state is derived from verified claims, so it is correct when nothing is tampering with it — but it runs on your computer and you can patch it. What holds is that the API re-verifies the token signature and re-checks the entitlement role on every request. “I flipped a boolean in the client and the UI opened” is expected behaviour of a program running on your own machine. “The API served a request it should have refused” is a real finding and we want it.

The API holds no payment credential. A storefront takes the payment and relays the fact of it over a credential bounded by rail, tier, identity namespace, period length, how far ahead it may grant and how many grants a day. A stolen relay credential cannot grant an unbounded entitlement, or one on a rail it was not minted for.

What the desktop app stores, and what it sends

Stated plainly, because the alternative is a user who believes a protection that is not there. Someone running as you, on your machine, gets everything. That is true of almost every desktop application; it is here because people assume otherwise.


Политика безопасности

Первая редакция, 31 августа 2026 года.

Как сообщить об уязвимости

Пишите на security@minice.ai по-русски или по-английски. Опишите, что вы сделали, чего ожидали и что произошло.

Программы вознаграждений нет. Мы говорим это прямо, чтобы молчание не читалось как её наличие. Если на сообщение за 10 рабочих дней не ответил человек — это наша вина, и публикация после этого срока разумна.

Гарантии исследователю

Если вы соблюдаете этот раздел, мы считаем вашу работу исследованием, а не нападением, и не преследуем вас.

Можно, в отношении хостов из области действия:

Пожалуйста, не надо:

Область действия

Входят: api.minice.ai, astra.minice.ai, knice.tech, auth.minice.ai, minice.ai и настольное приложение Astra на всех платформах, где мы его публикуем.

Не входят: auth.test.knice.tech — выводимый из эксплуатации провайдер личности, который намеренно не сопровождается (находки про переезд с него — входят); сторонние сервисы платежей, почты и хостинга — но то, как мы их используем, входит; находки, требующие, чтобы нападающий уже управлял машиной пользователя; вывод сканера без анализа.

Два факта, полезных до начала проверки

Настольный клиент не является границей безопасности. Его собственное состояние «авторизован» выводится из проверенных утверждений токена, но исполняется на вашей машине, и вы можете его изменить. Держит другое: API заново проверяет подпись токена и наличие роли на каждом запросе. «Я поменял значение в памяти клиента, и интерфейс открылся» — это ожидаемое поведение программы на вашем компьютере. «API выполнил запрос, который должен был отклонить» — настоящая находка, и она нам нужна.

У API нет платёжных реквизитов. Платёж принимает витрина и передаёт сюда только факт оплаты — по учётным данным, ограниченным рельсом, тарифом, пространством имён, длиной периода, горизонтом и числом выдач в сутки.

Что настольное приложение хранит и что отправляет

Прямо, потому что иначе человек будет полагаться на защиту, которой нет. Тот, кто работает под вашей учётной записью на вашей машине, получает всё. Это верно почти для любого настольного приложения; сказано потому, что обычно считают иначе.