Arsiv


Kategori: Genel

Kablosuz (Wireless, Wi-Fi) ağların tespiti, kablosuz ağlara saldırı ve kablosuz ağların güvenliği


Ön Bilgi
Kablosuz ağlar uzun bir zamandır aktif halde kullanıma geçmesine rağmen Türkiye’ de 2005 itibarı ile yaygınlaşmaya başladı. Bu yaygınlaşma daha önce .com (dot com) da olduğu gibi kontrolsüz, hızlı ve ön araştırmasız oldu.

Buna bir de ilk kablosuz ağ standartlarının güvenlik açıkları eklenince birçok kablosuz ağ kullanan kurum, şahıs ve firma ciddi güvenlik açıkları ile baş başa kaldılar ve adeta switch’ lerinin, router’ larının bir slot’ unu halka açtılar.

Bu çok geç kalmış makalede bu ağların teorik olarak neden güvensiz olduğu, pratik olarak nasıl kırılabileceği ve güvenli kılınabileceği üzerine eğilmeye çalışacağız. Makale genel olarak bir saldırgan ve araştırmacı gözü ile konuyu ele alcaktır.

Anahtar Kelimeler
Wireless, Kablosuz İnternet, Wardriving, Warchalking, GPS, Wi-Fi, Antenna, Kablosuz Ağ Güvenliği, Ağ Güvenliği, Wireless Security.

Legal / Kanuni Konular
Tahmin edebileceğiniz gibi yazıdaki şifre kırma, kablosuz ağ sistemlerine izinsiz girme vb. yöntemlerini sadece kendi yetkininizin olduğu ağda uygulamanız gereklidir, aksi takdirde çeşitli ülkelerin kanunları karşısında izinsiz sistem girişi gibi çeşitli suçları işlemiş olabilirsiniz ve tabii ki gene tahmin edebileceğiniz gibi bu tip bir durumda makalenin yazarı olan ben bir sorumluluk kabul etmeyeceğim, bütün bu sorumluluk size aittir.

Bunun yanında belirtmek gerekir ki kablosuz ağların tespiti suç değildir.

Nasıl Okuyalım?
Yazı içerisinde yabancı teknik terimler görebilirsiniz, bunların türkçeleri ve açıklamaları için yazının sonundaki sözlük kısmını ek kaynak olarak kullanabilirsiniz.

Yazı içerisinde çok temel şeyler olduğu gibi bazı kısımları biraz fazla teknik detay içerebilir, dolayısıyla bilginiz dahilindeki başlıkları atlayabilir, derin teknik detaylara girmeyebilir yada sadece resimlere bakabilirsiniz (yok canım o da olmasın artık).

Bazı potansiyel okuma profilleri;

Meraklı
Teknik bilgi sahibi
Heryeri okuyabilirsiniz, WEP’ in nasıl kırıldığı kısmı özellikle ilgi çekebilir.

Sadece kullanıcı
Ofisinizde her gün bağlandığınız kablosuz internetinizin durumunu merak ediyorsanız, Hasar ve Kazanç, Kablosuz Ağlarda Güvenlik Opsiyonları, Ülkemizden bir istatistik ve Saldırı kısmındaki görseller ilginizi çekebilir, opsiyonları ve saldırıların gerçekliğini bu sayede hızla anlayabilirsiniz.

Aksiyon İnsanı
Eğer şu kitapların giriş yazılarını okumayan aksiyon tiplerindenseniz zaten bu kısmı okumuyor olacaksınız ama devam edelim…
Aksiyon İnsanı – Defans
Eğer hemen kendi sisteminizi en güvenli hale nasıl getirebilirimi öğrenmek istiyorsanız makalenin sonundaki Defans bölümüne geçebilirsiniz ancak saldırı ve sistemin altındaki detayları bilmeniz, gözü kapalı şekilde bir güvenlik implemantasyonu yapmanızdansa çok daha verimli olacaktır.

Aksiyon İnsanı – Saldırı
Hmm, demek hemen notebook’ unuzu alıp şöyle şatafatlı ofislerin olduğu bir yere kapak atıp sabahlara kadar Linux ISO’ su Download etmek istiyorsunuz. Tamam kabul edilebilir bir neden, hemen Konuya Gelelim WEP’ i Kırma kısmına geçin.

Hasar ve Kazanç
Olaya iki boyuttan bakarsak bir kurum ya da kablosuz ağ sahibi için hasar ne olabilir? Bir saldırgan için ya da canı sıkılan biri için kazanç ne olabilir?

Hasar;
Firma ağınıza izinsiz giriş
Bilgilerin çalınması
E-mail’ ların okunabilmesi
Daha ciddi saldırıların ilk adımı

İnternetinizin sömürülmesi
Firma ağının kullanılmaz hale gelmesi (DOS – Denial Of Service)
Limitli bir ADSL ev kullanıcısına yüklü fatura gelmesi

Kazanç;
Eğer oyunun Hasar Veren kişisiyseniz de tabii ki yukarıdakilerin tersine;

Ücretsiz İnternet
İntikam
Ticari bilgilerin ele geçirilmesi
Zevk
Vs…
Alabilir, kazanabilirsiniz…

Sanırım artık neden insanların bu tip bir şey yapmak için uğraşacakları hakkında daha fazla fikriniz olmuştur. Güvenlikte ki yanlış düşüncelerden biri kendinize “Beni/bizi neden hacklesin ki?“ diye sormanızdır. Dolayısıyla siz de basitçe bir hedef olabilirsiniz.
Sorun Nerede Başlıyor?
Sniffing , ARP Poisoning yıllardır kullandığımız kablolu ağlarda ciddi sorunlar arasında gelse de bu ataklar özellikle küçük oranizasyon ve ağlarda önemsiz sayılabilirler. Başlıca nedeni bu atakları yapabilecek saldırganının network (ağ)’ e fiziksel erişimi olmalıdır. Daha geniş şekilde bakarsak bu ya bir çalışan ya da içeriye kadar girebilmiş bir saldırgan olmalıdır.

Bunun fiziksel güvenlik ve firma içerisindeki güvenlik politikası kısmını bir yana alırsak genelde bu tip bir yaklaşımı güvenli olarak kabul edebiliriz.

Ancak kablosuz ağlar bu güven zincirinin yegane özelliğini kırıyor ve fiziksel erişimi bir adım daha genişletiyor. Artık siz kablosuz olarak ağınıza bağlanabildiğiniz gibi size yakın bir saldırgan yada bedava internete girmek isteyen komşunuzun sevimli çocuğu da sizin ağınıza erişebiliyor.

Tabii ki kablosuz ağlar geliştirilirken bu da düşünülmüş ve bu tip ağlar için belli güvenlik yöntemleri geliştirilmiş, işte sorunda burada bir yerlerde başlıyor.

Kablosuz Ağlarda Güvenlik Opsiyonları
Bir kablosuz ağınız varsa seçebileceğiniz belli güvenlik seçenekleri vardır, Popülerlik sırasına göre bazıları;

Open Security
WEP
WPA
RSN
RADIUS / WPA-RADIUS
Wireless Gateway
Firmalara özel çözümler
Burada “Open Security“ olarak geçen güvenlik modeli –Güvenlik modeli mi?-. şifre gerektirmeyen bağlantı demektir. Yani herhangi biri bu kablosuz ağlara basitçe bağlanabilir.

WEP, Open Security ve WEP iki en çok kullanılan modeldir. Open Security dediğimiz gibi bir güvenlik sağlamamaktadır ancak WEP bir güvenlik adımı olarak ortaya çıkmıştır. WEP kablosuz ağların güvenliğini sağlamak için geliştirilmesine rağmen çok büyük hatalar ile ciddi bir fiyaskodur.

