Yazılım geliştiricileri, yeni programlama kodunu test etmek için sanal alanlar kullanır. Siber güvenlik uzmanları, potansiyel olarak kötü amaçlı yazılımları test etmek için sanal alanları kullanır . Korumalı alan olmadan, yazılım veya uygulamalar, bir ağdaki tüm kullanıcı verilerine ve sistem kaynaklarına potansiyel olarak sınırsız erişime sahip olabilir.
Korumalı alanlar, ana cihaza, ağa veya diğer bağlı cihazlara zarar vermemek için kötü amaçlı kodları güvenli bir şekilde yürütmek için de kullanılır. Kötü amaçlı yazılımları tespit etmek için bir sanal alan kullanmak, gizli saldırılar ve sıfırıncı gün güvenlik açıklarını kullanan açıklar gibi güvenlik tehditlerine karşı ek bir koruma katmanı sunar .
Korumalı alanların önemi
Kötü amaçlı yazılımlar daha karmaşık hale geldikçe, kötü amaçlı yazılımları tespit etmek için şüpheli davranışları izlemek giderek daha zor hale geldi. Son yıllardaki pek çok tehdit , uç nokta ve ağ güvenliği ürünlerinden tespit edilmekten kaçınabilen gelişmiş şaşırtma teknikleri kullanmıştır .
Korumalı alan, ayrı bir sistemde çalıştığı için bir kuruluşun kritik altyapısını şüpheli koddan korur. Ayrıca, BT’nin kötü amaçlı kodu, nasıl çalıştığını anlamak ve benzer kötü amaçlı yazılım saldırılarını daha hızlı algılamak için izole bir test ortamında test etmesine olanak tanır.
Korumalı alanların kullanımları
Genel olarak, bir sanal alan, yazılımın ana cihazlara zarar vermesine izin vermeden virüs veya diğer kötü amaçlı yazılımlar içerebilecek şüpheli programları test etmek için kullanılır.
Korumalı alan, Java programlama dili ve geliştirme ortamının önemli bir özelliğidir; burada korumalı alan, bir web sayfasının parçası olarak gönderilen bir program alanı ve programcıların Java kodu ( applet adı verilen) oluştururken kullanmaları gereken kurallar dizisidir .
Korumalı alan, harici bir geliştiricinin korumalı alandan bir web hizmeti kullanan bir uygulama geliştirmek için kullanabileceği yansıtılmış bir üretim ortamını da etkinleştirebilir. Bu, üçüncü taraf geliştiricilerin kodlarını üretim ortamına geçirmeden önce doğrulamasını sağlar.
API sanal alanı, API geliştiricilerini ve testçilerini hedef alır. Gerçek bir sistemin davranışını yansıtan API’ler için benzetilmiş yanıtlar oluşturmak için üretim ortamının özelliklerini taklit eder.
Java korumalı alanı
Java uygulamaları, web sayfası aktarımının bir parçası olarak kullanıcının tarayıcısına otomatik olarak gönderilir ve tarayıcıya varır varmaz çalıştırılabilir. Başka bir koruma olmadan, kötü amaçlı kod kısıtlama olmaksızın çalışabilir ve kolayca zarar verebilir. Kodu yalıtmak için bir korumalı alan kullanmak, hem kötü niyetli saldırılara hem de belleğe veya işletim sistemi (OS) hizmetlerine sınırsız erişime sahip buggy Java programlarının verdiği zararlara karşı korunmaya yardımcı olabilir. Korumalı alan kısıtlamaları, bir uygulamanın talep edebileceği veya erişebileceği sistem kaynaklarını kesinlikle sınırlar.
Java sanal alanı, program alanını ve web içeriğiyle birlikte gönderilen Java kodunu oluştururken programcıların kullanması gereken bir dizi kuralı içerir. Korumalı alan kısıtlamaları, uygulamanın hangi sistem kaynaklarını talep edebileceği veya erişebileceği konusunda katı sınırlar belirler. Esasen, programcı, çocukların gerçek bir sanal alanın sınırlı sınırları içinde istedikleri her şeyi yapmalarına izin verildiği gibi, yalnızca sanal alan içinde “oynayan” bir kod yazmalıdır. Korumalı alan, bilgisayarınızda bir uygulama kodunun serbestçe oynayabileceği, ancak başka hiçbir yerde oynamasına izin verilmediği küçük bir alan olarak düşünülebilir.
Korumalı alan, yalnızca programcıların belirli kurallara uymasını zorunlu kılarak değil, aynı zamanda kod denetleyicileri sağlayarak da uygulanır. Java dilinin kendisi, otomatik bellek yönetimi, çöp toplama ve güvenli kodu garanti etmeye doğal olarak yardımcı olan dizeler ve dizilerdeki adres aralıklarının kontrolü gibi özellikler sağlar .
Java’nın bayt kodu olarak bilinen derlenmiş kodu, belirli sınırlamalara uyulmasını garanti eden bir doğrulayıcı içerir. Java ayrıca, kodun kısıtlanabileceği yerel bir ad alanı sağlar. Java sanal makinesi – belirli bir bilgisayar platformu için Java bayt kodunu yorumlayan katman – ayrıca sistem kaynaklarına erişime aracılık eder ve korumalı alan kodunu kısıtlar.
Orijinal sanal alan güvenlik modelinde, korumalı alan kodu genellikle güvenilmeyen kod olarak bilinir . Java Geliştirme Kiti’nin (JDK) sonraki sürümlerinde – programcının geliştirme ortamı – korumalı alan, kullanıcının sanal alan kodu için belirleyebileceği birkaç güven düzeyi getirilerek daha karmaşık hale getirildi. Kullanıcı ne kadar fazla güvene izin verirse, kodun sanal alanın dışında “oynatmak” için o kadar fazla yeteneği vardır.
Java Development Kit 1.1 sürümünde, imzalı bir uygulama kavramı tanıtıldı. Dijital imzanın eşlik ettiği bir uygulama , istemci tarayıcısının imzayı tanıması durumunda yürütülmesine izin verilen güvenilir kod içerebilir.
JDK 2.0’da Java, yerel olarak yüklenmiş veya internetten gelen tüm uygulama kodlarına farklı güven seviyeleri atamayı sağlar. İmzalı olsun ya da olmasın tüm kodu yürütürken tarayan bir güvenlik ilkesi tanımlamak için bir mekanizma mevcuttur .
Korumalı alan kullanmanın faydaları
Yazılım değişikliklerini yayınlanmadan önce test etmek için bir korumalı alan kullanmak, test ortamı üretim ortamından tamamen ayrı olduğu için test sırasında ve sonrasında daha az sorun olduğu anlamına gelir .
Korumalı alan, bildirilmeyen güvenlik açıklarından yararlanan sıfır gün tehditlerini karantinaya almak için de harikadır. Korumalı alanın sıfır gün tehditlerini durduracağının garantisi olmasa da , tehditleri ağın geri kalanından ayırarak ek bir güvenlik katmanı sunar. Tehditler ve virüsler karantinaya alındığında, siber güvenlik uzmanları, kalıpları belirlemek için bunları inceleyerek gelecekteki saldırıları önlemeye ve diğer ağ güvenlik açıklarını belirlemeye yardımcı olabilir.
Korumalı alan, davranış izleme ve virüs programları da dahil olmak üzere diğer güvenlik programlarını da tamamlar. Bir virüsten koruma programının algılayamayacağı belirli kötü amaçlı yazılım türlerine karşı ek koruma sağlar. Daha gelişmiş kötü amaçlı yazılımlar, çalıştırmadan önce korumalı alanda çalışıp çalışmadığını kontrol edebilir .
Korumalı alan kullanma örnekleri
Korumalı alanlar, yazılım kodunun yürüttüğü hemen hemen her durumda kod yürütmeyi izole etmek için kullanılabilir. Kod yürütmeyi yalıtmak için korumalı alan kullanımına ilişkin bazı özel örnekler şunları içerir:
- İnternet tarayıcıları. Bir sanal alan içinde güvenilir bir web tarayıcısı çalıştırılabilir. Ardından, bir web sitesi o web tarayıcısındaki bir güvenlik açığından yararlanırsa, hasar sanal alanla sınırlıdır ve en aza indirilir.
- Yazılım koruması. Kullanıcıların sanal alanlarda güvenmedikleri yazılımları çalıştırmasına olanak tanıyan araçlar vardır, böylece yazılımın özel verilerine erişmemesi veya cihazlarına zarar vermemesi sağlanır. Korumalı alan, yazılım için eksiksiz bir sistem gibi göründüğünden, yazılım genellikle sanal bir ortamla sınırlı olduğunu algılayamaz.
- Güvenlik araştırması. Bilgi güvenliği uzmanları, araştırma yapmak veya kötü amaçlı kodları tespit etmek için sanal alanları kullanır. Örneğin, bir güvenlik aracı, hangi dosyaların nihai olarak değiştirildiğini izlemek için web sitelerini ziyaret edebilir veya yazılım yükleyip çalıştırabilir. Windows Defender, kullanıcıların bir sanal alanda virüsten koruma yazılımını çalıştırmasını sağlar .
- Sanallaştırma. Bir VM temel olarak bir tür sandbox’tır. Bu yaklaşım, şüpheli programları içermek ve incelemek için VM tabanlı bir sanal alan kullanır.
Sandbox uygulamaları
Sandbox uygulamaları şunları içerir:
- Tarayıcı eklenti içeriği genellikle (artık kullanımdan kaldırılan) Microsoft Silverlight ve Adobe Flash dahil olmak üzere tarayıcı eklentileri tarafından yüklenen içeriği taramak için bir sanal alan kullanmaya bağlıydı . Ancak, bu tür içeriğin güvenliğini sağlamak herkesin bildiği gibi zor olmuştur. Bir web sayfasında Flash oyunu oynamak, oyunu indirip standart bir program olarak çalıştırmaktan daha güvenli olsa da, içerik yayıncıları bu tür eklentilerden büyük ölçüde uzaklaşarak, etkin içeriği HTML5 kullanarak yayınlamayı tercih ettiler. güvenlik riskleri oluşturabilecek tüm özellikleri devre dışı bırakmak için tarayıcı.
- PDF’ler ve diğer belgeler yürütülebilir kod içerebilir, bu nedenle Adobe Reader Korumalı Modu, PDF dosyalarını bir sanal alanda çalıştırarak PDF görüntüleyiciden kaçmalarını ve bilgisayarın geri kalanına müdahale etmelerini engeller. Microsoft Office ayrıca, güvenli olmayan makroların bir sistemle kurcalanmasını durdurmak için bir sanal alan moduna sahiptir. Windows kullanıcıları, yerleşik Windows Sandbox’ı da kullanabilir .
- Mobil uygulamalar genellikle sanal alanlardaki mobil platformlar tarafından yürütülür. iOS, Android ve Windows uygulamalarının standart masaüstü uygulamalarının yapabileceği birçok şeyi yapması yasaktır. Örneğin, bir kullanıcının konumuna erişmek için izin beyan etmesi gerekir. Ek olarak, korumalı alan, uygulamaları yalıtır ve birbirlerini kurcalamalarını önler.