Apple yêu cầu lập trình viên dùng sandbox cho ứng dụng trên App Store
Duy Luân
11 nămBình luận: 49

[TAG]Apple[/TAG] vừa đưa ra thông báo bắt buộc mọi ứng dụng trên Mac App Store phải sử dụng "[TAG]Sandbox[/TAG]", một biện pháp bảo mật ở cấp độ thấp nhất. Hạn chót cho việc áp dụng Sandbox là ngày 1 tháng 3 năm 2012. Apple nói rằng Sandbox "là một cách tốt để bảo vệ hệ thống máy tính cũng như người dùng bằng các giới hạn các tài nguyên mà ứng dụng có thể truy cập, từ đó hạn chế việc lỗ hổng bảo mật bị tận dụng do phần mềm mã độc." Các lập trình viên buộc phải chọn lựa giữa việc tuân theo Apple để ứng dụng có thể lên [TAG]Mac App Store[/TAG] hoặc phải tự phân phối. Họ vẫn có khả năng truy cập vào một số tài nguyên nhất định nhưng cần phải có sự đồng ý của Apple. Ban đầu, Apple dự định sẽ ra hạn chót vào tháng này nhưng như vậy thì quá gấp rút.


Vậy Sandbox là gì và tại sao Apple lại bắt buộc phải dùng nó? Sandbox (tạm dịch: hộp cát) là một kĩ thuật bảo mật giúp Apple đảm bảo độ an toàn cao nhất có thể cho các ứng dụng trên Mac App Store. Sandbox có thể giúp ứng dụng khỏi bị khai thác các lỗ hổng bảo mật hoặc hạn chế các lỗi phát sinh trong quá trình chạy(bug). Khi một ứng dụng sử dụng được khởi chạy, Sandbox sẽ tạo một "tường rào" xung quanh để cách li ứng dụng với phần còn lại của hệ thống như tài liệu người dùng, mạng, khả năng lưu tập tin, truy xuất các thiết bị ngoại vi (ví dụ như bàn phím, máy in), danh bạ, lịch, vị trí... Bản thân Mac OS không thể một mình làm việc này mà cần có sự hợp tác từ phía nhà phát triển phần mềm. Các lập trình viên sẽ sử dụng "luật lệ" của Sandbox có tên là Entitlement. Các luật này được Apple quản lí cách thức truy xuất vào tài nguyên hệ thống. Chính vì thế, Sandbox sẽ giúp giảm thiểu khả năng máy tính của người dùng bị tấn công do tin tặc khai thác các lỗi bảo mật. Nếu có lỗi phát sinh, lập trình viên cũng sẽ dễ dàng hơn trong việc khắc phục.


Các ứng dụng Sandbox (điển hình như Preview, Safari) sẽ lưu mọi tập tin, cấu hình, dữ liệu tại cùng một nơi, giúp dễ dàng khắc phục lỗi

49 bình luận
Mr.Alone
ĐẠI BÀNG
11 năm
Hay quá, cơ mà chạy bằng sandbox thì có ảnh hưởng tới sử dụng tài nguyên của máy ko ?
kietbull
TÍCH CỰC
11 năm
Dĩ nhiên cũng có 1 phần.
Quá bá đạo , tuy nhiên ủng hộ ,
Sandbox của Apple liên quan gì tới ứng dụng Sanboxie trên Windows này ko nhỉ? Về chức năng thì cũng giống nhau đấy. http://www.sandboxie.com/index.php?DownloadSandboxie