WPA, Gene açık bulunan ancak WEP’ e göre çok daha güçlü bir opsiyon.

RADIUS, Klasik dial-up modem desteği veren ISP lerdeki sistemdir. Bağlantı kuran istemci (client) bir bilet (ticket) sistemi ile kablosuz ağa bağlanır. Ortak bir server olduğundan doğru implemantasyonda gayet güvenli bir kablosuz ağ deneyimi sağlayabilir. Ancak ev kullanıcıları ya da küçük organizasyonlar için çok kullanışsızdır. RADIUS-WPA ise aynı sistemin WPA desteklisidir.

RSN, RSN’ i WPA’ nın gideceği nokta olduğunu söyleyebiliriz ancak RSN henüz tam olarak oturmamıştır, WPA RSN’ in temellerinde yer almaktadır. Henüz piyasada RSN destekleyen AP (Access Point) bulmakta zor bir iştir. WPA TKIP e dayalıyken RSN AES i de desteklemektedir. İçerisinde anahtar dağıtımı gibi çözümleri de getirmektedir. Bu yazıda RSN e daha fazla değinmeyeceğiz.

Wireless Gateway, Özellikle halka açık yerlerde kablosuz ağ sunan firmaların kurduğu sistemlerdir. Ağ ile kablosuz cihazlar arasında bir bağlantı noktası oluşturur, giren kişiler bu sistemden bir defa onay aldıktan sonra ilgili kota ve ayarlara göre gerçek ağa (mesela internet) erişebilirler. Ülkemizde TTNet’ in sunduğu TiWinet ve özellikle Amerika’ da bir çok yerde gördüğünüz kablosuz internet erişimlerinde de bu metod kullanılır. Bu sistemin de kendi içerisinde farklı potansiyel açıkları ve saldırı noktaları vardır.

Firmalara Özel Çözümler, WEP’ in kısa sürede patlaması sonucu Cisco gibi firmalar kendi AP (Access Point)’ lerine özgü güvenlik önlemleri getirdiler. Bunların birçoğu geniş kitleler tarafından test edilmediğinden gerçek bir güvenlik önlemi olarak kabul edilemez. Bir kısmı zaten mantık hataları içerirken, henüz açığı bulunmamış olanlaraysa gerçek bir güvenlik gereksiniminde ciddi bakılamaz. Ek olarak ciddi bir limitasyonları ise bağlantı kuracak kablosuz cihazlarda (STA – Station) genelde kendi donanımlarını ya da özel bir ekstra program istemeleridir.

Bu makalede önce Kablosuz Ağları tespit etmek (wardriving tadında), Daha sonra WEP ile şifrelenmiş kablosuz ağları kırmayı ve son olarak ta ağlarımızı güvenli kılmak için alınabilecek önlemlere değineceğiz.

WEP Nasıl Kırıldı?WEP’ in çözmesi gereken üç temel öğre vardı;

Kimlik Doğrulama (Authentication)
Gizlilik (Privacy)
Bilgi Değiştirme Kontrolu (Message Modification Control)
Bunun harici aslında çözülmesi gereken Cevap Kontrolü (Replay Control), Erişim Kontrolü, Anahtar Dağıtımı ve Korunması konularına ise hiç WEP girmemiştir. Bu sorunların birçoğu bir sonraki WPA, RSN gibi standartlarda hep çözümlenmeye çalışılmıştır.

Kimlik Doğrulama
İlk adım kimlik doğrulamadır, ağa bağlanan kişinin gerçekten ağa bağlanma yetkisinin olup olmamasının düzenlenmesi, ikinci adım ise ağa bağlı kişinin trafiğinin diğer kişiler tarafından izlenilememesi.

WEP’ in kimlik doğrulaması şu şekilde çalışıyor;
i685 bolum2clipimage002 Kablosuz Ağlara Saldırı & Defans.

Cihaz istek gönderiyor, AP cevap veriyor eğer bağlantı tipi “Open Security” olsaydı cihaz Onay Mesajı (Authentication Message) istek gönderirken Algoritma Numarasını 0 olarak gönderecekti, bağlantı WEP ise bu numara 1 olur.

Şekildeki 3. ve 4. adımlar sadece WEP bağlantılarında olur ve onay mekanizması için kullanılır. 4. adımda AP geriye Durum Kodu (Status Code) gönderir.

Burada iki ciddi sorun vardır. Birincisi STA’ in (kablosuz cihaz) karşıdaki AP hakkında ve AP’ nin şifreyi bilip bilmemesi hakkında gerçek bir fikri olmamasıdır. Çünkü sadece onay cevabı göndermektedir.

Yani herhangi bir AP olabilir ve her isteğe doğru durum kodu ile cevap verebilir. Ancak tabii ki WEP şifresini bilmediğinden dolayı daha sonradan gelen paketleri açamayacak (WEP simetrik şifreleme kullanmaktadır) , dolayısıyla çalışmayan bir AP olacaktır. Ancak karşılıklı onay (mutual) bu noktada kaybolmuş oluyor.

Daha sonra da WPA’ da çözülen implemantasyon hatalarından biri de buradaki onay süreci ve data trafiğinin şifrelenmesinde aynı anahtarın kullanılması sorunudur.

İkinci sorun ise bağlantıyı dinleyen (sniff) kişi iki kritik bilgi yi alır. 2. adımdaki şifrelenmemiş metin (plaintext) ve 3. adımdaki şifrelenmiş hali (chipertext). Bu da potansiyel olarak güzel bir kriptografik atak için hoş bir başlangıçtır.

Buraya kadar iki kritik nokta öğrendik ancak daha önemli bir bilgi şimdi geliyor;

WEP şifreleme için RC4 kullanıyor ve RC4’ te stream şifreleme yapar blok değil. RC4’ şifrelemede XOR u kullanıyor. XOR hakkında bilmeniz gereken en önemli şey bir datayı iki defa aynı anahtar ile XOR larsanız aynı datayı tekrar geri alırsınız.

Şimdi buradaki WEP onay sisteminde şu RC4’ ün 128 rasgele byte’ ı şu şekilde ortaya çıkabiliyor;

Yukarıdaki son satırın anlamı da RC4’ ün ürettiği ilk rasgele 128 byte’ ın hepsini bu onay prosedüründen çıkartabiliyoruz (bkz: Ek-2). Çünkü 2. adımda plaintext ve 3. adımda da chipertext’ i almış bulunmaktayız.

Dolayısıyla şu an saldırgan olarak onay alan bir kullanıcı gibi bizde elimizdeki bulduğumuz anahtar ile onay sürecini başarılı bir şekilde geçebiliriz (tabii ki daha önce de dediğimiz gibi bu bizim başka bağlantılar yapabileceğimiz anlamına gelmiyor).

Bilgi Değiştirme Kontrolü
Normalde WEP ICV (Integrity Check Value) ile paket/mesaj modifikasyonlarına karşı önlemini almış durumda ancak CRC hesaplamasındaki algoritma doğrusal arttığından dolayı paket ile birlikte bir dizi byte değiştirildiğinde ICV nin sonuçları gene doğru çıkabiliyor. Her ne kadar pratik bir atak olmasa da bu güvenlik sistemi de kırılmış durumda.

