Chuyển đến nội dung chính

Hỗ trợ tệp lưu trữ

Tổng quan

Glasswall Halo cung cấp khả năng bảo vệ nâng cao cho các tệp lưu trữ. Tính năng mạnh mẽ này sử dụng Glasswall Engine tiên tiến để bảo vệ từng tệp riêng lẻ bên trong một tệp lưu trữ. Tính năng này không chỉ bảo vệ các tệp mà còn tái nén toàn bộ tệp lưu trữ một cách thông minh sang định dạng được hỗ trợ. Với chức năng nâng cao này, các tệp lưu trữ của bạn được bảo mật hiệu quả và tối ưu hóa để sử dụng liền mạch.

Các loại đầu vào được hỗ trợ

Không được bảo vệ

  • Zip - (hỗ trợ kiểu nén bzip2)
  • 7-Zip
  • Gzip
  • Rar
  • Tar

Được bảo vệ

  • Zip

Cách thức hoạt động

Khi nhận được một tệp lưu trữ, Halo thực hiện một quy trình xử lý toàn diện. Trước tiên, hệ thống giải nén tệp lưu trữ, đi sâu tối đa năm cấp tệp lưu trữ lồng nhau. Ở mỗi cấp, nền tảng xử lý riêng từng tệp không phải tệp lưu trữ mà nó gặp.

Mỗi tệp được đưa qua Glasswall engine mạnh mẽ để xử lý. Sau khi tất cả các tệp trong tệp lưu trữ đã được xử lý, nền tảng biên dịch lại tệp lưu trữ, giữ nguyên cấu trúc ban đầu. Các kết quả dự kiến của quy trình này như sau:

  1. Bảo vệ và làm sạch: Glasswall Engine đảm bảo rằng mỗi tệp được bảo vệ và làm sạch kỹ lưỡng, loại bỏ các mối đe dọa và lỗ hổng tiềm ẩn.

  2. Tuân thủ các policy: Glasswall Halo tuân thủ các policy đã chỉ định, bảo đảm rằng tệp lưu trữ kết quả phù hợp với các cấu hình bảo mật và quản lý nội dung được chỉ định.

  3. Bảo toàn định dạng: kho lưu trữ được biên dịch lại theo cách giữ nguyên cấu trúc ban đầu, duy trì tổ chức phân cấp và tính toàn vẹn của các tệp.

Bằng cách tuân theo quy trình xử lý mạnh mẽ này, Halo đảm bảo mức độ bảo vệ tệp, tuân thủ policy và bảo toàn tính toàn vẹn cao nhất cho các kho lưu trữ.

Kết quả dự kiến

Loại tệp

Mặc dù Glasswall Halo có năng lực rất cao, vẫn có những trường hợp một số loại kho lưu trữ nhất định không thể được hỗ trợ để nén lại do các hạn chế về cấp phép. Trong những trường hợp như vậy, nền tảng áp dụng một phương pháp thay thế: nén lại các loại kho lưu trữ không được hỗ trợ sang định dạng Zip tương thích phổ biến. Điều quan trọng là trong quá trình này, nền tảng đảm bảo rằng tất cả các loại tệp và cấu trúc thư mục bên trong kho lưu trữ Zip kết quả vẫn hoàn toàn không thay đổi.

Bằng cách triển khai giải pháp này, Glasswall Halo bảo đảm khả năng tương thích liền mạch và giữ nguyên tính toàn vẹn của các tệp gốc cũng như tổ chức thư mục, ngay cả khi gặp phải các loại kho lưu trữ không được hỗ trợ. Điều này đảm bảo dữ liệu vẫn có thể truy cập và không bị thay đổi, bất chấp mọi giới hạn do các ràng buộc cấp phép đặt ra.

Tệp đầu vàoVí dụ tệp đầu vàoTệp đầu raVí dụ tệp đầu ra
Zipfile.zipZipfile.zip
Tarfile.tarTarfile.tar
GZipfile.gzipGZipfile.gzip
7Zipfile.7zipZipfile.7zip.zip
Rarfile.rarZipfile.rar.zip

Nội dung tệp

Trong hầu hết các trường hợp, khi xử lý một tệp lưu trữ, Halo sẽ thay thế một tệp bên trong tệp lưu trữ bằng một phiên bản sạch trước khi trả về qua API. Tuy nhiên, có những tình huống nền tảng có thể gặp khó khăn khi xử lý một tệp cụ thể bên trong tệp lưu trữ. Trong những trường hợp như vậy, nếu một số tệp được xử lý thành công trong khi các tệp khác thì không, tệp không thể xử lý sẽ được thay thế bằng một tệp .txt. Nội dung của tệp thay thế này sẽ cung cấp lời giải thích về lý do tại sao tệp đó không thể được xử lý.

