Monday, October 27, 2014

CEO'nun Siber Güvenlik Rehberi

“Siber güvenlik” veya daha genel olarak kabul görmüş ismiyle “bilgi güvenliği” konuları her geçen gün kurumsal yapının daha üst basamaklarında ele alınıyor. İş hayatına ilk başladığımda “bilgisayarcı çocuk” tarafından ele alınan konu artık müdür, direktör ve hatta genel müdür seviyesinde ele alınmaya başlandı. Bilgi Güvenliği konusunda çalışmayan ama bütçe veya satınalma onayı gibi nedenlerle bu konuda karar vermek zorunda kalan; CEO, CXO, Genel Müdür, Satınalma Müdürü, Finans Müdürü, Mali Müşavir, Danışman ve benzeri görevleri üstlenenlerin bu konuda daha doğru ve etkin kararlar vermelerini sağlayacak bazı basit soruları toparlamak istedim.

Yönetici (temsili)

Konunun Bilgi İşlem birimlerinin ötesine ve/veya üstüne taşınmasının başlıca nedenleri arasında aşağıdakileri sayabiliriz;
  • Kanuni zorunluluklar: 5651 sayılı kanun gibi kanunların veya  çeşitli yönetmeliklerin kurumsal bilgileri koruma zorunluluğu getirmesi.
  • Değişen iş süreçleri: Internet’e ve bilgi teknolojilerine daha bağlı hale gelen iş süreçleri bilgi güvenliği ihlallerinin iş, para veya itibar kaybına neden olması şirketlerin üst yönetimlerinin konuya daha fazla ilgi göstermesine neden olmuştur.
  • Artan bilinç düzeyi: Bilgi güvenliği konusunda yaşanan ihlallerin ve konunun bir şirket için hayati önem taşıdığının basında ve çeşitli etkinliklerde dile getirilmesi kurumsal yapının her basamağında belli bir farkındalık düzeyi oluşmasını sağlamıştır.

Bilgi güvenliğinin teknik/teknolojik bir konu olmadığını elimden geldiğince her fırsatta vurgulamaya çalışıyorum. Bilgi güvenliği konusu aslında bir risk yönetimi konusudur ve bu nedenle konuşmaların ve kararların sadece teknik bir bakış açısı ile ele alınması çok doğru olmayacaktır. Bilgi güvenliği konusunda doğru adımların atılması ve yatırımların yapılmasını sağlamak amacıyla konuya Üst Yönetim bakış açısıyla yaklaşmanın faydası olacaktır.

Bilgi güvenliği yatırımlarının etkili olması, yapılan yatırımın tam karşılığının alınabilmesi ve şirket veya kurum için hayati önem taşıyan bu konuda atılan adımların somut olarak ne anlama geldiğinin Üst Yönetim tarafından anlaşılması çok önemlidir.

Bu işlere “Bilgisayarcı Çocuk” bakmıyor mu?

Maalesef, Bilgi Güvenliği bir risk yönetimi faaliyetidir ve şirket risklerinin sahiplerinin sorumluluğuna girmiştir. Şirket risklerinin sahipleri; Genel Müdürler, CEO’lar, Finans müdürleri veya İdareciler gibi şirketin veya kurumun doğru çalışmasını, zarara uğramaması ve daha ileriye gitmesi için çalışan kişilerdir.

Teknik birimlerle Yöneticilerin Bilgi Güvenliği konusunda karar vermek için yaptıkları toplantılarda teknik olmayan idarecilerin elinin altında bulunmasında fayda gördüğüm bazı soruları aşağıda toparladım. Bir karar toplantısında veya ilk fırsatını bulduğunuzda teknik birimdeki arkadaşlarınızla bu soruların etrafında bir görüşme yapmak kurumsal Bilgi Güvenliği düzeyinizi anlamak ve iyileştirmek için faydalı olacaktır.

Siber hırsızlık ve Casusluk Zafiyet Kontrol Soruları
  • Korumamız gereken veya yarın sabah gazete manşetlerinde görmekten hoşlanmayacağımız ticari sır, bilgi, yazışma, plan, proje ve/veya patentlerimiz var mı?
  • Ticari sırlarımıza, bilgilerimize, yazışmalarımıza, planlarımıza, projelerimize ve/veya patentlerimize erişmek isteyebilecek rakipler veya başkaları var mı?
  • Ticari sır, bilgi, yazışma, plan, proje ve/veya patentlerimiz bilgisayar ortamında tutuluyor mu?
  • Bilgisayarlarınız veya bilgisayar ağınız internete bağlı mı?
  • Bilgisayarlarınızda USB girişi, ağ kablosu girişi veya CD/DVD yazıcı var mı?
  • Önemli bilgilerimizin, dosyalarımızın ve yazışmalarımızın yedeklerini düzenli olarak alıyor muyuz?


Bu soruların yanıtları kurumsal ağınızın saldırganlar açısından ne kadar “iştah açıcı” olduğunu ortaya koymaktadır. Bunlardan en az 2 tanesine “evet” yanıtı verdiyseniz Yönetim olarak Bilgi Güvenliği konularına dahil olmanız gerekmektedir.

Teknik Riskler ve Zafiyetler Kontrol Soruları

