Tag Archive for 'siber güvenlik'

Çok da siber olmayan güvenlik

Merhabalar.

Uzun zamandır gerek iş, gerek eğitim yoğunluğundan, ne siteye ne de yazılara vakit ayıramıyordum. Geçenlerde yaşadığım bir olay beni lise, üniversite yıllarımda yaptığım işlere götürünce, günümüzde daha da büyük önem teşkil eden “güvenlik” konularında bir iki satır da ben yazayım dedim. Biraz hamlığımı atayım dedim ama, attım mı atamadım mı ben de emin olamadım. Buyurun başlayalım.

Yüksek lisans yapan bir arkadaşımın şu şekilde bir ricası oldu. Başka bir yüksek lisans sınıfındaki bir arkadaş grubunun isimlerini öğrenmek istediğini söyledi. Benim için cevap basitti, gidip tanışırsın :) Tabi o bu şekilde olmasını istemedi ve sadece isimlerini farklı bir yöntemle, yani kimseye belli etmeden öğrenip öğrenemeyeceğimi sordu. Benim bu kişilerin tüm şecerelerini öğrenmek için onca yöntemim olsa da, meslek hastalığı olarak daha zor olanı yapmak istedim. Hem belki eski günleri de yad etmiş olurum diyerekten tamam bilgisayar başına geçince bir bakarım dedim. Arkadaş bu tür konularda günümüzdeki KVKK müfredatları gereği alınan önlemleri bildiğinden yapamayacağımı söyledi. Tabi beni harekete geçirecek olan sözün “yapamazsın” olduğunu bilmiyordu :)

Aşama aşama anlatmadan önce alınan önlemlerden hemen ufak bir tüyo vereyim. Okullar kayıt döneminde paylaşılan belgelerde tüm isimleri Cİ**** ÇU**** şeklinde yayınlıyorlar. Bu şekilde isimleri tahmin etmenizi zorlaştırmak için de, ilk iki harften sonraki yıldız sayısını gerçek harf sayısından bağımsız olarak hep 4 yıldız ( **** ) şeklinde kullanıyorlar. Elimizdeki tek verinin bu olduğunu düşünerek işlemlere başladım.

Hani bir söz vardır. Elinde bir çekiç olan herkesi çivi gibi görürmüş. Ben ise bu tuzağa düşmeyi ve imkânlarımı gereksiz yere kullanmayı asla sevmedim. Zira masum bir işlemi suç unsuruna dönüştürmeye gerek yoktur.

Normal şartlar altında siber güvenlik ile ilgilenen biri, kolları sıvayıp, üniversitenin veri tabanına erişmek için saldırmaya başlar. Burada onlarca saldırı işleminden tek tek bahsetmeyeceğim. Nihayetinde ortada kırmaya çalıştığımız bir hesap şifresi yok. DDos atarak site kapatmaya da çalışmıyoruz. Aslında birçok idari personelin ve öğretim görevlisinin bir tıkla erişebileceği bir bilgiden bahsediyoruz. Ama onların hesaplarını kırmak da tarzım değil zira en başta söylediğim gibi bu bilgileri bilgisayar kullanmadan zaten alabilirim. Hocalarla aramın da iyi olduğunu düşünürsek isim öğrenmek benim için hiç de zor değil.

Herhangi bir açık aramadan önce, biraz daha düşünmek istedim. Tabi bu esnada ufak tefek yokluyordum. Web servislerindeki “permission” larla ilgili gözden kaçan bir şey var ise, oradan belgenin orjinal haline ulaşabilirim diye düşündüm. Yani encrypt edilmeden önceki haline fakat bu uğraşım sonuç vermedi, en azından 5-10dk lık bir manuel kontrol işleminde bir sonuç alamadım. Tüm işlemleri manuel yapacaktım herhangi bir yazılımdan da destek almayacaktım çünkü hamlığımı atmalıydım, yaşlanmış mıydım? Anlamalıydım :)

Biraz daha düşündükten sonra, saldırı yapmaya gerek bırakmayacak o yegâne yöntemi hatırladım. Senin bir şey yapmana gerek yok, karşı tarafın hata yapmasını bekle yaklaşımı. Ve bu hata belki de çoktan yapılmıştı…

Bu esnada son yıllarda tüm okulların öğrencilerine verdiği M365 sistemini hatırladım. Microsoft’un okullara ücretsiz sunduğu, okulların da öğrencilerine ücretsiz sunduğu, @edu.tr adresinizle neredeyse tüm servisleri kullanabildiğiniz yapıdan bahsediyorum. Şimdiki öğrenciler çok şanslı, bizim zamanımızda yoktu böyle şeyler diyerek devam ediyorum.

