Bilginin Adresi Ana Sayfa
Forum Anasayfası Forum Anasayfası > Bilgisayar Güvenliği / Computer Security > Güvenlik / Security Makaleleri
  Aktif Konular Aktif Konular RSS - ActiveX ile Ziyaretçi Denetimi !
  SSS SSS  Forumu Ara   Events   Kayıt Ol Kayıt Ol  GiriÅŸ GiriÅŸ

ActiveX ile Ziyaretçi Denetimi !

 Yanıt Yaz Yanıt Yaz
Yazar
Mesaj
megabros Açılır Kutu Gör
Security Professional
Security Professional
Simge

Kayıt Tarihi: 08-06-2009
Konum: Turkey
Status: Aktif DeÄŸil
Points: 752
Mesaj Seçenekleri Mesaj Seçenekleri   Thanks (0) Thanks(0)   Alıntı megabros Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: ActiveX ile Ziyaretçi Denetimi !
    Gönderim Zamanı: 12-06-2009 Saat 10:40

Web sayfalarında kullanılan ziyaretçi engelleme yöntemlerinden en çok kullanılan ip adresi ile yapılan engellemedir. Bu yöntemi bu kadar etkin kılan basit olması ve herhangi bir programlama dili ile yapılabilmesi (asp, php, asp.net, python, perl..)

Ne yazık ki bu yöntem kullanıcı denetimleri açısından komik kalacak düzeyde basit. Şimdi ip adresine yapılan filtreleme/engellemelerde ki zaaflara bakalım :

* Bireysel saldırılarda veya istem dışı (farkında olmadan bir botnetin parçası olan bilgisayarlar) saldırılarda bulunan bilgisayarların neredeyse tamamının dinamik (değişken) ip adresi kullanması.

* İp adresinin kolay değişebilmesi ve bu işlemin çok kısa bir süre içinde gerçekleşmesi.

* Büyük çaptaki saldırılarda ip adreslerini loglayan kodun aşırı miktarda çalıştırılması sonucu, asp server’ın, ilgili sayfanın adresleri barındıran database’in hizmet kesintisine uğrayabilmesi.

* ‘Saldırgan’ olarak işaretlediğiniz bir bilgisayarın ip adresinin, ertesi gün masum bir kullanıcının bilgisayarına atanmış olabilme ihtimali. Böyle bir durumda saldırıyla alakalı olmamasına rağmen ziyaretçi adresinize erişemeyecektir.

* Çok sık kullanılan bir yöntem olduğu için, sayfaya erişimi engellenen saldırganın aklına ilk ip adresini değiştirmek gelecektir.

Bu ve benzeri daha bir çok zayıf nokta sayılabilir bu konuda.

ActiveX Dünyasına Girelim

Bu başlık altında temel olarak 2 yöntemden bahsedeceğiz. Mac adresi ve SID değeri üzerinden yapılan ziyaretçi denetimleri.

Eğer sayfanızın güvenliğini önemsiyorsanız, SSL desteği alarak kullanıcılarınızın içini biraz da olsa rahatlatabilirsiniz. Güvenli sertifikalarla desteklenmiş bir sayfada ziyaretçiler daha az tedirgin olacaktır ve sayfanızın içerdiği activeX denetimlerini daha kolay kabul edeceklerdir.

* Microsoft update, online güvenlik taraması yapan firmalar (symantec, panta, kaspersky), sesli sohbet odaları, bazı upload sistemleri halen activeX denetimlerini kullanılır. Bu gibi adresler kullanıcılar tarafından ‘güvenilir’ olarak görüldüğü için denetimleri kolayca kabul edilmektedir.

İlk yöntemimiz olan Mac adresinden bahsedelim:

Harddisk, Ethernet kartı, usb slotları gibi donanımların her birinin fiziksel bir kimliği vardır, bu kimliğe mac adresi denir.

* Mac adresi; asp, php, asp.net gibi kendisini barındığı sunucuda çalıştıran programlama dilleri ile alınamaz. İnternet’te bu konu hakkında efsaneden ibaret bir çok kod vardır, tümü yalnızca üzerinde barındığı sunucunun mac adresini gösterir.
* Mac adresini alabilmek için kullanıcı, ziyaretçi tarafında kod çalıştıran dillere (Jsp-activeX-Java vs..) ihtiyacımız vardır.
* Mac adresi değiştirilebilir fakat bu işi yapan programların büyük çoğunluğu yalnızca harddiske ait mac adresini değiştirmektedir. (Usb slotlara kadar tüm donanımların mac adreslerini ‘Technitium Mac’ yazılımı ile değiştirebilirsiniz.)
* Değiştirilmesi ip adresine göre daha zor, SID’ye göre çok daha kolaydır.