Bu soruların yanıtları kurumsal ağınızın ne kadar “hacklenebilir” olduğu konusunda bir fikri verecektir.

  • Daha önce bilgi güvenliği konusunda bir ihlal yaşandı mı?
    Önceki güvenlik ihlaline neden olan açık hala kapatılmamış olabilir. İstatistiksel olarak daha önce saldırıya uğramış bir şirketin tekrar saldırıya uğrama ihtimali çok yüksektir.
  • Bilgisayarlarınızda veya bilgisayar ağınızda zararlı yazılım tespit edildi mi? (virüs, Truva atı, ransomware, vs.)
    Zararlı yazılımlar geride arka kapılar veya kendilerini bile bırakabilirler. Bu nedenle daha önce zararlı yazılım bulaşmış bir ağın ve sistemlerin çok dikkatlice incelenmesi ve temizlenmesi gerekir. 
  • Ağınızı açık portları ve zafiyetleri tespit etmek için dışarıdan tarayanlar var mı?
    Web uzantınız .gov.tr ise günde birkaç bin kez, .com.tr ise günde birkaç yüz kez  taranıyorsunuz. Bilgi İşlem ekibinin bunun farkında olması ve ağ üzerinde gerekli tedbirleri alması önemlidir.
  • Kullandığınız yazılımların ve sistemlerin daha güncel sürümleri veya bu yazılımlar için yayınlanmış yamalar var mı?
    Güncel sürümler güvenlik açıklarını kapattığı için çok önemlidir. Kullandığınız yazılımların bir envanterini çıkartmak ve bunları üreticilerin web sayfalarındaki son sürümlerle karşılaştırmak sistemlerinizin güncel olup olmadığını anlamınızı sağlar.
  • Personeliniz iş için laptop, tablet, akıllı telefon benzeri taşınabilir cihazlar kullanıyor mu?
    Mobil cihazların güvenliğini sağlamak için alınması gereken önlemlerin alındığından emin olmak gerekiyor. Cihazlar çalınabilir, güvenli olmayan bir ağ üzerinden şirket bilgilerine ulaşabilir ki, bu durumda ,aynı ağa bağlı herhangi biri de aynı bilgileri görebilir.
  • Ağ ve bilgiye ulaşmak için sadece parola (kullanıcı adı ve şifre olarak da bilinir) kontrolü mü yapıyorsunuz?
    Sadece parolaya güvenmek parolanın ele geçirilmesi durumda tamamen korumasız kalmanıza neden olur.
  • Ağınızın ve bilgisayar sistemlerinizi düzenli olarak bilinen zafiyetlere karşı tarıyor musunuz?Bu taramaları yapmak bilinen ve saldırganlar tarafından yaygın olarak istismar edilmeye çalışılan güvenlik zafiyetlerini tespit etmenizi ve gerekli önlemleri almanızı sağlar.
  • Ağınıza veya ağınızdaki sistemlere uzaktan erişim (RDP, SSH, Web arayüzü, API, vs.) sağlıyor musunuz?
    Uzaktan erişim sağlayan cihaza (masaüstü bilgisayar, laptop, tablet veya akıllı telefon) zararlı yazılım bulaşmış olabilir veya güvensiz bir bağlantı üzerinden bağlanıyor olabilir. Bu durumların dışında da uzaktan erişim vererek kurumsal ağınızı dış dünyaya açtığınızı bilmeli ve gerekli tedbirleri almalısınız.  

 Yukarıdaki sorular içerisinde “evet” yanıtı verdikleriniz ele alınması gereken güvenlik tehditlerine işaret etmektedir.

 Bu konulardan yola çıkarak bir çerçeve oluşturmak ve kurumsal ağınızın ve bilgilerinizin güvenliğini arttırmak için önemli adımlar atmanızı sağlayacaktır. 




Sunday, September 21, 2014

Akıllı Telefon Güvenliği

Bu “işlere” ilk başladığım zamanlarda ele geçirdiğim bir bilgisayarla ilgili en büyük endişelerimden birisi kullanıcının bilgisayarı kapatıp yatmaya gitmesiydi. Akıllı telefonlar hayatımıza bu kadar girdiğinden beri ise bu endişem ortadan kalktı. Akıllı telefonların da kapsama dahil olduğu sızma testlerinde ise dertlerim daha çok hedefin telefonu şarja takmayı unutmaması veya kullanıcıyı "uygunsuz" bir durumda yakalamakla ilgili. 

Resim 1: Hacklenmiş akıllı telefon (temsili)

Aslında birer bilgisayar olan ve nedense “Akıllı Telefon” diye aşağıladığımız bu cihazlar saldırganların ufkunu genişleten, daha önce hayal bile edemediğimiz şekilde hedefe yaklaşmamızı sağlayan birer saldırı vektörüdür. Bilgisayarınızı taşımadığınız/götürmediğiniz ama telefonunuzun yanınızda olduğu durumları düşünün. Şimdi de günün her anında sizi izleyen veya dinleyen, her konuşmanıza şahit olan, her SMS ve Whatsapp mesajınızı okuyan ve çektiğiniz her fotoğrafı gören biri olduğunu düşünün. Ürkütücü değil mi? Her gün binlerce akıllı telefonun saldırganlar tarafından ele geçirildiğini gösteren araştırma sonuçlarını da göz önünde bulundurursak, bu cihazların güvenliğine ne kadar önem vermemiz gerektiğini anlarız.

Akıllı telefonlarımızın güvenliği sağlamak alabileceğimiz bazı basit tedbirleri hatırlamakta fayda var.

PIN kodu ve ekran güvenlik kodu
Telefonunuzun ana ekranındaki kullanıcı kodu ilk savunma hattınızı oluşturur. Birilerinin telefonunuzdaki verilere, arama kayıtlarınıza veya fotoğraflarınıza izinsiz erişebilmesini engellemek için mutlaka kilit kullanın. Kilidi, telefon belirli bir süre kullanılmadığında, otomatik olarak devreye girecek şekilde ayarlayın.

Telefonunuzun güvenlik ayarlarını bozmayın
Fabrika ayarlarını değiştirmek önemli güvenlik kontrollerinin devreden çıkmasına neden olur. Android cihazınızı rootlamak ve iPhone üzerinde yapılan jailbreak işlemi cihazın üreticisi tarafından yerleştirilen çok önemli güvenlik özelliklerinin devreden çıkmasına ve kullanılamamasına neden olur.