Gizlilik ve WEP Şifresinin’ in Kırılma Noktası
WEP aynı datanın tekrar oluşmaması için IV (Initialization Vector) kullanır. Bu trafik ile birlikte sürekli artan bir değerdir. Zaten bu IV yüzünden 64bit WEP aslında 40bit’ tir çünkü 24bit IV yer tutmaktadır. IV paket içerisinde şifrelenmez çünkü açma (decrypt) işlemi yapılırken kullanılacaktır, yegane amacı aynı metnin iki defa geçmesi durumunda farklı şifrelenmiş çıktıların oluşmasını sağlamaktır. Aksi takdirde kriptografik ataklar çok daha kolay olacaktır.

WEP’ te kullanılan IV’ nin boyutu (24bit) düşük bir boyuttur tekrara neden olabilir. Bu yüzden WPA (TKIP) gene RC4 e dayalı olmasına rağmen bu sorunu gidermiş ve IV boyutunu yükseltmiştir.

Eğer tekrar kullanılan IV numaralarını (collusion) yakalayabilir ve toplayabilirsek bundan şifreyi üretmek için bir adım atabiliriz. Buradaki en büyük avantajımız da ağlarda LLC Headerlar gibi klasik genişliği ve değeri sabit trafiğin her zaman olmasıdır. Bu sayede yeterli tekrar edilen IV toplayabilirsek şifreyi elde etme şansına sahip oluyoruz. Ancak bu da çok pratik bir saldırı değil.

Gerçek açık ise RC4’ ün WEP implemantasyonunda çıktı.
RC4’ ün açılış süreci şu şekilde;
RC4 çalışırken 2 dizi (array) kullanıyor. İlk dizi (s-box / state box) 0-255 arası tüm karakterleri içeriyor, ikinci 256 bytelık dizi ise “şifre (key)” ile dolduruluyor, şifre kısaysa tekrar edilerek 256 byte lık dizi tam olarak doldurulmuş oluyor.

RC4 çalışma mantığında her oluşturulan keystream’ in her byte’ ının bir öncekinden byte’ tan değişik olma ihtimali %50 ancak “Weaknesses in the Key Scheduling Algorithm of RC4” isimli makalesi ile RC4 ile rasgele üretim sürecinde zayıf anahtarlar (weak keys) olduğu ortaya çıktı.

RC4 Bu ilk açılış sürecinden sonra sbox ve kbox arasında belli bir algoritma ile (bkz: Ek3 RC4 VB.NET implemantasyonu) döngü başlıyor. Bu karıştırma işleminde ilk ve belli döngülerde bazı byteların tahmin edilebilme oranı normal tahmin edilebilirliğe göre çok daha yüksek, işte bu tahmin edilmesi daha kolay olan byte’ lar zayıf anahtarlar (weak keys) olarak geçiyor. Buradaki tahmin edilebilirliğin temel neden s-box’ ın içerisindeki datanın açılış süresinde biliniyor olması. Ancak ilk açılış ve döngüden sonra bu tip bir sorun kalmıyor ve RC4 sorunsuz ve güvenli olarak çalışıyor.

Normalde RSA RC4’ ün implemantasyonunda ilk 256byte’ ın kullanılmaması gerektiğini ve herhangi bir data ile geçiştirilmesini, sistemin bundan sonrakileri datayı kullanması gerektiğini bildiriyor. Ancak WEP’ te kullanılan RC4 implemantasyonu bu uyarıya kulak asmamış olması bugün bizim WEP’ i rahatça kırmamızı sağlıyor.

IV ile bu kırma işleminin ilişkisi de burada başlıyor. Daha önceden de dediğimiz gibi IV gerçek anahtara eklenilip RC4 işleme giriyor dolayısıyla her IV değiştirildiğinde RC4 tekrar şifrelemeye başlıyor ve bu açılış sürecinde (initialization) elimize yeni zayıf anahtarlar geçmiş oluyor. Yeterli derecede tekil (tekrar etmeyen, unique) IV içeren paket topladığımızda WEP’ i rahatça kırabiliyoruz. Çünkü elimizde kriptografik atak yapmaya yeterli derecede zayuf anahtar geçmiş oluyor.

Eğer weak key’ lere saldırı hakkında daha fazla teknik bilgi arıyorsanız şiddetle “Weak Keys in RC4” ve “Practical Exploitation of RC4 Weaknesses in WEP Environments” makalelerini tavsiye ederim.

Genelde 300.000 – 1.000.000 arasında tekil IV ile WEP şifreleri kırılabiliyor. Buradaki rakamın sabit olmamasının temel nedeni bunun bir olasılık hesabı olması. Aslında teorik olarak 10.000.000 IV ile de kıramama şansınız var.

İşin teknik boyutunu anladık, şimdi konuya gelelim.

Konuya Gelelim WEP’ i KırmaTeori ve Teknik’ ten sonra bu bölüm işin pratiğini içeriyor.

Laboratuar Ortamı
Konu kablosuz ağlar olunca bir bilgisayardan fazla donanıma ihtiyacımız oluyor.
Aşağıdaki konfigürasyon benim testlerimi yaptığım sistem ama sizin aynı olması gerekmiyor ama tabii ki aynı desteklere sahip donanımlara sahip olmanız gerekebilir;

Access Point (Kurban Ağ)
Linksys Wireless AP

Notebook (Saldırgan)
OS – Windows Xp / 2003 / Linux / Freebsd
Bazı yazılımlar sadece belli platformlarda çalışmaktadır
Wireless I – Intel PRO 2200 BG (entegre)
Wireless II – PCMCI Linksys WPC54G
Opsiyonel
İkinci wireless kartı opsiyoneldir
Ekstra Anten (daha geniş alanları kapsayabilmek için) ve Pigtail (anten ile wireless kartın arasına)
GPS (kendi yerinzin tam koordinatını almak ve AP’ yi haritada konumlandırabilmek için)
Notebook için Araç şarj kiti
IPAQ – Pocket PC (Ministumbler ile işyeri daha dar ortamlar için)

Desktop (Kurban Ağ Kullanıcısı)
U.S. Robotics USB, XX5422 Wireless
Opsiyonel aygıtlar genelde bu süreçteki keyfinizi artıracaktır.

Çift kart hakkında bir not
Normalde saldırgan donanımın da tek kart yeterli olabilir ancak ben bir kart ile bir ağa bağlanıp interneti kullanmak ve diğer kart ile de paket toplamak, AP bulmak için çift kart kullanıyorum. Bu birçok sistemde katastrofik sorunlara da neden olabilir ve genelde tavsiye edilmez.

Donanım Konusunda Notlar
Eğer bu tip testler için bir donanım alacaksanız almadan önce bekleyin ve iyice araştırma yapın. Şu an bir çok yazılım bir çok donanımda kısıtlamalara sahip. Örnek olarak klasik Centrino işlemcili entegre wireless sürücüleri RF monitor kısıtlamasından dolayı Windows uygulamalarında çalışmıyor sadece kısıtlı Linux sürücüleri var. Aynı şekilde sadece Windows ta çalışan ve Linux ta çalışmayan donanımlar da mevcut. Ya da henüz gerekli sürücüleri yok vs.

Dolayısıyla kullanacağınız yazılımların gereksinimlerini iyice okuyun ve donanım seçerken mümkün olan en çok yazılımın destek verdiği donanımı seçmeye çalışın. Eğer hali hazırda bir donanımınız varsa bunun özel sürücüleri için ya da güncel sürücüleri için araştırma yapabilirsiniz.

Genel bir fikir vermek gerekirse ORINOCO ve Hermes chipset’ li kartlar genelde işinizi görecektir. Aynı şekilde GPS cihazlarının ve Access Pointlerin de desteklediği özellikler ve ilgili yazılımları iyice inceleyin.

