17 C
Vietnam
spot_img
HomeCông NghệỨng dụng Sandbox để bảo mật và ngăn chặn các mối đe...

Ứng dụng Sandbox để bảo mật và ngăn chặn các mối đe dọa trong hệ điều hành

Hiện nay, nhiều ứng dụng sử dụng hằng ngày được áp dụng công nghệ Sandbox giúp bảo vệ hệ điều hành tránh khỏi nguy cơ các cuộc tấn công của hacker – người hiểu rõ hoạt động của hệ thống máy tính, mạng máy tính, có thể viết hay chỉnh sửa phần mềm, phần cứng máy tính để làm thay đổi, sử dụng nó với nhiều mục đích tốt/xấu khác nhau. Ngoài ra, người dùng cũng có thể tự tạo ra một môi trường Sandbox của riêng mình nhằm mục đích kiểm tra, phân tích một phần mềm nào đó khi chưa chắc chắn liệu chúng có làm hại tới máy tính hay không. Sandbox là một kỹ thuật quan trọng trong lĩnh vực bảo mật có tác dụng cô lập các ứng dụng, ngăn chặn các phần mềm độc hại để chúng không thể làm hỏng hệ thống máy tính, hay cài các mã độc nhằm ăn cắp thông tin cá nhân của người dùng. 
 

Cùng tìm hiểu kỹ hơn về kỹ thuật Sandbox, đồng thời giúp người dùng hiểu rõ vai trò của Sanbox là gì và các ứng dụng của Sandbox trong hệ điều hành.
 

1. Khái niệm về Sandbox
 

Sandbox là một kỹ thuật nhằm cô lập các ứng dụng, giúp bảo vệ và không cho các phần mềm độc hại xâm nhập vào máy tính, điện thoại để hạn chế việc làm hỏng hệ thống máy hoặc rò rỉ các thông tin cá nhân.
 

Trong hệ thống máy tính, mỗi một phần mềm hay ứng dụng đều chia sẻ chung một bộ nhớ và đều dùng chung một CPU (bộ xử lý trung tâm). Một khi các tài nguyên này được dùng chung, sẽ dẫn đến khả năng một chương trình hay ứng dụng sẽ chiếm toàn bộ máy tính của người dùng, truy cập đến tất cả vị trí bộ nhớ hay sử dụng CPU không có kiểm soát. Vì vậy, Sandbox ra đời để đặt các chương trình, ứng dụng nằm trong phạm vi quản lý.
 


 

Máy tính hay các thiết bị di động được thiết kế để chia sẻ tài nguyên phần cứng cho các ứng dụng làm được nhiều việc khác nhau cùng một lúc. Các thiết bị như điện thoại, máy tính, máy tính bảng hay kể cả đồng hồ thông minh cũng đều được thiết kế làm nhiều việc cùng lúc nhằm đáp ứng được nhu cầu của người dùng. Tuy nhiên, việc các ứng dụng dùng chung tài nguyên này sẽ dẫn đến các tác dụng phụ không mong muốn. Nếu như một chương trình hay ứng dụng bị lỗi sẽ dẫn đến các ứng dụng khác bị lỗi theo hoặc có thể có một ứng dụng độc hại lợi dụng việc dùng chung tài nguyên với các ứng dụng khác và cố gắng truy cập đến các khu vực riêng tư nhằm một mục đích xấu gây ảnh hưởng đến người dùng. Vì vậy, Sandbox là một kỹ thuật rất quan trọng nhằm tăng tính bảo mật của bất kỳ chương trình hay ứng dụng nào.
 

2. Vai trò của Sandbox
 

Sandbox đóng vai trò là một môi trường dùng để chạy phần mềm và môi trường đó được kiểm soát nghiêm ngặt và chặt chẽ. Sandbox sẽ giới hạn chức năng của một đoạn mã nào đó và cấp quyền cho chúng chỉ được thực hiện một số chức năng nhất định, không cho nó thực hiện những chức năng khác gây nguy hại đến thiết bị của người dùng.
 

Vai trò của việc ứng dụng Sandbox trên các phần mềm chính là các trình duyệt web được sử dụng hằng ngày. Bất kỳ trang web nào người dùng truy cập cũng đều được chạy trong môi trường Sandbox. Sandbox sẽ giới hạn và chỉ cho phép website chạy trong trình duyệt và can thiệp một phần nhỏ vào tài nguyên hệ thống.
 

Bất kỳ việc sử dụng tài nguyên nào trên máy cũng đều phải được người dùng cho phép. Nếu không có Sandbox thì khả năng máy tính hay thiết bị sử dụng sẽ bị tấn công rất cao khi chẳng may truy cập vào các website chứa mã độc.
 

3. Các lỗi phát sinh nếu không có Sandbox
 