Bằng cách áp dụng phương pháp này, Halo đảm bảo rằng phần lớn các tệp trong một tệp lưu trữ được xử lý hiệu quả và được trả về ở trạng thái sạch. Đối với bất kỳ tệp nào gặp sự cố xử lý, các giải thích rõ ràng và đầy đủ thông tin sẽ được cung cấp, cho phép người dùng hiểu được lý do đằng sau các tệp không thể xử lý.

Có thể dự kiến các tình huống sau:

Tái dựng

  • Tệp lưu trữ đang được tái dựng và mục nhập được cho phép - sử dụng tệp gốc
  • Tệp lưu trữ đang được tái dựng và mục nhập không được cho phép - thay thế bằng một tệp văn bản (cùng tên) có nội dung "file disallowed"
  • Tệp lưu trữ đang được tái dựng và mục nhập là loại tệp không được hỗ trợ - thay thế bằng một tệp văn bản (cùng tên) có nội dung "unsupported file type"
  • Tệp lưu trữ đang được tái dựng và Engine gặp lỗi khi tái dựng mục nhập - thay thế bằng một tệp văn bản (cùng tên) có nội dung "unable to rebuild file"
  • Tệp lưu trữ đang được tái dựng và mục nhập được tái dựng thành công - sử dụng tệp đã tái dựng

Phân tích

  • Tệp lưu trữ đang được phân tích và mục nhập được cho phép - thay thế bằng một tệp văn bản (cùng tên) có nội dung "file allowed by policy, no analyse needed"
  • Tệp lưu trữ đang được phân tích và mục nhập không được cho phép - thay thế bằng một tệp văn bản (cùng tên) có nội dung "file disallowed"
  • Tệp lưu trữ đang được phân tích và mục nhập là loại tệp không được hỗ trợ - thay thế bằng một tệp văn bản (cùng tên) có nội dung "unsupported file type"
  • Tệp lưu trữ đang được phân tích và Engine gặp lỗi khi phân tích mục nhập - thay thế bằng một tệp văn bản (cùng tên) có nội dung "unable to analyse file"
  • Tệp lưu trữ đang được phân tích và mục nhập được tái dựng thành công - sử dụng kết quả phân tích của tệp

Trong mọi trường hợp liên quan đến tệp lưu trữ khi sử dụng endpoint V3, một tệp manifest.json cũng được xuất ra, trong đó nêu chi tiết kết quả xử lý của tất cả các tệp bên trong tệp lưu trữ và có thể được sử dụng để giúp hiểu tệp lưu trữ mà không cần phải giải nén nó.

Các loại nén

Khi xử lý tệp thông qua Halo, hệ thống coi các kiểu nén BzipGzip là các tệp riêng lẻ. Do đó, sẽ không có manifest.json nào được tạo trong quá trình xử lý. Tuy nhiên, việc xử lý các tệp nén này vẫn tuân theo các quy tắc xử lý tệp lưu trữ. Nếu một tệp nén chứa một tệp lưu trữ bên trong, manifest.json sẽ được tạo và xuất ra ở cấp cao nhất của cấu trúc tệp lưu trữ.

Header phản hồi loại tệp cho một tệp nén được đặt thành compressed_file, cho biết bản chất đã được nén của tệp đó.

Khi một báo cáo phân tích được tạo cho tệp nén, tệp đó sẽ trải qua quá trình đổi tên để bảo đảm giải nén đúng tệp bên trong. Ví dụ, nếu tệp gốc có tên là test.pdf.bz2, thì tệp báo cáo sẽ được đổi tên thành test.pdf.report.xml.bz2. Quy ước đặt tên này bảo đảm mối liên hệ rõ ràng giữa báo cáo và tệp nén tương ứng, hỗ trợ giải nén chính xác và phân tích tiếp theo.

Bằng cách triển khai các biện pháp này, Halo duy trì việc xử lý nhất quán đối với các tệp nén, tạo ra các báo cáo chính xác và bảo toàn tính toàn vẹn của các tệp đã xử lý trong suốt quy trình phân tích.

Cấu hình policy

Các endpoint API của Glasswall cung cấp hỗ trợ rộng rãi cho Content Management Flags, cho phép kiểm soát chi tiết đối với từng tệp riêng lẻ trong một tệp lưu trữ. Cấu hình này cho phép bạn xác định các hành động cụ thể cho từng loại tệp trong tệp lưu trữ. Giá trị mặc định cho mỗi loại tệp trong cấu hình này được đặt là allow - 0. Tuy nhiên, bạn cũng có thể linh hoạt chọn các hành động được hỗ trợ khác, chẳng hạn như sanitise - 1 hoặc disallow - 2.