Saldırı Adımları
Bir kablosuz ağa bir kaç saldırı modeli olabilir ancak en çok yapılmak istenilen şey bu ağa izinsiz bağlantı kazanabilmek ve paketleri dinleyebilmektir.

Klasik bir kablosuz ağa izinsiz giriş senaryosu şu şekilde ilerler;

Kablosuz Ağ(lar)ı Tespit etme
Paket Toplama
Şifreyi Kırma (şifreli bir ağ ise)

Kablosuz Ağları Tespit Etme
Kablosuz ağları tespit etmek genelde çok basittir, örnek olarak kablosuz ağ olan bir yerde notebook’ unuzu açtığınızda notebook’ unuz civardaki kablosuz ağı otomatik olarak bulacaktır (WinXP ve bir çok üçüncü parti yazılım bu şekildedir). Ancak biz bu işi bir adım daha ileri götüreceğiz ve yüzlerce kablosuz ağı kısa sürede bulabilecek hale geleceğiz. Ek olarak kendini duyurmayan (SSID Broadcast yapmayan) ağları da bulmayı göreceğiz.

Kanallar (Channels)
Farklı frekanslarda 1-14 arası yayın kanalı vardır, AP ve STA bir kanaldan iletişim kurar. Örnek olarak AP 12. kanalda yayın yapıyorsa STA’ da o kanaldan bağlanır. Aynı şekilde AP ve STA’ in yaptığı broadcast (genel) isteklerde her kanal için ayrı yapılmalıdır.

Amerika’ da 11 kanal kullanılmaktadır, Kanada, Avrupa ve Ülkemizde 13 kanal kullanılır. Kanal GHz spektrum’ u 2.412’ den başlayıp her kanalda 0.005 Ghz yükselerek ilerler yani Kanal 13 2.472 Ghz’ dir.

SSID Nedir?
Herhangi bir kablosuz ağı bulduğunuzda size ağın SSID’ sini verir yani özetle AP’ nin ismini. Eğer bir AP’ de SSID Broadcast açık ise genelde saniyede 10 defa olmak üzere yayın yaptığı kanalda kendisinin orada olduğunu belirten bir şekilde sinyal gönderir (beacon).

İşte bu SSID beacon’ ları sayesinde biz de bu ağları otomatik olarak bulabiliriz. Bugün bir çok AP SSID Broadcast’ i kapatma özelliği sunuyor. SSID Broadcast kapatıldığında ise tabii ki bu AP’ leri otomatik olarak bulamıyorsunuz.

Bu durumda normal şartlar altında notebook’ unuza bu SSID i bizzat sizin girmeniz gerekiyor. Bunun bir diğer anlamı da bu AP’ nin SSID sini bilmek zorunda olduğunuz. Bu istekleri tamamen pasif yani AP’ ye bilgi göndermeden dinleyebilirsiniz.

Araştırma İstekleri (Probe Request)
AP’ lerin SSID göndermesi harici STA (Station, kablosuz cihaz – notebook, pda vb.) lerde araştırma isteğinde (probe) bulunurlar. Bu durumda da STA gene broadcast olarak kendisinin bir kablosuz ağ aradığını söyler. Bunu alan bir AP aynı SSID Broadcast gibi bunu cevaplar ve bizde hemen ilgili AP’ ye bağlanabilir ya da orada olduğunu öğrenebiliriz.

Normalde bu probing işlemi her kanalda 0.1 saniye kadar sürer ve aynı anda cevap bekler. Bu işlem aktif bir arama modelidir.

Özetle
Kablosuz Ağlar kanalları kullanır (1-14)
AP’ ler SSID Broadcast ile nerede olduklarını her kanalda duyururlar
STA’ ler araştırma istekleri ile geldiklerini söylerler

Netstumbler / MiniStumbler
Windows altında en eski ve en güzel wardriving araçlarından biridir. Ek olarak isteyenler için MiniStumbler da Pocket PC’ ler de çalışıyor. Aşağıdaki mantıkların hepsi hemen hemen Ministumbler’ a da uygulanabilir.

Netstumbler’ ı civardaki AP’ leri bulmak için kullanacağız. Netstumbler bir aktif tarayıcıdır yani civara probe requestleri gönderir, dolayısıyla tespit edilebilir. Tabii ki civardaki şifresiz kablosuz ağların yüzlerce olduğunu düşünürseniz bu tip bir şeyi birilerinin tespit edebilmesi milli piyangoyu kazanmanız gibi bir şey olur. İkinci olarak bu kanunlara aykırı veya suç içeren bir durum da değildir.

Netstumbler çok basit bir program ve şu an ki sürümü (0.4.0) bir çok kartla sorunsuz şekilde çalışıyor (RF modu istemediğinden ve paket dinleme yapmadığından dolayı donanım deseği çok geniş).

Download etmek için http://www.netstumbler.com/downloads/ adresini kullanabilirsiniz. Program ücretsizdir.

Programı kurduktan sonra açınca zaten varsayılan kartınız ile çalışmaya başlayacak ve hemen civardaki AP’ leri tespit edecektir.

i686 bolum3clipimage002 Kablosuz Ağlara Saldırı & Defans.

Netstumbler ile örnek bir tarama sonucu

“Enable Scan” (Ctrl + B) ile taramayı açabilir ve kapatabilirsiniz
“Device” menüsünden kullanılacak kart arabirimini seçebilirsiniz
Sol taraftan çeşitli filtreleme özelliklerine ulaşabilirsiniz
Sonuçları kaydedebilir ve daha sonradan açıp inceleyebilirsiniz
Sonuç datalarını Export / Import edebilir ve başka yazılımlar ile paylaşabilirsiniz

Kismet
Kismet’ i için Linux’ a ihtiyacınız olabilir. Şu an için verimli bir Windows portu bulunmamakta. Cygwin altında pek verimli olmadan çalıştırabilir ya da Linux işletim sisteminizde kullanabilirsiniz. Ek olarak “Auditor” gibi içerisinde Kismet’ i de içeren Live Linux CD’ lerinden birini kullanabilirsiniz.

Kismet pasif bir tarayıcı bu sayede SSID Broadcast etmeyen AP’ leri de bulabilir. Kendini belli etmeyen bu AP’ leri ilk adımda trafiklerinden tespit eder. Ancak ilk adımda SSID’ yi bulamayabilir daha sonra SSID içeren ilk paketi gördüğünde AP’ nin SSID sini de bulabilir.

i687 bolum3clipimage004 Kablosuz Ağlara Saldırı & Defans.

Kismet (Gkismet / Arabirim) ile gizli bir AP (SSID broadcast etmeyen)’ nin tespiti

Yukarıdaki resimde de görüldüğü gibi Kismet gizli bir AP’ yi tespit edebiliyor. Bunun yanında bize hangi kanalda çalıştığı, şifreli olup olmadığı gibi ekstra bilgiler de veriyor. Buradaki en güzel özelliklerden bir diğeri ise bağlanan STA’ leri de görebiliyor olmamız.

Yukarıdaki ekran görüntüsü Gkismet’ ten alınmıştır. Kismet için GTK arabirimi.

Ek olarak istediğiniz zaman “Packet Dump” ve “String Dump” seçenekleri ile paketleri izleyebilir ve kaydedebilirsiniz. Kismet ile kaydettiğiniz paketleri daha sonradan “aircrack” gibi bir WEP şifre kırıcısında kullanabilirsiniz. Aircarck hakkında geniş bilgi makalenin ilerleyen kısmında bulunabilir.

