4 Aralık 2012 Salı

Ubuntu 12.04'e Oracle SQL Developer Kurulumu

- Oracle veritabanımı kurduktan sonra şimdi sıra Sql Developer'a geldi.Öncelikle Oracle Sql Developer buradan http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html indirebilirsiniz. linux için olan rpm paketini seçmeyi unutmayalım.

 - Paketi indirdikten sonra konsolu açıyoruz ve paketi indirdiğimiz dizine giriyoruz. rpm paketini debian paketine çevirmek için aşağıdaki kodu konsola yazıyoruz ve enter'a basın.
   
     sudo alien --to-deb --scripts sqldeveloper-3.1.07.42-1.noarch.rpm
    
 - Konsolda aşağıdaki ifadeyi gördüğümüzde işlem başarı bir şekilde tamamlandı demektir.
     
     sqldeveloper_3.1.07.42-2_all.deb generated

 - Oluşturduğumuz deb uzantılı paketi çalıştırmak için paketi oluşturduğumuz dizine gidiyoruz ve deb paketine sağ tıklayıp 'Ubuntu Yazılım Merkezi İle Aç' ı seçiyoruz. Yazılım merkezinde paket açıldıktan sonra kur (install) seçeneğini seçiyoruz. Süreç tamamlandığında kurulum bitmiş demektir.

3 Aralık 2012 Pazartesi

Ubuntu 12.04'e Oracle Express Edition Kurulumu

 - İşim gereği ilk kez oracle kullanmam gerekiyor ve ben daha önce oracle kurulumu gerçekleştirmemiştim bu yüzden hazır bu işi öğrenmişken bir yere de not etmeden geçmeyeyim dedim.Aşağıda anlatacağım kurulum adımları  ubuntu 12.04 64 bit işletim sistemi içindir.  Öncelikle oracle-xe'nı bu adresten indirebilirsiniz: http://www.oracle.com/technetwork/products/express-edition/downloads/index.html .Buradan linux sistemler için olanını seçtiğinizden emin olun ve  sizden üyelik isteyecektir, üyelik ücretsiz olduğundan bir sorun olmayacaktır. Şimdi kuruluma geçebiliriz.

- Kurulumdan önce sistemimizi güvenli hale getirelim. Eğer ssh kullanarak uzak terminal oturumu açmak isterseniz, ubuntuya varsayılan olarak giriş yapıldığında güvenli bir çekirdek girişi ile gelmiyor. Bunu yüklemek isterseniz aşağıda ki komutu konsola yazın ve enter'a basın.   

    sudo apt-get install openssh-server
 
- Oracle-xe'ın sorunsuz bir şekilde kurulup çalışması için öncelikle bağımlılıklarının yüklenmesi gerekiyor.Bu yazılımları yüklemek için konsola şu kodu yazın ve enter'a basın.

    sudo apt-get install alien libaio1 unixodbc
 
- /sbin/chkconfig bağlı Red Hat tabanlı Oracle-xe kurulumunu ubuntu desteklemediğinden  özel bir chkconfig scripti oluşturucaz. Bunun için konsola aşağıdaki kodu yazın ve enter'a basın.

    sudo gedit /sbin/chkconfig
 
 - Açılan script içerisine aşağıdaki kodları yazın ve kaydedip kapatın.
 
    #!/bin/bash
    # Oracle 11gR2 XE installer chkconfig hack for Debian by Dude
    file=/etc/init.d/oracle-xe
    if [[ ! `tail -n1 $file | grep INIT` ]]; then
    echo >> $file
    echo '### BEGIN INIT INFO' >> $file
    echo '# Provides: OracleXE' >> $file
    echo '# Required-Start: $remote_fs $syslog' >> $file
    echo '# Required-Stop: $remote_fs $syslog' >> $file
    echo '# Default-Start: 2 3 4 5' >> $file
    echo '# Default-Stop: 0 1 6' >> $file
    echo '# Short-Description: Oracle 11g Express Edition' >> $file
    echo '### END INIT INFO' >> $file
    fi
    update-rc.d oracle-xe defaults 80 01 

 - Aşağıda ki kodu konsola yazın ve scripti çalışabilir hale getirelim. 

     chmod 755 /sbin/chkconfig
   
 - Şimdiyse yine oracle-xe'nin sorunsuz çalışması için kernel parametrelerini değiştirmeliyiz. Bu yüzden aşağıdaki kodu konsola yazın ve enter'a basın.

          sudo su -
          sudo gedit /etc/sysctl.d/60-oracle.conf

 - Aşağıdaki kodu açılan dosyanın sonuna kopyalayın ve kaydedip çıkın.
          
           # Oracle 11g XE kernel parameters
           fs.file-max=6815744
           net.ipv4.ip_local_port_range=9000 65000
           kernel.sem=250 32000 100 128
           kernel.shmmax=536870912

 - Yukarıda girdiğimiz kernel parametrelerinin geçerliliğini kontrol etmek için konsola aşağıdaki kodu yazın ve enter'a basın.
 
     sudo cat /etc/sysctl.d/60-oracle.conf 

 - Kernel parametrelerini yüklemek için aşağıdaki kodu konsola yazın ve enter'a basın.
   
     service procps start
 
 - Parametrelerin doğru girildiğini test etmek için aşağıdaki kodu konsola yazın ve enter'a basın.  (Beklenen değer fs.file-max = 6815744)
 
     sudo sysctl -q fs.file-max 
 
 - Sisteminiz mevcut RAM’nizin  %50 kadar bir swape space bulunması gereklidir. Bu alanın mevcut olup olmadığını öğrenmek  için aşağıdaki kodu konsola girin ve enter'a basın.

     free -m