ActiveX ile örnek bir Mac bilgisi alma uygulamasını inceleyelim :

<html><head><body><title>Serhat DÜNDAR’ın örnek Mac adresi projesi</title>
<table border=”5″ width=”250″ align=”center”>
<tr><td> <== Donanımsal Kimlikleriniz ==></td></tr></table>
<script>
var obj = new ActiveXObject(”WbemScripting.SWbemLocator”;
var servis = obj.ConnectServer(”.”;
var sorgum = servis.ExecQuery(”SELECT * FROM Win32_NetworkAdapterConfiguration”;
var say = new Enumerator (sorgum);
document.write(”<table style=\”border-width:1; border-color:black; border-style:solid;\”>”;
for (;!say.atEnd();say.moveNext ())
{
var MacAl = say.item ();
document.write(”<tr>”;
document.write(”<td>” + MacAl.Caption + “</td>”;
document.write(”<td>” + MacAl.MACAddress + “</td>”;
document.write(”</tr>”;
}
document.write(”</table>”;
</script></font></body></head></html>

Bu yöntem ile elde ettiğiniz mac adresini sayfaya yazdırabilir, veritabanına kaydedebilir, engelleyebilirsiniz. Geri kalan kısım sizin programlama becerinize kalmıştır.

Farklı Bir Fikir

Araştırmalarım sonucunda bu yöntemin daha önce hiç kullanılmadığını, hatta hiç tartışılmadığını gördüm.

SID nedir bahsetmiştim. Bilgisayara, daha doğrusu kullanıcıya ve kullanıcı gruplarına ait güvenlik kimliğidir. Microsoft tarafından asla tekrarlanmayacağı, çakışmayacağı ön görülür.

Rastlantısal çakışma olasılığı ip ve mac adreslerine göre en az düzeydedir. ‘HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrenVersion\ProfileList’

anahtarı altında saklanır.

ActiveX ile registry’den herhangi bir anahtarı, içerdiği id’yi çekebileceğimizi biliyoruz. O halde sayfamıza ekleyeceğimiz denetimle ile ziyaretçilerimizin de SID değerlerini öğrenebiliriz. Eğer bu değeri öğrenebilirsek, bu değer üzerinden engelleme işlemide yapabiliriz. Mantıksal kurguyu yaptık ve başarılı sonuç aldık o halde işleme geçelim.

* SID değerini değiştirmek daha fazla tecrübe ve zaman gerektirir. Saldırgan açısından sıkıntıdır.
* Anı ağ üzerindeki klon pc’lerin SID değerleri anı atanabilir. Bu sayede 1 pc’yi engellemek aynı ağdan saldırı yapan bütün pc’leri engellemek demektir. Bu bize zamandan ve log yönetiminden tasarruf sağlar.
* Engelleme işlemini pc yerine, kullanıcı veya kullanıcı grubu üzerinden yapabiliriz. Bu sayede bir bilgisayardaki X, Y, Z kullanıcılarından X ve Y’nin erişimini yasaklayıp, Z’ye erişimi serbest bırakabiliriz.
* System ve Creator Owner hesaplarını engellemek, bütün hesapları engellemek anlamına gelir.

ActiveX ile Registry yönetimi için örnek çalışma kodları vereceğim. Bunları düzenleyerek, üzerine web programlama bilginizi katarak kendi güvenlik sisteminizi kurabilirsiniz. Güvenlik sadece birkaç yazılım ve kazanılmış tecrübeden ibaret değildir, hayalgücünüz ve bilgilerinizi birleştirerek ortaya çok güzel şeyler çıkartabilirsiniz.

Saygılar..


Düzenleyen megabros - 12-06-2009 Saat 10:40
Yukarı Dön
 Yanıt Yaz Yanıt Yaz

Forum Atla Forum İzinleri Açılır Kutu Gör



Bu Sayfa 0.188 Saniyede Yüklendi.