Korumalı alan nedir?


118

Wikipedia makalesini okudum , ancak ne anlama geldiğinden ve sürüm kontrolüne ne kadar benzediğinden tam olarak emin değilim .

Birinin çok basit terimlerle sandboxing'in ne olduğunu açıklayabilmesi faydalı olacaktır.

Yanıtlar:


266

görüntü açıklamasını buraya girin

Bir sandpit veya sanal Çocukların oynayabileceği kum dolu bir alçak ve geniş kap veya sığ depresyondur. Çocuklu birçok ev sahibi, arka bahçelerinde kum çukurları inşa eder, çünkü çoğu oyun alanı ekipmanının aksine, bunlar kolayca ve ucuza inşa edilebilir. Bir "kum havuzu" aynı zamanda bir açık ocak kum madenini de gösterebilir.

Bir yazılım sanal alanı, bir çocuğun oynaması için oluşturulmuş bir sanal alandan farklı değildir. Bir çocuğa sanal alan sağlayarak gerçek oyun alanı ortamını simüle ediyoruz (diğer bir deyişleisolated environment ) ancak bir çocuğun neler yapabileceğine dair kısıtlamalar getiriyoruz. Çünkü çocuğun enfeksiyon kapmasını istemiyoruz veya onun başkalarına sorun çıkarmasını istemiyoruz. :) Sebep ne olursa olsun, biz sadece çocuğun ne için yapabileceği konusunda kısıtlamalar getirmek istiyoruz Security Reasons.

Şimdi yazılım sanal alanımıza gelince, herhangi bir yazılımın (çocuğun) yürütmesine (oynamasına) izin veriyoruz, ancak yapabilecekleri konusunda bazı kısıtlamalarla. HissedebilirizYürütme yazılımının neler yapabileceği konusunda güvende .

Antivirüs yazılımını gördünüz ve kullandınız. Sağ? Aynı zamanda bir tür sanal alan. Herhangi bir programın yapabileceklerine kısıtlamalar getirir. Kötü amaçlı bir etkinlik tespit edildiğinde, durur ve kullanıcıyı "bu uygulama kaynaklara erişmeye çalışıyor. İzin vermek istiyor musunuz?"

Sandboxie adlı bir program indirin ve bir sanal alan deneyimine sahip olun. Bu programı kullanarak herhangi bir programı kontrollü ortamda çalıştırabilirsiniz.

Kırmızı oklar, çalışan bir programdan bilgisayarınıza akan değişiklikleri gösterir. Sabit disk (korumalı alan yok) etiketli kutu, normal olarak çalışan bir programın değişikliklerini gösterir. Sabit disk (sandbox ile) etiketli kutu, Sandboxie altında çalışan bir program tarafından yapılan değişiklikleri gösterir. Animasyon, Sandboxie'nin değişiklikleri yakalayabildiğini ve bunları sarı bir dikdörtgen olarak gösterilen bir sanal alanda izole edebildiğini göstermektedir. Ayrıca, değişikliklerin birlikte gruplandırılmasının hepsini bir kerede silmeyi kolaylaştırdığını da göstermektedir.

görüntü açıklamasını buraya girin

Artık bir programcının bakış açısından, sandbox, uygulamaya izin verilen API'yi kısıtlıyor. Antivirüs örneğinde, sistem çağrısını (işletim sistemi API'si) sınırlıyoruz.

Başka bir örnek, topcoder gibi çevrimiçi kodlama alanları olabilir. Bir kod (program) gönderirsiniz ancak sunucuda çalışır. İçinsafety sunucunun, Onlar programın API erişim düzeyini sınırlamak gerekir. Başka bir deyişle, bir sandbox oluşturmaları ve programınızı içinde çalıştırmaları gerekir.

Uygun bir sandox'a sahipseniz, virüs bulaşmış bir dosyayı çalıştırabilir ve virüsün tüm kötü amaçlı faaliyetlerini durdurabilir ve ne yapmaya çalıştığını kendiniz görebilirsiniz. Aslında bu, bir Antivirüs araştırmacısının ilk adımı olacaktır.


31

Bu korumalı alan tanımı, temel olarak test ortamlarına (geliştirici entegrasyonu, kalite güvencesi, aşama vb.) Sahip olmak anlamına gelir. Bu test ortamları üretimi taklit eder, ancak üretim kaynaklarının hiçbirini paylaşmazlar. Tamamen ayrı sunucuları, kuyrukları, veritabanları ve diğer kaynakları vardır.

Daha yaygın olarak, sandboxing'in sanal makine gibi bir şeye atıfta bulunduğunu gördüm - bir makinede çalışan bazı kodları izole ederek temel sistemi etkilememesi.


1
Tamam, temelde korumalı alan, bir yazılımı tek kullanımlık bir kullanıma sokmadan önce kontrollü bir ortamda test etmektir. sağ? btw, neden 'korumalı alan' olarak adlandırılıyor?
Lazer

>> neden 'sandboxing' @eSKay deniyor çünkü insanlar sanal alanlarındaki çocuklar gibi yazılım / donanımla oynuyorlar ( thefreedictionary.com/sandbox - tanım # 3).
Darmen Amanbayev

Öyleyse, korumalı alan ve hazırlık ortamları arasındaki fark nedir?
Mohammad Jamal Dashtaki

15

Somut bir örnek için: Para transferleriyle ilgilenen bir uygulamanız olduğunu varsayalım. Üretim ortamında gerçek para takas edilir. Korumalı ortamda, her şey tamamen aynı şekilde çalışır, ancak para sanaldır. Test amaçlı.

Örneğin, Paypal böyle bir korumalı ortam sunar.


6

Yazılım geliştirmedeki "sandbox" için, başkalarını rahatsız etmeden izole bir şekilde geliştirmek anlamına gelir.

Sürüm kontrolüne benzemez. Ancak bazı sürüm kontrolü (dallanma olarak) yöntemi, sanal alanlar oluşturmaya yardımcı olabilir.


0

Daha sıklıkla diğer korumalı alana atıfta bulunuruz .


Her durumda, korumalı alan genellikle izole bir ortam anlamına gelir . Korumalı alanda istediğiniz her şeyi yapabilirsiniz, ancak etkisi korumalı alanın dışına yayılmaz. Örneğin, yazılım geliştirmede bu /usr/lib, kitaplığınızı test etmek için herhangi bir şeyle uğraşmanıza gerek olmadığı anlamına gelir .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.