Ana içeriğe atla

Kayıtlar

Haziran, 2011 tarihine ait yayınlar gösteriliyor

Traceroute Çıktısında Görünmeyen PfSense

pfsense 2.0 RC3 sürümü üzerinden internete çıkıyorsanız traceroute yaptığınızda aradaki pfsense makinenizin traceroute çıktısında görünmemesi gibi garip bir durumla karşılaşabilirsiniz.

Aşağıdaki çıktıda  192.168.1.1 IP adresli pfSense görünmüyor.

harun@gondor:~$ traceroute 8.8.8.8 traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets  1  10.0.0.254 (10.0.0.254)  3.032 ms  3.832 ms  7.167 ms  2  78.173.128.1 (78.173.128.1)  11.236 ms  11.245 ms  11.242 ms ..... 10  209.85.249.162 (209.85.249.162)  86.819 ms * * 11  google-public-dns-a.google.com (8.8.8.8)  85.062 ms  86.394 ms  68.298 ms

Yukarıdaki çıktıyı ilk gördüğümde ilk önce "nasıl yani?" tepkisini vererek gerçekten pfsense üzerinden geçip geçmediğimi kontrol ettim. Daha sonra ise pfSense üzerinden geçtiğim halde neden cihazın trace çıktısında görünmediğini araştırmaya başladım...

Mesele pfSense'in LAN bacağındaki firewall kuralından kaynaklanıyormuş. Kural "Policy based routing" yaptığı için arada…

MMS Video Download

Webde dolaşırken görüp beğendiğiniz ama nasıl indirsem diye düşündüğünüz mms:// videoları için mplayer güzel bir çözüm. Tek yapmanız gereken aşağıdaki gibi bir komut vermekten ibaret.

harun@gondor:~$ mplayer -dumpstream video_adresi
Yukarıdaki  komutu verdiğinizde mplayer videoyu ekranda oynatmak yerine stream.dump adıyla bir dosyaya yazacaktır. Bir yandan indirip bir yandan izlemek isterseniz aşağıdaki gibi bir komutla ikinci bir mplayer çalıştırabilirsiniz...

harun@gondor:~$ harun@gondor:~$ mplayer stream.dump
Mplayer yazılımını dağıtımınızn paket deposundan veya http://www.mplayerhq.hu adresinden mplayer indirerek kurabilirsiniz...

Önemli Not: Bu özelliği kullanırken telif haklarını ihlal etmediğinizden emin olun :)

Captive Portal Ek Özellikler

PfSense üzerinde gelen Captive Portal özelliği hot spot çözümü olarak kullanılabilecek güzel bir özelliktir. Captive Portal, kablosuz ağınıza dahil olan kullanıcıların tüm internet erişimlerini engeller ve web sayfalarına erişmek isteyen kullanıcılara bir karşılama ekranı getirerek oturum açmalarını ister.

İnternete erişmek isteyen kullanıcı, kendisine ait kullanıcı adı ve parolası ile oturum açarak internet erişimi sağlayabilir. Bu nedenler kafeler, oteller ve benzeri yerler ile misafirlerini kendi yerel ağlarına bağlamak istemeyen şirketler için oldukça güzel bir çözümdür. Ancak hali hazırda var olan özellikleriyle Captive Portal yeterince kullanışlı değildir.

Bu nedenle  PfSense üzerinde bir şeyler yazmam ve sistemi modifiye etmem gerekmişti. Bu çalışma sırasında aşağıdaki özellikler sisteme eklemiştim...
Captive Portal da kullanıcı hesapları açabilen ancak sistemin geri kalan ayarlarına ulaşamayan bir sınırlı kullanıcı hesabı.Saat sınırlamalı kullanıcı hesabı açılabil…

FreeBSD Dansguardian Kurulumu

FreeBSD 8 üzerinde dansguardian kurulumu yapmak için ilk olarak pcre paketini kuralım.

pkg_add -rv pcre #Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.1-release/Latest/pcre.tbz
Ardından pkg-config paketini kuralım.
pkg_add -rv pkg-config #Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.1-release/Latest/pkg-config.tbz...Waiting for final status
Şimdi dansguardian indirelim...
fetch http://dansguardian.org/downloads/2/Stable/dansguardian-2.10.1.1.tar.gz
İndirdiğimiz dosyayı distfiles a kopyalalım. Dansguardian ticari olduğu için port aracı, kendisi indirmiyor. İndirme işlemini bizim yapmamızı istiyor.

cp /root/dansguardian-2.10.1.1.tar.gz /usr/ports/distfiles/
Dansguardian için port ağacına gidelim...

cd /usr/ports/www/dansguardian
Dansguardian'ı derleyip sisteme kurmak için

make & make install
Port ağacından derleyip dansguradian paketi oluşturmak için ise

make package

SQL Enjeksiyonunda Kayıt İlerletme

Bir pentest çalışması sırasında MSSQL kullanan bir web uygulamasında SQL Enjeksiyonuna sebebiyet verecek bir girdi doğrulama/filtreleme zaafiyet keşfettim. Web uygulaması muhtelif SQL sorgularını çalışıtrabiliyordu.

INFORMATION_SCHEMA.TABLES tablosundan, tablo isimlerini çekmeye çalıştığımda söyle bir sorunla karşılaştım. SQL sunucu WHERE deyimine yanıt vermiyordu.

Bu durumda SQL e biraz takla attırmam ve aşağıdakine benzer şekilde iç içe sorular kullanmam gerekti.

UNION ALL SELECT TOP 1 1,2,3,(select top 1 table_name FROM (select top 1 table_name from INFORMATION_SCHEMA.TABLES order by table_name ASC) sq order by table_name DESC),4,5,6  -- UNION ALL SELECT TOP 1 1,2,3,(select top 1 table_name FROM (select top 2 table_name from INFORMATION_SCHEMA.TABLES order by table_name ASC) sq order by table_name DESC),4,5,6  --
Bu sorgulardan en içteki select deyimi, top X ifadesi ile tablonun başından X kaydıartan artan sıralamada çekiyor. Bunın dışındaki select deyimi ise ilk sorgunun döndürdü…

Bir Saldırı Hikayesi

Web sunucularımız üzerinde muhtelif betik dilleriyle yazılmış olan web uygulamaları çalıştırıyoruz. Genellikle çalışan web uygulamalarının iyi niyetli olmasından dolayı web sunucularımız genellikle standar kurulduğu halde kalıyor. Özel bir yapılandırma veya güçlendirme yapmaksızın kullanıcıların sunucularımza dosya yüklemesine ve çalıştırmasına izin veriyoruz. Buradaki önemli soru web sunucularımızda çalışacak olan PHP, ASP, Python gibi betiklerin neler yapabileceği...

Pyrit ile WPA/WPA2 Kırmak İçin Ekran Kartınızı Kullanın

Pyrit WPA/WPA2-PSK parolalarını kırmak için geliştirilmekte olan bir yazılımdır. En önemli özelliği CPU'ya ek olarak Nvdia ve Ati ekran kartlarının grafik işlemcilerini kullanarak parola kırma işlemi yapmasıdır. Özellikle yeni nesil gelişmiş ekran kartlarıyla oldukça iyi performans verebilir.


Pyrit http://code.google.com/p/pyrit/ indirilebilir ve yine aynı adresten ulaşabileceğiniz kurulum belgesiyle kolaylıkla kurulabilir.  Ubuntu 11.04 üzerine kurulum yaparken bir sıkıntı yaşamadım . Bu nedenle kurulum işlemlerini bir kez de ben tekrarlamıyorum. Kurulum belgesini takip edebilirsiniz.

Pyrit kurulumundan sonra, pyrit list_cores komutuyla sisteminizdeki  kullanılabilir işlemcileri listeleyebilirsiniz.

harun@gondor:~$ pyrit list_cores Pyrit 0.4.0 (C) 2008-2011 Lukas Lueg http://pyrit.googlecode.com This code is distributed under the GNU General Public License v3+ The following cores seem available... #1:  'CUDA-Device #1 'GeForce 8400M G'' #2:  'CPU-Core (SSE2)&#…

WEP Neden Kolay Kırılır?

WEP şifreleme yöntemi havada uçuşan ve bizim için önemli olan verilerimizi şifrelemek için 40 bitlik gizli anahtar ve açık olmasına rağmen sürekli değişen 24 bitli IV ( Initialization Vector) değerlerini kullanır. Yani standart olarak WEP, 64 bitlik bir şifreleme sağlamaktadır. Şifreleme için ise RC4 simetrik şifreleme algoritması kullanır...

Genellikle kablosuz ağ cihazı üreticileri, 40 bitlik şifreleme anahtarı yerine 104 bitlik şifreleme anahtarı kullanmayı tercih ederler. Bu durumda WEP, 128 bitlik şifreleme yeteneğine sahip olur...

 WEP türleri ve kullanılan anahtar uzunlukları aşağıdaki tabloda verilmiştir.

TürAnahtar UzunluğuHex Uzunluğu ASCII Uzunluğu64 Bit40 Bit105128 Bit 104 Bit2613256 Bit232 Bit5829
WEP için şifreleme işlemi şu şekilde işlemektedir.
1- Gizli Anahtar + IV 2- Gizli Anahtar + IV toplamı RC4 ile şifrelenir. 3- Elde edilen RC4 çıktısı ile gönderilmek istenen veri XOR işlemine tabi tutulur.
Bu aşamadan sonra veri özgürce havada dolaşmaya başlar. Ancak bu noktada şö…

Aircrack ile WEP Crack

İlk olarak airmon-ng aracıyla wlan0 kablosuz ağ arayüzünden, dinleme ve paket sokuşturma işlemleri için kullanacağımız mon0 isimli sanal ağ arayüzünü oluşturalım.

airmon-ng start wlan0
Bu komutun ardından ekran çıktısı aşağıdaki gibi olacaktır...