Paket Toplama
Saldırının yapılacağı AP’ yi tespit ettiğimize ve şifrelemesini de öğrendiğimize göre artık ikinci adım olan paket toplama kısmına geçebiliriz. Hatırlarsak burada yapmamız gereken elimizden geldiğince çok tekil IV toplayabilmekti.

Airodump
Daha önceden de belirttiğimiz gibi Kismet ile paket toplayabilirsiniz ancak airodump bu işlem için çok daha pratiktir.

Airodump’ ı yükledikten sonra daha önceden bulduğunuz AP’ nin çalıştığı kanalda airodump’ ı çalıştırın.

Airodump Parametreleri;

<nic index>
Hangi wireless adapter ile kullanacağınız, Yani bilgisayarınızdaki kablosuz ağa arabirimi.

<nic type> (a/o)
Wireless adapter’ in chipset i
o : Hermes /Realtek
a : Aironet/Atheros
Eğer diğerse parametre olarak ne verdiğiniz farketmiyor.

<channel(s)> (0-14)
Hangi kanal yada kanalları dinleyeceği 0 verirseniz tüm kanalları dinlemeye alacaktır.

<output prefix>
Paketlerin yazılacağı dosyaların başlangıç ismi

<ivs only flag> | Opsiyonel
Eğer 1 yaparsanız sadece IV’ leri yazacak. Eğer sadece şifre kırmak istiyorsanız bunu seçebilirsiniz. Tüm paketleri toplayarak daha sonradan şifreyi kırabilir ve bu paketleri de bulduğumuz şifre ile açabilir ve analiz edebiliriz.
Bizim örneğimizde şu şekilde çalıştırıyoruz;
C:\Airodump.exe 14 a 13 FM_APIVleri y

i688 bolum4clipimage0030000 Kablosuz Ağlara Saldırı & Defans.

Airodump’ dan bir paket toplama görüntüsü

Windows altında eğer sadece “airodump.exe” olarak çağırırsanız interaktif modda çalışacaktır.

Linux’ ta ise <nic type> girmeniz gerekli değil aynı zamanda <nic index> yerinede <interface name> yani wlan0 gibi ilgili donanımın arabirim adını girmelisiniz. iwconfig komutu ile wireless adapterlerinizi görebilirsiniz.

Paketleri farklı vakitlerde toplayabilirsiniz, kırma işleminde hepsini birlikte kullanabiliyoruz. Yani paket toplama işlemine ara verebilir ve daha sonradan tekrar başlatabilirsiniz.

Aklınıza civardaki modemlerde dahil olmak üzere seçtiğiniz kanaldaki tüm trafiği toplamış olduğunuz gelebilir, bu da sorun değil çünkü kırma işleminde hangisinin bizim AP’ miz olduğunu belirteceğiz.

Airodump IV dosyalarını çalıştığı klasöre kaydedecektir. Network yoğunluğuna göre toplama hızınız değişebilir. Bu hızı yükseltmek için ağda ekstra trafik yapmanız gerekebilir, bunun için “Aireplay” yada benzeri paket üreten yazılımlar kullanabilirsiniz.

Daha önceden de belirttiğimiz gibi eğer paketleri .cap olarak topladıysanız yani sadece IV’ leri değil tüm şifreli datayı da topladıysanız şifreyi kırdıktan sonra “airdecap” yazılımı ile ilgili kırılmış şifre ve şifrelenmiş paketleri açabilir daha sonradan da Ethereal, IRIS gibi bir sniffer’ da bu paketleri açabilir ve inceleyebilirsiniz.

Bu sayede sizin paket topladığınız sırada gerçekleşen tüm trafiği analiz edebilirsiniz.

Şifreyi Kırma
Artık gerekli paketleri topladığımıza göre WEP şifresini kırmaya başlayabiliriz

Aircrack
Aircrack paket toplama için kullandığımız “airodump” ın geliştiricisinden, çok kısa bir sürede ve az paketle sonuca ulaşabiliyor.

Tek yapmamız gereken topladığımız paketleri ona vermemiz.

Ciddi sorunlardan biri kaç bit şifreleme kırmamız gerektiğini bilmiyor olmamız. Çünkü WEP şifresinin 64bit mi 128bit mi olduğunu elimizdeki şifrelenmiş paketler ile tespti edemiyoruz. Bu yüzden eğer bilgimiz yoksa en iyisi önce 64 ile deneyip daha sonra 128bit olarak kırmayı denemek olacaktır.

Örnek kullanımı şu şekilde olabilir;

C:\airrack.exe –a 1 –n 128 *.ivs

-a Parametresi kırılacak şifrenin WEP şifresi olduğunu belirtiyor,
-n parametresi ise kaç bitlik bir şifreleme olduğunu.

En sondaki *.ivs parametresi ise o klasördeki tüm “.ivs” uzantılı dosyaların kırılacağını belirtiyor. Önemli olan bir önceki paket toplama işleminde üretilen dosya veya dosyaları vermeniz.

Aynı şekilde eğer sırf IV’ leri değil tüm paketleri yazdıysanız *.cap dosyalarınızı da verebilirsiniz.

Kısa bir süre sonra şifre kırılmış olacaktır.

Karşınıza birden fazla cihazdan toplanan paketler gelebilir bu durumda ilgili AP’ yi seçmeniz gereklidir. Zaten ilgili AP’ nin MAC adresini daha önceki Kismet / Netstumbler bilgimizden dolayı biliyoruz. Aşağıdaki resimde bu durumun bir örneğini görebilirsiniz.

i689 bolum4clipimage0060000 Kablosuz Ağlara Saldırı & Defans.

Birden fazla cihazdan IV toplanması sonucunda çıkan sorgu ekranı

Eğer tek bir sonuç çıkarsa aircrack otomatik olarak kırma ekranına geçecektir.
i690 bolum4clipimage0080000 Kablosuz Ağlara Saldırı & Defans.

128bit WEP şifresi kırılma işlemi tamamlandı

Program farklı atak yöntemleri ve dictionary (belli bir sözlüğe dayalı deneme-yanılma) atak gibi opsiyonel bir dizi seçeneğe de sahip.

Ek Saldırılar
WEP şifresinin kırılması ve sisteme girilmesi harici bazı ek saldırılar da sistemlere yapılabilir.

MAC Filtrelelerini Aşmak
Daha önceden de belirttiğimiz gibi kablosuz ağların güvenliği için MAC adresi filtreleme yapılabilir. Bu sayede sadece izinli MAC adresleri kablosuz ağa bağlanabilecektir.

Ancak bir saldırgan olarak daha önceden izinli bir MAC adresinin ne kadar kolay ele geçirilebileceğini gördük, şimdi de ne kadar kolay MAC adresi değiştirebileceğimizi görelim.

Unutmayın ki MAC adresleri tekildir, dolayısıyla MAC adresinizin bir yerde loglanması size ait cihazın (STA – Laptop, PDA vs.) orada olduğuna dair güzel bir kanıttır. Dolayısıyla sadece filtrelemeleri aşmak için değil genel olarak da MAC adresi değiştirmek güzel bir pratiktir.

Bu çok basit bir işlemdir;

Windows altında
En basit şekilde “Network Connections” tan ilgili adapter’ e girip, “Properties” > “Configure” > “Advanced” Tabına girebilir ve “Network Address” değerini istediğiniz şekilde belirtebilirsiniz.

i691 bolum4clipimage009 Kablosuz Ağlara Saldırı & Defans.

MAC Adresi değiştirme ekranı

Bu işlem tüm adapter’ larda yapılamayabilir ancak registry aracılığı ile bunu hepsinde yapabilirsiniz.

