Безопасность
Здесь нет сервера, который можно атаковать
FileSlimmer развёртывается как набор статических файлов. Здесь нет ни сервера приложений, ни базы данных, ни граничной функции, ни публичного API, поэтому у классов уязвимостей, которым всё это необходимо, — SQL-инъекций, подделки запросов на стороне сервера, обхода аутентификации, небезопасных прямых ссылок на объекты — здесь просто нет поверхности. Сборка завершается ошибкой, если в готовых файлах вообще появляется серверный артефакт.
Заголовки ответа
Content-Security-Policyсdefault-src 'self'иconnect-src 'self': даже если бы код попытался выполнить исходящий запрос, браузер бы его отклонил.object-src 'none',base-uri 'none'иframe-ancestors 'none'.X-Content-Type-Options: nosniffиX-Frame-Options: DENY.Referrer-Policy: no-referrer, поэтому адрес страницы никогда не передаётся при переходе на внешний ресурс.Cross-Origin-Resource-Policy: same-origin, а также ограничительныйPermissions-Policy.- Маршруты видео и ИИ дополнительно отдают заголовки изоляции между источниками, которых требуют эти API.
Проверка на этапе сборки подтверждает каждый из них по развёрнутому артефакту, а connect-src, разрешающий что-либо помимо того же источника, обрушивает сборку.
Ваши файлы считаются недоверенными входными данными
- Тип файла определяется по сигнатуре (magic bytes), а не по расширению и не по MIME-типу, который присваивает операционная система: для перетащенного файла и то и другое контролируется злоумышленником.
- SVG, JavaScript, CSS и HTML разбираются и переписываются как текст и никогда не выполняются. Предпросмотр SVG сначала очищается — скрипты, обработчики событий и внешние ссылки удаляются — и отображается в изолированном фрейме, а не встраивается в эту страницу.
- Внешние адреса из
@importв таблице стилей не запрашиваются. - Бюджеты защиты от бомб распаковки ограничивают размер файла и количество элементов, а если отношение распакованного объёма к сохранённому превышает порог, до начала работы запрашивается явное подтверждение.
- Зашифрованный PDF никогда не открывается в обход его шифрования. Структурные инструменты для него отключены, а путь растеризации запускается только с предоставленным вами паролем, который хранится в памяти, и только после явного предупреждения о том, что растеризация уничтожает.
Сторонний код
Каждая библиотека, каждый модуль WebAssembly, шрифт и модель ИИ отдаются с этого домена. Сети доставки контента в пути запроса нет, поэтому компрометация стороннего хоста не может добраться до этого сайта. Версии компонентов зафиксированы, и каждый из них указан вместе со своей лицензией и репозиторием исходного кода на странице открытого ПО. Файлы моделей ИИ зафиксированы по хешу и отклоняются, если хеш не совпадает.
Чего эта страница не утверждает
Ничто из вышесказанного не является утверждением о вашем устройстве. Расширение браузера может читать содержимое страницы, ваша операционная система может просмотреть любой открываемый вами файл, а защитное ПО на вашей машине находится между тем и другим. Это вне контроля любого сайта; о данных заявление о конфиденциальности говорит то же самое.
Сообщение об уязвимости
Пишите на info@zenitgroup.com.co и укажите затронутый URL, браузер и его версию, а также шаги для воспроизведения. Пожалуйста, не направляйте на сайт трафик отказа в обслуживании и автоматическое сканирование: хостинг общий со всеми, кто им пользуется. Программы вознаграждения за уязвимости нет; сообщения читает и отвечает на них оператор, названный внизу этой страницы.
Этот документ опубликован компанией ZENIT GROUP S.A.S., Кали, Валье-дель-Каука, Колумбия.