Apple vừa đưa ra thông báo bắt buộc mọi ứng dụng trên Mac App Store phải sử dụng "Sandbox", một biện pháp bảo mật ở mức thấp nhất. Hạn chót cho việc áp dụng Sandbox là ngày 1 tháng 3 năm 2012. Apple nói rằng Sandbox "là một cách tốt để bảo vệ hệ thống máy tính cũng như người dùng bằng các giới hạn các tài nguyên mà ứng dụng có thể truy cập, từ đó hạn chế việc lỗ hổng bảo mật bị tận dụng do phần mềm mã độc." Các lập trình viên buộc phải chọn lựa giữa việc tuân theo Apple để ứng dụng có thể lên Mac App Store hoặc phải tự phân phối. Họ vẫn có khả năng truy cập vào một số tài nguyên nhất định nhưng cần phải có sự đồng ý của Apple. Ban đầu, Apple dự định sẽ ra hạn chót vào tháng này nhưng như vậy thì quá gấp rút.

Vậy Sandbox là gì và tại sao Apple lại bắt buộc phải dùng nó? Sandbox (tạm dịch: hộp cát) là một kĩ thuật bảo mật giúp Apple đảm bảo độ an toàn cao nhất có thể cho các ứng dụng trên Mac App Store.

Mình thấy 2 cái này hơi mâu thuẫn với nhau 😃
mình cũng thế. đọc xong cái "đoạn màu đỏ ở dưới" thì lại phải lên trên coi lại. chẳng hiểu gì cả :-....
Độ bảo mật thấp nhất nghĩa là khi so sánh với các cấp độ bảo mật khác.

VD như:
- Độ bảo mật cấp 1: Không cho truy xuất thư mục Documents, không cho kết nối máy in và thiết bị ngoại vi, không cho lấy địa điểm.
- Độ bảo mật cấp 2: bao gồm những gì ở đọ bảo mật cấp 1 + không cho truy cập thêm vài tài nguyên hệ thống khác
- Độ bảo mật cấp 3: gồm 1 + 2 và chặn không cho tùy tiện kết nối Internet...

Còn "Đảm bảo độ an toàn cao nhất" nghĩa là sẽ ít nguy hiểm hơn khi không dùng hoặc so với các phương pháp bảo mật khác. Thế thôi.
bluestars
ĐẠI BÀNG
11 năm
Có thể ý người dịch là: một biện pháp bảo mật ở cấp thấp nhất
apple nâng cấp bảo mật ghê nhỉ
Apply phải có rule chặt chứ không thì loạn hết.
Mức thấp nhất của hệ thống, chứ không phải về độ an toàn của nó
Sandbox đươc nhiều ứng dụng sử dụng lắm. Ví dụ điển hình là Google Chrome. Đến thời điểm này (theo mình biết) thì Chrome là HĐH duy nhất trên thế giới chưa bị khai thác để xâm nhập : http://vietcoding.com/muon-nhan-20000-usd-tu-google-hay-tan-cong-chrome/
Muốn nhận 20.000$ từ Google? Hãy tấn công Chrome! – Việt Coding
vietcoding.com
Thuật ngữ sandbox cũng không có gì lạ đâu, thực tế mà nói nó được sử dụng khá nhiều ở tất cả các nền tảng khác nhau (có thể vì tên gọi khác, bạn chưa khai thác, ...) nên bạn không rõ đó thôi.

Nói nôm na, tính năng sandbox là cô lập ứng dụng và không ảnh hưởng xung quanh bằng cách thiét lập một môi trường ảo (nghe tới đây chắc cũng có vài thứ bạn ngờ ngợ ra rồi chứ ;) )
_Windows nếu ai dùng Comodo sẽ hiểu tính năng này được tính hợp để chạy thử ứng dụng, phân tích các mẫu mã độc, ... (cao cấp nhất của cái này là "đóng băng" mà ta quen gọi)
_Mac và Linux thì ngang ngang nhau (cũng chưa có gì để so sánh)
có thể diễn đạt nôm na như xét nghiệm virus trong phòng cách ly í các bạn ạ. Sandbox chính là phòng thí nghiệm, còn các phần mềm, các mã....là những mẫu thử
Title giật gân quá, mình nghĩ chủ thớt nên thêm chữ 'Mac' vào như trong bài ý ;)
Cũng chả hiểu nó là ntn
Theo tôi thì Sandbox mà Apple dùng không mang ý nghĩa là môi trường ảo riêng cho từng ứng dụng mà ý của Apple là mỗi ứng dụng bán trên Mac App Store sẽ là 1 ứng dụng chạy độc lập mà không cần dùng chung thư viện với các ứng dụng khác.

