6 Kasım 2015 Cuma

Anti-Virus Atlatma - Veil-Evasion

Merhaba,
Yazı dizisi şeklinde yayınlamayı planladığım ve anti-virüs bypass işlemlerinin, farklı araçlar ile yapılmasını, bunların online virüs tarama sitelerindeki sonuçlarını görebileceğiniz bir formatta oluşturacağım yazı dizisinin ilki ile başlıyoruz.
 
Sızma testleri sırasında test edilen bazı makinelerde Endpoint security olarak anti-virüs yazılımları kurulu olabilir. Böyle durumlarda bağlantı kurulan/kurulacak makinede meterpreter yada başka bir Metasploit shell'i açmak için anti-virus bypass yazılımları kullanmak gerekebilir. Temel olarak bu tarz yazılımlar kullandıkları çeşitli encoding yöntemleriyle anti-virüslerden gizlenebilmektedirler. Yazımızda işleyeceğimiz araç Veil-evasion'dur. Veil, açık kaynak kodlu olarak geliştirilen bir framework'tür. Biz Veil framework içerisindeki anti-virüs atlatma aracı olan Veil-evasion'u kullanacağız.

Kurulum

Linux üstüne kurulumu için mevcut kodlarının olduğu Github sayfasından (https://github.com/Veil-Framework/Veil-Evasion) indirip setup klasörünün altında bulunan setup.sh scripti ile kurulumu yapabilirsiniz.
  • git clone https://github.com/Veil-Framework/Veil-Evasion.git 
  • cd Veil-Evasion/setup 
  • bash setup.sh -s

2 Ekim 2015 Cuma

Metasploit - invalid input syntax for type inet: "webmail.xxx.com.tr" Hatası ve Çözümü

Merhaba,

uzun zaman oldu görüşmeyeli, hiç özlemedim sizi.. Şaka şaka. Siz özlediniz mi ben? Hit mit yok lan az ziyaret edin sayfaları :)

Evet, uzun bir aradan sonra gireceğimiz yazıdaki konumuza gelelim. OWA yani Outlook Web Access. Bildiğiniz kurumsalların genelde Exchange server üstünde kurdukları web mail şeysi.
Yazıda basitçe çözümünü anlatacağım olay, OWA'ya düzenlenen brute force saldırılarında kullanılan Metasploit modülü olan owa_login (auxiliary/scanner/http/owa_login) ile ilgilidir.

Bir pentest sırasında, kurumun webmail adresine yönelik gerçekleştirdiğim brute force saldırısı için Metasploit'in bahsettiğim modülünü kullandım. Fakat ilk başarılı işlemden sonra hata vererek işlemleri sonlandırıyordu. İş brute force olmaktan çıkmıştı, tek atışlık brute force mu olur? Ölümüne gitmen lazım senin. Neyse ilk yaptığım deneme sırasında aldığım çıktı şöyle bir şey oldu.

27 Mart 2015 Cuma

Linux Server'a OpenVPN Kurulumu ve Windows İstemciden Bağlanma

VPN bazen lazım olur, devletlümüzün engellediği yerlere girmek için veya görülmesini istemediğiniz trafiğiniz olduğu zaman VPN'ler işe yarar. Etrafta free VPN'ler çokca var ama bunların server'ında duran logların baskalarına verilmediğini trafiğinizin ne kadar güvende olduğunu bilemezsiniz.

Bu yüzden bu yazıda kendi server'ımıza, ben DigitalOcean'dan kiraladığım VPS'ime Debian 7.0 x64 server kurdum, OpenVPN kurulumunu kısaca yazacağım. -Ubuntu ve CentOS'ta da çalışır.-
Etrafta OpenVPN kurulumu ile ilgili yazılar aradığınızda (How to install openvpn on blabla) çokca uzun içinde kurarken canımızdan bezmemize neden olabilecek bir ton olay göreceksiniz.