Yedekleyin
Rehber, belge ve fotoğraflar gibi cihazınızın üzerinde bulunan verileri yedekleyin. Yedekleme işlemi için bilgisayarınızı, üreticinin sağladığı yedekleme özelliğini, GSM operatörlerinin sağladığı yedekleme hizmetleri, uluslararası yedekleme hizmetleri veya basit bir hafıza kartı bile kullanılabilir. Böylece telefonunuz çalınır, kaybolur veya bir nedenle bilgilerinize erişemez olursanız kayıp yaşamazsınız.

Sadece güvendiğiniz uygulamaları yükleyin
Her hangi bir uygulamayı indirmeden önce mutlaka araştırın. Uygulamaları sadece güvendiğiniz kaynaklardan indirmek, yayıncının adına dikkat etmek ve uygulamayı arama motorlarında sorgulamakta fayda var. Örneğin bir dönem çok popüler olan “Flappy Bird” oyunu Google Playstore’dan kaldırıldıktan sonra forumlarda ve internet sitelerinde yayınlanan sürümlerinin neredeyse tamamı kullanıcı bilgilerini çalmaya yönelik zararlı yazılım barındırıyordu.

Uygulamaların izinlerine dikkat edin
İndirdiğiniz uygulamanın amacına ve istediği izinlere dikkat edin. Telefonunuzdan özel servis numaralarına (bkz. 900’lü hatlar ve uluslararası özel servis numaraları) yapılacak aramalar size para kaybettirir. Bunun dışında kötü niyetli kişiler tarafından yayınlanan uygulamaların kişisel bilgileri çalmaya yönelik özellikler barındırdığını da unutmamak gerekir.

Güvenlik uygulamalarını yükleyin
Hırsızlığa karşı tedbirinizi alın ve telefonunuzun yerini belirten ve verilerinizi uzaktan silmenize imkan veren bir güvenlik uygulamasını mutlaka yükleyin. Buna ek olarak bir antivirüs uygulamasının da mutlaka yüklü olması gerekir.

İşletim sistemini güncelleyin
Ne kadar söylesem az, akıllı telefon aslında bir bilgisayar. Tıpkı bilgisayarınızda olduğu gibi güvenliğiniz için işletim sistemini güncellemeniz ve üretici tarafından yayınlanan yamaları yüklemeniz gerekiyor.

Kablosuz ağlarda dikkatli davranın
Kablosuz ağlara herkesin bağlanabileceğini unutmayın. Özellikle kalabalık veya popüler mekanların kablosuz ağlarının saldırganlar için çok iştah açıcı hedefler olduğunu belirtmekte fayda var. Kablosuz ağlar üzerinden hassas bilgilerinize veya kişisel bilgilerinizin bulunduğu, alışveriş siteleri, sosyal medya siteleri, iş yerinde kullandığınız uygulamaları ve e-postalarınız gibi yerlere erişirken çok dikkatli olun. Mümkünse bunlara GSM şebekesi üzerinden erişim sağlayın ve halka açık kablosuz ağlardaki kullanımınızı en az seviyede tutun.

Diğer önemli noktalar
Kullanıcı adı ve şifre kullanarak girdiğiniz sitelerden mutlaka “çıkış” linkini kullanarak çıkın
SMS, Whatsapp mesajı veya eposta ile gelen internet bağlantılarına dikkat edin
Kullanmadığınız zaman Bluetooth bağlantınızı kapatın
Satmadan önce mutlaka bilgilerinizi silin (silindiğinden emin olun)
Telefonunuz çalınırsa mutlaka Polis’e haber verin

Sunday, September 14, 2014

İstismar Sonrası Linux Komutları

