Friday, October 31, 2014

APT ve Ölüm Zinciri

APT (Advanced Persistent Threat) saldırılarını anlamak onları engellemek için önemli bir adımdır. Bu yazıda APT 28 olarak adlandırılan örgütün saldırılarını ve APT tehdidinin özeti olan "ölüm zinciri" sürecine bakacağız.  

Resim 1: Düşmana bakan göz (temsili)

Fireeye tarafından yayınlanan Advanced Persistent Threat raporu Rus siber suçlular dünyasına bir pencere açıyor.  

Bu yazı http://www.fireeye.com/resources/pdfs/apt28.pdf  adresinden ulaşabileceğiniz raporun ana hatlarının ve önemli konu başlıklarının özetidir.

APT 28 olarak adlandırılan siber suç örgütünün hedefindeki kurumlar genel olarak Rus hükümeti çıkarları ile paralellik gösteriyor.

APT 28 Gürcistan, Doğu Avrupa ve NATO Üyesi ülkelerdeki kişileri hedef alıyor.

APT 28 tarafından kullanılan zararlı yazılımların profesyonel bir geliştirme ortamında ve 2007’den beri sürekli iyileştirilerek üretildiği anlaşılıyor. Yazılım analizinin yapılmasına karşı önlemlerin alınmış olduğu görülmektedir.
Örgüt kullandığı zararlı yazılımları hedef ağ ve sistemlere uygun olarak ayarlıyor.

2007 yılından itibaren, bu gruba ait, yakalanan zararlı yazılım örneklerinin yarısından fazlasında geliştirme ortamının dil ayarının Rusça olduğu anlaşılmaktadır.

APT 28 tarafından kullanılan zararlı yazılımların çok büyük bir bölümü, Moskova çalışma günleri ve saatlerine uygun olarak Pazartesi – Cuma günleri ve sabah 8:00 akşam 18:00 saatleri arasında derlenmiş.

Örgüt hedef aldığı kişilere ve kurumlara ilgilerini çekecek özel olarak hazırlanmış oltalama (phishing/spearphishing) epostaları gönderiyor.

APT28 Gürcistan İçişleri Bakanlığı’na karşı yapılan ve 2013 yılında tespit edilen bir saldırıda zararlı kod içeren ve Gürcistan’daki ehliyet sahibi olanların listesinin olduğu bir excel dosyası kullanılmış. Zararlı bulaştıktan sonra mia.ge.gov (İçişleri Bakanlığı uzantısı) bir eposta adresi üzerinden ekinde ağ ve sistemler hakkında topladığı bilgilerin bulunduğu bir eposta göndermeye çalışıyor. Böylece veriler, daha az kontrol edilen bir yol üzerinden sızdırılıyor.

Örgütün bir başka denemesinde ise “MIA Users\Ortachala…” adresinde bulunan bir Windows güncellemesinin yüklenmesi gerektiğini iddia etmiş. Aşağıdaki resimde bu denemenin “sisteminizin güncellemelerinin yüklenmesi gerekmektedir… Bu mesaj size OTD IT Support tarafından gönderilmiştir” mealinde olduğu anlaşılmaktadır.

Resim 2: Örnek oltalama saldırısı 

APT 28 Gürcistan Savunma Bakanlığı’nı hedef aldığı saldırıda ise Bakanlık ile birlikte Bakanlığıa hizmet veren bir şirket de hedef alınmıştır. Bu saldırıda her iki grupta çalışanların doğrum günlerinin listesi olduğu iddia edilen bir dosya ile birlikte, İçişleri Bakanlığı örneğinde görülene benzer bir zararlı yazılım kullanılmış.

Örgüt aynı zamanda Kafkasya bölgesi hakkında haber yapan gazetecileri de hedef almıştır. “Reason” adlı derginin Baş Editörü tarafından gönderilmiş gibi görünen eposta ile gazetecilerden belli bir konuda görüş bildirmeleri istenmiş. Bu epostanın ekinin de hedef sisteme “sourface” (ekşi surat) olarak adlandırılan arka kapı yazılımını yüklediği ve bu sayede örgütün gazetecilerin bilgisayarlarındaki bilgilere erişe bildiği görülmüştür.

