|
Welcome,
Guest
|
|
Pano, kısa zamanlı veri depolayan ve bu verinin herhangi bir uygulama içerisinde ya da uygulamalar arasında kullanılmasına olanak sağlayan bir depolama sistemidir. Bütün uygulamaların panoya erişim hakkı olması, uygulamalar arası verinin aktarımına olanak sağlar [1]. Pano herhangi bir veri tipindeki içeriği depolayabilmektedir. Bu durum panonun kullanım alanının genişlemesine ve haliyle depoladığı verinin mahremiyet ya da gizlilik açısından kritik sayılabilecek bilgileri de içermesine yol açmaktadır. Bu sebepten pano içerisindeki verinin güvenliği ya da panonun korunması gibi kavramlar önem arz eder hale gelmektedir. Yazının devamında pano güvenliğini tehlikeye atabilecek birkaç durum ve uygulamaya yer verilecektir.
Panoda Mahremiyet Doğası gereği pano birçok işleme maruz kalmaktadır. Kullanıcı tarafından gerçekleştirilen kesme, kopyalama, yapıştırma operasyonlarının yanı sıra uygulamaların da panoyu çeşitli amaçlarla kullanması, pano içerisinde geçici olarak depolanan verinin mahrem ya da gizli veri de olmasına olanak sağlamaktadır. Panoda e-posta adresleri, kredi kartı numaraları, özel şahıslara ait bilgiler ve hatta kullanıcı şifreleri dahil olmak üzere çok çeşitli mahrem bilgi bulunabilmektedir. Panoya isteğiniz dışındaki uygulamaların ya da kişilerin erişmesinin mümkün olması yukarıda sayılan kritik verilerin güvenliğini önemli bir hale getirmektedir. Bunun yanı sıra panodaki verinin çok sık değiştirilebilmesinin veri kaybına sebebiyet verebileceği unutulmamalıdır. İstemci Taraflı Betiklerin Panoya Erişimi İstemci tarafında çalıştırılan kod parçalarının panoya erişim hakkı olması (kullanıcının haberi olmadan) pano içerisindeki verinin değiştirilmesi ya da çalınması gibi durumlara zemin hazırlamaktadır. İnternet'te ziyaret edilen herhangi bir sitede çalıştırılan böyle tehlikeli bir betik, panoyu kolaylıkla elde edebilir ve bu içeriği sunucu tarafına gönderebilir. Internet Explorer tarayıcısı için geçerli olan aşağıdaki javascript fonksiyonları pano verisini elde etmeye, değiştirmeye ya da silmeye olanak tanımaktadır: window.clipboardData.setData("Text","Pano İçeriği"); //Panoya yazmak için window.clipboardData.getData("Text");//Panoyu okumak için window.clipboardData.clearData("Text"); //Panoyu temizlemek için İnternet Explorer tarayıcısı ile istekte bulunulan web sayfalarında pano işlemlerini yapan bu tür betiklerin engellenmesi için iki farklı yol önerilebilir. Bunlardan birincisi javascript kodlarının çalışmasını engelleme seçeneğinin seçilmesidir. Bu işlem İnternet Explorer > Araçlar >İnternet Seçenekleri > Özel Düzey sekmesi altındaki Aktif Komutların engellenmesi ile gerçekleştirilebilir. Diğer bir seçenek ise javascript komutlarının bütünsel engellenmesi yerine, yalnızca pano işlemlerinin engellenmesi ile gerçekleştirilebilir. Bu işlem de İnternet Explorer > Araçlar >İnternet Seçenekleri > Özel Düzey sekmesi altında pano erişimin engellenmesi ile sağlanabilir. Bu iki engellemeye ait ekran görüntüsü aşağıdaki şekilde gösterilmiştir. resim-2.png Şekil-1 Pano Erişimi ve Komut Çalıştırılmasına Dair Internet Explorer Güvenlik Ayarı Arayüzü Adobe Flash Uygulamasının Pano Erişimi İnternet Explorer dışındaki diğer web tarayıcıları için javascript'in yukarıda bahsedilen fonksiyonları tanımlanmış değildir. Bununla ilgili genel eğilim bu tür tarayıcılarda Flash uygulamalarından yardım almaktır. İstemci tarafında web sayfasına bağlı olan Flash uygulamalarıyla pano üzerinde çeşitli işlemlere olanak sağlanmaktadır. Flash Player 9 ve önceki sürümlerde ActionScript panoya istediği gibi erişebilme hakkına sahipti. Flash Player 10 ile System.setClipboard() fonksiyonu ancak kullanıcı etkileşimi dahilinde çalışabilir bir yapıya dönüştürüldü [2]. Böylelikle panoya erişimin kullanıcıdan habersiz gerçekleştirilmesinin önüne geçilmiş oldu. Yukarıda anlatılanlar sonucunda, Flash Player'ın güncel sürümünün kullanılmasının ne denli önemli olduğu anlaşılabilir. Pano Gözlemlemede Sistem Fonksiyonlarının Kullanımı Bir pano denetleme penceresi panonun anlık durumunu okuyabilir ve panodaki herhangi bir değişiklikte uyarı mesajı alır. Denetleme penceresinin oluşturulabilmesi için panonun öncelikle pano denetleme zincirine eklenmesi gerekmektedir [3]. Bunun için SetClipboardViewer() fonksiyonun çağrılması yeterlidir. Bu fonksiyonun döndüğü değer, zincirdeki bir sonraki pencereyi işaret etmektedir. Pano denetleme penceresi zincire eklendikten sonra gelen mesaj WM_DRAWCLIPBOARD ise pano üzerinde yeni bir yazılma işlemi gerçekleşmiş demektir. Bundan sonra denetleme penceresi panonun veri tipine karar verir, veriyi elde eder ve mesajı zincirdeki bir sonraki pencereye gönderir. Böylelikle pano üzerindeki tüm değişikliklerden haberdar olunur. Kullanıcının haberi olmadan çalışan böyle bir uygulama pano üzerindeki tüm değişiklikleri gözlemleyebilir, kritik bilgileri elde edebilir ya da pano üzerindeki verinin silinmesine sebebiyet verebilir. Bu durum hassas veriler için oldukça büyük tehlike arz etmektedir. Bunun önüne geçmek için panoya yazılacak verinin şifrelenmesi gerekir. Şifreleme için harici bir program kullanılabilir. Veri panodayken şifreli olarak duracak, yapıştırılma esnasında şifresi çözülecektir. Bu durum panoda elde edilen verinin güvenlik düzeyini artıracağı aşikardır. |
|
|
Please Log in or Create an account to join the conversation. |