Bunun böyle olduğunun farkına varanlar sağolsunlar işi bir bash script yazarak halletmişler. Ki bunu Github'ta forklayanda 100'ün üstünde kişi var, yani OpenVPN'den biz çektik siz çekmeyin diyip geliştirmeye yardım etmişler.

KURULUM

Önce sistemimize bir update & upgrade çekelim.
 apt-get update && apt-get upgrade  

Easy-cred.sh "Some prereqs missing, functionality may be impaired. Review README file" Hatası ve Çözümü

İsmi Easy Credential'dan gelen, bash ile yazılmış bu scriptimiz Poisoning ve Fake AP saldırıları için kullanılabilecek güzide bir araçtır.

Giriş ekranı şöyle bir şey.
Poisoning Attacks menüsünde görebileceğiniz üzere Standard ARP Poison, Oneway ARP Poison, DHCP Poison, DNS Poison, ICMP Poison gibi saldırı türleri var.

18 Mart 2015 Çarşamba

PyQt ile Responsive Arayüz Yapma

    Responsive'dan kastım componentleri güncellenmesi, anlık olarak, ekranda diğer componentleri aksatmadan işlemler yapabilmenizdir.
Javada bu tarz işlemleri yaparkene mecburen thread kullanıyorduk. Bir süredir Python'la ugrasıyordum. Geçenlerde arkadaşın Github reposundan forkladığım, komut satırında çalışan dosya indirmeye yarayan Python ile yazılmış uygulamaya bi ayar çekeyim dedim. Forklayıp ayrı bir python dosyası şeklinde arayüzlü versiyonu ekledim.

Kullandığım componentlerden biride Progressbar idi. Malum dosyanın yüzde kaçının indiğini kullanıcıya göstermek lazım. Az araştırdım genelde progressbar ile ilgili iş yapanlar ya thread yada timer kullanıyordu.

Sonrasında şu büyülü satırı buldum. Ne thread ne başka birşeye gerek kalmadan tek satırla işimizi şu şekilde halledebiliriz.

14 Mart 2015 Cumartesi

Stack Based Buffer Overflow ve Exploit Kodlama - 1

2014'ün son ayında başlayıp uyuşukluğumdan dolayı yarıda kestiğim yazıyı yeniden yazma girişiminde bulundum. Arada bir kaç kez daha bırakmış olsamda sonunda bitiriyorum.

Uzunca bir yazı olacak, bu yüzden Stack ve Buffer gibi kavramları anlatmakla fazla vakit kaybetmeye gerek yok (ilerleyen kısımlarda bir görselle bir kaç şey anlatmam dışında). Bu adresten ayrıntılı bilgileri okuyabilirsiniz. Şimdi bir uygulamayı patlatmak ve overflow ettiğimiz uygulama için Exploit yazmak için yapılan temel adımları şöyle sıralayabiliriz.
ÖNEMLİ:  Bu yazıda anlatacaklarım herhangi bir koruma mekanızmasına (SEH, ASLR vs.) karşı bypass içermemektedir. O tarz overflow ve exploit kodlamaları ileriki yazılarda olur umarım -üşenmez yazarsam-
  • Uygulamanın girdi alan noktalarında bir overflow tespit etmek
  • Overflow olan sınırı tespit etmek
  • Uygulama içinde bizi Stack'e yönlendirecek adresi bulmak
  • Bad charları tespit etmek
  • Uygun shellcode yazmak
  • Ve bomm
Bu yazı muhtemelen seri şeklinde olacaktır. İlk olarak local bir buffer overflow uygulaması ile temelleri yazmaya çalışacam, sonrakilerinde remote overflow içinde anlatımlar olacaktır. Umarım...

Temel olarak buffer overflow için şunu söyleyebiliriz: Uygulamanın çalışma sırasında kullanıcıdan aldığı bir girdiye ayrılan sınırın üstünde data girişi yapmaktır. Birçok overflow yazısında int buff[125] gibi bir girdi alanı açılıp strcpy, memcpy vs ile C dilinin kontrolsüz fonksiyonlarını kullanarak uygulamaya 125'ten fazla bir input yollayarak programı patlatmayı anlatır. Anlatılanda doğrudur, mantık aynen bu şekilde işler, haddinden fazla inputu göndermek ve eğer kontrol yoksa uygulamayı patlatmak.
Uygulamaya fazla input yolladığımızda stack'in yapısından dolayı stack'e atılan parametreler ve geri dönüş değerler ezilir/kaybolur bundan dolayı uygulama crash olur ve sonlanır. İyi bir exploit, geri dönüş değerini istediğimiz bir alana referans ettirmek ve o alana shellcode'umuzu doldurmak ile olur. Sonrası işlemcide, sağolsun kendisi bizim için işlemleri yapacaktır.

Patlatacağımız uygulamaya ait Perl diliyle yazılmış exploit koduna Exploit-db den bakabilirsiniz. Biz Python ile exploiti geliştireceğiz. Verdiğim linkte uygulama için download linkide bulunmakta.

Let's Begin

Öncelikle uygulamanın kabul ettiği formatlardan biri olan m3u için dosya oluşturup içini junk datayla dolduran bir kod yazalım. Başlangıç olarak 10.000 byte verelim.

4 Mart 2015 Çarşamba

VMware Workstation - The virtual machine appears to be in use Hatası ve Çözümü

Canım sıkıldı bi VMware'den XP'ye gireyim az BOF yapayım dedim. Bi de ne göreyim VMware Workstation diyor ki "The virtual machine appears to be in use.". Aman tanrım didim.


Neyse ki korkulacak bişey yokmuş. Çözümü kurmuş olduğunuz sanal makineyi hiçbir şekilde etkilemiyor rahat olsun içiniz.

8 Ocak 2015 Perşembe

CryptoDouble - Yatır Coini Katla İkiye

    Bir kaç zaman önce cloud mining ile ilgili iş yapan CoIntellect ile ilgili yazmış olduğum yazıda iyi kötü yaşanılan olaydan ve yatırdığım paradan bahsetmiştim. Şimdi iki tane 100€'luk paketim var, yatırım yaptığım parayı çıkardım gerisi kâr sülalem raat. Neyse ordan aldığım ilk ödemeyi Dogecoin olarak alıp Bitcoin'e çevirdikten sonra bi şu işe gireyim diyerekten BTC işine girdim. BTCTurk isimli türk sitesinde biriktirmeye başladım Bitcoinciklerimi. Az buçuk bişeyler biriktikten sonra coinin fiyatı acayip düştü. Ne oldu kâr edecez diye kalkıştığımız iş bi tarafımızda patladı. 860 liralardan 610-650 lira bandına kadar bir düşüş yaşandı.

Paracıklarım gitmişti. Zarardaydım ne yapacaktım peki? Yükselmesini bekleyip 750 lira bandındayken paraları cekip zararı minimuma indirecektim. Ama ben ne yaptım? Milletin yeni yeni ve hararetli bir şekilde konuşmaya başladığı The Place for Your Profit mottosuyla ortaya çıkan CryptoDouble  adresine yatırdım. Peki nedir bu CryptoDouble?

20 Aralık 2014 Cumartesi

OpenCV' yi MinGW ile Derleyip CodeBlocks Yardımıyla Resim İşleme - C Programlama -

     OpenCV'yi görüntü işleme ile uğraşanlar mutlaka duymuştur. Duymak güzel şey de işi uygulamaya sokunca çıkan sıkıntılar adama kimi zaman geri adım attırabiliyor. "Yeter ulan senle mi uğraşcam" diyip ödevleri salmayın gençler. Sonu iyi olmuyor. Tecrübeyle sebittir.

Neyse konumuza gelelim efenim. Şimdi bu OpenCV denen illeti indirdiğimizde herhangi bir kurulum yapmıyor. Sıkıştırmış olduğu dosyaları extract ediyor. Bundan sonrası sizde. İlk olarak indirmiş olduğumuz kaynak kodlardan kurulumu yapacağız. Bu işlemler linuxculara tanıdık gelir. Tabi eğer kaynak koddan kurulum yaptıysanız, apt-get yada dpkg -i ile işler bitmiyor. Ayık olun.