Aşağıdaki ekran görüntüsünde gerçek alanadlarını taklit eden ve APT 28 tarafından kaydedildiği düşünülen alanadlarını görüyoruz. Bunlardan ilki İslami bir haber ajansı (kavkazcenter.com yerine kavkazcentr.info)  gibi görünürken diğeri Ermenistan Silahlı Kuvvetlerine aitmiş havası yaratıyor (mil.am yerine rnil.am).

Resim 3: Oltalama için kullanılan örnek alanadları

Polonya, Letonya ve Estonya gibi Doğu Avrupa ülkelerinin de APT 28 tarafından hedef alındı tespit edilmiştir. Bu ülkelerde Bakanlıkların yanında A.B.D. ve diğer Avrupa ülkeleri ile ortak tatbikat ve çalışma gruplarına dahil olan kişilerin de özel olarak hedef alındığı görülmüştür.

NATO ve OSCE (Organization for Security and Cooperation in Europe) gibi Avrupa ve Küresel güvenlik örgütlerinin ve bu örgüt içerisinde çeşitli görevler üstlenen kişilerin de hedef alındığı görülmektedir. Bu amaçla APT 28 tarafından alınan alanadlarından bazılar aşağıda görülmektedir.

Resim 4: NATO ve OSCE'ye özel hazırlanmış alanadları

Bazı alanadların, EuroNaval 2014, EUROSATORY 2014, Farnborough Airshow 2014 ve Counter Terror Expo gibi güvenlik ve savunma fuarı alanadlarına benzetilmiş olması örgütün bu fuara katılanların ve ziyaret edenleri de hedef aldığını göstermektedir.

APT 28 tarafından hedef alındığı düşünülen bazı Kurumlar ise şunlardır;
  • Norveç Ordusu
  • Meksika hükümeti
  • Pakistan Deniz Kuvvetleri
  • Avrupa Birliği Komisyonu
  • Dünya Bankası
  • OPEC
  • Hizb ut-Tahir
  • Macaristan Hükümeti
  • Özbekistan Dışişleri Bakanlığı
  • Türkiye’deki Askeri Ataşelikler


APT 28 saldırılarında gözlemlenen genel adımlar aşağıdakilerdir
  1. Hedefe özel hazırlanmış oltalama epostası gönderilir
  2. Zararlı yazılım içeren dosya açılır
  3. Zararlı yazılım çalışır
  4. “SOURFACE” olarak adlandırılan gelişmiş zararlı yazılım indirilir


Rapor kullanılan zararlı yazılımların biraz daha ayrıntılı ele alınmasıyla bitiyor. (bkz. Bundan sonra yazdıklarım raporda yok)

Saldırılara “cool” isimler takmaya meraklı Amerikalı meslektaşlarım bu saldırılarda görülen yönteme “Ölüm Zinciri” (Kill Chain) adını takmışlardır. Hedefin kandırılarak bir eposta ekini açmasıyla başlayan zincir bilginin sızdırılmasına kadar uzanıyor.
Aşağıdaki 6 adım hem Türkiye’de hem de Uluslararası güvenlik ihlali olaylarında gördüğüm tipik “ölüm zinciri” akışını özetliyor.

Resim 5: "Ölüm Zinciri" adımları

Bu tür bir saldırının başarıya ulaşması için zincirin tamamlanması ve her aşamanın başarıyla geçilmesi gerekiyor. Saldırının istismar ettiği asıl zafiyet insan olduğu için engellemesi en zor saldırı türü olduğunu kabul etmek lazım. Öte yandan zincirin her hangi bir adımda kırılması veya bir sonraki aşamaya geçememesi saldırının kısmen veya tamamen etkisiz hale gelmesini sağlar.

Ölüm zincirini kırabileceğimiz 3 önemli nokta var; ilk aşama, iç ağ içerisindeki yatay hareketler ve verinin dışarıya sızdırılması. Bu adımlarda başarısız olan bir saldırının örgüte faydası olmayacaktır.

İlk aşamada, personelin gelen epostanın ekini açmaması veya eposta içerisindeki bağlantıya tıklamaması önemlidir. Bunu engellemek için de bilinen en etkili yol bilgi güvenliği farkındalık eğitimleridir.