Xung đột chương trình
 

Trước đây, khi máy tính chưa phải phải làm nhiều việc, CPU sẽ phân phối tài nguyên hệ thống dựa trên cơ sở ai đến trước được phục vụ trước. Tuy nhiên, điều này đã không còn phù hợp với hiện tại.
 

Ngày nay, máy tính phải xử lý khối lượng công việc phức tạp và lớn hơn gấp nhiều lần và cơ chế này đã không còn phù hợp. CPU sẽ không cho phép các chương trình truy cập vào các tài nguyên chúng đã phân bổ. Nếu một chương trình cố gắng sử dụng tài nguyên mà chưa được CPU chỉ định, sẽ dẫn đến lỗi của không chỉ một mà hàng loạt chương trình khác trên máy tính.
 

Các chương trình có thể dễ dàng phân bố trước các tài nguyên nếu chạy trong Sandbox, chẳng hạn như trong bộ nhớ và không gian ổ đĩa trước khi chạy chương trình. Các tài nguyên sẽ luôn đảm bảo và sẵn sàng cho chương trình bất kỳ khi nào chúng cần. Điều này cũng đảm bảo rằng sẽ không có ứng dụng hay chương trình nào khác sử dụng tài nguyên đó.
 

Ứng dụng ngừng hoạt động do nâng cấp các chương trình phụ thuộc
 

Các thiết bị luôn cho chúng ta biết rằng các bản cập nhật cần được áp dụng hoặc các phiên bản mới của các chương trình đã có sẵn. Điều quan trọng là cho phép các bản cập nhật này diễn ra càng sớm càng tốt vì nhiều bản cập nhật có liên quan đến các vấn đề về bảo mật hoặc hiệu suất. Việc ngừng nâng cấp thường khiến thiết bị kém an toàn hơn và hoạt động ở trạng thái chưa tốt nhất vì mỗi ứng dụng đều có nhiều phiên bản của chính nó.
 

Bên trong các ứng dụng chính mà chúng ta sử dụng hằng ngày đều có các chương trình phụ thuộc liên quan. Ứng dụng chính hoạt động đúng cách hay không đều nhờ vào các chương trình phụ thuộc này. Cũng giống như ứng dụng thông thường, các ứng dụng phụ thuộc này luôn được cập nhật và thay đổi liên tục. Nếu trong thời gian cập nhật này, ứng dụng chính cần sử dụng tính năng mà do chương trình phụ thuộc cung cấp, ứng dụng chính sẽ bị dừng hoạt động ngay lập tức. Các nhà phát triển ứng dụng thường xuyên gặp phải vấn đề này và Sandbox chính là cách hiệu quả để giải quyết nó.
 

Ảnh hưởng bởi các chương trình độc hại
 

Một ứng dụng chia sẻ máy tính với tất cả các ứng dụng đang hoạt động khác và một trong số các chương trình đó chứa thông tin nhạy cảm của người dùng, nếu các ứng dụng không có Sandbox, các ứng dụng độc hại tồn tại trên máy tính sẽ luôn thăm dò các khu vực lưu thông tin bảo mật trên các ứng dụng đó, tìm ra các lỗ hổng của chương trình và đánh cắp thông tin nhạy cảm của người dùng.
 

Sandbox sẽ là giải pháp hữu hiệu giải quyết các vấn đề đó. Nó cung cấp khả năng bảo vệ các chương trình và chống lại các phần mềm độc hại (malware). Khi một ứng dụng chạy trong Sandbox, nó chỉ có thể truy cập vào các khu vực bộ nhớ đã được cấp phép cho nó. Vì vậy, việc mở các tài liệu nhạy cảm sẽ ngăn không cho các phần mềm độc hại hay ứng dụng độc hại xâm nhập, vì tài liệu này không nằm cùng khu vực bộ nhớ với các chương trình độc hại đó.
 

4. Một số nền tảng sử dụng Sandbox
 

Sandbox trình duyệt
 

Sandbox trình duyệt là cách gọi chung các Sandbox được áp dụng trên các nền tảng chạy trên trình duyệt để bảo vệ người dùng, cụ thể như:
 

– Các website: Các trình duyệt web sẽ cô lập các trang web mà người dùng truy cập. Các website sẽ được phép chạy các mã JavaScript nhưng chúng chỉ được phép sử dụng các dữ liệu mà người dùng cho phép. Sandbox sẽ ngăn chặn JavaScript nếu chúng truy cập dữ liệu của người dùng trên máy mà không có sự cho phép của chính người dùng.
 