Geçtiğimiz sene yaklaşık 20 üniversitede “Siber Güvenlik ve Hacking” konulu çeşitli seminerler verdim. Uygulamalı olarak ele aldığım bölümde ise aşağıdaki basit networkü oluşturup port taraması ve zafiyet tespiti aşamalarından sonra hedef sistemi ele geçiriyorum.
Seminerin süresinin kısıtlı olması nedeniyle bundan sonraki aşamaları çok detaylı ele alma imkanım pek olmadı. Bu yazı, sistemi ele geçirdikten sonra saldırganın yapabileceklerini ele alırken aynı zamanda sistem yöneticilerinin de bilmesi ve kullanması gereken basit bazı Linux komutlarını ele alacak.

 Aşağıdaki gibi basit bir topoloji oluşturdum. Saldırı için kullandığım sanal makine Kali Linux, hedef olarak kullandığım sanal makine ise Metasploitable (http://sourceforge.net/projects/metasploitable/files/Metasploitable2/). Metasploitable sızma testleri konusunda pratik yapmak için geliştirilmiş ve üzerinde çeşitli zafiyetler barındıran bir Linux dağıtımıdır. Yeri gelmişken: lütfen Metasploitable yüklü hiç bir sanal makineyi internete açmamaya dikkat edin.

Resim 1: Topoloji

Hedef sistemde olduğunu bildiğim bir açığı bulmak için Nmap kullanıyorum. Hedef Metasploitable olduğu için üzerindeki zafiyetleri biliyorum, bu kısmı biraz "hikayenin bütünlüğünü sağlamak" için ekledim. 


Resim 2: Nmap ile hedef sistemde zafiyet barındıran hizmeti ve portu tespit etmek

Unreal IRC hizmetinde var olduğunu bildiğim zafiyeti istismar etmek için Metasploit'u kullanacağım. 

Resim 3: Metasploit'un esprili başlangıç bannerlarından birisi

Metasploit'ta var olan ve Unreal IRC'i hedef alan istismarı kullanıyorum ama meterpreter benzeri bir shell yüklemek yerine bana hedef sistemin komut satırını getirmesini istiyorum. 

Resim 4: Unreal IRC istismarı

Komutlar sırasıyla: 
Kullanacağım istismarı seçmek için: use exploit/unix/irc/unreal_ircd_3281_backdoor
Hedef sistemi belirlemek için: set RHOST 192.168.1.20
Saldırıyı başlatmak için: exploit

Resim 5: Hedef sistemin komut satırına erişim sağlamak

Hedef sistemde birden fazla kullanıcı ve yetkinin tanımlı olabileceğini düşünerek ilk adım hangi kullanıcı ve dolayısıyla hangi yetki ile erişim sağladığımı anlamaya çalışmak olabilir. Böylece bundan sonra atacağım adıma karar verebilirim.

Resim 6: Hedef sistemde ilk adımlar

Yukarıdaki komutlar sırasıyla;
Hedef sistem üzerinde kim olduğumu anlamak için: whoami ve/veya id
Hedef sistem üzerinde neler yapabileceğimi anlamak için: sudo -l
Hedef metasploitable olduğu için bu durum her saldırganın rüyasıdır, ROOT kullanıcısı ile bağlıyım ve hedef sistem üzerinde tam yetkiliyim. Gerçek hayatta arada bir bu durumla karşılaşsak bile çoğunlukla sıradan bir kullanıcı veya bir servisin yetkileri ile bir sisteme bağlandığımız için o anda neler yapabileceğimizi anlamamız çok önemlidir. 

Hedef sistemin nereye bağlı olduğunu ve erişebileceğimiz diğer sistemlerin ne olduğunu anlamak için ele geçirdiğimiz sistemin ağ bağlantılarını anlamak önemlidir. 

Resim 7: ifconfig komutu

 Resim 8: route komutu

Route komutu bize ele geçirdiğimiz sistemin sahip olduğu network routeları konusunda bilgi verdiği için önemli bir adımdır.

Sistem hakkında bize önemli bilgiler verebilecek diğer komutlara aşağıda değineceğim. Ele geçirilen sistemin ne olduğu, nerelere bağlı olduğu ve sizin bu sistem üzerinizdeki yetkilerinizi anlamak saldırının başarılı olup olmayacağı konusunda hayati önem taşır. Bir sızma testi sırasında en kolay ele geçirdiğimiz sistemin hiç bir yere bağlı olmayan bir sıramatik (banka veya hastane gibi yerlerde sıra numarası dağıtmak için kullanılan kiosklar) olduğunu anlamak biraz moral bozmuş olsa da kurum ağına bağlı olduğunu görmek ve üzerinde antivirüs olmadığı için iç ağa saldırmak için istediğimiz yazılımı yükleyebileceğimizi anladığımızda keyfimiz yerine gelmişti.

Resim 9: Ele geçirilen sistem üzerinde çalışan servisleri listelemek

cat /etc/services komutu ele geçirdiğimiz sistemin hangi amaçla kullanıldığına dair önemli bilgiler verir.

Resim 10: env komutu

Ortam değişkenlerini listemelek için kullandığımız env komutu. PATH değişkenine eklemeler yapmak hedef sistemin istediğimiz şekilde davranmasını sağlamak için gerekli olabilir. PWD ise "Print Working Directory", yani içerisinde bulunduğumuz dizini gösterir.
Bu bilgiye doğrudan pwd komutunu kullanarak da ulaşabiliriz.

Resim 11: pwd komutu

Sistemi Unreal IRC servisini istismar ederek ele geçirdiğimiz için /etc/unreal klasöründe olmamız doğal.

Resim 12: Uname ailesi

Ele geçirdiğimiz sistemi daha yakından tanımak için kullanabileceğimiz komutlardan birisi de uname'dir. Bu komutu farklı parametreler ile birlikte kullanarak sistemin adını ve sistem üzerinde daha kalıcı bir varlık elde etmek için kullanılabilecek başka istismarlar olup olmadığını bulabiliriz.

Resim 13: Beklenen an; parola hashleri

Sistem hakkında bilgi toplamak için kullanabileceğiniz komutlar arasında tabii ki en cazip olan "cat /etc/shadow"dur. Bu aslında bir komut değil, /etc/shadow dizininde bulunan dosyanın açılmasıdır. Bu dosyada bizim için önemli olan bilgi kullanıcı parolalarının hash değerleridir. 

İstismar sonrası kullanılabilecek komutları toparlarsak;

whoami: sistem üzerinde kim olduğumuzu anlamak için
sudo -l: sahip olduğumuz kullanıcının yapabileceklerini anlamak için
pwd: bulunduğumuz dizini görmek için
ps aux | grep root: root yetkisiyle çalışan servisleri görmek için
/sbin/ifconfig -a: mevcut ağ bağlantılarını görmek için
route: sistemin network routelarını görmek için
iptables -L: iptables kurallarını görmek için
arp -a: ARP bağlantılarını görmek için
last: Sisteme en son giriş yapan kullanıcılar
users: Sistemde bulunan kullanıcıları listeler



Sunday, September 7, 2014

Zararlı yazılım tespit etmek

Aşağıdaki Kaspersky tarafından yayınlann bir çalışmanın özet haritasıdır. Görüldüğü gibi, 2013 yılında finansal alanda faaliyet gösteren zararlı yazılımların en çok görüldüğü ülkelerin başında geliyoruz.

Resim 1: Ülkemizdeki kullanıcıların %12'den fazlası zararlı yazılım kurbanı. 

Dilimizin döndüğünce sunucular da dahil olmak üzere ağ üzerinde anti virüs yazılımı olmayan makina olmaması gerektiğini ve Android telefonlara bile anti virüs yüklenmesi gerektiğini anlatmaya çalışıyoruz. Ne yazık ki önerilerimiz ancak doktorların "düzenli aralıklarla check-up yaptırın" veya "sigarayı bırakın" demesi kadar etkili olabiliyor. Bu nedenle de destek verdiğim aşağı yukarı bütün ağlarda birkaç tane zararlı yazılım bulaşmış sistem buluyorum.

Engellemek için tedbir alamıyorsak, hiç değilse tespit edebilelim diyerek bir ağ veya sistemde zararlı yazılım olup olmadığını anlamak için kullandığım bazı basit yöntemleri toparlamak istedim.

Temel Göstergeler

  • Sistemlerde ve ağda zararlı yazılım varlığı aşağıdaki temel göstergelerden biri veya birkaçı ile belli olabilir. 
  • Bilgisayarın yavaşlaması: Zararlı yazılım sistem kaynaklarını kullanacağı için sisteminiz yavaşlayabilir.
  • Artan disk kullanımı: Bilgisayarda bir işlem yapmıyorken bile disk ışığının yanıp-sönmesi ve disk kullanımı.
  • Açılırken garip uyarıların belirmesi ve kaybolması: Özellikle dşsk kullanımı ve erişim yetkileri ile uyarıların çıkıp sonra kaybolması. 
  • Sosyal medya hesaplarınızda sizin yazmadığınız mesajların ortaya çıkması
  • Ağ üzerinde kaynağı belli olmayan trafik: Mesai saatleri dışında veya normalde kullanımın az olduğu zamanlarda yüksek trafiğin olması. Bilmediğiniz/kullanmadığınız protokoller üzerinden dışarıyla iletişim kurulması.  
  • Kullanıcıların "internet yavaşladı" şikayetleri: bir şeylerin ters gittiğini en kolay anlayabilecek kişilerdir. Onlardan gelebilecek "bilgisayarım yavaşladı" veya "internet yavaşladı" geri bildirimleri çok önemlidir. 
  • IP adreslerinizin kara listeye düşmesi.


Kullanılabilecek basit bir yöntem
Ağ genelinde birşeylerin ters gittiğini anlamak için yukarıdaki ipuçlarını değerlendirebilirsiniz. Belirli bir sistemin başında olduğunuzda ise, o sistemde zararlı yazılım olup olmadığını anlamak için, aşağıdaki yöntemi kullanabilirsiniz.

Netstat (NETwork STATistics) sistemin gelen ve giden bağlantılarını görüntülememizi sağlayan bir uygulamadır. Netstat ile birlikte kullanabileceğimiz parametreler arasında bizim için faydalı olabilecekler şunlardır:
netstat -a: Tüm bağlantıları ve dinleyen portları gösterir
netstat -b: bağlantıları ve portları onları kullanan uygulama adı ile birlikte görüntüler
netstat -n: port numaralarını gösterir
netstat -o: Bağlantıları ilgili PID (Process Identifier) ile birlikte gösterir

Bir windows sistemde netstat -a konutunu vermeniz siz o anda sistem üzerindeki açık veya dinlemede olan bağlantıların listesini verir. Bu çalışmanın bir miktar sabır gerektiğini söylemekte fayda var ama basit bir yaklaşımla yapılacaklar şunlar:

Öncelikle mevcut bağlantıları ortaya çıkartmamız gerekiyor

Resim 2: netstat -a komutu

netstat -ano ile bağlantıyı kullanan process belirlenebilir. Processler hkkında daha fazla bilgi Windows Task Manager üzerinden elde edilebilir. Bu işlemleri yapmaktaki amacımızının bilgimiz dışında dış dünya ile iletişim kuran yazılımları tespit olmak olduğunu hatırlayarak bu bakış açımızı korumamız gerekiyor.

Resim 3: netstat -ano ile PID'lerin belirlenmesi

Son olarak da bağlantıların hangi uygulamalar tarafından kullanıldığını ortaya çıkartabiliriz.

Resim 4: Bağlantıları kullanan uygulamaların netstat -anb ile belirlenmesi

Resim 4'te gördüğünüz "LISTENING" sistemin bağlantı beklediğini göstermektedir. Buna ek olarak aşağıdaki bağlantı durumları da görülebilir.

  • CLOSED: Bağlantının kapalı olduğunu gösterir
  • ESTABLISHED: Bağlantı kurulmuş
  • TIME_WAIT: Bağlantı açık ancak kullanılmıyor

Bundan sonra yapılacak şey dikkatli bir şekilde "olmaması gerekeni" bulmaktır.

Kullanımda görünen portları ve bu bağlantıları kullanan uygulamaları Google'da aratarak bilinen bir zararlı yazılım olup olmadığını bulmak çoğunlukla mümkün olmaktadır.

Sunday, August 31, 2014

Boşa giden 250 milyon dolar

250 Milyon Dolar… Fikir vermesi için bu rakam JP Morgan Chase bankasının sadece 2014 yılında bilgi güvenliğine yaptığı yatırımdır. 
Bu ölçekte güvenlik yatırımları yapan bir bankanın hacklenmesi tek başına kötü bir haber iken, FBI’ın bu olayın 5 diğer küresel bankayı da hedef alan daha geniş kapsamlı ve planlı bir saldırının parçası olup olmadığını araştırıyor.

JP Morgan’da ne oldu?
Aklımıza ilk gelen soru sadece güvenliğe 250 milyon dolar harcayan bir yerin nasıl hacklenmiş olabileceğidir. 
Herşeyden önce bilmemiz gereken şey saldırının bir anda olmadığıdır. Filmlerden alışkın olduğumuz şekilde gecenin karanlığında klavyesinde birşeyler yazan siyah giyimli ve önünde terminal ekranı olan bir kişinin saldırısı değil. Yayınlanan raporlardan gördüğüm kadarıyla saldırganlar JP Morgan Chase sistemlerinde 2 aydan fazla süre tespit edilmeden dolaşmışlar. 

Saldırının başlangıcı ve hackerların banka sistemlerine ilk sızdıkları noktanın bankanın internet sayfası olduğu düşünülüyor. Web sayfasında bulunan bir zafiyet istismar edilerek web sayfasının bulunduğu sunuculara erişim sağlayan saldırganlar veri merkezinde bulunan diğer sunuculara sızmışlardır
.
Saldırının 5 önemli adıma bakarak aşağıdaki saldırı sürecini çıkartabiliriz.





Adım 1: Saldırganlar bankaya ait internet sitesinde bir güvenlik açığı tespit ediyor

Adım 2: Bu güvenlik açığından faydalanan saldırganlar web sitesinin barındırıldığı sunucuyu ele geçiriyor

Adım 3: Bankanın sunucu havuzu içerisinde yatay hareket

Adım 4: Bankacılık işlemlerinin tutulduğu sunuculara sızıyorlar

Adım 5: Ele geçirdikleri hassas verileri aralarında Brezilya ve Rusya’nın da olduğu çeşitli ülkelerde bulunan sunuculara gönderiyorlar. 

Saldırıların her aşamasında “0-day” güvenlik açıklarından ve istismar kodlarından faydalanılmış olması saldırganların bilgi ve beceri seviyesinin oldukça yüksek olduğunun bir kanıtıdır. “0-day” (sıfırıncı gün) açıkları bulunmuş ancak henüz üretici veya kamuoyu tarafından bilinmeyen güvenlik açıklarıdır. Bu güvenlik açıkları uluslararası ticarete konu olmaktadır ve önemli açıklar milyonlarca dolara varan fiyatlarla satılmaktadır. Bu olaydaki saldırganlar ya teknik kaynakları olduğu için açıkları kendileri tespit etmiş, veya finansal güçlerini kullanarak bu açıkları piyasadan satınalmışlardır.

Saldırının başarıya ulaşmış olması ise bize saldırganların bu işe zaman ve kaynak ayırdıklarını gösteriyor. Öncelikle bankanın gelişmiş sızma tespit ve önleme sistemleri özel olarak geliştirilmiş zararlı yazılımlar ve istismar kodları kullanılarak atlatılmıştır. Bu ukodları yazmak ve bankanın kullandığı güvenlik sistemleri hakkında bilgi toplamak teknik bilgi, zaman ve birden fazla alanda beceri gerektiren bir süreçtir. İkinci aşamada ise 1 aydan fazla sürede banka sistemlerinden dışarıya gönderilen gigabaytlarca verinin aktarımının bankanın veri sızdırma (Data Loss Prevention – DLP) sistemlerini atlatacak şekilde yapılması yine saldırganların sıradan kişiler olmadığını kanıtlamaktadır. 

Yıllık bütçe raporunda “2014 yılının sonuna kadar bilgi güvenliğine 250 milyon dolar yatırım yapacağız ve bilgi güvenliği kadromuzu 1000 kişiye çıkartacağız” diyen bir bankanın bile hacklenmesi bu kadar kolayken daha küçük ölçekli finans kuruluşları ve özel şirketler kendilerini nasıl korur? Öncelikle bu saldırıdan gerekli dersleri çıkarttığımızdan emin olmalıyız.

JP Morgan Chase olayından çıkartılacak dersler

İlk ders, her zamanki gibi, güvende olmadığınız gerçeğini kabul etmektir. Yeni aldığınız firewall veya laptoplarınızdaki antivirüsler size güvenlik sağlamaz. Güvende olmak için cihazların ve yazılımların ötesine geçerek genel güvenlik seviyesi ele alınmalıdır. Mesela firewall’un sadece port engelleme yaptığını ve insanların web sayfanıza ulaşabilmeleri için 80.portu açık tutmanız gerektiğini ve büyük ihtimalle IPS/IDS’in (sızma tespit ve engelleme sistemi) iyi yazılmış bir SQL injection kodunu yakalayamayacağını kabul etmeniz gerekir. 
Ders 1: 250 milyon Amerikan Doları bile harcasanız hacklenebilirsiniz

Saldırının nispeten önemsiz gibi görünebilecek bir yerden başladığına dikkat etmek lazım. Öyle ya, banka bile olsa internet sayfalarında müşteri hesap bilgilerini tutmayacaktır. İnternete açık her sistemin, güvenlik kameraları, POS cihazları, cep telefonları, sıra matikler dahil olmak üzere, saldırıya uğrayabileceğini bilmek gerekir. İnternete açık bir şey için şu cümlerlerden birini kullanıyorsanız yakın zamanda başınıza kötü bir şey gelebilir; “kimse bununla uğraşmaz”, “IP var sadece, bunu bulamazlar” veya “şifreyi bilmeyen giremez”…
Ders 2: Bir şey internete açıksa birileri bulur ve saldırır. 

JP Morgan Chase saldırısının 5 temel adımdan oluştuğunu gördük. Daha küçük hedeflere yönelik saldırılar da aynı şekilde birden fazla adımdan oluşan bir zincir ile gerçekleştirilmektedir. Yukarıdaki senaryoda saldırganların web sayfasının bulunduğu sunucuları ele geçirdikten sonra diğer sunuculara erişemediğini varsayalım. Bu durumda Bankanın başına gelebilecek en kötü şey web sayfalarına “h4ck3d by l33tsec” türü yazı eklenmesi olacaktı. Benzer şekilde saldırganlar sistem sunucularından müşteri işlemlerinin tutulduğu sunuculara geçemeseydi müşteri verilerine ulaşamayacaklardı. Son olarak da ulaştıkları verileri dışarı gönderemeselerdi yine sorun büyük ölçüde azalacaktı. Zafiyetleri ve potansiyel saldırı vektörlerinin ortaya çıkartılmasının yanında, risk analizleri sırasında önem verdiğim noktalardan birisi de bu tür “kâbus zincirlerini” ortaya çıkartmaktır. Bulduğum her zinciri birden fazla yerinden kopartarak benzer senaryoların yaşanmasını önlemeye çalışıyorum. Böylece saldırgan sisteme sızsa bile sistemden bilgi sızdıramayacak veya sızdığı sistemden bir diğerine atlayamayacaktır. 
Ders 3: Başınıza gelebilecek en kötü şey için bir araya gelmesi gerekenleri bulun ve bir araya gelmediklerinden emin olun. 

Yapılan saldırıların ürettiği logları düşünürsek daha küçük ölçekli bir bankada veya herhangi bir Türk bankasında dikkat çekecek kadar garipler. Özellikle dışarı bilgi gönderildiği aşamada Brezilya ve Rusya’da bulunan sunuculara yapılan veri transferi basit bir scriptle bile kolayca ortaya çıkartılabilecektir. Sadece sızdırılan bilgiler değil, zararlı yazılımların komuta sunucuları ile olan iletişimi de bu şekilde yakalanabilir.
Ders 4: Ağınızdan çıkan trafiği izlemeniz çok önemli.

Diğer öneriler
Bu olaydan almamız gereken derslerin devamı olarak bazı basit önerilerim olacak;

Web sayfanızı dışarıda tutun: Hayır, DMZ’de değil, tamamen dışarıda. Bir hosting hizmeti alacak şekilde dışarıda.

Güvenlik analizleri yaptırın: Sızma testlerinin dışında da bu tür saldırı senaryolarının ortaya çıkartılacağı çalışmalar yaptırın

Sistemlerinizin kendi aralarında ne konuştuklarını takip edin: Örneğin web sunucunuz ile dosya sunucunuzun iletişim kurmasını gerektirecek bir neden olup olmadığını araştırın. 

Hata loglarını takip edin: Ne kadar iyi olursa olsun hacker hata loglarına neden olacaktır. Bunları tespit etmek, saldırıyı ve saldırganı tespit etmek için hayati önem taşır.






Tuesday, August 26, 2014

DDoS, FBI ve Bomba İhbarı

Siber saldırılar konusunda arada bir de olsa beni heycanlandıran bir olayla karşılaşıyorum.
Mesleki deformasyon olsa gerek bir saldırganın özel olarak hazırlanmış bir oltalama (phishing) maili ile yine özel olarak hazırladığı bir zararlı yazılımı birine gönderip sistemi veya networkü ele geçirmesi beni eskisi kadar heycanlandırmıyor.

Resim 1: Haddinden fazla güvenlik ihlali gören ben (temsili)

Ancak geçtiğimiz günlerde SONY'nin başına gelenler normalde gördüğümüz saldırılardan biraz farklıydı.

Sony'de ne oldu?
24 Ağustos'ta yapılan DDoS saldırısı Kuzey Amerika'daki Play Station Ağını (Play Station Network) hedef aldı ve Play Station 3 ve Play Station 4 kullanıcılarının bu ağa erişimini engelledi.

DDoS Nedir?
Fazlasıyla gündemde olan DDoS saldırıları yapılması en basit ama savunması en zor saldırılardır. DDoS (Distributed Denial of Service) Türkçe'ye Dağıtık Hizmet Dışı Bırakma Saldırısı olarak geçmiştir. Bu saldırıların amacı hedef sistemin kaynaklarını tüketerek kullanıcıların sisteme erişimini engellemektir. Saldırıların hedef aldığı kaynaklar internet bağlantısı (bant genişliği), sistem işlemci kapasitesi ve sistemin hizmet verebileceği oturum sayısı olabilmektedir.
Saldırganlar ile kullanıcıları ayırmak zor olduğu için de bu saldırılara karşı kendimizi korumak uzmanlık ister.

Sony'yi hedef alan bu saldırıda ise NTP (Network Time Protocol) kullanarak saldırının etkisi arttırılmış ve toplam saldırı bant genişliğinin 263 Gbps (saniyede 263 Gigabit) olduğu iddia edilmektedir. SNMP protokolü gibi protokollerin bu tür saldırıların etkisini arttırmak için kullanıldığına bu yazımda kısaca değinmiştim (http://www.alperbasaran.com/2014/05/yalnz-161-yaz-ile-yuzaltmsbir.html), belki de DDoS konusunda daha kapsamlı bir yazı hazırlamanın zamanı gelmiştir.

Sony'de Asıl ne Oldu?
DDoS saldırısının dışında asıl dikkat çekici olay DDoS saldırısını üstlenen çetenin SONY'nin Balkanı John Smedley'i taşıyan uçakta bomba olduğuna dair attıkları Tweet idi.

Resim 2: Lizard Squad grubu tarafından atılan Tweet

Bu Tweet üzerine havadaki uçak en yakındaki havaalanına indirildi ve uçakta bomba araması yapıldı. Uçağın indirilmesi ve bomba araması işlemleri sırasında FBI (bkz. "lanet olası Federaller") da operasyona önemli ölçüde dahil olmuş. 

EEeeee?
Eeesi şunlar;
1- Gerçek hayatta bir müdahale ile siber ortamda bir saldırı eşzamanlı olarak yapıldı. 
Bunu daha önce ülkeler arasındaki operasyonlarda görmüştük ama özel bir şirketin bu şekilde hedef alındığını ilk defa duyuyoruz. 

2- FBI bir siber suç grubunun bomba ihbarını ciddiye alarak uçak indirdi.
FBI Twitter üzerinden yapılan bir hacker grubunun tehdidini bu kadar ciddiye aldığına göre siber ortamda suç işleyen örgütlerin gerçek suç örgütleri ile aralarındaki bağlantıların gözden geçirildiği ve siber saldırıların yanında fiziksel saldırıların da beklenmesi gereken bir döneme girdiğimizin göstergesidir. 

Bu grup ve eylemlerini yakından takip etmekte fayda var, güvenlik konusunda öğrenebileceğimiz bazı şeyler var gibi. 




Tuesday, August 19, 2014

Sürekli bir yerler hackleniyor

Evet, her gün yeni bir güvenlik ihlali duyuyoruz. Önce SSL sertifikalarının güvenliğini ihlal eden "Hearbleed" çıktı, sonra alakasız bir Rus hacker çetesi ellerinde milyarlarca kullanıcı bilgisi olduğunu açıkladı. Bundan önce Evernote, ondan önce Ebay... Sürekli birşeyler oluyor ve ben her seferinde aynı tweetleri atıyorum: "bilmem neresi hacklenmiş, parolanızı değiştirin"... Dünyanın en iyi radyo programı "Özgür'le Morning Show" da duyurmama yardımcı oluyor. (Ayrıntılar için http://www.maxfm.com.tr/)

Resim 1: Ebay hacklendi

Resim 2: Evernote hacklendi. 

İnternet kimliklerinizin kötü niyetli kişilerin ellerine geçmesine neden olabilecek bu durumlarda işi gücü bırakıp parola değiştirmeye koşmamak için alınabilecek bazı basit tedbirler var. 

1. Bütün yumurtalarınızı aynı sepete koymayın
Belirli işler ve hesap türleri için kullanılmak üzere farklı eposta adresleri oluşturun. İlk aklıma gelenler; bankaya vermek üzere, alışveriş sitelerinde kullanılmak üzere, sosyal medyada kullanılmak üzere, ve Androi cihazınızda kullanılmak üzere çeşitli eposta adresleri almakta fayda var. Böylece sosyal medya için kullandığım bir eposta adresime Turkcell veya Turk Telekom faturası görünümlü bir eposta gelirse bunun sahte olduğunu kolayca anlayabiliyorum. 

2. Eposta adresiniz dışında bir kullanıcı adı belirleyin
Bu sayede saldırganların eposta adresinizi öğrenmesi yetmeyecek, bir de kullanıcı adınızı tahmin etmek zorunda kalacaklardır. 

3. Her hesap için farklı bir parola (şifre) kullanın
Hesabınız olan her hangi bir sayfa veya uygulama hacklenirse saldırganların diğer hesaplarınız tehlikeye girmeyecektir. Parolayı hatırlamak için sitenin adından faydalanabilirsiniz, diyelimki asıl sifreniz 0312@nKara bunu Facebook için 0312FB@nKara, Instagram için 0312IG@nKara, Gmail için 0312GM@nKara veya Twitter için 0312TW@nKara şeklinde kullanabilirsiniz. 

Yeri gelmişken; https://howsecureismypassword.net/ adresinden kullandığınız parolanın saldırganlar tarafından tahmin edilmesinin ne kadar süreceğini öğrenebilirsiniz (Yine de parolanızı buraya yazmamanızda fayda var). 

Yukarıdaki örneği ele alırsak 0312ankara aşağıda görüldüğü gibi 10 günde kırılabilirken, 0312@nKara parolasını tahmin etmek 58 yıl sürecektir. 58 yıl iyi bir rakam gibi görünse bile bu parolanın sonuna basit bir ünlem işareti eklemek parola tahmin etme süresini 4.000 yıla (yazı ile dört bin yıl) çıkartmaktadır.

Resim 3: Basit bir masaüstü bilgisayar ile 10 günde kırılabilen parola: 0312ankara

Resim 4: Parolayı 0312@nKara yapmak tahmin etme süresini 58 yıla çıkartıyor

Resim 5: Sonuna basit bir ünlem işareti ekleyerek parolayı 0312@nKara! yapmak tahmin etme süresini 4000 yıla uzatabilir.


4. Fazla bilgi vermeyin
Kayıt olurken sadece gerekli olan bilgileri doldurmakta fayda var. Bu sayede, güvenlik ihlali yaşanması durumunda hakkınızda mümkün olabildiğince az bilgi kamuya mal olur. 

5. Haberi duyduğunuzda parolanızı değiştirin
Üye olduğunuz siteyle ilgili bir güvenlik ihlali haberi duyduğunuzda parolanızı değiştirin. İdeal şartlarda, bu tür hacklenme haberlerini duymasanız bile, parolanızı yılda birkaç kez değiştirmenizde fayda var. 

6. Güçlü parola belirleyin
Bu konuda sayflarca yazı yazılabilir ama iyi bir parolanın temel özelliklerini ele alacak olursak şunları söyleyebiliriz;

  • Sadece harf veya sayıdan oluşmamalı
  • Eşinizin, tuttuğunuz takımın veya çocuklarınızın adını içermesin
  • Doğum tarihiniz gibi halka açık bilgiler içermesin
  • Sözlükte bulunan bir kelime olmasın. Buna yabancı kelimeler de dahil
  • Parolanızı kimseyle paylaşmayın. Evet, aklınıza şu anda kim geldiyse, o da dahil
Güvende olmanıza faydası olması dileğiyle. 



MITRE ATT&CK Gerçek Hayatta Ne İşimize Yarar?

  Rusya kaynaklı siber saldırılar webinarı sırasında üzerinde durduğum önemli bir çalışma vardı. MITRE ATT&CK matrisini ele alıp hangi...