Saldırganların iç ağ içerisinde hareketlerini kısıtlayacak yapının kurulması için bir miktar yatırım gerektiği doğrudur ancak işin temelinde VLAN ayrımı yapmak, istemciler arası trafiğin denetlenmesi gibi önemli noktalar vardır.

Verilerin sızdırılmasının engellenmesi kurumdan çıkan trafiğin denetlenmesi ile mümkündür.


Türkiye’nin stratejik konumu ve NATO üyesi olmasından dolayı APT 28 olarak adlandırılan örgütün burada faaliyet göstermediğini düşünmek büyük hata olur. 
Bu nedenle üzerime düşeni yapıp Kamu Kurumlarına (mail uzantısı mil.tr ve gov.tr olanlar) ve savunma sanayi şirketlerine ücretsiz olarak bilgi güvenliği farkındalık eğitimi vermek istiyorum.
Eğitim sonucunda personel ve yöneticiler oltalama saldırılarının gerçekte ne kadar tehlikeli olduğunu anlayıp kendilerine gelen epostalar konusunda daha dikkatli olacaklar. 

Kurum bünyesinde eğitimi ayarlamak için benimle iletişime geçmeniz yeterlidir. 

Wednesday, October 29, 2014

Ağ Güvenliği Kontrol Listesi

Belirli bir plan dahilinde ele alınmazsa ağ güvenliğini sağlamak çok karmaşık bir iş gibi görünebilir. Bütçe eksikleri, personel yetersizliği, üst yönetiminin ilgisizliği gibi konular bilişim ve bilgi güvenliği alanında çalışanlar için yorucu olabilir.
Ağ ve bilgi güvenliği konusunda ilk aşamada bakılması gerekenleri toparlamanın faydasının olabileceğine inanıyorum.



Ağ güvenliği
Ağ güvenliğinin sağlanması için aşağıdaki konularda somut olarak ne yapıldığının ve ne yapılması gerektiğinin ortaya konulması gerekir.

Kullanım politikaları: Ağ üzerinde izin verilen ve verilmeyen davranışların ve trafik türlerinin belirlenmesi gerekir. Örneğin Skype benzeri anlık mesajlaşma uygulamalarına izin verilip Torrent trafiği yasak olabilir. Buna ihtiyaçlarınıza olarak karar vermeniz gerekiyor.
Eposta ve iletişim faaliyetleri: eposta eklerinin oluşturduğu tehditlerin ele alınması gerekiyor.
Antivirüs politikası: Zararlı yazılımların oluşturduğu tehditlere karşı
Erişim politikaları: Ağ kaynaklarına kimin ve nasıl erişebileceğinin belirlenmesi
Parola kuralları: Kullanıcıların güçlü parola seçmesive kurum genelinde parolaların ne sıklıkla değiştirilmesi gerektiği
Şifreleme kuralları: Ağ üzerindeki verinin ve veri trafiğinin hangi durumlarda ve nasıl şifrelenmesi gerektiği
Uzaktan erişim kuralları: Kurumsal ağ dışından kurum kaynaklarına kimlerin nasıl ulaşacağının belirlenmesi

Ağ güvenliği sağlamak için aşağıdaki güvenlik önlemlerine ihtiyacınız var. Bunlar en temel ve "olmazsa olmaz" cihazlardır.
Güvenlik duvarı (firewall): Ağınıza izinsiz erişimleri engellemek için
Sızma tespit ve engelleme sistemi (IPS/IDS): Ağınıza sızma girişimlerini tespit edip engellemek için
Kablosuz ağ güvenliği: Kablosuz ağınıza kimlerin nasıl bağlanabileceğini denetlemek için