“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contr ol\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}” registry adresinde tüm adapter’ ler vardır, buradan ilgili olanı seçebilir ve “Network Address” kısmını istediğiniz şekilde değiştirebilirsiniz.

Daha detaylı bilgi ve adım – adım için. “Changing MAC Adress in Windows” sayfasına göz atmanızı tavsiye ederim.

Ek olarak Windows için şu küçük programcıkla bu işi çok daha basit hale getirebilirsiniz;

MacShift – http://students.washington.edu/natetrue/macshift/

Linux’ ta şu şekilde değiştirebilirsiniz;


Ek olarak GNU MAC Changer bu işte size yardımcı olabilir.
Genel olarak MAC adresleri ve değiştirme hakkında daha fazla bilgi için Wikipedia – MAC Address’ e bakılabilir.

DOS / MITM vb. Ataklar
Kablosuz ağlar bu temel sorun hariç, DOS (Denial Of Service – bir servisin kullanılmaz hale getirilmesi), MITM (Man in the Middle – iki iletişim arasına girip data çalma, modifiye etme gibi saldırılar) gibi ataklara da açık. Bunların bir kısmının nedenini açıklamıştık.

Kablosuz ağlardaki en basit DOS saldırılarından biri AP’ ye Deauthentication Management mesajları göndererek kablosuz cihazların sürekli kopmasını sağlamaktır.

MITM ataklar ise aktif bağlantıların çalınması ve paketlerin dinamik olarak enjekte edilmesi aracılığı ile yapılmakta. Bu tip saldırılara örnek için airinject ve airjack yazılımlarını inceleyebilirsiniz.

Ek olarak Airopeek ve CommView for WiFi yazılımları Windows için özel paket üretme / modifiye etme ve analiz uygulamalarına sahipler.

Ekstra Ekipmanlar
Kablosuz ağların analizi ve tespiti sırasında bazı ekstra donanımlar size yardımcı olabilir;

Pocket PC
Herhangi bir Windows Mobile 2000/2003 yüklü ve Wi-Fi desteği olan bir Pocket PC işinizi görecektir. Bu sayede iç cebinizde bunu taşıyabilir ve MiniStumbler veya CommView for WiFi PPC kullanarak oradaki kablosuz ağ hakkında daha fazla bilgi toplayabilir veya paket toplayabilirsiniz.

i692 bolum5clipimage001 Kablosuz Ağlara Saldırı & Defans.
ComWiFi PPC yazılımından bir ekran görüntüsü

GPS
GPS cihazı sayesinde uydu aracılığı ile dünya üzerinde bulunduğunuz konumu alabilirsiniz. Bu bilgi ile bulduğunuz ağları haritada işaretleme şansına sahip olursunuz.

Haritalama, konumlandırma konusunda size yardımcı olabilecek yazılımların başında Stumbverter ve Musatcha var. Ek olarak Wigle’ da harita bulmanız ve harita paylaşımı konusunda size çok yardımcı olacaktır.


Kansas Üniversitesi’ nde geliştirilen bir haritalama örneği

Anten
Wardriving sırasında en çok ihtiyaç duyacağınız şeylerden biri çekim alanınızın olabildiğince geniş olmasıdır. Kartınızın çekim gücünü artırabilmek için ekstra anten takmak çok faydalı olabilir.

Her wireless kartın ekstra anten desteği yoktur, bazılarını modifiye ederek takabiliyor olsanız da kendiliğinden bu desteği olan bir kart edinmek çok daha verimli olacaktır.

Omni-Directional Antenler
Bu antenler tek yönlü değil aynı anda her yönde alanı genişletirler, boyut açısından da aynı bir arabanın radyo anteni gibidirler. Genelde wardriving için bu anten kullanılır.

i694 bolum5clipimage005 Kablosuz Ağlara Saldırı & Defans.

Eğer ki bu tip işler ile aranız iyiyse, biraz vaktiniz varsa ve eğlenmek istiyorsanız çok ucuz fiyatlara çok başarılı antenler yapabilirsiniz. “Quarter wave omni-directional antenna” bunlardan bir tanesi, bir diğer popüleri ise “Building a 2.4GHz Vertical Collinear Omnidirectional Antenna” makalesindeki antendir.

i695 bolum5clipimage007 Kablosuz Ağlara Saldırı & Defans.
Ev yapımı bir minik omni-directional anten

Ek olarak antenlerin çoğunu sabityleyebilirsiniz;

i696 bolum5clipimage008 Kablosuz Ağlara Saldırı & Defans.

Mount’ a sahip sabitlenmiş bir omni-directional anten (araç için uygun)

Directional Antenler
Eğer ki hedef bölge tam olarak tespit edildiyse tek yönlü sinyal güçlendirme için directional antenler çok işe yarayacaktır. Ancak genel wardriving seansları için çok verimli olmayabilir çünkü çevirildikleri bölgeyi görürler, diğer bölgelerden olan sinyaller zayıf olacaktır.

Parabolic, Yagi gibi tipleri vardır, mantık aynıdır ancak yapıları değişebilir. Yagi fiyat-performans olarak WiFi için genelde en uygun çözümü unan tipteki antendir.

i697 bolum5clipimage009 Kablosuz Ağlara Saldırı & Defans.
Directional Anten

Popüler evde yapabileceğiniz ucuz bir diğer directional anten modeli içinse “802.11b Homebrew WiFi Antenna Shootout” makalesine göz atabilirsiniz. Aşağıda bu antenin bir resmi bulunmaktadır.

i698 bolum5clipimage010 Kablosuz Ağlara Saldırı & Defans.

Pringles’ tan yapılmış ev yapımı directional anten

Ekstra donanım bilgisi için bakılabilecek kaynaklardan bir diğeri de “Cisco Aironet Antenna Reference Guide

Defans
Makalemizin buraya kadar ki kısmı saldırı, kablosuz ağlardaki güvenlik açıkları ve bunları kullanma yöntemleri ile ilgiliydi. Bu bölüm ise en pratik şekilde alabileceğiniz güvenlik önlemlerini ele alacak.

Aşağıdaki önlemlerden “MAC Filtreleme”, “SSID Ayarları” gibi bazı kısımlar sadece basit şekilde güvenliği arttırma ve gizleme ile ilgilidir. Gerçek bir koruma değildir ancak daha fazla saldırgan çekmemek, basit saldırganları egale edebilmek, saldırganın daha çok vakit harcamasına sebep olmak gibi güvenliği arttıran faktörlerdir.

Bir çok konunun uygulanması için detaylı bilgi verilmemiştir çünkü kullanılan donanıma bağlı olarak uygulama yolları değişkenlik gösterebilir. Cihazın yardım dosyalarına bakarak ya da sadece kontrol panelinde gezinerek bir çok işlemi başarıyla yapabilirsiniz.

Şifreleme Metodu
Uzun bir süre WEP’ in ne kadar güvensiz olduğundan bahsettik dolayısıyla güvenli bir kablosuz ağ için WEP değil de öncelikle RSN kullanmanızı, eğer donanımınızın RSN desteği yoksa da WPA PSK(Pre Shared Key) kullanımı şiddetle tavsiye edilir.

Eğer mecburen WEP kullanacaksanız da 128 bit şifreleme kullanmalısınız.

RSN, WPA gibi çözümlerdeki şifreleri (key) olabildiğince iyi seçmek te çok önemlidir.

SSID Ayarları
SSID Broadcasting’ i kapatın. Bu sayede Netstumbler’ ın veya sadece alandaki bir WinXP’ nin otomatik olarak AP’ mizi bulmasını engellemiş olacağız.