Yapıyı defalarca kez sıfırdan kurmuş ve yönetmiş biri olmanın avantajıyla, sadece öğrenci numaram @edu.tr adresimle bana verilen tüm haklara bir göz attım. Fark ettim ki, bu sistemle fazla uğraşılmamıştı. Yani görmemem gereken bir takım bilgileri de görebiliyordum. IT ‘ nin başındaki arkadaşımız benim kadar detayları sevmiyordu anlaşılan :) Böylece karakter analizini tamamladık. Bu hatayı kullanabilirdik.

Teams yazılımında ufak bir gezintiden sonra, İsimlerin ilk 3 harfini kullanarak arama yapıldığında veri tabanından bir kısım verinin çekildiğini gözlemledim. Bir kısım diyorum çünkü tüm üniversitenin veri tabanından bilgi çağırılıyordu ve random olarak veya belirli bir sırayla, belki de isim sırası, ilk 10 benzerlik geliyordu. Bu durum bazı kapılar açıyordu ama nihai sonuca ulaşmama engel oluyordu zira benim elimdeki listede sadece isimden 2 soy isimden 2 harf mevcuttu. Her kelime için 3. 4. 5. 6. vs. harf tahminlerini yapmak ise sağlam ruh hastalarına göre bir yöntemdi ki maalesef o kadar hasta değildim. Ki bu duruma ayıracak zamanım da yoktu. Zira hala eğleniyordum. E tabi şimdi bir de “yapamazsın” söz konusuydu :)

Kendi öğrenci numaramdan ve arkadaşlarımın isimlerinden yola çıkarak bir arama gerçekleştirdim. Ekstra bir bilgi vereyim. İstesem kendi arkadaşlarımın öğrenci numaralarını sorarak öğrenebilir ve bu işi hızlandırabilirdim fakat bunun da kolaya kaçmak olacağını düşünerek kendim bulmam gerektiğine karar verdim. Bir şekilde numaraların sıralamasını ve olası kayıt zamanı farklarını da düşünerek (numaraların bölümlere göre sıralı mı gidip gitmediğini bilemiyoruz) bazı tahminlerde bulundum ve gerek deneyerek gerekse bazı arkadaşlarımın ismini kullanarak sıralama şeklini de çözmüş oldum :)

Hala elimde eksik bir şeyler vardı. Koca bir havuzu tek tek tarayarak veya öğrenci numarası deneyerek birçok isme ulaşabiliyordum ama kimin kim olduğunu bilmedikten sonra bu veri işe yaramıyordu. İlk 2 harfe bakarak eşleştirsene diyenleri duyuyor gibiyim ama dedim ya orası da fazla zahmetli, yani son çare olarak cepte kalsın tarzında bir durum.

Kahveden bir yudum daha alıp biraz daha düşünmeye başlayınca aklıma bir şey daha geldi.

Okula ilk kayıtlar yapılırken, okul, öğrenci numaralarını liste olarak paylaşmıştı. Bu öğrenci numaraların yanında da isim ve soy isim aynı şekilde bol yıldızlı şekilde paylaşılmıştı. Bu belgeye ulaşırsam konu kapanırdı. Çünkü okul burada büyük bir hata yapmış oluyordu. Anlayanlar oldu mu bilmiyorum fakat, elinizde numaradan isim sorgulama şansı varsa, ki bu da olmaması gereken bir açık kapı, bir de elinizde yıldızlı isimli numara listesi olursa sonucu aldınız demektir :) Tabi bu belge ilk etapta aklıma gelmediği için gereksiz birçok veriye de kendi kendime ulaşmış oldum. Mesela hangi bölüm veya hangi fakülte hangi numara dizisini kullanıyor gibi :)

Başladım okulun sitesinde kayıt döneminde paylaşılan belgeleri araştırmaya. Zaten benim gibi biriyseniz, ta kayıt döneminde bile o siteyi hatim etmişsinizdir. İster hobi deyin, ister meslek aşkı. Yani sitede paylaşılan ve bana lazım olmayan her sekmeye zaten aylar öncesinden göz atmıştım. Kendi kayıt dönemimden tutun da, önceki senenin kayıt dönemi belgelerine kadar ulaştım. Neyse ki hala silinmemişti, zira bir süre sonra kaldırılır bu belgeler. Ki kaldırılsa da sadece linkin kaldırılacağını düşünen bazı akıllı arkadaşlarımız sen yine bulurdun diyor olabilirler :)