Ağ güvenliği için yapılması gerekenler
Ağ üzerindeki cihazların envanterini çıkartmak: Ağ üzerinde hangi cihazların olduğu, bunların fiziksel olarak bulundukları yer gibi bilgilerin listelenmesi önemlidir
Standart konfigürasyon: Ağ üzerindeki cihazların türlerine göre hazırlanmış standart konfigürasyonları olmalıdır. İlk aşamada zor gibi görünse de yönetim kolaylığı ve bütünlük açısından önemlidir.
Yönetim arabirimleri: Statik IP belirlenmeli ve mümkün olan en güvenli bağlantı yöntemi kullanılmalıdır. Telnet ve benzeri, kullanmadığınız diğer bağlantı yöntemlerini devre dışı bıraktığınızdan emin olun.
SNMP: SNMP kullanıyorsanız fabrika çıkışı ayarlarını mutlaka değiştirin, kullanmıyorsanız SNMP bağlantısını kapatın
Yedekleme: Cihaz konfigürasyon dosyalarını düzenli olarak yedekleyin.
Yazılım: Cihazlarınızın yazılımı olduğunu unutmamak ve yazılımları düzenli olarak güncellemek çok önemlidir.
VLAN: Sunucu, istemci yedek alma ve benzeri gruplara göre trafik türlerini ayırmak için VLAN ayrımı yapılmalıdır
Kullanılmayan portlar: Cihazlar üzerinde kullanılmayan portların aktif olmadığından emin olun. Ağ üzerinde hub benzeri cihazların kullanımını sınırlandırın.

İstemci ve Sunucu güvenliği

Envanter: Ağınızdaki istemcilerin ve sunucuların envanterinin çıkartılması, hangi bilgisayarın nerede, hangi işletim sistemiyle ve kimin tarafından kullanıldığını listeleyin.
Ağ ayarları: İstemcilerin ve sunucuların hangi ağlara, hangi VLAN'lara ve nasıl bağlanacağının belli olması önemlidir.
Yama yönetimi: Yazılım üreticileri tarafından yayınlanan güncellemelerin ve yamaların düzenli olarak yüklenmesi çok önemlidir.
Antivirüs: Hem istemcileri hem de sunucular üzerinde antivirüs kullanılması çok önemlidir.
Host-based IPS: Antivirüs üreticilerinin bir kısmı istemci seviyesinde sızma tespit ve engelleme sistemini antivirüs çözümlerine entegre etmiştir. Bunlardan faydalanabileceğiniz gibi başka yöntemlerle de istemcilerin ve sunucuların gerekmedikçe kendi aralarında iletişim kurmasını sınırlandırmalısınız.
Admin kullanıcısı: Sızma testleri sırasında "büyük ikramiye" olarak görebileceğimiz ve ağ genelinde bütün (veya birçok) makinede geçerli olabilecek bir admin kullanıcısı kullanmayın. Her istemci ve sunucu için farklı bir admin kullanıcısı ve parolası oluşturun. İdeal olarak hiç bir kullanıcı kendi makinesinde admin yetkili kullanıcı hesabı kullanmamalıdır.
Yedekleyin: Düzenli olarak yedekleyin

Ağ Güvenliği Kontrol listeleri
Aşağıdaki listeleri doldurarak mevcut durumunuzu ve iyileştirmeniz gerekenleri ortaya çıkartabilirsiniz.


KonuEvetHayır
Politika ve Kurallar
Bilişim kaynakları kullanım politikaları belli mi?
Ağ kaynakları kullanım politikaları belli mi?
Eposta ve iletişim faaliyetleri denetleniyor mu?
Antivirüs kullanılıyor mu?
Erişim politikaları ve uralları belli mi?
Parola kuralları belli ve uygulanıyor mu?
Şifreleme kuralları belli ve uygulanıyor mu?
Uzaktan erişim kuralları belli ve uygulanıyor mu?
Güvenlik CihazlarıVarYok
Güvenlik duvarı (firewall) var mı?
Sızma tespit ve engelleme sistemi (IPS/IDS) var mı?
Kablosuz ağ güvenliğini sağlıyor muyum?
Antivirüs her tüm sunucu ve istemcilerde yüklü mü?
Ağ GüvenliğiEvetHayır
Ağ üzerindeki cihazların envanteri var mı?
Ağ cihazlarının nerede olduğunu biliyor muyum?
Standart konfigürasyon belli mi?
Yönetim arabirimleri denetleniyor mu?
SNMP Kullanıyor muyum? Kullanımyorsan devre dışı mı?
Düzenli olarak konfigürasyon yedeği alıyor muyum?
Cihaz yazılımlarını (Firmware) güncelliyor muyum?
VLAN ayrımı var mı? Anlamlı mı?
Ağ cihazları üzerinde kullanılmayan portlar kapalı mı?
İstemci ve Sunucu güvenliğiEvetHayır
İstemci ve sunucuların envanteri var mı?
İstemci ve sunular üzerindeki işletim sistemlerini biliyor muyum?
Ağ ayarları belli ve standart mı?
Yama ve güncellemeleri düzenli olarak yüklüyor muyum?
Bütüm istemci ve sunucularda antivirüs var mı?
Host-based IPS kullanıyor muyum?
Sunucu ve istemciler arasındaki trafiği denetliyor muyum?
Admin kullanıcısı sistem kullanıcısından farklı mı?
Farklı admin kullanıcı ve parolaları kullanıyor muyum?
Düzenli olarak yedek alıyor muyum?

