- 13 Kas 2022
- 21
- 8
Herkese merhaba bugun Reversing Elf adlı ctf ımızı çözüceğiz iyi okumalar herkese
1.Task 1.Soru :Let's start with a basic warmup, can you run the binary?
ilk öncelikle bize bir dosya veriıyor indirıyoruz kali linux için anlatımdır bu arada dosyamız indikten sonra terminalimizi açıp şu kodu
yazıyoruz cd Downloads
.
bu komut bizi indirilenlere götürücektir sonraki hamlemiz ls yazmak ls yazdığımızda çıkan sonuçlarda bizim dosyamızın gözukmesi gerekli yoksa işlemi yapamayız
.
dosyamızın adı crackme1 buraya kadar her şey düzgün ise devam edelim sorumuzda binary ile çalıştırmaızı söyluyor onun için şu komudu yazıyoruz chmod +x crackme1
.
ondan sonra ise ./crackme1 yazıyoruz ve flagımızı alıyoruz flagımız ise:flag{not_that_kind_of_elf}
.
2.Task 1. Soru: What is the super secret password ? ilk öncelikle tekrardan bize verdiği yeni dosyamızı indiriyoruz bu sefer bizden süper şifresini istiyor
öncekinde yaptığımız gibi yetki veriyoruz dosyamıza ve açıyoruz bizden şifre isitıyor bu sefer şifremiz olmadığı için bu komudumuzu giriıyoruz strings crackme2
.ilk öncelikle bize bir dosya veriıyor indirıyoruz kali linux için anlatımdır bu arada dosyamız indikten sonra terminalimizi açıp şu kodu
yazıyoruz cd Downloads
.
bu komut bizi indirilenlere götürücektir sonraki hamlemiz ls yazmak ls yazdığımızda çıkan sonuçlarda bizim dosyamızın gözukmesi gerekli yoksa işlemi yapamayız
.
dosyamızın adı crackme1 buraya kadar her şey düzgün ise devam edelim sorumuzda binary ile çalıştırmaızı söyluyor onun için şu komudu yazıyoruz chmod +x crackme1
.
ondan sonra ise ./crackme1 yazıyoruz ve flagımızı alıyoruz flagımız ise:flag{not_that_kind_of_elf}
.
2.Task 1. Soru: What is the super secret password ? ilk öncelikle tekrardan bize verdiği yeni dosyamızı indiriyoruz bu sefer bizden süper şifresini istiyor
öncekinde yaptığımız gibi yetki veriyoruz dosyamıza ve açıyoruz bizden şifre isitıyor bu sefer şifremiz olmadığı için bu komudumuzu giriıyoruz strings crackme2
bu komut bize okunabilir kelimeleri göstermemizi sağlıyor ve işte bize şifreyi göstericek arasından yakalıyoruz şifremizi 1. sorumuzun cevabı: super_secret_password
şimdi ./cackme2 super_secret_password komutunu yazıyoruz ve flag elimize geçıyor
.
3.Task 1.soru: What is the flag? evet bayrağı bulmamızı istiyor tekrardan yetki verip çalıştıyoruz yeni indiridmiz dosyayı önceki sorumuzdaki gibi şifre istiıyor onun için
strings crackme3 komutunu aktif edıyoruz tekrardan şifremiz bir base64 tipi şifreleme kullanılmış bunu için
Base64 Decode and Encode - Online sitesine giriş yapıpı şifremizi oraya atıoruz ve orjinal şifreyi veriyor bize orjinal şifre ve flag :f0r_y0ur_5ec0nd_le55on_unbase64_4ll_7h3_7h1ng5
flagımızı aldık
.
4.Task 1.soru:Analyze and find the password for the binary? şifreyi çözememizi istiyor klasik aynı adımlarımızı atıyoruz yetki veriıyoruz ve çalıştıyoruz ve böyle bir hata gelıyor
.
This time the string is hidden and we used strcmp bu demektir ki strings komudu bi işe yaramaz onun için ltrace ./crackme4 testing komutumuzu yazıyoruz
yok ise sizde indirebilirsiniz komutumuzu yazdıktan sonra şifremizi elde ediıyoruz işte şifre : my_m0r3_secur3_pwd
5.Task 1.soru: What will be the input of the file to get output Good game ? Tekrardan dosyamızı indiriyor ve çalıştırıyoruz çalıştırdığımız zaman bizi ltraceve şifremiz arasında benzer bir dizi karşılaştırması yaptığını görebiliriz.
.Bu yüzden bu dosyamızı da Ancak bu kez strncmp()karşılaştırılacak maksimum karakter sayısını 3. parametre olarak kabul eden işlev kullanılıyor.Bu durumda ilk 28 karakter karşılaştırılıyo girdiye ulaşmak için de tekrardan:
ltrace ./crackme5 komutunu kullanıyoruz sonra =1 yapıyoruz ve elimize geçıyor :OfdlDSA|3tXb32~X3tX@sX`4tXtz
6.Task 1.soru:Analyze the binary for the easy password şifreyi elde etmemiz gerekıyor gene dosyamızı indirıyoruz cd Downloads sonra ls sonra yetki vermemiz gerekıyor tekrardan chmod +x crackme6
.
./crackme6 komutunu kullanıyoruz yazdığımızda bizden şifreyi istiıyor ve ek bilgi olarakda kaynağı incelememizi söyluyor onun için Ghidra adlı programı açıyoruz yeni proje oluşturup crackme6 dosyamızı yukluyoruz
.
crackme6 dosyasını ejderhaya doğru götürün ve analizi başlatıyoruz.Ekranda sol üst tarafta bulunan sembol ağacı bölümümden main klasörüne giriyoruz. Giriş yaptığımız zaman iste sağ tarafta bulunmakta olan kod çözücü bölümünde açılıcaktır.
şimdi ./cackme2 super_secret_password komutunu yazıyoruz ve flag elimize geçıyor
.
3.Task 1.soru: What is the flag? evet bayrağı bulmamızı istiyor tekrardan yetki verip çalıştıyoruz yeni indiridmiz dosyayı önceki sorumuzdaki gibi şifre istiıyor onun için
strings crackme3 komutunu aktif edıyoruz tekrardan şifremiz bir base64 tipi şifreleme kullanılmış bunu için
Base64 Decode and Encode - Online sitesine giriş yapıpı şifremizi oraya atıoruz ve orjinal şifreyi veriyor bize orjinal şifre ve flag :f0r_y0ur_5ec0nd_le55on_unbase64_4ll_7h3_7h1ng5
flagımızı aldık
.
4.Task 1.soru:Analyze and find the password for the binary? şifreyi çözememizi istiyor klasik aynı adımlarımızı atıyoruz yetki veriıyoruz ve çalıştıyoruz ve böyle bir hata gelıyor
.
This time the string is hidden and we used strcmp bu demektir ki strings komudu bi işe yaramaz onun için ltrace ./crackme4 testing komutumuzu yazıyoruz
yok ise sizde indirebilirsiniz komutumuzu yazdıktan sonra şifremizi elde ediıyoruz işte şifre : my_m0r3_secur3_pwd
5.Task 1.soru: What will be the input of the file to get output Good game ? Tekrardan dosyamızı indiriyor ve çalıştırıyoruz çalıştırdığımız zaman bizi ltraceve şifremiz arasında benzer bir dizi karşılaştırması yaptığını görebiliriz.
.Bu yüzden bu dosyamızı da Ancak bu kez strncmp()karşılaştırılacak maksimum karakter sayısını 3. parametre olarak kabul eden işlev kullanılıyor.Bu durumda ilk 28 karakter karşılaştırılıyo girdiye ulaşmak için de tekrardan:
ltrace ./crackme5 komutunu kullanıyoruz sonra =1 yapıyoruz ve elimize geçıyor :OfdlDSA|3tXb32~X3tX@sX`4tXtz
6.Task 1.soru:Analyze the binary for the easy password şifreyi elde etmemiz gerekıyor gene dosyamızı indirıyoruz cd Downloads sonra ls sonra yetki vermemiz gerekıyor tekrardan chmod +x crackme6
.
./crackme6 komutunu kullanıyoruz yazdığımızda bizden şifreyi istiıyor ve ek bilgi olarakda kaynağı incelememizi söyluyor onun için Ghidra adlı programı açıyoruz yeni proje oluşturup crackme6 dosyamızı yukluyoruz
.
crackme6 dosyasını ejderhaya doğru götürün ve analizi başlatıyoruz.Ekranda sol üst tarafta bulunan sembol ağacı bölümümden main klasörüne giriyoruz. Giriş yaptığımız zaman iste sağ tarafta bulunmakta olan kod çözücü bölümünde açılıcaktır.
...........................................................................................
compare_pwd adında bir işlev görmekteyiz. Daha derin inceleme yapabilmek için üstüne çift tıklayalım.İçine girdik şimdi de aynı şey my_secure_test faktörü içinde yapıyoruz.
.
evet şifremiz ortaya çıktı şifre:1337_pwd
7.Task 1.soru Analyze the binary to get the flag)bayrak bulmamız istenıyor klasik başlangıcmızı yapıyoruz dosyayı indirip yetki verıyoruz ve çalıştırıyoruz menu gibi bir şey karşlıyor kurcalıyıp bir şey bulamıyoruz
.
onun için Ghidra aracımıza dönup main faktörünü incelemek ile başlıyoruz incelerk dikkatımizi giveFlag adlı bir metin çekıyor.
..................................................................................
evet şifremiz ortaya çıktı şifre:1337_pwd
7.Task 1.soru Analyze the binary to get the flag)bayrak bulmamız istenıyor klasik başlangıcmızı yapıyoruz dosyayı indirip yetki verıyoruz ve çalıştırıyoruz menu gibi bir şey karşlıyor kurcalıyıp bir şey bulamıyoruz
.
onun için Ghidra aracımıza dönup main faktörünü incelemek ile başlıyoruz incelerk dikkatımizi giveFlag adlı bir metin çekıyor.
46. hattaki arama dikkatimizi çekiyor. Bir üstünde ise de değişkenimizin local_14 ile karşılaştırdığıda gözümüze çarpıyor. Daha ileride 20. hatta scanf()menü seçimimizi alan ve içinde saklayan bir çağrı var local_14. Şimdi tek yapmamız gereken 0x7a60 gizli menü seçeneğini belirlemek için onaltılıdan onluya dönüştürmek. Ghidra aracımızla bu işlemi yapmamız mümkündür. Üzerine gelip sağ tık yapmak yeterli
olucaktır.
evet çıkan şifreyi termınale dönüp çıkan panele giriıyoruz ve flag elimize geçıyor işte flag:flag{much_reversing_very_ida_wow}
................................................................................................
8.Task 1.soru:Analyze the binary and obtain the flag evet geldik son sorumuza önceki soru ile nerdeyse aynı klasik başlangıcmızı yapıyoruz ve şifre istiyor bizden
bunun için tekrardan Ghidra uygulamasına dönup main i incelemeye başlyıyoruz evet şifreleme yöntemi ile gizlenmiş şifremizi göruyoruz
bunun için tekrardan Ghidra uygulamasına dönup main i incelemeye başlyıyoruz evet şifreleme yöntemi ile gizlenmiş şifremizi göruyoruz
10. satırda şifre hexademical tipinde gizlenmiş biz bunu demical diyerek orjinalini çıkartıyoruz ve şifremiz elimizde
tekrardan terminale gidip şifreyi giriıyoruz ve flagımızı elde etmiş oluyoruz işte flag :flag{at_least_this_cafe_wont_leak_your_credit_card_numbers}
.
evet bugünkü ctfmiz bu idi umarım anlatımımı anlamış ve beğenmişsinizdir başka bir ctf çözümünde görüşmek dileği ile herkese iyi günler dilerim.
...........tekrardan terminale gidip şifreyi giriıyoruz ve flagımızı elde etmiş oluyoruz işte flag :flag{at_least_this_cafe_wont_leak_your_credit_card_numbers}
.
evet bugünkü ctfmiz bu idi umarım anlatımımı anlamış ve beğenmişsinizdir başka bir ctf çözümünde görüşmek dileği ile herkese iyi günler dilerim.
Son düzenleme: