CTF-CYBERCAMP2019-WRITEUP

CyberCamp2019 CTF WriteUp

Son dakikalara kadar heyecanı bir an olsun azalmayan eğitici ve öğretici bir yarışma olduğunu söyleyebilirim. Yarışma süre zarfında, yarışmanın heyecanından soruların ekran görüntülerini almayı unutmuştum, verilen ekstra süre olmasaydı alamıyordum süre içinde ayriyeten teşekkür ederim.

CRYPTO 50

Yarışmanın sonlarına doğru çözdüğüm bir soru her yolu denedim puan düşüklüğü, sorunun kolaylığı sinirlerimi daha fazla bozdukça çözmekte o kadar zorlandım. Evet sorunun içerisin de cevap verilmiş zaten “Daha yolun başındayız.” yolun başının dosya adının olacağı çok sonradan aklıma gelse de çözdüm.

“952fe65eab236e7e209a2eb993a26d69” değeri https://www.md5online.org/md5-decrypt.html adresinden decrypt ederek flag bulundu.

Flag{Bas@ril@r}

CRYPTO 100

Kesinlikle “Sezarın Hakkı Sezara Verilmiş” , verilen s6r4.txt dosyasının içerisinde rxms{e3lmdxm_qx_qxq_tqb_nqdmnqd_fgdwoqxxq} olarak verilen kısım aslında bize uzaktan flag olduğu konusunda ipucu veriyor, https://www.dcode.fr/caesar-cipher adresinden yaptığımız brute-force şifreleme atakları ile sezarın bir türü olan ROT-12 de çıktığını görüyoruz evet Flag tam olarak bu değildi tek farkla “SZAR” kelimesinde “E” yerine “3” eklemem flagi bulmama yetti.

flag{s3zarla_el_ele_hep_beraber_turkcelle}

CRYPTO MATRUŞKA

Gerçekten Matruşka, bize verilen parola.txt dosyasında bulunan parolaları hazır bir zipCracker.ps dosyası yardımı ile brute-force ataklarını başlatıyoruz.

Şifremiz “tokyo”. Bulduğumuz şifre ile Flag_nerde.zip dosyasının içerisine girerek içerisinde bulunan Flag_nerde.txt dosyasının içerisindeki 35.189.222.238 adresine gidiyoruz. Sayfa kaynağını incelediğim zaman herhangi bir şey bulamadım. Alt dizinleri bulmak için “dirb” komutunu kullanıyoruz.

/ Dokuwiki / dizinini buluyoruz.

Flag_nerde.txt dosyasının içerisinde bulunan Password: h@nc0ck parolasını / dokuwiki / dizininde bulduğumuz .zip’ler üzerinde deniyoruz ve hero.zip klasörünün içerisini açıyoruz.

y_dosya.txt dosyasında bulunan flag:$6… ile başlayan kısım ve diğer kısımalar / etc/ shadow içerisinde bulunan kullanıcı şifreleri ile ilgili ek özelliklere sahip kullanıcı hesabının şifreli formatta bulunmasıdır. Bu alanda her kullanıcı için satır başına bir giriş içerir.

https://www.cyberciti.biz/faq/understanding-etcshadow-file/ adresinden bulduğum shadow dosyalarının alanları hakkında bilgi sahibi olmak için bulduğum bir web sitesidir.

Şifre alanımızın SHA-512 olduğunu anlıyoruz. Fakat buradan sonra ilerleyemediğimi herhangi bir sonuca ulaşamadığımı üzülerek söylüyorum eğer x.txt ve y.txt dosyalarını kullanarak çözebilen arkadaşlar var ise bana ulaşmalarını rica ediyorum :)

Peki nasıl mı çözdüm ? Şifreyi bulmak sadece 1 dakikamı alıyormuş meğerse https://passwordrecovery.io/zip-file-password-removal/ adresine flag.txt.zip dosyasını yükleyip şifresini kırıyoruz “rolex”

Şükür kavuşturana…

Flag{Cakma_r0lex_Ama_b1re_b1r}

FORENSİC 100