Tuesday, October 28, 2014

Bulut Teknolojisi: Dost mu? Düşman mı?

Ne zaman “bulut teknolojisi” kelimelerini cümle içerisinde kursam karşımdakilerin önemli bir kısmından verileri veya uygulamaları buluta taşımanın ne kadar güvensiz olduğu konusunda uzunca bir nutuk dinliyorum.

Resim 1: Dost ve düşman bulutlar (temsili ve evet bunları çizmeyi seviyorum)

Bulut teknolojisinin diğer teknolojilerden ne daha güvenli ne de daha güvensiz olduğunu düşündüğüm için hem mevcut tehditleri sıralamak hem de bazı güvenlik önerilerinde bulunmak istiyorum.

Tehlikeyi anlamak

Başkaların verilerinize ulaşabilir, değiştirebilir veya silebilir
Söz konusu verilerimizi ve sistemlerimizi buluta taşımak olduğunda kuşkusuz en büyük korkumuz verilerimizin başkasının eline geçmesidir. Yaşanan büyük güvenlik ihlalleri (target, iCloud, vb.) etrafında yaşanan tartışmaların ateşi henüz geçmedi. Bulut üzerinde bulunan verilerin platform, başka kullanıcıların hataları veya yanlış kurulumlar nedeniyle erişilebilir hale gelmesi ne yazık ki mümkündür.
Verilere erişebilen saldırganların bunları silmesi veya duruma göre değiştirmesi de mümkün olabilir.

Hesabınızı ele geçirebilirler
Oltalama (phishing) benzeri sosyal mühendislik saldırıları veya güvensiz bir ağ üzerinden bağlanmanız durumunda; doğrudan ağ üzerindeki iletişiminizi yakalayarak, buluttaki verilere veya sistemlere ulaşmak için kullandığınız bilgiler (kullanıcı adı ve parola) elde edilebilir. Bu durumda saldırganlar aynı bilgileri kullanarak sistemlerinize erişim kazanmış olur.

Güvensiz API’ler
API’ler (Application Programming Interface – Uygulama Programlama Arayüzü) buluttaki sistemlerinizi yerel ağdaki sistemlerle veya buluttaki başka sistemlere entegre etmek için çok kullanışlıdır. Ancak zayıf bir API, buluttaki sistemlerinizin kapısını saldırganlara açabilir. Bunun en “güzel” örneklerinden birisi iCloud hadisesidir.

Hizmet dışı bırakma
Önemli iş süreçlerini buluta taşıdıktan sonra başımıza gelebilecek en kötü şeylerden birisi de bu sistemlere erişememektir. Yeterince önlem alınmazsa hizmet dışı bırakma saldırısı (DoS/DDoS – Denial of Service/Distributed Denial of Service) karşısında elimiz kolumuz bağlı oturmaktan başka çaremiz kalmaz.

Yetersiz hazırlık
Buluta taşınacak sistemlerin doğru analiz edilmesi ve uygun bulut mimarisinin seçilmesi sadece performansı değil, aynı zamanda buluttaki verilerin ve sistemlerin güvenliğini de doğrudan etkiler. Bulutta alınacak güvenlik tedbirlerinin yerel ağ üzerindekilerden farklı olduğunun, sunucu ve veri tabanı mimarilerinin de farklılık gösterebileceğinin anlaşılması gerekiyor.