- Trước đây Microsoft phát triển DDL ( Dynamic link library) giúp cho việc chia sẽ các chức năng chung giữa các ứng dụng khác nhau dễ dàng, giúp tiết kiệm bộ nhớ, hard disk, .v.v. khi các ứng dụng dùng các chức năng/thư viện chung cùng chạy đồng thời. Tuy nhiên ở khía cạnh security thì việc này không tốt vì khi virus máy tính khai thác được các lỗ hổng của DLL thì viêc loại trừ virus ra khỏi máy tính rất phức tạp, ngoài ra các ứng dụng sử dụng thư viện chung chồng chéo lên nhau việc uninstall 1 ứng dụng có thể làm ứng dụng khác cũng chết theo....

- Với Apple MacOS thì các ứng dụng tương đối độc lập. Ai sử dụng Mac OS cũng sẽ thấy việc install các ứng dụng khá đơn giản, cứ kéo thả vào Application là chạy được. Điều này đơn giản vì sử dụng mô hình sandbox, mỗi bộ cài ứng dụng chứa đủ thư viện của riêng nó, không thật sự cần đọc hệ thống để kiểm tra các thư viện chung. Mô hình này dễ sử lý các vấn đề mà mô hình DLL gặp phải nhưng ngược lại, tốn bộ nhớ và hard disk hơn khi các ứng dụng tương tự chạy đồng thời.

- Về bản chất thì các ứng dụng trên Mac OS đã là sandbox rồi, tôi nghĩ có lẽ do sự phát triển của Mac App Store nên nhiều lập trình viên Windows nhảy vào phát triển thêm, dẫn đến không đồng bộ về cách sử dụng thư viện động, nên Apple quyết định kiểm soát chặt chẽ hơn về việc này.
Theo như bạn thì mình thấy vô lý, nếu HĐH đã để các ứng dụng chạy độc lập thì làm sao các lập trình viên Windows nhảy vào lại không theo theo cách thức của HĐH được !?
@444plus Bởi vì nó vẫn chạy được nếu bạn không lập trình theo hướng thư viện riêng
Hiện trên win chỉ thấy mỗi comodo là có tính năng này

Gửi từ HTC Vision của tôi bằng cách sử dụng Tinhte.vn
Lại độc đoán bắt chẹt các lập trình viên rồi, sống ko biết diều tí nào
Thế nào là bắt chẹt. Việc này sẽ giúp các LTV viết ra các phần mềm tốt hơn cho người dùng. Việc này giúp người dùng, LTV và Apple đều có lợi.
Chẳg có gì mâu thuẫn nếu b cố gắg đọc hiểu tốt hơn chút!

Sent from my iPad using Tinh tế
tương lai apple rồi sẽ đi về đâu?
Để xem các app đang chạy nào hỗ trợ sandbox, các bạn có thể chạy Activity Mornitor, cột Sandbox.
Theo mình thì Sandbox nôm na như là phòng Lab cách ly để tránh virut cho mẫu thử. Phần mềm là mẫu thử

Sent from my iPed 2 using Tinh tế
Jake
TÍCH CỰC
11 năm
anh xin em đùng vậy nữa mà 😃








  • Chịu trách nhiệm nội dung: Trần Mạnh Hiệp
  • © 2022 Công ty Cổ phần MXH Tinh Tế
  • Địa chỉ: Số 70 Bà Huyện Thanh Quan, P. Võ Thị Sáu, Quận 3, TPHCM
  • Số điện thoại: 02862713156
  • MST: 0313255119
  • Giấy phép thiết lập MXH số 11/GP-BTTTT, Ký ngày: 08/01/2019