Kesinlikle bu kadar kolay olmamalıydı. Fazla ayrıntı düşünmeye gerek yokmuş meğerse, detaylara-odaklan.jpg dosyasının içerisindeki stringleri arattığımız zaman md5 değeri elde ediyoruz.

Flag{B4nlar_Art1k_Eskidi_B3}

FORENSİC 150

Puanına göre gayet iyi bir soru bence. Gozlerini-iyi-ac.pdf dosyasını binwalk ile taradıktan sonra altında çıkan dosyaları dışarı çıkarttım ve parolayı (C@e2ybN0rz&1eC9) buldum.

Tabi pdf içerisinde beyaz ile yazılmış alanı görünce…

questions.rar içerisinde şifreyi girerek flagi görebilirsiniz.

Flag{Ar4-B3n1_Bul-B3ni}

FORENSİC 200

Verilen incele.pcapng dosyası .pcap benziyor sanki, .pcapng to .pcap online sitelerinden veya direk uzantıyı değiştirerek ulaşabilirsiniz. .pcap uzantısı wireshark ile incelenen bir yapıdır. İlk olarak online .pcap analiz sitelerinde aramaya başladım bir sonuç elde edemeyince binwalk ile denedim. Binwalk ile içerisindeki dosyaları görünce “binwalk -D ‘ png image: png ‘ incele.s0i0.pcap” komutu ile .png ile dosyaları dışarı export ettim.

Export ettiğimiz karekodu okuttuğumuz zaman flag e ulaşmış olacağız.

Flag{K@r3_b_d_k0d}

FORENSİC 500

İlk aklımıza gelen tool tabikide “Volatility”, hemen hemen bütün yarışmaların forensic kısmında rastlıyoruz kendisine.

Verilen ram imajını kullanarak “volatility -f cybercamp.mem imageinfo” imajın bilgilerini çekiyoruz “Win7SP1X64” .

Hashdump komutunu ekleyerek kullanıcı şifrelerinin hash şifreli halini buluyoruz.

Flag{Aa123456}

MISC-GAMER150

Çözmesi bayağı zevkli bir soru daha, dirb komutu ile alt dizinleri sorguladığım herhangi bir sonuç elde edemedikten sonra game dizini varmı acaba ? diye sorup denedim.

Daha sonra game.html sayfasına girip kaynaklarda oyun sitesini buluyoruz.

Ve oyun başlasın :) Çok zamanımı aldı, BASEALTMISDORT »» SANDIN »» AMA »» BIR »» FARKLA »» XORLU diye oyunu bitirip şifreyi kullanacağımız bir yer aramaya başlıyoruz. Bir dizin daha buldum https://challenge4.cybercamp2019.com/future/ altında bulunan ya_ka_lan_dim.txt dosyasının içerisinde base64 sandığımız XOR ile şifrelenmiş GTM+OCQQADtsOG4zO2wAbiZuAGw4M2wxO240Ig== kodu buluyoruz.

Gerçekten çok eğlendik :)

Flag{O_d3g1ld3_1y1_3gl3nd1k}

OSINT 200

Twitter hesabına giriyoruz.

Profil resminde bulunan adresle devam ediyoruz.

Profil resminde bulunan adrese gittikten sonra oku dosyasını görüyoruz gri renkle yazılmış base64 aşağıya saklanmış.

Base64 decode ettikten sonra https://github.com/4z4/Sh3 adresini veriyor.

Flag{AzizSancar}

OSINT 250

Kahve ve kolada bulunan kafein, Gaziantep’in plakası 27 :)

Atılan twit içerisinde bulunan sezar ile kodlanmış şifrelemeyi decrypt ederek yukardaki sonucu buluyoruz.

Sibertehdit.com sitesine ping atarak ip adresini tespit ediyoruz işte flag..

Flag{94.73.151.111}

OSİNT 300

Verilen malicious_3b6d004effbe36c14bb0fd6b1a57e62a.pdf dosyası içerisinde strings araması yapıyoruz.