Yukarıda saydıklarımın dışında içeriden birinin bilgi sızdırması, yetersiz şifreleme teknolojileri, basit parola kullanımı gibi genel geçer güvenlik zafiyetlerinin de bulutta mevcut olduğunu hatırlatmakta fayda görüyorum.

Güvenlik için Önlem Almak

Verilerinizin ve sistemlerinizin bulutta güvende olmasını sağlamak için bulut hizmetini aldığınız yerin de üzerine düşen şeyler var. Bu listedekileri teyit ederek doğru bir şirketten bulut hizmeti aldığınızı kontrol edebilirsiniz.

Hareket halindeki verinin korunması
Veri bir yerden başka bir yere transfer edilirken gerekli şifreleme ve kimlik doğrulama önlemleri alınmalıdır. Veri transferi sırasında üçüncü kişilerce verinin değiştirilmesi veya okunmasının önüne geçilmelidir.

Fiziksel güvenlik
Verilerin tutulduğu platformların fiziksel güvenliği sağlanmalıdır. Sunucuların veya bulut platformunun çalınması, zarar görmesi veya değiştirilmesi bilgi güvenliği ihlaliyle sonuçlanabilir.

Kullanıcıların ayrılması 
Saldırganların aynı bulut yapısını kullanan başka bir kullanıcıya sızmaları veya aynı bulut yapısı üzerinde kendilerine kullanıcı açması halinde bu hesaptan sizin verilerinize ulaşamamaları gerekir.

Bilgi güvenliği yönetimi 
Bulut hizmeti alacağınız firmanın bu yapıyı nasıl yönettiğinin ve gerekli bilgi güvenliği yönetimi süreçlerinin var olduğundan emin olunmalıdır.

Güvenlik süreçleri
Bulut hizmetini aldığınız firmanın bilgi güvenliğine ilişkin süreçleri de oturmuş olmalıdır. Örneğin sızma girişimlerini nasıl yönetiyorlar? DDoS (Dağıtık Hizmet Dışı Bırakma) saldırılarına karşı nasıl bir eylem planları var? Gibi soruların cevapları net olmalıdır. “Bize kimse saldırmıyor”, “o işe bakan bir ekip var ama başka şehirdeler”, “çok sağlam heykır bir arkadaş var, o koruyor”, “mikrotik (jenerik üretici adı anlamında) var be yeeaaa” gibi cevaplarla karşılaşırsanız bulut teknolojisine geçmek için çok yanlış yerdesiniz, koşar adımlarla uzaklaşmanızda fayda var.

Personel güvenliği
Bulut hizmeti aldığınız veri merkezinin personelinin gerekli güvenlik kontrollerinden geçmiş, “düzgün” tabir edebileceğimiz kişilerden oluşmasında fayda var. Bunu anlamak için bulut hizmeti almayı düşündüğünüz firmanın işe alım prosedürlerini ve referans kontrollerinin yapılıp yapılmadığını sormanın faydası olabilir.

Güvenilir uygulamalar
Bir uygulamayı buluta taşıyacaksanız bütün dünyanın buna erişimi olabileceğini düşünmenizde fayda var. Bu nedenle bulut üzerinde çalıştıracağınız uygulamanın kaynak kod analizin ve güvenlik testlerinin yapılmış olmasında fayda var.
Güvenlik yönetimi: Bulut yapısını kullananlara kendi güvenliklerini sağlamak için gerekli yönetim arayüzlerinin ve hayati gelişmeleri takip edebilecekleri ekranların sunulması önemlidir.

Yetkili erişim
Bulut yapısına ve bulut yapısı üzerinde çalışan sistemlere erişimin sadece yetkili kişilerle sınırlandırılmış olması önemlidir.

Dışarıya bakan arayüzlerin güvenliği
Bulut platformunun internete bağlı olan her noktası için gerekli güvenlik önlemleri alınmalıdır. Örnek olarak web tarayıcısı ile port 80 üzerinden erişenleri ülke bazında sınırlandırdıysak SSH ve RDP bağlantıları için de benzer önlemlerin alınması gereklidir.