- Oracle-xe, sistemimizde bulunması gereken bazı dosyalara ihtiyaç duyar. Bu dosyaların sistemimizde bulunduğunu göstermek için aşağıdaki kodları konsola sırası ile yazın ve enter'a basın.

         sudo rm -rf /dev/shm
         sudo mkdir /dev/shm         
         sudo mount -t tmpfs shmfs -o size=2048m /dev/shm  
         /u01/app/oracle/product/11.2.0/xe/config/scripts/oracle-xe start                          

 - Yukarıda ki 4 komutun bilgisayar her açıldığında yeniden yapılmaması için  /etc/rc.local altına kayıt edilmesi gerekiyor. Bunun için aşağıdaki kodu konsola yazın ve açılan dosyaya yukarıdaki 4 kodu yazın kaydedin ve kapatın. Bunları 'exit 0' dan önceki satırlara konumlandırın.

          sudo gedit /etc/rc.local
 
- Şimdi kuruluma geçelim. Öncelikle indirdiğimiz zip içerisinde ki dosyayı çıkartalım. Aşağıdaki kodu konsola yazın ve enter'a basın. Bu işlemi uygulamayı indirdiğimiz yani Download dizininde yapıyoruz.

          unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip 


 - Paket açıldığında içinden Disk1 dizini çıkacak. Disk1 dizinine gelin ve içindeki rpm paketini debian paketine çevirmek için aşağıdaki kodu konsola yazın ve enter'a basın. Bu işlem biraz zaman alabilir.

         sudo alien --to-deb --scripts oracle-xe-11.2.0-1.0.x86_64.rpm
 
 - Oracla database kurulumunu başlatmak için aşağıdaki kodu konsola yazın ve enter'a basın.

         sudo dpkg --install ./oracle-xe_11.2.0-2_amd64.deb 

- Kurulumun ardından ilk ayarları yapmak için konsola aşağıdaki kodu  yazıyoruz.

         sudo /etc/init.d/oracle-xe configure
 
 - Bunu yazdıktan sonra sizden port numaraları isteyecektir varsayılan olarak zaten atandığından bunlara bir değer girmeden enter'a basarakta geçebiliriz. Son adımda ise sizden database için parola isteyecektir parola değerini girdikten sonra kurulum yapılmaya başlanır. Kurulum başarılı bir şekilde sonuçlandı ise şunları göreceksiniz.

        Starting Oracle Net Listener... 
        Done Configuring database...       
        Done Starting Oracle Database 11g Express Edition instance...       
        Done Installation completed successfully.

