檔案 · PDF 工具包
驗證 PDF 工具永遠不會上傳您的檔案:網路面板演練
· 工作原理
pdf 隱私 網路檢查
您不必相信隱私權宣告;你可以看網路。這篇文章展示如何開啟瀏覽器的網路面板,執行 PDF 操作,並讀取結果,以及嚴格的內容安全策略告訴您有關第三方程式碼的資訊。
信任,但要檢查 - 為什麼「沒有上傳任何內容」是一個可測試的宣告而不是行銷路線
可以測試“沒有上傳任何內容”,因為上傳需要從頁面或其工作人員觀察網路活動。合規性審查應使用無害的、獨特的測試檔案而不是機密資料,然後將執行時請求與儲存庫中的來源和自動網路隔離測試進行比較。
一次乾淨的運作可證明該建置、瀏覽器、同意狀態和操作的行為。它並不驗證每個未來的部署或瀏覽器擴充功能。記錄測試的URL、日期、操作和請求日誌。精確的證據比無法複製的廣泛保證更有用。
開啟網路面板 — 在主要瀏覽器中的何處可以找到它以及開始之前要清除的內容
開啟開發者工具並選擇網絡,然後選擇測試檔案。 Chromium、Firefox 和 Safari 將其放置在開發者介面中,儘管標籤有所不同。僅在需要導航請求時才保留日誌;否則在頁面及其靜態腳本載入後清除它以隔離操作本身。
首先保持所有請求類型可見,包括 fetch、XHR、腳本和工作執行緒。除非測試計劃需要這些狀態,否則不要停用快取或分析。經同意的生產會話可以合法地載入公開的 Google 分析資源,因此任務是確定檔案位元組或識別檔案欄位是否進入請求。
運作操作 — 在面板記錄時合併或分割測試 PDF,以及如果發生上傳會是什麼樣子
選擇具有可識別無害文字的合成 PDF 並執行合併、分割或其他操作。觀看請求清單從選擇到完成和下載的整個過程。上傳通常會顯示為新的提取或 XHR,其中包含請求正文、多部分錶單資料或二進位有效負載,其時間遵循檔案選擇或執行。
工具包應該將位元組傳送到本機 Web Worker,這不會顯示為檔案要求。 PDF-to-image 在呼叫時從相同網站載入捆綁的 pdf.js 程式碼,並使用其工作程序進行解析;畫布編碼保留在主執行緒上。程式碼資源載入並不等於發送選定的 PDF。
讀取結果 - 區分頁面本身的靜態資源和攜帶檔案位元組的請求
檢查新的請求 URL、方法、啟動器、標頭和正文。靜態 JavaScript、CSS、字體和同源工作模組支援該頁面,但不包含所選位元組。在請求負載中搜尋獨特的測試短語或檔案名,同時記住二進位上傳可能不會在每個面板中呈現為可讀文字。
也要檢查時序。在選擇之前開始的請求不能包含後面的檔案。從 Blob 發起的下載可能會顯示瀏覽器內部行為而不是伺服器回應。消息來源確認結果位元組在本地包裝並傳遞到共享 Blob 下載幫助程序,而不是從輸出 URL 獲取。
檢查載入的第三方程式碼和同意的生產分析,而不是假設不存在
該大綱期望有嚴格的策略來證明沒有外部腳本、字體或標籤加載,但當前的隱私內容允許在規範生產主機上進行同意的分析。檢查回應標頭和實際發起者樹,而不是斷言策略結果。 Google 分析腳本是第三方程式碼,單獨揭露。
ToolAcre 事件使用封閉欄位列表,其中排除 PDF 內容、檔案名稱、貼上文字、URL 和確切的檔案大小。該設計減少了暴露,但不會使分析請求在同意後消失。正確的報告將「沒有請求攜帶文件位元組」與錯誤的宣告「頁面根本不發出外部請求」區分開來。
工作範例 — 在多兆位元組 PDF 上執行的完整驗證,包含先前、期間和之後的請求列表
對於多兆位元組測試,清除面板,選擇 PDF,等待頁數,執行拆分,下載輸出,然後清除檔案。標記每個階段發生的請求。預期的處理間隔有工作人員訊息和進度更改,但沒有包含來源檔案的網路條目。
如果分析行為在範圍內,則在拒絕同意的情況下重複一次,在生產主機上授予同意的情況下重複一次。比較日誌。在這兩種情況下,檔案路徑都應保留在本地,而分析資源行為可能會有所不同。僅當合成檔案不包含敏感資料時才保留螢幕截圖或 HAR。
這不包括什麼 - 審核 JavaScript 本身,以及為什麼網路檢查證明行為而不是意圖
網路檢查證明觀察到的資料移動,而不是開發人員的意圖、測試路徑之外的隱藏行為或擴展和作業系統的安全性。原始碼檢查對其進行了補充:操作處理程序呼叫工作程序、渲染器、Blob 建置、ZIP 建立和下載幫助程序,而不是上傳 API。
自動隔離測試增加了可重複性,但仍受到其場景的限制。當批准涵蓋整個工具包時,請審查所有提供的操作,包括影像浮水印和轉換。重大部署更改後重新檢查。當執行時觀察、實施、測試和發布的措辭都一致時,隱私權宣告是最有力的。
觀察到的 PDF 操作不應攜帶任何檔案位元組,而公開的分析請求則保持獨立
PDF 工具包的設計使所選檔案進入瀏覽器記憶體和本機處理,而不是應用程式端點。清晰的網路面板應顯示轉換期間沒有攜帶 PDF 的請求。這是演練可以驗證的狹隘的、合理的主張。
單獨記錄公開的分析,記錄同意和主機條件,並避免將靜態資源視為上傳。然後保留證據進行審查。驗證不是一次性的信任儀式;而是一種一次性的信任儀式。這是一個可重複的過程,可以準確地捕捉未來的回歸,因為預期的邊界已明確說明。測試多個操作還可以防止核准本機合併路徑,同時忽略具有單獨執行時相依性的不同轉換分支。