Dinleme ve paket sokuşturma işlemlerini yapacağımız mon0 arayüzü oluştuğuna göre şimdi etrafımızdak kablosuz ağları tespit edelim. Bunun için airodum-ng aracını aşağıdaki gibi kullanabiliriz.

airdump-ng mon0

airodump-ng yukarıkdakine benzer şekilde çevrenizdeki kablosuz ağları listeleyecektir. Benim örneğimde yalnızca evde kullandığım kablosuz ağım yer alıyor. Dolayısıyla hedefdeki kablosuz ağ Seker isimli WEP şifreli kablosuz olacak...

Hedef ağı tespit ettikten sonra Ctrl+C tuş kombinasyonuyla airodump-ng aracını durduralım ve daha sonra yalnızca hedef ağı dinleyecek şekilde tekrar başlatalım.

airodump-ng -c 6 --bssid 00:a0:c5:98:1f:f9 -w Seker mon0
Bu komut -c parametresi ile 6. kanalı, --bssid parametresi ile MAC adresi verilen kablosuz ağ no…

Linux Root Password Sıfırlama

Linux makinenizin root parolasın unuttuğunuzda ne olur? Cevap basit büyük sıkıntı olur.

Bu gibi durumlarda makineye fiziksel erişiminiz varsa grub menüsünde küçük bir düzenleme yaparak sistemi açabilir ve root parolasını değiştirebilirsiniz.


Öncelikle sistemi yeniden başlatalım. Yukarıdaki gibi grub menüsü geldiğinde klavyeden "E" tuşuna basarak düzenleme moduna geçelim. Karşımıza aşağıdaki gibi bir menü gelecektir...
 Yukarıdaki menüde işaretlenmiş olan "ro quiet" ifadesini silerek, aşağıda görüldüğü gibi "rw init=/bin/bash" şekline getirelim.
Açılış parametresi olarak "rw init=/bin/bash" değerini eklediğimize göre CTRL+X tuş kombinasyonunu kullanalım ve sistemin açılışını izleyelim. Sistem açıldığında passwd komutu ile root parolamızı değiştirebiliriz.

passwd komutu kullanıcı hesaplarının parolalarını değiştirmek için kullanılan komuttur. "Enter new UNIX password" diyerek sizden yeni parolanızı girmenizi isteyecektir. "Retype new UN…

Crunch ile Wordlist Oluşturmak

Crunch seçilen karakter kümesinden, istenilen uzunlukta parolalar üreten ve bu parolaları bir dosyaya yazarak wordlist oluşturan kullanışlı bir araçtır. Çalışmak için özel bir yetkiye ihtiyaç duymaz. Yalnızca derlenip çalıştırılması yeterlidir. Çalıştığında istenilen karakter kümesinden parolalar üretir ve bir dosyaya yazar.
Oldukça hızlı çalışır ve kolay kullanılır.



Crunch Kurulumu
Öncelikle crunch yazılımını indirelim.
harun@gondor:~$ wget http://garr.dl.sourceforge.net/project/crunch-wordlist/crunch-wordlist/crunch-3.0.1.tgz
İndirme işlemi bittikten sonra crunch-3.0.1.tgz arşivini açalım.

harun@gondor:~$ tar zxvf crunch-3.0.1.tgz crunch3.0/ crunch3.0/Makefile crunch3.0/GPL.TXT crunch3.0/crunch.1 crunch3.0/charset.lst crunch3.0/crunch.cArşivin açılmasıyla oluşan crunch3.0/ dizinine geçelim ve ardından make komutunu vererek derleme işlemini başlatalım.
harun@gondor:~$ cd crunch3.0/ harun@gondor:~/crunch3.0$ make Building binary... /usr/bin/gcc -Wall -lm -pthread -std=c99 -m32 -D_LARGEF…

Ubuntu, Aireplay-ng, iwl4965, mon0 Channel -1 Problemi

Yanlış hatırlamıyorsam Ubuntu 10.04 sürümü sonrasında Linux çekirdeği ve kablosuz ağ sürücülerinin değişmesinden dolayı Intel 4965 AGN wireless kartımla aircrack-ng  düzgün çalışmaz hale gelmişti.  Aireplay-ng ile paket sokuşturma saldırısı yapmak istediğinizde aşağıdaki gibi bir hata alıyordunuz.

21:09:28  mon0 is on channel -1, but the AP uses channel 1
Bu hatayı çözmek için yapılması gerekenler yeni sürücüleri gerekli yamalar ile derlemek ve kurmak.
İlk olarak yeni sürücümüzü indirilerim wireless.kernel.org adresinden indirelim ardından da gerekli yamaları indirip sürücü kaynak kodlarına yama yapalım.

    root@gondor:~# wget http://wireless.kernel.org/download/compat-wireless-2.6/compat-wireless-2011-06-01.tar.bz2     root@gondor:~# wget http://patches.aircrack-ng.org/mac80211.compat08082009.wl_frag+ack_v1.patch     root@gondor:~# wget http://patches.aircrack-ng.org/channel-negative-one-maxim.patch     root@gondor:~# tar jxvf compat-wireless-2011-06-01.tar.bz2     root@gondor:~# cd c…