Документы · PDF Инструментарий
Проверка того, что инструмент PDF никогда не загружает ваш файл: пошаговое руководство по панели сети
· Как это работает
PDF конфиденциальность проверка сети
Вам не обязательно доверять заявлениям о конфиденциальности; Вы можете смотреть сеть. В этом посте показано, как открыть панель «Сеть» браузера, запустить операцию PDF и прочитать результат, а также то, что строгая политика безопасности контента говорит вам о стороннем коде.
Доверяй, но проверяй: почему «ничего не загружается» — это проверяемое утверждение, а не маркетинговый ход
«Ничего не загружается» можно проверить, поскольку для загрузки требуется наблюдаемая сетевая активность страницы или ее работников. При проверке соответствия следует использовать безвредный, отличительный тестовый документ, а не конфиденциальный материал, затем сравнивать запросы времени выполнения с исходным кодом и автоматическим тестом сетевой изоляции в репозитории.
Один чистый запуск подтверждает поведение этой сборки, браузера, состояния согласия и операции. Он не сертифицирует каждое будущее развертывание или расширение браузера. Запишите проверенный URL, дату, операцию и журнал запросов. Точные доказательства более полезны, чем широкая уверенность, которую невозможно воспроизвести.
Открытие панели «Сеть» — где ее найти в основных браузерах и что очистить перед запуском
Откройте инструменты разработчика и выберите «Сеть», прежде чем выбирать тестовый файл. Chromium, Firefox и Safari помещают его в свои интерфейсы разработчиков, хотя метки различаются. Сохраняйте журнал только в том случае, если вам нужны запросы навигации; в противном случае очистите его после загрузки страницы и ее статических сценариев, чтобы изолировать саму операцию.
Сначала держите все типы запросов видимыми, включая выборку, XHR, сценарии и рабочие процессы. Не отключайте ни кеш, ни аналитику, если план тестирования не требует этих состояний. Согласованный производственный сеанс может законно загружать раскрытые аналитические ресурсы Google, поэтому задача состоит в том, чтобы определить, входят ли в запрос байты документа или идентифицирующие поля файла.
Запуск операции — объединение или разделение теста PDF во время записи панели и то, как будет выглядеть загрузка, если она произойдет
Выберите синтетический PDF с узнаваемым безвредным текстом и запустите слияние, разделение или другую операцию. Просмотрите список запросов от выбора до завершения и загрузки. Загрузка обычно отображается как новая выборка или XHR с телом запроса, данными из составной формы или двоичными полезными данными, время которых соответствует выбору файла или запуску.
Вместо этого инструментарий должен передавать байты локальному веб-работнику, который не отображается как запрос документа. PDF-to-image загружает связанный код pdf.js с того же сайта при вызове и использует свой рабочий процесс для анализа; Кодировка холста остается в основном потоке. Загрузка ресурса кода не эквивалентна отправке выбранного PDF.
Чтение результата — отличие собственных статических ресурсов страницы от запроса, содержащего байты вашего файла.
Проверьте URL-адреса, методы, инициаторы, заголовки и тела новых запросов. Статические JavaScript, CSS, шрифты и рабочие модули того же происхождения поддерживают страницу, но не содержат выбранные байты. Полезные данные запроса поиска по отличительной тестовой фразе или имени файла, при этом следует помнить, что двоичная загрузка может не отображаться как читаемый текст на каждой панели.
Также проверьте время. Запрос, начавшийся до выбора, не может содержать более поздний файл. Загрузка, инициированная из BLOB-объекта, может отображать внутреннее поведение браузера, а не ответ сервера. Источник подтверждает, что байты результата упаковываются локально и передаются в общий помощник загрузки Blob, а не извлекаются из выходных данных URL.
Проверяйте загруженный сторонний код и согласованную производственную аналитику, а не предполагайте, что ее не существует.
В схеме предусмотрена строгая политика, запрещающая загрузку внешних скриптов, шрифтов или тегов, но текущий контент конфиденциальности позволяет проводить согласованную аналитику на каноническом производственном хосте. Проверяйте заголовки ответов и фактическое дерево инициаторов, а не утверждайте результат политики. Скрипты Google Analytics представляют собой сторонний код и раскрываются отдельно.
События ToolAcre используют закрытый список полей, который исключает содержимое PDF, имена файлов, вставленный текст, URL-адреса и точные размеры файлов. Такая конструкция снижает риск заражения, но не приводит к исчезновению аналитических запросов после получения согласия. Правильный отчет отличает «ни один запрос не передает байты документа» от ложного утверждения «страница вообще не отправляет никаких внешних запросов».
Рабочий пример — полная проверка на многомегабайтном PDF со списком запросов до, во время и после.
Для теста на несколько мегабайт очистите панель, выберите PDF, дождитесь подсчета страниц, запустите разделение, загрузите выходные данные и очистите файлы. Отмечайте запросы, возникающие на каждом этапе. В ожидаемом интервале обработки есть рабочие сообщения и изменения хода выполнения, но нет сетевой записи, содержащей исходный документ.
Повторите один раз при отказе в согласии и один раз при предоставлении согласия на рабочем хосте, если поведение аналитики находится в области действия. Сравните логи. Путь к документу должен оставаться локальным в обоих случаях, тогда как поведение ресурса аналитики может отличаться. Сохраняйте снимки экрана или HAR только в том случае, если синтетический документ не содержит конфиденциальных материалов.
Чего это не касается: аудит самого JavaScript и почему проверка сети подтверждает поведение, а не намерение.
Проверка сети подтверждает наблюдаемое перемещение данных, а не намерение разработчика, скрытое поведение за пределами тестируемого пути или безопасность расширений и операционной системы. Проверка исходного кода дополняет ее: обработчики операций вызывают рабочие процессы, средства рендеринга, создание Blob, создание ZIP и помощник загрузки, а не загрузку API.
Автоматизированные тесты изоляции повышают повторяемость, но по-прежнему ограничены своими сценариями. Просмотрите все предлагаемые операции, когда одобрение распространяется на весь набор инструментов, включая нанесение водяных знаков и преобразование изображений. Повторите проверку после существенных изменений в развертывании. Заявление о конфиденциальности является наиболее убедительным, когда наблюдения во время выполнения, реализация, тесты и опубликованные формулировки совпадают.
Наблюдаемая операция PDF не должна содержать байтов файла, а раскрытые аналитические запросы остаются отдельными.
Набор инструментов PDF разработан таким образом, чтобы выбранный файл попадал в память браузера и локальную обработку, а не в конечную точку приложения. На чистой панели «Сеть» во время преобразования не должно отображаться никаких запросов, переносящих PDF. Это узкое и оправданное утверждение, которое может проверить пошаговое руководство.
Документируйте раскрываемую аналитику отдельно, записывайте согласие и условия размещения, а также избегайте рассмотрения статических ресурсов как загрузок. Затем сохраните доказательства вместе с обзором. Верификация — это не разовый ритуал доверия; это повторяемая процедура, которая может выявить будущую регрессию именно потому, что ожидаемая граница четко обозначена. Тестирование более чем одной операции также предотвращает утверждение локального пути слияния и пропускает другую ветвь преобразования с отдельными зависимостями времени выполнения.