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:
-
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.
-
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.
-
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ào | Ví dụ tệp đầu vào | Tệp đầu ra | Ví dụ tệp đầu ra |
|---|---|---|---|
| Zip | file.zip | Zip | file.zip |
| Tar | file.tar | Tar | file.tar |
| GZip | file.gzip | GZip | file.gzip |
| 7Zip | file.7zip | Zip | file.7zip.zip |
| Rar | file.rar | Zip | file.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 Bzip và Gzip 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 = 0 | CMF = 1 | CMF = 2 | |
|---|---|---|---|
| AC = 0 | Tệp được cho phép | Tệp được cho phép | Tệp được cho phép |
| AC = 1 | Tệp được làm sạch | Tệp được làm sạch | Tệp không được cho phép |
| AC = 2 | Tệp không được cho phép | Tệp không được cho phép | Tệ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 = true | REF = false | |
|---|---|---|
| AC = 0 | Tệp được cho phép | Tệp không được cho phép |
| AC = 1 | Tệp được làm sạch | Tệp không được cho phép |
| AC = 2 | Tệp không được cho phép | Tệ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ụ.