Được viết cho các đội bảo mật, và về sản phẩm của chúng tôi cũng như bất kỳ sản phẩm nào khác.
Giới thiệu
Bài viết này được đăng trên blog của một trình xem tài liệu trực tuyến miễn phí. Điều này đáng được nêu ra ngay trong câu đầu tiên, vì thể loại mà nó thuộc về — “những nguy hiểm ẩn của các công cụ PDF miễn phí” — thường là một bài quảng cáo mặc áo blouse phòng thí nghiệm, và bạn nên đọc bài này với suy nghĩ đó.
Vì vậy, đây là phần tiết lộ ngay từ đầu. Doconut.app là một trình xem được lưu trữ miễn phí. Khi bạn sử dụng nó, PDF của bạn sẽ được tải lên máy chủ của chúng tôi, được render tại đó, và bị xóa khi phiên xem của bạn kết thúc. Mọi nội dung dưới đây về các rủi ro cấu trúc khi tải lên tài liệu lên hạ tầng của người khác cũng áp dụng cho chúng tôi. Chúng tôi sẽ không tranh cãi ngược lại; chúng tôi sẽ cụ thể hoá những gì chúng tôi làm và không làm, và để bạn quyết định tài liệu nào nên ở đây.
1. Rủi ro là cấu trúc, không phải hiếm
Các rủi ro thú vị không phải là zero‑day. Chúng là những hậu quả bình thường của việc tệp tin tồn tại ở nơi bạn không kiểm soát.
Việc tải lên là thực tế. Một trình xem được lưu trữ phải nhận tài liệu để có thể render nó. Bất kỳ ai tuyên bố cung cấp dịch vụ lưu trữ mà “tệp không bao giờ rời máy của bạn” đều đang mô tả một công cụ hoàn toàn chạy phía client hoặc mô tả sai lệch. Trên Doconut.app việc tải lên diễn ra qua HTTPS, bảo vệ dữ liệu trong quá trình truyền — và sau đó tệp tin sẽ nằm trên máy chủ của chúng tôi, vì nó phải như vậy.
Giữ lại là một lời hứa, không phải một cơ chế bạn có thể kiểm tra. Chúng tôi nói tệp sẽ bị xóa khi phiên kết thúc. Điều này đúng, và bạn không thể xác minh từ bên ngoài. Đây là cốt lõi của vấn đề với mọi trình xem miễn phí, bao gồm cả trình này: bạn đang mở rộng niềm tin vào một tổ chức mà bạn không có hợp đồng.
Cơ sở hạ tầng chia sẻ là chia sẻ. Một dịch vụ công cộng miễn phí xử lý tài liệu của nhiều khách hàng trên cùng một hạ tầng. Đó là một vị thế rủi ro khác so với phần mềm chạy trong mạng nội bộ của bạn, bất kể nó được vận hành cẩn thận như thế nào.
Không có thỏa thuận đồng nghĩa không có cơ sở pháp lý. Nếu bạn xử lý dữ liệu cá nhân theo GDPR, hoặc PHI theo HIPAA, việc chuyển tệp tới một bộ xử lý không có Thỏa thuận Xử lý Dữ liệu (DPA) hoặc Thỏa thuận Đối tác Kinh doanh (BAA) là một vấn đề ngay tại thời điểm tải lên — bất kể có bị vi phạm hay không. Doconut.app không có DPA và không có BAA với bạn. Đối với tài liệu được quy định, đó là câu trả lời đầy đủ, và không lượng mã hoá nào có thể thay đổi điều đó.
2. Những gì chúng tôi không làm
Thể loại mà bài viết này thuộc thường hứa hẹn mọi thứ. Vì mục tiêu ở đây là cân bằng, danh sách hữu ích hơn là những gì không có:
- Không có chứng nhận bảo mật. Không ISO 27001, không SOC 2, không chứng nhận HIPAA, không đánh giá PCI DSS. Không dành cho các trang miễn phí, và không dành cho SDK. Nếu bảng câu hỏi nhà cung cấp của bạn yêu cầu chứng chỉ, chúng tôi không có.
- Không có nhật ký kiểm toán. Không có tài khoản trên Doconut.app, vì vậy không có gì để gán quyền truy cập và không có dấu vết nào để bạn nhận.
- Không loại bỏ siêu dữ liệu. Chúng tôi render tài liệu nguyên trạng. Tên tác giả, lịch sử sửa đổi và bình luận trong tệp vẫn còn trong tệp — điều này đáng biết trước khi bạn chuyển tiếp một hợp đồng, dù rủi ro này thuộc về tài liệu hơn là chúng tôi.
- Không có mã hoá khi lưu trữ. Chúng tôi không cung cấp lưu trữ được mã hoá, vì chúng tôi không cung cấp lưu trữ. Không giữ lại thứ gì đó là một tính chất mạnh hơn so với việc mã hoá nó, nhưng đó là một tính chất khác, và các nhà cung cấp thường nhầm lẫn hai khái niệm.
- Không có khả năng cấu hình thời gian giữ lại. Thời gian giữ lại do chúng tôi quyết định. Không có cài đặt nào để bạn điều chỉnh.
3. Những gì chúng tôi làm
- Việc tải lên diễn ra qua HTTPS.
- Tài liệu được hiển thị trên máy chủ của chúng tôi, và trình duyệt nhận các trang thay vì tệp nguồn.
- Việc hiển thị không phải là thực thi: macro trong tệp Office không chạy, và các hành động PDF không được kích hoạt. Trình xem vẽ tài liệu.
- Tệp sẽ được xóa khi phiên xem kết thúc. Không có thư viện, không có lịch sử, không có tài khoản.
- Trình tải lên từ chối những gì nó không thể xử lý trước khi gửi — một danh sách cố định hơn 70 định dạng, với giới hạn kích thước cho mỗi định dạng từ 5 MB đến 25 MB.
- DICOM bị loại trừ cố ý.
.dcmvà.imakhông được chấp nhận, chính xác vì tệp DICOM chứa thông tin nhận dạng bệnh nhân cùng với hình ảnh và điểm cuối tải lên công cộng không phải là nơi phù hợp cho nó.
4. Một bài kiểm tra bạn có thể áp dụng cho bất kỳ trình xem miễn phí nào, bao gồm cả cái này
Thay vì một danh sách các mối đe dọa, có bốn câu hỏi giúp phân biệt những gì có thể dùng được và không thể dùng được:
- Nó có nói rõ ràng liệu tệp có được tải lên không? Nếu câu trả lời mơ hồ, hãy giả định rằng nó đã được tải lên.
- Nó có nêu thời gian lưu trữ bằng các thuật ngữ cụ thể không? “Được xóa khi phiên của bạn kết thúc” hoặc “được gỡ bỏ sau 60 phút” là những câu trả lời. “Các tệp của bạn an toàn với chúng tôi” thì không.
- Nó có ký một thỏa thuận không? Đối với dữ liệu được quy định, đây là câu hỏi duy nhất quan trọng, và các dịch vụ miễn phí hầu như không bao giờ làm như vậy. Chúng tôi không làm.
- Nó có tuyên bố có chứng chỉ không? Nếu có, hãy yêu cầu chứng chỉ và phạm vi của nó. Rất nhiều tuyên bố trong danh mục này không tồn tại khi được yêu cầu.
Áp dụng cho Doconut.app: có, nó tải lên; có, việc xóa diễn ra khi phiên kết thúc; không, chúng tôi sẽ không ký DPA; và không, chúng tôi không có chứng chỉ nào. Sự kết hợp này phù hợp với rất nhiều tài liệu và không phù hợp với một số. Ý chính là bạn có thể phân biệt được chúng.
5. Khi một trình xem được lưu trữ không phải là công cụ phù hợp
Nếu tài liệu thuộc chế độ tuân thủ, được bảo vệ bởi nghĩa vụ bảo mật khách hàng, hoặc đơn giản là điều mà bạn không thoải mái giải thích trong một cuộc đánh giá sự cố, không có trình xem lưu trữ miễn phí nào là câu trả lời đúng — kể cả của chúng tôi. Giải pháp cấu trúc là giữ việc hiển thị bên trong mạng của bạn.
Đó là mục đích của Doconut SDK: cùng một động cơ hiển thị .NET phía sau trang này, được cài đặt trong môi trường của bạn. Nó hiển thị trên máy chủ của bạn và không thực hiện bất kỳ cuộc gọi nào tới chúng tôi, vì vậy tài liệu không bao giờ vượt qua ranh giới mà bạn chưa đánh giá.
Hãy cũng rõ ràng về những gì SDK không phải là. Nó không cung cấp mã hóa khi nghỉ, quản lý khóa, tích hợp nhà cung cấp danh tính hoặc nhật ký kiểm toán, và nó không thể làm cho ứng dụng của bạn tuân thủ bất kỳ tiêu chuẩn nào. Những kiểm soát đó là của bạn — đó là điểm quan trọng, vì chúng cũng là những gì bạn đã có thể chứng minh. Một thành phần chạy trong mạng của bạn và không gọi tới bất kỳ ai là một lập luận kiến trúc, và đối với hầu hết các đánh giá bảo mật, nó hữu ích hơn so với một chứng chỉ thuộc về bên thứ ba.
Kết luận
Các trình xem PDF miễn phí thực sự hữu ích, và hầu hết các tài liệu mà mọi người xử lý không nhạy cảm. Sai lầm không phải là sử dụng chúng; mà là sử dụng chúng mà không biết tệp của bạn thuộc loại nào.
Đối với một tài liệu thông thường mà bạn chỉ cần đọc một lần, một trình xem không lưu lại gì là lựa chọn hợp lý — và an toàn hơn việc tải tệp xuống và mở nó bằng bất kỳ phần mềm nào đã được cài đặt. Doconut.app sẽ thực hiện điều đó, miễn phí, không cần tài khoản, và sẽ xóa nó sau đó.
Đối với bất kỳ tài liệu nào có nghĩa vụ bạn phải bảo vệ, hãy giữ việc xử lý trên phần cứng mà bạn kiểm soát.
Hành động ngay lập tức
- Kiểm toán quy trình PDF trong tổ chức của bạn và liệt kê các công cụ miễn phí đã được sử dụng — thường có nhiều hơn so với dự đoán.
- Phân loại các loại tài liệu nào có thể sử dụng dịch vụ lưu trữ. Đây là quyết định chính sách, không phải kỹ thuật.
- Di chuyển phần còn lại nội bộ, dù bằng Doconut SDK hay một giải pháp tương đương, và giữ lại bằng chứng mà các kiểm toán viên sẽ yêu cầu.
