Заметки
Как проверить утечки доступа к файлам Диска
Как проверить утечки доступа к файлам Диска: Публичные ссылки, права, внешние пользователи.
Как проверить утечки доступа к файлам Диска. Основной фокус: Публичные ссылки, права, внешние пользователи.
Задача
Разобрать безопасность интеграций, вебхуков, локальных приложений или файлов.
Задача — как проверить утечки доступа к файлам Диска. Публичные ссылки, права, внешние пользователи.
Главное — не искать один универсальный метод, а сначала определить сущность, права и слой API, через который выполняется действие.
Как это устроено
Вебхук или локальное приложение фактически становятся техническим доступом к порталу. Важно знать владельца, scopes, IP, активность, журнал вызовов и срок жизни доступа.
В Bitrix24 права почти всегда считаются не одной настройкой, а комбинацией роли, группы, структуры, владельца, привязки к сущности и контекста текущего пользователя.
Если сценарий проверяется под администратором, отдельно повторите его под обычным пользователем. Для прав, CRM, задач, Диска и приложений это часто даёт другой результат.
Рабочий подход
Ведите реестр интеграций, логируйте входящие вызовы, закрывайте прямой доступ к обработчикам и проверяйте права пользователя перед действием. Для критичных сценариев ставьте промежуточный шлюз.
Сделайте минимальный тест на одной сущности, сохраните входные данные и ответ метода, а затем расширяйте решение на массовый сценарий.
На коробке удобнее добавлять временное логирование рядом с местом выполнения кода, а в облаке — сохранять входящие и исходящие REST-запросы в свой журнал интеграции.
Частые ошибки
Самая опасная ошибка — считать секретный URL полноценной защитой. Его могут скопировать, оставить у уволенного сотрудника или случайно засветить в логах.
- Проверять сценарий только под администратором и не видеть проблему прав обычного пользователя.
- Пытаться решить доступ скрытием элемента интерфейса, хотя данные остаются доступны через другой путь.
- Не логировать фактический запрос и ответ, из-за чего ошибка выглядит случайной.