- Kurulum sonrası birkaç ayar yapmamız gerekiyor. Öncelikle çevresel değişkenleri ayarlamalıyız. Bunun için aşağıdaki kodu konsola yazın ve enter'a basın.

         sudo gedit .bashrc

 - Açılan .bashrc içerisinde aşağıdaki kodları kopyalayın  ve kaydedip çıkın.

     export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
     export ORACLE_SID=XE
     export NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh`
     export ORACLE_BASE=/u01/app/oracle     
     export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH     
     export PATH=$ORACLE_HOME/bin:$PATH     
     mkdir /var/lock/subsys 2>/dev/nulltouch /var/lock/subsys/listener

Ardından girdiğimiz değişikliklerin etkinleştirilmesi için .profile çalıştırıyoruz. Aşağıdaki kodu yazın ve enter'a basın.
  
    . ./.profile
  
- Şimdi oracle-xe'nı çalıştıralım .Aşağıdaki kodu yazın ve enter'a basın.

    sudo service oracle-xe start

- Oluşturduğumuz oracle hesabı sqlplus ve diğer bazı araçları kullanmak için bazı özel ortam değişkenlerine ihtiyaç duyar. Yapacağımız değişiklikler oracle 
hesabıza her bağlandığımızda otomatik olarak yapılır. Bunun için öncel root 
kullanıcı olup değişiklikleri yapmak için aşağıdaki kodları konsola yazın ve enter'a basın.

    sudo su -
 
    cp /etc/skel/.bash_logout ./ 
    cp /etc/skel/.bashrc ./
    cp /etc/skel/.profile ./ 
    echo "" >>./.profile
    echo '. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh' >>./.profile

 - Varsayılan olarak oracle-xe grafik kullanıcı arayüzü yalnızca yerel sunucularda mevcuttur, aşağıdaki kod uzaktan erişimi sağlar kodu konsola yazın ve enter'a basın.
 
    sqlplus / as sysdba
    SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
    exit
 
 - Kurulum işlemimiz tamamlandı. Fakat bilgisayarı kapatıp açtığımızda oracle-xe'ni çalıştırmada sorun yaşıyorsanız  yani browserda şu hatayı görüyorsanız   http://localhost:8080/apex/ konsola aşağıdaki kodu yazın ve enter'a basın. Ayrıca yukarda anlattığım etc/rc.local altına kaydedilmesi gereken komutları kaydettiğinizden emin olun. 

    sudo /etc/init.d/oracle-xe force-reload

İyi çalışmalar... 

25 Ağustos 2012 Cumartesi

Kolay Konsol Kullanımı

Bu yazıda konsol kullanımına dair çok faydalı olacağını düşündüğüm bazı kısa yollardan ve konutlardan bahsedeceğim. Linux bir sistem kullanıyorsanız ve işlemlerinizi konsol üzerinden yapıyorsanız bu komutlar tam size göre.Konsol kullanmaya uzun zaman önce başlamama rağmen benimde bu kısayolların bir çoğundan haberim yoktu doğrusu. Bu yüzden bende hem kendim unutmamam için hemde benim gibi henüz bu konutlardan haberi olmayanlar için not tutayım dedim. Aşağıda bahsettiğim komutları okurken bir yandan da konsolda denerseniz sizin için daha faydalı olacağı kanaatindeyim.

-pwd: An itibariyle bulunduğun konumu gösterir.
-exec: External program çalıştırır. //exec program_adi
-time: Çalıştırılan alt komutların süresini gösterir.// Örneğin time pwd komutu pwd komutunun sistemde çalıştırılmasının ne kadar sürdüğünü gösterir.
-exit: Bu komut herhangi bir kabuğu sonlandırmak için kullanılır.
-logout: Bu komut ise sadece login kabuklarını sonlandırır.
-history: Daha önce kullandığınız komutları gösterir. // Komutları aklında tutamayanlar için çok faydalı.
-history -c: Bu komut tutulan history'yi siler.
-Ctrl+p: History komutu gibi daha önce kullanılmış komutları getirir fakat history de olduğu gibi hepsini bir arada olarak değil de her tıkladığınızda bir önceki komutu gösterecek şekilde çalışır.
-Ctrl+n: Bu komut ise ctrl+p 'nin yaptığı işin tersini yapar yani ctrl+p ye her  bastığınızda bir önce ki kullandığınız komuta gidersiniz ctrl+n ile tekrar sona doğru ilerlersiniz.
-Ctrl+r: History içinde aradığınız komutu bulmanıza yardımcı olur.
-Ctrl+a: Yazdığınız komutun başına konumlanmanızı sağlar.
-Ctrl+e: Yazdığınız komutun sonuna konumlanmanızı sağlar.// Eğer komutu yanlış yazdıysanız ve komut çok uzunsa yön tuşlarıyla bi oraya bi buyara gitmeye son:)
-Ctrl+b: Yön tuşları gibi imlecin bulunduğu komutta sola doğru(başa) kaymasını sağlar.
-Ctrl+f: İmlecin bulunduğu komutta sağa doğru(sona) kaymasını sağlar.
-Ctrl+d: Komutun başında ve sonunda iken basıldığında imlecin üzerinde bulunduğu karakteri siler.
-Ctrl+k: Komutun başında iken basılırsa komutun tamamını sonunda iken basılırsa sadece imlecin üzerinde bulunduğu karakteri siler.
-Ctrl+x: Basıldığında komutun başından imlecin bulunduğu yere kadar ki olan kısmı siler.
-Ctrl+t: İmlecin bulunduğu yerdeki karakter ile bir önceki karakterin yerini değiştirir.
-Ctrl+c: İmlecin bulunduğu karakteri büyük harf yapar.
-Esc sonra u: İmlecin bulunduğu yerden komut sonuna kadar ki tüm karakterleri büyük harf yapar.
-Esc sonra l: İmlecin bulunduğu yerden komut sonuna kadar ki tüm karakterleri küçük harf yapar.
-man: Bu komut  bir komutun nasıl kullanıldığını anlatmak için oluşturulmuş bir text dökümanı açar.
// man komut şeklinde kullanılır ve verdiğiniz komut hakkında sizi bilgilendirir. "/" man textinde kelime vs aramayı sağlar. Space tuşu ile text dosyasında ilerleyebilirsiniz. "Q" tıklandığında ise man textinden çıkmış olursunuz.

Umarım yazdıklarım faydalı olur. İyi çalışmalar...


21 Nisan 2012 Cumartesi

Ettercap ile Man In The Middle Attack

   Önceki yazımda Arp Poisoning atağının nasıl yapılacağından biraz bahsetmiştim şimdi bu atağın bir versiyonu olan Man in the middle(mitm) atakdan bahsedeceğim.
   Bu atakta Arp aldatmacasında olduğu gibi öncelikle hedef bilgisayarın arp önbelleğini zehirler. Saldırgan hedef bilgisayarın göndereceği tüm paketleri, kendi bilgisayarı üzerinden geçmesini sağlar ve bu paketlerin içeriğini istediği gibi değiştirir. Bu paket içeriğini değiştirmenin bir yolu Filtre yazmaktır. 
Bir filtre yazarak paket içeriğinde geçen istediğiniz her şeyi değiştirebilmeniz mümkün. Örneğin hedef bilgisayar google da bir kelime arıyorsa siz bu kelimeyi değiştirebilirsiniz ve bir web sitesine erişmek istiyorsa ve bu web sitesinde bir resim varsa bu resim yerine başka bir resim göstermeniz mümkün. Ayrıca ettercap ile eğer hedef bilgisayarın, şifreli olmayan yani http ile bağlanan bir web sitesinde oturumu varsa ve siz onu zehirlemişken bu siteye login olursa  o kişinin kullanıcı adı ve parolasını ele geçirebilirsiniz. Dahası bir filtre yazarak bu kişinin sayfaya giriş yapmasını engelleyebilirsiniz yani karşıya giden pakette ki parola veya kullanıcı adı verisini filtre yazarak kolaylıkla değiştirebilirsiniz. Şimdi filtreyi nasıl yazacagımızdan bahsedelim. 

-Öncelikle yazacağımız filtrenin nereye konumlandırılacağını söyleyeyim, filtreyi  konumlandıracağımız yere konsoldan şu şekilde erişebiliriz : cd  /usr/share/ettercap 

-ettercap dizininin altında bir filter oluşturuyoruz. -->sudo  vim deneme  , bu filtrenin içine şu satırları yazıyoruz:

 if (tcp.src == 21 && search(DATA.data, "parola=")) {
   replace("parola=","parola=deneme");
}

Bunun kod 21. porttan gelen paketlerin Data kısımlarında parola= geçip geçmediğini kontrol eder ve eğer geçiyorsa bu parola değerini deneme ile değiştir demektir. Böylece karşı taraf siteye giriş yapamaz.

-Şimdi bu filtrenin çalışması için derlememiz gerekiyor, onuda şu şekilde yapıyoruz :
   etterfilter deneme -o deneme_comp 
Konsola bunu yazdığımızda yazdığımız kod derlenmiş olur ve derlenmiş halide denem_comp adını alır. Bu isim keyfi olarak verilebilir.Kodu derlememiz gerekiyor çünkü ettercap sadece derlenmiş dosyaları filtre olarak  yükleyebilir. 

-Şimdi atağı yapmak için daha önceki yazımda anlattığım adımların yapılmış olması gerekiyor. Bu adımları yaptıktan sonra bu filtreyi şu şekilde ettercap'e yüklerken Filters-->Load a filter yolunu izliyoruz yada kısaca Ctrl+F de işimizi görür. 

-Bunu yaptıktan sonra açılan pencereden filtremizi seçip tamam diyoruz:



Filtreyi yüklendikten sonra tek yapmamız karşı tarafın web sayfasına giriş yapmasını beklemek. Karşı taraf giriş yapmaya çalıştığı her seferinde filtre sunucuya yanlış parola gönderdiği için hedef asla giriş yapamaz.

-Filtreyi durdurmak içinde aynı şekilde Filters--> Stop filtering diyoruz yada kısaca F.

İyi Çalışmalar...

25 Mart 2012 Pazar

Ettercap ile Arp Poisoning

   Bu yıl Bilgisayar Ağları dersi vesilesiyle öğrenmiş olduğum Ettercap programı LAN üzerinde çeşitli ataklar yapmanızı sağlayan özelliklede Man In The Middle atağı için çok uygun bir araçtır. Basit bir grafik arayüz desteği olan ve aynı şekilde konsoldan da işlemlerinizi gerçekleştirebileceğiniz basit bir programdır.  Ettercap Pardus ve Ubuntu depolarında kolaylıkla bulup kurabilirsiniz. Ben Pardus kullandığım için onun üzerinden anlatacağım.
   Ben şimdi de  Arp Zehirlenmesi nedir biraz ondan bahsedeyim. Arp zehirlenmesi aslında Ethernet protokol mimarisinin bir açığıdır. Saldırgan hedef bilgisayarın ARP tablosunu zehirleyerek yani yanlış bilgilerle doldurarak, hedef bilgisayarın göndereceği paketlerin saldırganın istediği adreslere gitmesini sağlar. Kısaca hedef bilgisayara o kadar çok arp isteği gönderir ki karşı taraf yönlendirici olarak saldırganın bilgisayarını görür ve paketleri saldırgana göndermeye başlar. Hedef bilgisayarın arp önbelleğine bakıldığında yönlendirici olarak gözüken Ip'nin(örneğin 127.0.0.1) MAC adresi saldırganın MAC adresi olarak gözükür. Arp zehirlenmesini anlamak için Arp protokolü hakkında biraz bilgiye sahip olunması gerekir.  Şimdi atak zamanı:)

 -Ettercap'i çalıştırıyoruz (Alt+F2 ile açılan pencereye ettercap yazıp kolayca çalıştırılabilir) ve yerel ağa bağlı olan makineleri bulmaya çalışıyoruz.  

 -Şimdi karşımıza gelen pencereden Sniff 'i tıklıyoruz. Burdan Unified sniffing tıklıyoruz bu seçenek kablo üzerinden geçen tüm paketleri snifflememizi sağlıyor ve açılan pencereden bağlı olduğumuz ağı seçiyoruz.
 -Daha sonra Ettercap üzerinden Hosts --> Scan for hosts seçeneğini tıklıyoruz. Şimdi Ettercap ağda bulunan tüm kullanıcılara arp paketi bu pakete cevap veren makinelerin MAC adreslerini ve Ip adreslerini bizim için bulmuş oldu.


 -Şimdi bu kullanıcıları yine Hosts-->Host list 'i seçerek görüntülüyoruz. Şimdi istersek ağa bağlı olan tüm kullanıcılara istersek de sadece istediğimiz kullanıcılara Arp Zehirlenmesi saldırısını uygulayabiliriz.  MITM --> Arp Poisoning seçiyoruz ve karşımıza gelen pencereden Sniff remote connections --> Tamam diyoruz. Daha sonra da Start -->Start sniffing diyoruz.


 -Şimdi Ettercap bizim için ağda bulunana tüm kullanıcıları zehirlemiş oldu. Kurbana bir çok Arp istek/cevap paketi göndererek kurbanın yönlendirici olarak seni kabul etmesini sağladı. Artık saldırganın Arp tablosunda yönlendiricinin Mac adresi yerine senin Mac adresin var. Buna konsoldan arp -a komutu ile de bakılabilir. Şimdi kurbandan yönlendiriciye gidecek olan tüm paketler sana gelmiş oldu. Bu arp istek/cevap paket gönderme işlemine Ettercap sürekli devam eder çünkü eğer paket yoğun paket gönderimine devam etmezse kurban Router 'ın gönderdiği Arp cevabını alır ve paketler tekrar yönlendirici üzerinden akmaya devam eder.
-Şimdi ise View-->Connections diyerek kurbanların bağlantılarını görüntülüyoruz.


 -Bu bağlantıların üzerine çift tıkladığımızda bağlantı hakkında istediğimiz tim bilgilere erişmiş oluyoruz. Msn konuşmaları , kurbanların girdiği siteler vs.  Msn 1863. portu kullandığı için eğer bu porttan gelen bağlantı çift tıklandığında msn konuşmaları açılan pencerede görüntülenir. Atak durdurulmak istendiğinde yine MITM--> Stop mitm attack  diyerek durdurulabilir.

İyi Çalışmalar...