İkinci bir önlem olarak SSID’ nizi değiştirin ve bu yeni değer saldırgana bir bilgi vermesin. Örnek olarak “Deneme Firmasi – Bilgi İslem” yerine rasgele yada “Yesil AP” vs. gibi isimler vermeniz faydalı olacaktır.

Konumlandırma
AP’ nizi konumlandırırken cam kenarlarını seçmeyiniz eğer mümkünse daha içerilerde bir yerlere yerleştirin.

Frekans İzolasyonu
Bahsettiğimiz gibi kablosuz ağ güvenliğinin temel sebebi kablosuz olması, yani radyo dalgalarının firma / ofis / ev dışına çıkabilmesi. Dolayısıyla eğer mümkünse bu frekansları yetkisiz kişilerin ulaşabileceği yerlere ulaştırmamalıyız.

Bu noktadaki ilginç çözümlerden biri de “DefendAir Radio Shield Additive”. Bu boyanın içerisine katılan bir ürün ve radyo dalgalarının %90 gibi bir oranını duvardan geçerken boyanın emmesini sağlıyor.

i699 bolum5clipimage011 Kablosuz Ağlara Saldırı & Defans.
DefendAir Radio Shield Additive ürünü

Force Field Wireless firmasının pencere filmleri gibi benzer başka fiziksel kablosuz ağ güvenliği ürünleri de var.

MAC Filtreleme
AP’ nizin ayarlarından sadece istediğiniz kullanıcıların MAC adreslerine izin vermeniz de alabileceğiniz ekstra güvenlik önlemlerinden.

Güncelleme
AP’ nizin firmware’ ını güncellemeyi unutmayın, bazı AP’ lerde ciddi açıklar tespit edildi ve edilmekte. Aynı yazılımlar gibi donanımınızı güncel tutmanız da faydalı olacaktır.

IDS & Diğer Destek Çözümler
AirSnare gibi kablosuz ağlar için geliştirilmiş IDS sistemi kullanırsanız ağınızdaki kaçakları daha hızlı tespit edebilir ve izleyebilirsiniz.

i700 bolum5clipimage013 Kablosuz Ağlara Saldırı & Defans.

AirSnare’ dan bir ekan görüntüsü

Ek olarak AirDefense’ de bir dizi kablosuz ağ güvenlik çözümü sunmakta.

Türkiye’ den İstatistikler
Kişisel olarak yaptığım wardriving seanslarından çıkardığım bazı istatistikler;

Türkiyeden bir istatistik

Burada şifresiz olarak görünen %65’ lik kısım hatırı sayılır bir istatistik ve bir çok amaç için kullanılabilir. İstanbul’ da bilişim sektörünün ve firmaların yoğun olduğu bir bölgede 10 dk. İçerisinde 50’ den fazla şifresiz kablosuz ağ bulabilirsiniz.

Ciddi bir wardriving seansında ise çok daha fazlasına rahatça ulaşabilirsiniz

Ek – 1 Simetrik – Asimetrik Şifreleme
Simetrik Şifreleme
Simetrik şifreleme klasik şifreleme yöntemidir. Yani bir metin “fb1907” anahtarı ile şifrelenmiş ise gene aynı sözcükle yani “fb1907” ile açılabilir.

Asimetrik Şifreleme
Asimetrik şifreleme de iki tip anahtar vardır.

Farz edin ki elinizde iki adet anahtar ve bir sandık var. İstediğiniz, bu sandık içerisinde bir arkadaşınızdan özel bir fotoğraf gelmesi. Ancak tabii ki bu fotoğrafların sadece sizin tarafınızdan görülmesini istiyorsunuz.

İki anahtarımız var demiştik, işte bunlardan biri Özel Anahtarımız (Private Key), Diğeri ise Genel Anahtarımız (Public Key). Boş sandık ile birlikte genel anahtarınızı da arkadaşınıza gönderiyorsunuz, bu sayede gönderdiğiniz arkadaşınız bu genel anahtar ile sandığı kilitleyebilecek.

Arkadaşınız sandığa gerekli resimleri yerleştiriyor ve gönderdiğiniz anahtar ile kilitliyor. Aklımıza hemen şu soru gelebilir “Peki anahtar yolda başkasının eline geçerse ?”, Bir şey olmaz. Çünkü Genel Anahtarımız sadece kilitleyebiliyor, kilitleri açamıyor!

İşte bu da asimetrik şifrelemenin can alıcı noktası, elinizde iki anahtar var biri sadece kilitleyebiliyor (yani Genel Anahtar), diğeri ise açabiliyor.

Dolayısıyla gönderdiğiniz kişide sizin anahtarınız olmamasına rağmen sizin sandığınızı sadece size özel olarak kilitleyebiliyor ama kilitlediği sandığı ve sizin diğer sandıklarınızı açamıyor. Çünkü bunu yapabilmesi için sizin özel anahtarınıza sahip olması gerekli.

Bu kısım PGP’ ye Pratik Giriş makalesinde de Asimetrik Şifreleme açıklamasında benzer şekilde geçmektedir.

Ek 2 – XOR’ u Anlamak

Makalede geçen WEP onay sürecinde RC4’ in ilk byteları alınırken ki mantığın kod ile en basit onayı.

Derlenip çalıştırıldığında sonucun “True” olarak döneceği görülecektir. (dil:VB.NET)

Dim HiddenKey, MyKey, Chipher, Plain As Integer
Plain = 77
HiddenKey = 13

Chipher = HiddenKey Xor Plain
MyKey = Plain Xor Chipher

Console.WriteLine(HiddenKey = MyKey)

Ek 3 – VB.NET RC4 İmplementasyonu
VB.NET RC4 implemantasyonu kodu.
Kodun içerisinde açıklama ve süreçler hakkında yorumları görebilirsiniz. Bu kod üzerinde çalışarak RC4’ ün tam olarak nasıl çalıştığını daha iyi anlayabilirsiniz ya da uygulamalarınızda bu kodu kullanabilirsiniz.

”’ <summary>
”’ VB.NET RC4 implemantation by Ferruh Mavituna
”’
”’ Make practice to understand how exactly RC4 works and weak keys in initialize phase
”’
”’ References :
”’ http://marcel.wanda.ch/Archive/WeakKeys
”’ http://en.wikipedia.org/wiki/RC4_(cipher)
”’ http://aspnet.4guysfromrolla.com/articles/091802-1.aspx
”’
”’ http://marcel.wanda.ch/Archive/WeakKeys
”’
”’ </summary>
”’ <remarks></remarks>
Module RC4Main

Sub Main()

Dim RC4Test As New RC4(“Test”)
Dim x As String = RC4Test.Crypt(“12456″)
Console.WriteLine(RC4Test.Crypt(x))

Dim RC4TestDe As New RC4(“Test”)
Console.WriteLine(RC4TestDe.Crypt(x))

Console.Read()
End Sub

End Module

Public Class RC4

Private _Key As String
Private _Initialized As Boolean

”’ <summary>
”’ Is Rc4 Initialized ?
”’ </summary>
”’ <value></value>
”’ <remarks></remarks>
Private Property Initialized() As Boolean
Get
Return _Initialized
End Get
Set(ByVal value As Boolean)
_Initialized = value
End Set
End Property

”’ <summary>
”’ Password
”’ </summary>
”’ <value></value>
”’ <remarks></remarks>
Public Property Key() As String
Get
Return _Key
End Get
Set(ByVal value As String)
_Key = value
End Set
End Property

‘State Box, 0-255
Private Sbox(255) As Integer