Güvenli hizmet verme
Bulut hizmeti aldığınız firmanın düzenli olarak güvenlik testlerini yaptırması ve güvenlik altyapısı konusunda gerekli yatırımları ve iyileştirmeleri yapıyor olması önemlidir.

Kullanım kılavuzunu okuyun 
Hizmet şartlarınızı, sözleşmeyi ve size bulut hizmeti veren firma ile aranızdaki SLA’yi (Service Level Agreement – servis şartlarını düzenleyen anlaşma) dikkatle okuyun. Okurken aklınıza yatmayan veya size uygun olmayan bir şart varsa buna mutlaka açıklık getirin. “Orada öyle yazıyor da biz pek şeyapmıyoruz be yeeaaa” türü açıklamalar yapılır koşarak uzaklaşın.

İhtiyaç duyduğunuz güvenlik seviyesini belirleyin
Buluta taşımak istediğiniz verileri veya sistemlerin ne kadar önemli olduğuna göre ihtiyacınız olan güvenlik seviyesini belirlemelisiniz. “güvende olmalı” gibi genel bir yaklaşımdan ziyade basit bir tablo ile en kritik yönlerini ve tehdit oluşturabilecek zafiyetleri listelemek ve bunları adreslemek gerekir.

Varsayımda bulunmayın
Hizmet aldığınız şirketin hiç bir şey yaptığını varsaymayın, her şeyi sorun ve belgeleyin. 


Bulut konusunda temel görüşüm, buluta taşınan verilerinizin, en az kendi ağınızda olduğu kadar, genellikle de daha güvende olduğudur. Doğru bir firmadan hizmet alırsanız ve sistemlerinizin güvenliğine özen gösterirseniz güvenlik seviyeniz artacaktır.

Metasploit ile Nmap Kullanmak

Nispeten geniş ağları test ederken süre kısıtımız olduğunda zaman kazandırdığına inandığım için taramaların bir kısmını doğrudan Metasploit içerisinden yapmayı tercih ediyorum.

Ağ taramalarının (scan) benim için 4 temel amacı vardır;

  • Ağ üzerindeki sistemleri tespit etmek
  • Bulunan sistemlerde açık olan portları ve çalışan servisleri bulmak
  • Bulunan servislerde ve sistemlerdeki zafiyetleri tespit etmek
  • Ağ üzerinden iş süreçlerini ve genel işleyişi anlamaya çalışmak (Sıramatik var mı?, Misafirlere wi-fi hizmeti veriliyor mu?, NAS cihazı var mı? vs.)


Normal şartlar altında tarama aşaması en çok zaman harcadığım ve en iyi yapmaya çalıştığım şeydir. İyi yapılmış bir tarama hem ağ topolojisini doğru çıkartmamızı sağlar hem de testler için kullanılabilir ve etkili bir plan hazırlamamıza imkan verir.
Bazen de testi hızlı yapmak gerekir, ağ çok karmaşık değildir, "whitebox" dediğimiz, müşterinin topoloji ve sistem detaylarını bizimle paylaştığı türden bir testtir ve zaman esastır. Bu durumlarda Metasploit'un üzerinde bulunan tarama modüllerini kullanmakta fayda görüyorum.
Metasploit'un üzerindeki tarama modüllerini tespit etmek için Metasploit'u başlattıktan sonra "search scan" ile arama yapmanız yeterlidir.

En yaygın olarak kullanılan tarama yazılımı Nmap olduğu için bu yazıdaki örnekleri onun üzerinden yaptım.

Bu işlem için kurduğum topoloji aşağıdaki gibidir. Görüldüğü üzere 192.168.1.34 IP adresli makine saldırgan, diğer ikisi kurbandır. 

Resim 1: Topoloji (evet, bunları çizerken çok eğleniyorum)

Metasploit içerisinde Nmap'i kullanabilmek için Metasploit'u başlatmadan önce aşağıda görüldüğü gibi Postgresql'i ve Metasploit'u servis olarak başlatmak gerekiyor.

Resim 2: Postgresql'i çalıştırmak

Resim 3: Metasploit'u servis olarak başlatmak

Bu iki aşamadan sonra "msfconsole" komutuyla Metasploit konsolünü çalıştırabiliriz.