İçerisinde “http://142.93.60.125:9000” adresine rastlıyoruz. Bizi yönlendirdiği sayfa botnet sayfasıdır karşımıza giriş paneli bulunmaktadır. https://github.com/danielmiessler/SecLists/blob/master/Passwords/Malware/mirai-botnet.txt adresinde bulduğum seclist brute-force kullanılarak root xc3511 giriş bilgileri bulunarak sisteme giriş yaptım tabikide ilk yaptığım şey bulduğum kullanıcı bilgilerini flag olarak denemem oldu, daha sonra sistemde bulunan user-password flag sanıp denedim tabikide doğru değildi, sistemin içerisinde /admin dizininde buludğum db2user admin1! Kullanıcı bilgileri son denediğim cevaptı :)

Flag{db2user || admin1!}

WEB 100

Tek yapmamız gereken Respose Headers alanının içerisindeki isadmin içeriğini kontrol etmekmiş.

Flag{k1m_k0ydu_l4n_bunu_bur4y4}

WEB 200

Dirb tool u ile alt dizinleri kontrol ediyoruz. Admin.php sayfasına gittiğimiz zaman standart karşılama sayfası çıkıyor. Response Headers alanıdaki ısadmin değerinin içerisindeki Md5 i decrypt ettiğimiz zaman “false” olduğunu görüyoruz bu değer yerine “true” değerinin Md5 değerini encrypt ediyoruz ve tek yapmamız gereken curl ile istek atarken isadmin alanına “true” değerinin Md5 değerini vermek oluyor.

Flag{1s_th3_b3st_c00k1e}

WEB 500

Tabikide bakacağımız ilk yer robots.txt dosyası olacaktı. İsterseniz dirb komutu ile alt dizin kontrollerini yaptırabilirsiniz. /robots içerisinde bulDum.php dosyasını görüyoruz.

Ping at da görelim sayfası bizi karşılıyor. Verilen kutucuğu konsol olarak kullanmaya çalışacağız » ls komutu yazarak dizinleri listeleyebilirsiniz artık konsol olarak kullanabiliyoruz. Bakalım başka bir şey bulabilecek miyiz |find *flag* komudu ile sağında veya solunda flag geçen bir dosya aratıyoruz.

/ update /flag.php dosyasını ve flagi buluyoruz.

|cat ./update/flag.php komutunu gönderdiğimiz istediği tarayıcının network sekmesinden “Copy this request as cURL” ile kopyalıyoruz. Ve aynı isteği terminalden tekrar gönderiyoruz. Komutun çıktısı olarak Flag{Toprak_devletin_temelidir_hiç_kimseye_verilmez}

flagimizi buluyoruz.

Flag{Toprak_devletin_temelidir_hiç_kimseye_verilmez}

LİNUX

LİNUX 4

Soruda verilen sanal makine imaj dosyasını Vmware veya Virtual Box gibi sanallaştırma yazılımlarında açtım.

Linux sistem olduğu için default olarak gelen root toor bilgilerini denedim.

LİNUX 7

moti kullanıcısının giriş tarihi karşından verilmiştir. İşte flag.

LİNUX 9

var/log/apache2# içerisinde bulunan access.log dosyasının içerisinde yapılan saldırıların isteklerini grep SELECT diyerek görüntüleyebilirsiniz. wc -l ekleyeceğiniz komut size SELECT isteklerini tek verecek fakat direk ip adresini aratırsanız tüm istek sayısını verecektir.

Flag{702}

LİNUX 10

/var/log/apacha2 içerisinde crontab -l sorgusu yaparak istek atılan url adresine ulaşabilirsiniz.

LİNUX 1

Şifrelerin içerisinde tutulduğu shadow dosyasının içerisinde grep komutu ile cybercamp kullanıcısına ait şifreyi aratıyoruz. Bulduğumuz değer şifrenin hash ile kodlanmış halidir.

LİNUX 3

v komutu ile versiyonunu görüntüleyebilirsiniz.

Flag{2.4.29}

LİNUX 8

/var/log/apache2 içerisinde bulunan access.log dosyasının içiçnde bulunan istekleri görüntüleyebilirsiniz.

/sqli istekleri 172.16.172.133 tarafından yapılmıştır.