Temel adımlar

  • Configure
  • Make
  • Make install
Heeaa. Tanıdık geldi dimi linuxcular sizi. Amma velakin bu işlemleri Windows altında yapacağımız için bize bu işi yapacak program lazım. İmdadımıza hemen CMake yetişiyor. Buradan Windows için Binary distributions kısmı altında bulunan exe dosyasını indiriyoruz. Ardından next-next ile kurulumu yapıyoruz. CMake (cmake-gui) olarak masaüstüne kısayol atıyor. Bunu çalıştırdıktan sonra karşımıza şöyle bir arayüz çıkacak.

26 Kasım 2014 Çarşamba

VirtualBox Disklerini VMware Disklerine Dönüştürme - Vdi-Vmdk Dönüşümü

    VirtualBox'a ağızlar dolusu sövdükten sonra VMware geçtim. Sövmemin temel nedenlerinden biri Tübitak'ın yapmış olduğu SiberMeydan siber güvenlik yarışmasında OS imajlarından dolayı beni çileden çıkarması. Genymotion ise olayın başka bir boyutu. Bak yine geldi aklıma tipini s..(sevdiğim)

VirtualBox ile oluşturulan sanal makineler VDI (Virtual Disk Image) formatında saklanır. Bu VirtualBox'ın kendi formatıdır. VMware ise VMDK (VMware Virtual Machine Disk Format) formatında sanal makinelerini saklamaktadır. VirtualBox'tan VMware'e geçtikten sonra doğal olarak eski sanal makineleri yeniden kurup konfigüre etmek, gerekli programları toplamak vs.vs gibi olaylarla uğraşmak gün/günleri alabilecek bir olay. Bu yüzden dönüşümü yapabilir miyim diye bir baktım gugıl amcaya.

Bir kaç yolu olmasına rağmen en basit ve ek bir program kurmaya ihtiyaç duymadan yapabileceğimiz yol VirtualBox'ın kendi VBoxManage tool'unu kullanmaktır. Komut satırından kolayca halledebileceğimiz iş ise şu şekilde olacak;

Metasploit - PostgreSQL Bağlantısı Kurma

    Yeni kurmuş olduğunuzu varsaydığım Kali Linux üzerinden tüm olayları anlatmaya çalışacağım. Yapılacaklar Kali bağımlı değildir, diğer sistemlerde de çalışır muhtemelen yani inş cnm ya.
Metasploit heyking işine girenlerin, bu tür işlerle uğraşanların başucu aracıdır. Hatta bir araçtan ötedir, candır. Framework olarak geçiyor literatürde. Neyse metasploiti çalıştırdığınızda daha hızlı aksiyon alabilmeniz için/aramalar yapabilmek için database bağlantısı şarttır. Metasploit PostgreSQL ve MySQL ile entegre edilebilir fakat defaultu Postgre'dir. Bu yazıda da Posgtre ile olan bağlantısı anlatılacaktır.

24 Kasım 2014 Pazartesi

OpenSSL Kullanarak Asimetrik Şifreleme Yöntemi ile Dosya Şifreleme ve Açma

     Asimetrik şifrelemedeki genel mantık elde iki key'in olmasıdır. Bunlardan biri kişiye özel olan private key bir diğeri ise herkeste olan public key. OpenSSL'in bu şekil yapılan dosya şifrelemesindeki olay ise temelde 2 adımdan oluşuyor.
1- Private key üret
2- Private key'den Public key üret.
Bu iki adımdan sonra şifrelenmesini istediğimiz dosyayı public key ile şifreliyoruz. Ancak buradaki önemli olan nokta encrypt edilmiş dosyayı decrypt etmek için elimizde private key'in olmasıdır. Yoksa babayı alırsınız.

    Elimizde gizli.txt isimli bir dosyanın olduğunu farz edelim. İçeriği ise;