.vbs ile DNS değişikliği


vbs ile DSN değiştirmek (Dns Jumper's source code)

2009 yılında Türkiye ziyaretim sırasında Youtubenin Türkiyede yasaklı olması beni bu yasağı nasıl aşarım diye düşünmeye itmişti yaptığım araştırmalarda bu işin sadece hosts dosyası ile yapıldığını

görmüştüm fakat bu çözüm birkaç gün içinde çalışmaz hale geliyor ve tekrar youtube IP lerinin yenilenmesi gerekiyordu kısacası hiç sağlıklı bir yöntem değildi bu bağlamda Arkadaşımda sohbet ederken aniden aklıma DNS değiştirmek geldi o sıralar .vbs scriptler ile ilgilendiğimden internette bu işi yapan .vbs scriptler aramaya başladım lakin çalışan tek bir tane bile bulamadım , sadece yanılmıyorsam bir Amerikan üniversitesinde öğretim görevlisi olan bir profesörün makalesine ulaştım bu işin .vbs ile yapılabildiği konusunda birşeyler yazmış ve kodda kullanılması gereken bir iki parametreyi anlatmıştı , fakat ortada bir script yoktu bunlar doğrultusunda bir script oluşturmam gerekiyordu , deneme yanılma ile testlere başladım ve 2-3 saatin sonunda hata da verse DNS değiştiren bir script elde edebildim tabii ilerleyen birkaç günde bu hataları da giderdim ve ortaya DNS Jumper çıktı ,insanlar bu işi sevdiler işte aşağıdaki kodlar o çalışmada kullanılanlardır , elbette şu an piyasadaki DNS jumper de bu kodlar kullanılmamaktadır , bunun sebebi ilerleyen zamanlarda .vbs ile DNS değişikliğinin bazı sakıncalarının ortaya çıkmış olmasıdır

1. Herşeyden önce WSH ın disable olmaması gerekiyor , oysa bazı makinalarda bu disable konumdadır Bakınız

2. UAC denetimi scriptlerin çalışmasını engellemektedir , scriptlerin sürekli Admin yetkilerinde çalıştırılması gerekir

3. Kullanıcıya hazır sunulmuş DNS ler verebiliriz lakin kendilerinin bu DNS leri editlemeleri her kullanıcının yapabileceği yada yapmak isteyebileceği birşey değildir

4. Bazı sistemlerde DSN değişikliğinin gerçekleşmemesi ve .vbs nin yetersiz kalması …

Herneyse üstte de dediğim gibi Dns Jumperin şu anki halinin bu Kodlarla yakından uzaktan bir alakası yoktur , gelelim gerekli .VBs kodlarına , Kodları Muhtelif tarihlerde anasayfamızda vermiştim (22.08.2010) sonradan bazı sebeplerle kaldırdım işte bu yazı sadece bir güncellemedir örnek olması açısından Google DNS ler kullanılmıştır

DNS değiştiren .vbs kodları

' Aşağıdaki kondlar Dns ayarlarınızı değiştirecektir
' Velociraptor (www.sordum.net)
' ------ SCRIPT CONFIGURATION ------
strComputer = "."
arrDNSServers = Array("8.8.8.8", "8.8.4.4")
' --------- END CONFIGURATION ------

Set objWMIService = GetObject("winmgmts:" _
  & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set Nics = objWMIService.ExecQuery _
  ("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")

For Each Nic In Nics
  intSetDNSServers = Nic.SetDNSServerSearchOrder(arrDNSServers)
  If intSetDNSServers = 0 Then
    WScript.Echo "işlem tamamlandı (www.sordum.net)!"
  End If
Next

Üstteki kodda arrDNSServers = Array(“8.8.8.8”, “8.8.4.4”) kısmı ile
WScript.Echo “işlem tamamlandı (www.sordum.net)!” kısımlarını editleyebilirsiniz

Dns Ayarlarini default (eski) haline getirelim:

' Bu Script ile DNs ayarlariniz default hale gelecektir
' Velociraptor (www.sordum.net)

strComputer = "."

Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colNetAdapters = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")

For Each objNetAdapter In colNetAdapters
errEnable = objNetAdapter.EnableDHCP()
errDNS = objNetAdapter.SetDNSServerSearchOrder(null)
Next
If intSetDNSServers = 0 Then
WScript.Echo "Ayarlariniz Resetlendi (www.sordum.net)!"
  End If

Üstteki kodlar UAC si açık bilgisaayrlarda tepki vermeyecektir (çalışmayacaktır) bu nedenle Buradaki yöntemle herzaman Admin yetkilerinde çalışmaları gerekmektedir. eğer kodları nasıl kullanacağım diye aklından geçiren varsa , üstteki kodları bir not defterine yapıştırıp bir isim verin ve uzantısı .vbs olacak şekilde kaydedin sonrada tıklayıp çalıştırın hepsi bukadar.



Bir Yorum Var

Yorum Ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

CAPTCHA