Sonuca gelecek olursak, ya da başka bir deyişle başa dönecek olursak, arkadaşımın benden talep ettiği bölümün, talep ettiği sınıfının listesi önümde bol yıldızlı isimler, soy isimler ve full açık öğrenci numaralarıyla durmaktaydı.

Artık tek yapmam gereken “Teams” ekranına öğrenci numarasını yazmak ve isim soy isim ve eklediyse profil fotoğraf bilgisine ulaşmak olacaktı. Tüm sınıfların tüm öğrenci isimlerine ulaşmak pek de zahmetli olmamıştı.

Peki bu durumdan çıkarılması gereken ders nedir?

Ülkemizde hala maalesef güvenlik konusunda öğrenmemiz gereken çok şey var. İşin siber güvenlik tarafına milyonlarca lira veya dolar yatırım da yapsanız, parçaları birleştirme yeteneğiniz yoksa, bilgiyi gizleme konusunda titiz değilseniz, bir saldırgan gibi düşünemiyorsanız, güvenlik konusunda az da olsa paranoyak değilseniz, eğitiminiz yeterli değilse veya sisteme erişen kullanıcılarınızın eğitimi yeterli değilse, sonuç hüsran olacaktır. Olay sadece siber güvenlik değil, ki bence burada ulaştığım bilgi siber güvenlik zafiyetini kullanmaktan ziyade %75 sosyal mühendislik, dikkat, tahmin ve tecrübedir.

Peki ne gerek kaldı belgedeki isimlere **** koymaya. Boşa zahmet edilmiş oldu. Bir ISO 27001 Baş Denetçisi olarak, denetimde böyle bir durum fark etsem, kurumun kişisel verileri koruyamadığına dair uyumsuzluk bildirmem gerekir. Sonuçta benim verilerim de tehlikede ve bu konuda bu hatayı yapan kim bilir hangi konularda hangi hataları yapmış olabilir.

Yapılması gereken bu konunun okula bildirilmesidir. Fakat adım gibi eminim ki bu durumu TR’deki üniversitelerin %90’ında bulursunuz. Daha da acısı, ben bu hatayı bildirsem, attığım mail okunmadan silinir. Diyelim okundu, yine silinir. Diyelim silinmedi, hata düzeltilmek istendi, al başına belayı. Neden, çünkü burası Türkiye. Yani şimdi kurumları tanıdığım için, iyilik yap kötülük bul olacağını tecrübelerimden biliyorum. Hatayı benim bedavaya düzeltmem talep edilebilir. Okulun başına geçmişte gelmiş felâketler veya gelecekte olacak olan saldırılar başıma kalabilir vs. vs. Bu listeyi uzatabiliriz, durum ne kadar acı değil mi :) Neyse ki arkadaşımın okulunun ismini paylaşmadım, ama dediğim gibi bu bilginin önemli olduğunu da sanmıyorum.

Sonuç olarak arkadaşımla listeyi paylaştığımda, “Şaka mısın nasıl buldun?” tepkisini almak benim tüm yorgunluğumu aldı. ( yorgunluk mu? :) ). Ha artık kendisi bu bilgiyle ne yapar, gidip tanışır mı, konuşur mu, Instagram’dan mı ekler orasını bilemeyeceğim :)

İş bittiğinde hamlamamışım dedim. 15 yaşındayken kafam nasıl çalışıyorsa 35 yaşındayken de aynı şekilde çalışıyor olduğunu bilmek güzel. Belki biraz yavaşlamış olabilirim. Zira o yaşlarda başka bir hızlıydım ve bug bounty olayları bugünkü durumunda olmadığından yeteneklerimizi genelde çekmecede tutmak durumunda kaldık. O yıllarda bu yeteneklere az ödül, bol ceza vardı. Neyse ki artık bir takım şeyler değişiyor, yani şimdiki nesil çok şanslı. Hele ki benim 15 yaşındaki halime benzeyen biri varsa değmeyin keyfine.

Bu yazıyı kendimi övmek, kurumları yermek veya arkadaşımın maceralarını anlatmak için yazmadım.

Yazmak istedim çünkü gerçek güvenliğin sadece teknik bilgiyle olmadığını bir kez daha göstermek istedim.

Güvenlik” bir yaşam tarzıdır. “Güvenlik” düşünmektir. “Güvenlik” tecrübedir. “Güvenlik” zekâ göstergesidir.

Dünyanın en iyi siber güvenlik uzmanı veya dünyanın en iyi hacker’ı 40 yaşına kadar bilgisayar görmemiş bir adam olursa bir gün, ben kesinlikle şaşırmam.