– Plug-in trình duyệt (là phần bổ sung phần mềm cho phép tùy chỉnh các chương trình máy tính, ứng dụng và trình duyệt web – cũng như tùy chỉnh nội dung do các trang web cung cấp): Môi trường Sandbox cũng sẽ được chạy trên bất cứ nội dung nào mà trình duyệt tải về. Sandbox sẽ cô lập chúng, ngăn không cho các ứng dụng chạy trên thiết bị này truy cập trái phép vào máy tính.
 

– Trình duyệt web: Hầu hết các trình duyệt phổ biến ngày nay đều được thiết kế chạy trong Sandbox của riêng chúng mà người dùng không cần phải thiết lập điều gì. Sandbox trên trình duyệt web sẽ làm tăng tính bảo mật, bảo vệ người dùng khỏi các phần mềm độc hại hay các hacker tấn công trên Internet.
 

Microsoft Office, trình đọc file PDF
 

Nền tảng phổ biến nhất là Microsoft Office cũng đã ứng dụng Sandbox cho riêng mình, ngăn không cho các đoạn mã độc thâm nhập vào máy tính của người dùng.
 

Trình đọc file PDF là Adobe Reader cũng đã áp dụng Sandbox, cho phép chạy các file PDF trong môi trường Sandbox, ngăn chặn nguy cơ các file PDF bị cài mã độc tấn công dữ liệu máy tính của người dùng. 
 

Ứng dụng di động 
 

Các hệ điều hành di động hiện nay bao gồm iOS, Android đều chạy ứng dụng trong môi trường Sandbox. Chúng chỉ được phép truy cập vào tài nguyên hệ thống như dùng GPS (hệ thống định vị toàn cầu) để theo dõi vị trí của người dùng… nếu người dùng đồng ý. Ngoài ra, việc từng ứng dụng đều chạy trong môi trường Sandbox riêng sẽ ngăn chặn không cho các ứng dụng này can thiệp vào nhau.
 

Ứng dụng Windows
 

Các ứng dụng Windows truyền thống không được thiết lập mặc định chạy trong Sandbox. Tuy nhiên, người ta vẫn dùng các phương pháp Sandbox thủ công để thiết lập các ứng dụng chạy trong môi trường Sandbox. Nếu muốn thử các ứng dụng nào đó nhưng lại sợ ảnh hưởng đến máy tính, người dùng có thể thử các phương pháp sau để chạy thử ứng dụng trong môi trường Sandbox.
 

– Máy ảo: Một trong những ứng dụng máy ảo nổi tiếng hiện nay là VirtualBox, có thể chạy máy ảo trên cả Windows lẫn MacOS hay Linux. Các chương trình máy ảo sẽ giúp tạo ra một môi trường phần cứng ảo và chạy riêng một hệ điều hành. Hệ điều hành mới này sẽ tách biệt hoàn toàn với máy tính của người dùng, tất cả các ứng dụng chạy trong máy ảo sẽ không được phép truy cập vào bất kỳ đâu bên ngoài máy ảo, nhờ vậy sẽ bảo vệ hệ thống thật của người dùng trước các phần mềm không đảm bảo.
 

Ứng dụng máy ảo khác cũng nổi tiếng không kém chính là Parallels. Phần mềm này được viết riêng cho MacOS và được thiết kế để chạy Windows trên máy ảo. Đây cũng là ứng dụng để người dùng MacOS có thể chạy Windows trên MacBook của mình.

– Sandboxie: Là một ứng dụng tạo môi trường Sandbox cho các ứng dụng Windows. Phần mềm này sẽ tạo ra một môi trường ảo để cô lập ứng dụng. Đây có thể là nơi để bạn thử nghiệm các ứng dụng mới nhưng vẫn đảm bảo an toàn cho máy tính của mình.
 

– QubesOS: Đây cũng là một ứng dụng tạo môi trường Sandbox trên Windows. Điểm đặc biệt của ứng dụng này là nó khởi chạy nhiều hệ điều hành riêng biệt với nhau, cho phép Sandbox các ứng dụng riêng lẻ và các ứng dụng này chạy trong máy ảo của riêng mình thay vì tạo một máy ảo chung cho tất cả ứng dụng như VirtualBox.
 

Không cần quá quan tâm tới chi tiết kỹ thuật của Sandbox nếu chỉ là người dùng thông thường. Bởi đơn giản Sandbox là công nghệ được thiết kế để chạy ngầm trong hệ thống và người dùng không phải thực hiện bất kỳ thao tác gì để tận hưởng những ưu việt mà nó mang lại. Tuy nhiên, người dùng cũng nên tìm hiểu để nhận biết những loại ứng dụng nào đang áp dụng Sandbox, loại nào không, để đưa ra những giải pháp phù hợp đồng thời giúp cho hệ điều hành giảm tải những tài nguyên không cần thiết.
 

Bài Viết Mới Nhất

Đáng Xem

LEAVE A REPLY

Please enter your comment!
Please enter your name here