Siber Güvenlikte CTF

Selamlaar! Bugün siber güvenlikte bayrak yakalama konusuna giriş yapıyoruz.Çok eğlenceli bi o kadar sinir bozucu bazen de kafa karıştırıcı bir konu olur kendisi :) Ama sadece keyfini çıkarın çünkü bu yazı bir eğitim değil, hayatımızda böyle şeylerin de olduğu konusunda bir bilgilendirme yazısı.

Konuya girmeden önce bundan önceki yazdığım 3 blogda da çok güzel iyi,kötü,eleştirisel geri dönüşler aldım.Yorumlarını belirten,belirtmeyen blogları okuyan,okumayan herkese teşekkürler diyerek duygusal(!) bir konuşma ardından konuya giriyorum.🤗

Bölüm 1: Flashback

Bir önceki yazımın (Oyun Sektörüne Giriş) sonunda hatırlarsanız bir fotoğraf bırakıp dikkatli bakın bakalım bir şey görebilecek misiniz? demiştim.

Image

İşte bugün o fotoğrafın altında olan bitenlere bakacağız. Ama öncesinde 1-2 değinilmesi gereken konuya değinelim.

Bölüm2: CTF Nedir?

Image

Siber güvenlik dalı altında yapılan yarışmaların en popülerine Capture the Flag (Bayrağı Yakala) deniliyor.Amaç, verilen sürede sorulan soruları çözerek (bayrağı yakalayarak) en yüksek puanı elde etmek.Tabiki bu sorular bildiğimiz sorulardan değil :) İşte olayı da burada başlıyor. Sorular şıklı veya cevabını bilebileceğiniz sorular değil,cevabını bilgilerinizi kullanarak, uğraşarak bazen hackleyerek bulabileceğiniz sorular. Amaç bir şekilde saklanmış, şifrelenmiş cevabı ortaya çıkarmak.

Burada birçok kategori bulunuyor. Örneğin web kategorisinde sizden verilen sitenin açığını bularak içeri girmeniz, kriptolojide bir şifreyi çözmeniz, tersine mühendislikte kaynak kodlara ulaşmanız vs. isteniyor. Ama sorularda ilerlediyseniz katagorinin bir önemi yok. Muhtemelen ortaya karışık "💪🏽" gibi bir şeyle karşılaşacaksınız.

Dipnot:Yazının devamında kendi hazırladığım bir örneğini yapacağızz okumaya devam!

Yarışmalar genelde ekipler halinde yapılıyor. Birinci olanlar bazen para, bazen o firmada siber güvenlik uzmanı olarak işe başlaması ile ödüllendiriliyor. Ülkemizde en popüler olarak Hackİstanbul, STM CTF, Turkcell CyberCamp ve olduğu her sene katıldığım favorim Btk Siber Yıldız adı altında bu yarışmalar yapılıyor.Araştırarak bulabileceğiniz online pratik yapabileceğiniz siteler de mevcut.

Image

Bölüm3: SüngerBob

Vee geldik şifremizi çözmeye. Ama kısa bir bilgi: Fotoğraf, Steganografi ve Kriptoloji teknikleriyle şifrelenmiş durumda. Steganografi bilgiyi gizleme bilimidir. En büyük avantajı bilgiyi gören bir kimsenin gördüğü şeyin içinde önemli bir bilgi olduğunu fark edemiyor olmasıdır. Resim içine yazı dosyası gizlemek gibi :) Kriptoloji ise çeşitli iletilerin, yazıların belli bir sisteme göre şifrelenmesidir. Matematiksel fonksiyonlardan oluşan algoritmalarla oluşturulur.

O zaman başlayabiliriz! "Fotoğrafa dikkatli bakın bakalım bir şey görebilecek misiniz?" cümlesi tamamen yanıltma amaçlıydı. Fotoğrafın görsel tarafıyla hiçbir işimiz yok. Daha çok altında dönenlere bakacağız. Şimdi önceki blog yazımdan fotoğrafa dönelim.

Fotoğrafımızı masaüstüne bi kaydedelim.

Image

Fotoğrafımızı masaüstüne aldık. Belliki bu fotoğrafın altında gömülü bir şeyler var. Bunu ortaya çıkarmak için steganografide çok kullanılan steghide isimli bir tool kullanacağız. Steghide, Windows veya Kali Linux üzerinden komut sistemi yardımıyla çalıştırılabiliyor.

Image

Komut satırımıza steghide üzerinden fotoğrafın içindeki dosyayı çıkartabilmek için gerekli komutları yazdık. Ancak bir sorun var. Entere bastığımızda bize şifre soruyor. Peki bu şifreyi nereden bulacağız?

CTF lerde yazılı olmayan bir kural vardır. Öncelikle sayfa kaynak kodlarına bakılır. Bir ipicu gizlenmiş olabilir. Bizde öyle yapalım bakalım bir şey bulabilecek miyiz. Bi önceki blog yazıma geri dönüyorum. Sayfanın boş bir yerine sağ click yapıp sayfa kaynağını göster diyorum.

Image

Karşımıza uzadıkça uzayan kod yığını çıkıyor. Ama en üste sanki dikkat çeken bir şeyler var. Hadi oraya bi yaklaşalım.

Image

Solda bir TE işareti sağ tarafta ise "pass-> 0a42b6b9dcd569f990dcde40f4ff73c5a24eb904" yazıyor. Belliki aradığımız şifreyi bulduk. Ama şifrelenmişe benziyor🤔. Hadi bunu da çözelim.

Bazı şifreleme metodları vardır genellikle veri bütünlüğünü için kullanılırlar. Bunlara md5, sha-1, sha-256, base64... örneklerini verebiliriz.

Buradaki şifremiz sha-1 ile şifrelenmiş durumda. Hadi bir decrypter kullanarak bunu kıralım.

Image

Gördüğünüz gibi şifremizi bulduk: bob123 Hadi şimdi steghide'da kaldığımız yere dönelim ve bulduğumuz şifreyi girelim.

Image

Şifremizi girdik (Şifre kısmının boş durduğuna bakmayın steghide otomatik olarak gizliyor) ve bize bir uyarı verdi: Ayıklanan dosya "yaklastin.txt" ismi ile kaydedildi diye. Yani steghide'ın bulunduğu klasöre bir yazı dosyası kaydedildi. Hadi açalım bunu bakalım ne çıkacak?

Image

Yazı dosyasının içinde sadece "/flag.html" yazıyor. Ee şimdi napıcaz? Derseniz bu belli ki bir sitenin sayfası. O zaman hadi tahaerel.com/flag.html 'i deneyelim :)

Image

Gerçekten de öyleymiş. Siteye girdiğimizde karşımıza bir qr kod çıkıyor. Hemen telefondan okutalım bakalım bu bize neler verecek?

Image

Ve son adımımıza geldik. Burda sanki bi şey yazıyo ama alfabedeki harfler yer değiştirmiş, kaydırılmış gibi 🤔. İşte burada da "Caesar Cipher" dediğimiz Sezar Şifrelemesi kullanılmış. Bunu kendiniz de çözebilirsiniz ancak yerinize online olarak yapan siteler mevcut. Hadi bir tanesiyle bulalım artık şu bayrağı!

Image

Vee qr koddan çıkan "MSHN=ILSRP IP WHYJH" yi 7 harf kaydırılmış şekilde decode ettiğimizde bayrağımızı bulduk.FLAG=BELKI BI PARCA Şaşırdık mı? Hayır.