Keza aynı şekilde, dünyanın en iyi korunan kurumlarını 13 yaşında bir çocuk alt üst ederse, yine şaşırmam.

Herkes bug bounty tadında bol teknik bilgili , bol ekran görüntülü, hacking hikayeleri paylaşırken, ben de böyle basit bir hikâyeyle dikkatleri farklı bir yöne çekmek istedim.

Bir dahakine ben de sıkıcı bir bug bounty hikâyesi ile gelebilirim.

İyi çalışmalar, saygılar, sevgiler.

blank

 

Cisco Router ZPF (Zone Policy Firewall) Yapılandırması

Merhabalar.

Cisco Router’larınızda security lisansınız aktif ise ZPF özelliğinden faydalanabilirsiniz. Bu özellik sayesinde protokol bazlı kısıtlamanın nasıl yapılabileceğini sizlere basitçe anlatmaya çalışacağım.

Örnek senaryomuzda, işlem yapacağımız Routera bağlı olan bilgisayarların, bulundukları OZEL olarak adlandıracağımız ağ alanından, dış ağa yani GENEL olarak adlandıracağımız internet ağına sadece istediğimiz protokollerde işlem yapmasını sağlayacağız. Bu ağdaki PC ler, sadece http, https ve dns protokollerini kullanabilecek ve bu protokollere yanıt alabilecektir. Bu sayede web erişimi dışında her şeyi yasaklamış olacağız.

Lisans kontrolü için “show version” komutunu kullanabilirsiniz. Security lisansınız aktifse işlemlere geçebilirsiniz.

İlk adımda öncelikle zone ların oluşturulması gerekmektedir.

Öncelikle “conf t” komutu ile terminal konfigurasyon bölümüne girelim.

Daha sonra “zone security OZEL” komutunu kullanarak “OZEL” adında bir zone oluşturalım. Buraya istediğiniz farklı bir isim verebilirsiniz.

ardından “exit” ile bir önceki menüye dönelim ve “zone security GENEL” komutu ile “GENEL” adından bir başka zone oluşturalım

Daha sonra sınıf haritası oluşturmamız gerekmektedir. Bunun için,

“class-map type inspect match-any WEB” komutunu kullanıyoruz. Buradaki inspect ve match-any yönergelerini ihtiyacınız doğrultusunda diğer komutları kontrol ederek değiştirebilirsiniz. Ben amacımıza yönelik komutları paylaşıyorum.

Class-map oluşturduktan sonra map içine protokolleri girmemiz gerekiyor. Bunun için kullancağımız komutlar;

“match protocol http”

“match protocol https”

“match protocol dns”

Sınıf haritası oluşturma işlemimiz tamamlandı.

Bir sonraki adımda kural haritası oluşturacağız ve eylemleri tanımlayacağız.

“policy-map type inspect OZEL-TO-GENEL”

Bu komutla OZEL-TO-GENEL adında bir kural haritası oluşturduk. İsmi yine kendiniz düzenleyebilirsiniz. Ardından;

“class type inspect WEB” komutunu kullanarak kural haritasının sınıf tipini belirliyoruz. Burada yazdığımız “WEB” ismi yukarda oluşturduğumuz sınıf haritasının ismidir.

Etkinleştirmek için “inspect” komutunu giriyoruz ve burada işimiz tamamlanıyor.

“exit” komutunu 2 kez kullanarak conf menüsüne geri geliyoruz.

Şimdi sırada zone pair oluşturmamız gerekiyor.

“zone-pair security OZEL-GENEL source OZEL destination GENEL”

Burada girdiğimiz kaynak ve hedef bilgileri yukarda oluşturduğumuz zone ların bilgileridir.

Daha sonra;

“service-policy type inspect OZEL-TO-GENEL” komutunu giriyoruz. Burada belirttiğimiz OZEL-TO-GENEL ismi yukarda oluşturduğumuz kural haritasının ismidir.

Zone ayarları tamamlandığına göre artık bu ayarlarımızı interface lerimize tanımlayabiliriz.

Bizim örneğimizde Router’ımızın özel alana bakan portu gig0/0/0 ve genel yani internet alanına bakan portu ise gig0/0/1 olsun.

Conf altında iken

“interface gig0/0/0”

“zone-member security OZEL”

“interface gig0/0/1”

“zone-member security GENEL”

Bu sayede yapılandırmamızı tamamlamış olduk. Artık testlerinize geçebilirsiniz.

Özel taraftaki PC ‘ ler internet alanına http, https, dns harici hiçbir protokolde işlem gerçekleştiremeyeceklerdir.

Güvenli günler dilerim.




Culha.NET