‘Key Box – Holds our key
Private KBox(255) As Integer

”’ <summary>
”’ New RC4
”’ </summary>
”’ <remarks></remarks>
Public Sub New()

End Sub

”’ <summary>
”’ New RC4 with Password
”’ </summary>
”’ <param name=”Key”>Password for Encryption / Decryption</param>
”’ <remarks></remarks>
Public Sub New(ByVal Key As String)
Me.Key = Key
End Sub

Private Function Crypt(ByVal PlainText As String, ByVal Init As Boolean) As String

‘Reinitiliaze just like new IV in WEP
If Init Then Initialize()

Dim j, ActiveKey, m As Integer
Dim Result As New Text.StringBuilder(PlainText.Length)

For i As Integer = 1 To PlainText.Length

m = (m + 1) Mod 256
j = (j + Sbox(m)) Mod 256
Swap(Sbox(m), Sbox(j))

ActiveKey = Sbox((Sbox(m) + Sbox(j)) Mod 256)
Result.Append(Chr(Asc(PlainText(i – 1)) Xor ActiveKey))

Next i

Return Result.ToString

End Function

”’ <summary>
”’ Encrypt and Decrypt (This is RC4 dude!)
”’ </summary>
”’ <returns></returns>
”’ <remarks></remarks>
Public Function Crypt(ByVal PlainText As String) As String
Return Crypt(PlainText, True)
End Function

”’ <summary>
”’ Initialize Procedure
”’ </summary>
”’ <remarks></remarks>
Private Sub Initialize()

‘First fill 2 boxes
FillTheBoxes()

‘————————————–
‘Pseudo Code
‘————————————–
‘i = j = 0;
‘For i = 0 to 255 do
‘ j = (j + Si + Ki) mod 256;
‘Swap Si and Sj;
‘End;

Dim j As Integer
For i As Integer = 0 To 255
j = (j + Sbox(i) + KBox(i)) Mod 256
Swap(Sbox(i), Sbox(j))
Next i

‘Call after every initialize phase
FixFirst256()

End Sub

”’ <summary>
”’ Fill the SBox And KBox
”’ </summary>
”’ <remarks></remarks>
Private Sub FillTheBoxes()

‘First Fill
Dim KeyArr() As Char = _Key.ToCharArray()
For i As Integer = 0 To 255
‘Fill with the key (mod using for roundtrips in array )
KBox(i) = Asc(_Key(i Mod _Key.Length))
Sbox(i) = i
Next i

End Sub

”’ <summary>
”’ Swap Values
”’ </summary>
”’ <param name=”Value1″></param>
”’ <param name=”Value2″></param>
”’ <remarks></remarks>
Private Sub Swap(ByRef Value1 As Byte, ByRef Value2 As Byte)

Dim TmpSwap As Byte
TmpSwap = Value1
Value1 = Value2
Value2 = TmpSwap

End Sub

”’ <summary>
”’ Ignore 256 bytes of encrypt data
”’ </summary>
”’ <remarks></remarks>
Private Sub FixFirst256()
Dim Rnd As New System.Security.Cryptography.RNGCryptoServiceProvi der()
Dim RndB(256) As Byte
Rnd.GetNonZeroBytes(RndB)

Me.Crypt(RndB.ToString, False)
End Sub

End Class

EK 4 – Diğer Bazı Yazılımlar
Airpwn – http://airpwn.sourceforge.net/
Kablosuz ağlarda paketlere injection yapabilen bir yazılım. Bir grup arkadaşın http://www.evilscheme.org/defcon/ adresinde Defcon 12’ de (Güvenlik Konferansı) airpwn ile yaptıklarını görebilirsiniz.

Wellenreiter – http://www.wellenreiter.net/
Kismet ile benzer özellikleri bulunan bir tarayıcı ve analiz programı.

AirSnort – http://airsnort.shmoo.com/
Paket toplama ve kırma. Ancak performansı pek yeterli değil.

WepLab – http://weplab.sourceforge.net/
Tarama, Analiz ve Kırma programı, Bir çok kırma opsiyonu bulunuyor.

Aerosol
Tarama

Airfart – http://airfart.sourceforge.net/
Tarama

BSD Airtools – http://www.dachb0den.com/projects/bsd-airtools.html
BSD işletim sistemleri için tarama, analiz ve kırma işlemleri yapan programlar.
Bunlar harici;

http://www.wardrive.net/wardriving/tools
http://www.remoteassessment.com/?op=…query=wireless
adreslerin daha güncel kablosuz ağ güvenliği ile ilgili yazılımları takip edebilirsiniz.

Bazı Terimler
WPA : WiFi Protected Access
WEP : Wired Equivalent Privacy
Wireless : Kablosuz
Network : Ağ
Sniffing : Eavesdropping diye de geçer. Bir iletişimi gizlice dinlemeye verilen isim. Türkçeye kelime anlamı olan “koklama” olarak ta çevrilmiştir ki, çok kötü bir fikirdir. Ek olarak “dinleme” kelimesi de kullanılmaktadır.
STA : Station, Kablosuz ağ istemcisi (Notebook, PDA, Buzdalabı gibi kablosuz ağlara bağlanabilen herhangi bir cihaz)
RADIUS : Remote Authentication and Dial-In User Service
AP : Access Point, Kablosuz cihazların (notebook gibi) kablolu ağlara bağlanmasını yarayan donanım. Örnek olarak bir firmanın ADSL bağlantısı bir wireless ADSL modem üzerinden olabilir. Bu durumda modem ADSL ağına kablosuz cihazların da bağlanmasını sağlar.
Wardriving : Deli danalar gibi kablosuz ağ arama sanatı
DOS : Denial Of Service – Bir servisin kullanılmaz hale getirilmesi.
MITM : Man in the Middle – İki iletişim arasına girip data çalma, modifiye etme gibi işlemlere izin veren saldırı modeli. Genelde asimetrik şifreleme kullanan iletişimlerde araya girmek için kullanılır.
ARP : Address Resolution Protocol, Ağlarda MAC adresini IP adresi ile eşleştirmekte kullanılan protokol. ARP Poisoning ise ARP kullanılan ağlarda ARP tablolarını modifiye ederek (zehirleme) MITM saldırılarına zemin hazırlamada kullanılan metoddur.

Kaynakça / Referanslar / Daha fazlası
Network Stumbler – http://www.netstumbler.org/
Kismet – http://www.kismetwireless.net/
WepLab – http://weplab.sourceforge.net/
Etheral – http://www.ethereal.com/
Airsnort – http://airsnort.shmoo.com/
Airsnare – http://home.comcast.net/~jay.deboer/airsnare/
Aircrack Documentation
Christophe Devine
PGP’ ye Pratik Giriş – http://ferruh.mavituna.com/article/?775
Real 802.11 Security: Wi-Fi Protected Access and 802.11i
Jon Edney, William A. Arbaugh
Wardriving
Chris Hurley, Michael Puchol, Russ Rogers and Frank Thornton
AiroPeek – http://www.wildpackets.com/
Intercepting mobile communications: the insecurity of 802.11
Borisov, N, I. Goldberg, and D. Wagner
Weaknesses in the Key Scheduling Algorithm of RC4
http://www.drizzle.com/~aboba/IEEE/rc4_ksaproc.pdf
Wikipedia – http://www.wikipedia.com
Wireless Anarchy
Kaynaklara Linkler – http://wirelessanarchy.com/

- Etiketler:, , , , ,
- Bu yazı şu ana kadar 402 kez görüntülendi..
Sizin Yorumunuz



Yazilar iin RSS aboneligi