Resim 4: Metasploit konsolü çalıştırmak

Resim 5: Her zaman olduğu gibi Metaslpoit bizi sevimli bir grafikle karşılıyor

Metasploit içerisinden Nmap'e ulaşmak için kullanacağımız komutlar bildiğimiz Nmap komutlarıdır.
Ağdaki diğer makineleri tespit etmek için kullanabileceğimiz yöntemlerden biri Ping paketi gönderip, cevap veren makinelere bakmaktır. Bazı sistemlerin açık ve ağa bağlı oldukları halde Ping paketlerine cevap vermeyeceklerini hatırlatmak isterim. Bu durumda kullandığımız komut aşağıdaki gibidir:
msf > db_nmap -sP 192.168.1.*

db_nmap: Metasploit içerisinden Nmap'i çalıştırmama imkan veriyor.
-sP: Ping taraması yapar ve hedef olarak belirlediğimiz IP veya IPlere ping paketi gönderir.
***Edit: -sP basitçe Ping paketi göndermekten fazlasını yapıyor, daha doğrusu sadece ping göndermiyor. Ayrıntılar için Nmap'in kendi dokümantasyonuna http://nmap.org/book/man.html adresinden ulaşabilirsiniz. Uyarı ve düzeltme için teşekkür ederim @kadiraltan kendimi geliştirmemde ve vizyon kazanmamda katkın büyük. 

192.168.1.*: 192.168.1.0 ile 192.168.1.255 arasındaki bütün IP adreslerini kapsar

Resim 6: Ping taraması

Aşağıda görüldüğü gibi Ping sorgusu ile 192.168.1.20 adresinde bir makine tespit ettik. 

Resim 7: Ping taraması sonucu



Ping taramasından sonra ağ ve apdaki makineler hakkında daha fazla bilgi almak için bir de SYN taraması yapıyoruz. 

Resim 8: SYN Taraması

SYN taraması yapmak için kullanacağımız komut db_nmap -sS 192.168.1.* dir. 

Resim 9: SYN taraması sonuçları ve hosts komutu

SYN taraması sonuçlandığında "hosts" komutu ile tarama sonucu tespit ettiğimiz makineleri listelememiz mümkündür. Yukarıda görüldüğü üzere 192.168.1.20 ve 192.168.1.27 IP adreslerini kullanan makineleri tespit ettik. 

Makineler hakkında biraz daha bilgi sahibi olmak için daha kapsamlı bir tarama komutu kullanılabilir. Bunun için -sS parametresi ile birlikte -sV (versiyon/sürüm bilgisi) ve -O (işletim sistemi) parametreleri eklenebilir. 

Resim 10: İşletim sistemi ve sürüm bilgilerini de almaya çalıştığımız tarama

Bu tarama sonucunda "hosts" komutunu tekrar çalıştırdığımızda tespit ettiğimiz makinelerin birinin Linux, diğerinin Windows olduğunu görüyoruz. 


Resim 11: Hosts komutu ile işletim sistemi bilgisini görmek


Taramadan sonra "services" komutu ile ağ üzerinde tespit edilen sistemlerde Nmap'in bulduğu makineler üzerinde çalışan servisleri listeleyebiliyoruz. Amacımız zaman kazanmak olduğu için kolay istismar edilebilir olarak bildiğimiz servislerin hangi IP adreslerinde bulunan makinelerde aktif olduğunu tespit etmemize yardımcı olacak bir komuttur. 

Resim 12: services komutu ile ağ üzerinde çalışan servisleri listelemek

Ağ üzerinde birkaç sisteme hızlı şekilde sızmanın gerektiği durumlarda hosts komutunu -c address,os_flavor parametreleriyle kullanmak hedef makinleri listelememizi hızlandıracaktır. Bu durumda gerçek ağlarda çoğunlukla olduğu gibi ilk seçeneğimiz Linux makinelere saldırmak olacaktır. Linux sistemlerin hem daha seyrek olarak güncellenmeleri hem de "virüs bulaşmaz" düşüncesiyle antivirüs kurulmadan ağa bağlanmaları saldırganlar için çok güzel bir fırsat sunmaktadır. 


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. 




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...