Bằng cách sử dụng Content Management Flags, bạn có thể kiểm soát chính xác cách xử lý các loại tệp khác nhau trong tệp lưu trữ, bảo đảm rằng mỗi tệp nhận được mức quản lý và bảo mật phù hợp dựa trên cấu hình mong muốn của bạn. Tính năng này tăng cường khả năng kiểm soát tổng thể và các tùy chọn tùy chỉnh sẵn có để quản lý hiệu quả các tệp trong tệp lưu trữ thông qua Glasswall Halo API.

Các loại tệp sau được hỗ trợ trong cấu hình tệp lưu trữ:

"ArchiveConfig": {
"bmp": 1,
"doc": 1,
"docx": 1,
"emf": 1,
"gif": 1,
"jpg": 1,
"wav": 1,
"elf": 1,
"pe": 1,
"mp4": 1,
"mpg": 1,
"pdf": 1,
"png": 1,
"ppt": 1,
"pptx": 1,
"tif": 1,
"wmf": 1,
"xls": 1,
"xlsx": 1,
"mp3": 1,
"rtf": 1,
"coff": 1,
"macho": 1,
"unknown": 1
}

policy được áp dụng trong tệp lưu trữ như thế nào

Các tệp lưu trữ được xử lý thông qua Glasswall Halo tuân theo policy được cung cấp theo cách phân cấp. Nguyên tắc cơ bản định hướng việc áp dụng policy là chọn kết quả nghiêm ngặt nhất dựa trên cấu hình đã cho trong khi vẫn cố gắng đáp ứng yêu cầu ban đầu. Điều này có nghĩa là trong một số trường hợp, ContentManagementFlags được chỉ định trong yêu cầu sẽ được ưu tiên.

Ngoài ra, khi tham số return-executable-file được đặt thành false, tham số này đóng vai trò là một hạn chế bao trùm đối với tất cả tệp thực thi trong các tệp lưu trữ, bất kể cấu hình tệp lưu trữ được cung cấp là gì.

Hơn nữa, phần ArchiveConfig cũng được xem xét, có tính đến các giá trị bên trong phần này. Nếu các giá trị trong phần này thể hiện kết quả nghiêm ngặt nhất, chúng sẽ được sử dụng để xác định kết quả đầu ra của các tệp lưu trữ.

Bằng cách tuân theo cách tiếp cận phân cấp này và kết hợp các tham số được cung cấp, Halo bảo đảm rằng các policy được thực thi hiệu quả, mang lại mức độ bảo mật và kiểm soát tối đa đối với việc xử lý tệp lưu trữ.

Ma trận kết quả

Ví dụ này dựa trên một tài liệu Word có chứa một siêu liên kết nội bộ:

CMF = giá trị WordContentManagement:InternalHyperlinks

AC = giá trị ArchiveConfig:doc

CMF = 0CMF = 1CMF = 2
AC = 0Tệp được cho phépTệp được cho phépTệp được cho phép
AC = 1Tệp được làm sạchTệp được làm sạchTệp không được cho phép
AC = 2Tệp không được cho phépTệp không được cho phépTệp không được cho phép
Ví dụ này dành cho một tệp pe với return-executable-file được đặt như sau:

REF = giá trị return-executable-file

REF = trueREF = false
AC = 0Tệp được cho phépTệp không được cho phép
AC = 1Tệp được làm sạchTệp không được cho phép
AC = 2Tệp không được cho phépTệp không được cho phép

Giới hạn

Để đảm bảo hệ thống vận hành trơn tru và tránh quá tải, các giới hạn cụ thể đã được đặt ra cho việc xử lý tệp lưu trữ. Các giới hạn này như sau:

  • Số lượng tệp tối đa là 500. Điều này có nghĩa là mọi tệp lưu trữ chứa hơn 500 tệp khi được giải nén sẽ không được xử lý.
  • Kích thước tệp tối đa là 500 MB. Mọi tệp lưu trữ chứa tổng cộng hơn 500 MB dữ liệu tệp bên trong sẽ không xử lý được.
  • Số lượng tệp lưu trữ tối đa là 50. Giới hạn này theo dõi mọi tệp lưu trữ lồng nhau (tệp lưu trữ nằm trong tệp lưu trữ khác). Nếu phát hiện hơn 50 tệp lưu trữ lồng nhau thì toàn bộ tệp sẽ thất bại.
  • Số mức lồng tối đa là 5. Điều này đề cập đến số lớp lồng nhau có thể xuất hiện trong một tệp. Giới hạn này không khiến toàn bộ tệp thất bại khi xử lý, nhưng mọi tệp được bọc trong hơn 5 lớp tệp lưu trữ sẽ không được xử lý và thay vào đó một tệp văn bản giữ chỗ sẽ được đặt ở cấp độ thứ 5. Việc lồng nhau này chỉ áp dụng cho tệp lưu trữ bên trong tệp lưu trữ, thư mục không được tính.

Tất cả các giới hạn này đều có thể cấu hình thông qua cấu hình dịch vụ.