THT DUYURU

chat
Capture The Flag Vulnerable VM Walkthrough & Capture The Flag (CTF) Writeup Yazabileceğiniz Bölüm

ugursuz reklam
takipci
Seçenekler

PicoCTF 2017 Level1 Çözümleri/Hacknology

Hacknology - ait Kullanıcı Resmi (Avatar)
Geliştirici
Üyelik tarihi:
10/2015
Nereden:
rm -rf /
Mesajlar:
2.703
Konular:
151
Teşekkür (Etti):
930
Teşekkür (Aldı):
1245
Ticaret:
(0) %
8
8194
28-04-2017 09:03
#1
Merhabalar, bir süre aranızda olamayacağımdan dolayı arada bir böyle paylaşıcak konu hazırlıyorum. İlk olarak da geçtiğimiz günlerde sonlanan picoCTF nin çözümlerini paylaşmak istedim

PicoCTF Level1 Çözümleri:

Adli bilişim:
[0x00]-[Digital Camouflage]

Bize burada bir data.pcap dosyası veriyor ve buradan en son giriş yapan kişinin şifresini öğrenmemizi istiyor.

Pcap dosyalarında kabaca en son yapılan network aktivitelerini izleyebiliriz, yani kullanıcının yaptığı her işlem o dosyada olacaktır. İndirip wireshark ile dosyayı açalım. Karşımıza TCP, ARP, ICMP, HTTP gibi paketler çıkacaktır. Şifreyi bulmak için HTTP paketlerine göz atalım, filtreye HTTP ekliyorum vee
Bam! HTTP paketleri önümüzde ve bir adet "POST" parametresi var. Şifre bu pakette gönderilmiş olmalı, açalım
Kod:
Form item: "userid" = "spiveyp"
Form item: "pswrd" = "S04xWjZQWFZ5OQ=="
Bingo! Şifre bu paketteymiş ama şifreli ( ( ) sondaki == e bakarak kabaca bunun bir base64 olduğunu tahmin edebilirim. Python'un gücüne başvuralım
Kod:
>>> import base64
>>> base64.b64decode("S04xWjZQWFZ5OQ==")
'KN1Z6PXVy9'
>>>
Şifreyi bulduk, flag'i giriyoruz:
Kod:
KN1Z6PXVy9
[0x01]-[Special Agent User]
Burada ise bize başka bir data.pcap dosyası verip User Agent bilgilerini bulmamızı istiyor. Tekrar http dosyalarına bir göz atalım. Ben burada deneme yanılma yoluyla bütün HTTP paketlere göz attım.
Flag:
Kod:
User-Agent: Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))\r\n
Ağ Sömürüsü:
[0x00]-[What is Web?]

Burada bize bir website veriyor ve bu websiteden bir flag'a ulaşmamızı istiyor. Websitenin url'sini verelim.
Kod:
http://shell2017.picoctf.com:4443/
Görünürde oldukça normal, şirin bir kedi bile var! Bakalım burada nasıl flag'a ulaşacağız. Sitenin kaynak kodlarına göz atalım:
CTRL+U kombinasyonunu kullandım ve altta bir yorum satırı dikkatimi çekti, burada flag'in 3 kısımdan oluştuğunu söylemiş ve ilk kısmını vermiş
Kod:
The first part of the flag (there are 3 parts) is 72b28b258d2
İlk kısmı bulduk, burada iki adet dosya dikkat çekici. burada "hacker.css" ve "script.js" adında iki adet dosya var. İkisine de göz atalım
hacker.css:
En baştaki yorum satırı bize flag'in ikinci kısmını veriyor:
Kod:
b2ea021486f
script.js:
Bu javascript dosyasının tek işlevi butona basınca "Hi There" çıktısını ekrana yapıştırmak. Ama üstte gene bir yorum satırı ile flag'in kısmı bize verilmiş.
Kod:
ddd5020451d
Bundan dolayı toplam flag
Kod:
72b28b258d2b2ea021486f
Kriptografi:
[0x00]-[keyz]

Burada bizden istediği şey kendimize ait bir ssh key yaratmamız, public keys olarak eklememiz ve istediği yere ssh bağlantı sağlamamız. Zaten bize nasıl yaratacağımızı gösteren bir siteyi vermiş
Kod:
https://confluence.atlassian.com/bitbucketserver/creating-ssh-keys-776639788.html
Buraya gelip gerekli adımları uyguluyoruz ve kendimize bir adet ssh key oluşuyor. Sonra authorized_keys i editliyoruz
Kod:
nano authorized_keys
yaptıktan sonra yapıştırıp "Ctrl+X" kombinasyonu ile çıkıyoruz. Chmod ile gerekli izinleri verdikten sonra(600) ssh bağlantısını shell2017.picoctf.com a yapıyoruz
flag:
Kod:
who_needs_pwords_anyways
[0x01]-[Substitute]
Bize bir büyücü bu metni veriğini ve ne demek istediğini soruyor. Tek yapmam gereken Substitute decode yaparak bir google araması yapmaktı ve karşıma "https://www.guballa.de/substitution-solver" sitesi çıktı. Metni çevirdiğimde ise ilk karşıma gelen cümle "THE FLAG IS IFONLYMODERNCRYPTOWASLIKETHIS" oldu. Flagi giriyoruz
Kod:
IFONLYMODERNCRYPTOWASLIKETHIS
[0x02]-[Hash101]
Benim bu CTF de en çok beğendiğim kriptografi sorusu oldu. Gerçekten oldukça eğlenceliydi. Verdiği siteye netcat ile bağlanalım ve oyun başlasın

Level1-Birler ve Sıfırlar:
Bize bir ikili binary vermiş ve ascii karşılığını soruyor. Google a binary to ascii yazalım ve karşımıza çıkan ilk sitede taratalım bakalım.
Bingo! Bana verilen binary dizinin karşılığı "earth" kelimesiymiş. Hemen girelim

Level2-Hex ve decimal:
Bize ilk levelde vermiş olduğu kelimenin hex ve decimal karşılığını soruyor sıra ile. hex karşılığını kolayca bulmak için python'un nimetlerinden faydalanacağım
Kod:
>>> 'earth'.encode('hex')
'6561727468'
>>>
Hex karşılığını verdi, girelim

Decimal için ise gene google'a başvuracağım, hex to decimal yazıyorum

Google'daki ilk siteden de decimal karşılığımızı alıp girdim. Level3 e attı beni

Level3-Şifreleme fonksiyonu:
Bize örnek bir şifreleme fonksiyonu söylemiş ve bu fonksiyonu oluşturup çıktıyı 15 veren bir sayı bulmamızı istemiş. Fonksiyon aynı şöyle
"Bir sayıdaki bütün rakamların sayı değerlerini topla, mod16 yı al ve kalan 15 olsun"
Öncelikle neyin 16 sını alırsak kalan 15 olur? 31 sayısının. Şimdi sayı değerleri 31 olan bir sayı bulalım. "9994" bizim için ideal, deneyelim.
Doğru!

Level4-Gerçek bir şifreleme:
Basitçe, bir md5 verip çözümünü istemiş. Kolay olacağını tahmin ederek online sitelere bakıyorum. Buldu! "4ss37" ymiş. Verdiği flag'i vererek ilerleyelim.

[0x03]-[computeAES]
Oldukça basit bir soruydu, key ve text vermiş ve base64 olduğunu da söylemiş. Hemen bir python scripti oluşturayım.
Bize verdiği bilgilere göz atalım:
Kod:
Encrypted with AES in ECB mode. All values base64 encoded
ciphertext = I300ryGVTXJVT803Sdt/KcOGlyPStZkeIHKapRjzwWf9+p7fIWkBnCWu/IWls+5S
key = iyq1bFDkirtGqiFz7OVi4A==
Buna hemen bir Python scripti oluşturalım.
Kod:
from Crypto.Cipher import AES
from base64 import b64decode
key = b64decode(raw_input("[>Key: "))
text = b64decode(raw_input("[>Text: "))
hackno = AES.new(key, AES.MODE_ECB) 
cozulen_text = hackno.decrypt(text)

print "[+] Flag : {}".format(cozulen_text)
Şimdi bilgileri girelim bakalım
Kod:
[>Key: iyq1bFDkirtGqiFz7OVi4A==
[>Text: I300ryGVTXJVT803Sdt/KcOGlyPStZkeIHKapRjzwWf9+p7fIWkBnCWu/IWls+5S
[+] Flag : flag{do_not_let_machines_win_2d4975bc}__________
>>>
flag{} tagının içerisindeki giriyoruz ve başarılı!

[0x04]-[computeRSA]
Bize şifrelenmiş hali 150815 bir sayı ve d=1941, n=435979 bilgilerini veriyor. Altta ise matematik formulünü. "sayı = şifrelenmişsayı ^ d modN"
hemen değişkenleri yerlerine yazalım
Kod:
>>> x = 150815**1941%435979
>>> print x
133337
>>>
133337 imiş sayı, girelim.

Tersine Mühendislik:
Hala çözülmedi...

Misc:
[0x00]-[Internet Kitties]

shell2017.picoctf.com a 2720 portu ile bağlanmamızı istiyor. Tek komutla bu işi yapabiliriz, muhtemelen bu seviyedeki en kolay soru buydu
Kod:
hacknology@shell-web:~$ nc shell2017.picoctf.com 2720                       
Yay! You made it!                                                           
Take a flag!                                                                
0385d4bad438ffd596c049d5796e83a2                                            
hacknology@shell-web:~$
Flag'i giriyoruz ve ilerliyoruz.

[0x01]-[Piazza]
Reklam sorusu

[0x02]-[Leaf of the Tree]
/problems/b70fe815d84b75004f724241458ea9cc de truck'ları takip edip flag'i bulmamızı istiyor. CTF lerin eğlenceli yanlarından bir tanesi de bu (: ben tek tek deneyerek buldum, ilerliyoruz

[0x03]-[looooong]
30 saniyede istenen sayıda istenen karakteri vermemizi istiyor, python'ı kullanalım
Benden 786 tane q ve bir tane 3 istedi
Kod:
'
>>> print "q"*786 + "3"
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3
>>>
[0x04]-[Leaf of the Forest]
Bu sefer çok daha fazla dosya var. Manuel olarak arayamayacağız, sadece "find" komutunu kullanarak bütün dosyaları çıkarttım ve ctrl+f yapıp "flag" sözcüğünü kullandım. Yol ortaya çıktı:
Kod:
./tree776de2/trunkf1d0/trunk2e70/trunk427b/trunk05c3/trunka801/trunk878b/tru
nkd3d6/branchccd0/flag
bu dizine ilerleyelim ve "cat flag" komutu ile flag'i okuyalım. İşte karşımızda!
Kod:
54a57e77602a964676e0d11da4074737
İlerliyoruz...

[0x05]-[WorldChat]
Verdiği adrese netcat ile bağlanıp chati takip edip flag'i bulmaya çalışacağız. Bağlanalım ve biraz bekleyip Ctrl+C ile işlemi sonlandıralım. Ondan sonra ister "grep" komutunu kullanarak ister ctrl+f komutu ile flag'i arayabilirsiniz. İpucu: Flag'i "flagperson" adlı kişi veriyor. Direkt onu filtreleyebilirsiniz.


MASTER CHALLENGE!

Elimizde bir site var ama geliştirici hala giriş sistemini yapmamış. Acilen giriş yapmamız gerekiyor, siteye bakalım.

"http://shell2017.picoctf.com:46677/" Site bu. ctrl+shift+I ile geliştirici konsolu açayım. client.js gözüme çarptı, bir java script dosyası. Herhangi bir isimle giriş yapmayı deneyeyim
Kod:
pword
:
"sadsad"
res
:
false
server_res
:
undefined
this
:
Window
Gördüğünüz gibi response değeri false dönüyor. Bunu true olarak editleyelim ve tekrar giriş yapmayı deneyelim.

Flag:
Kod:
client_side_is_the_dark_sidee5dbd5f8c6ae5e282766571e06569d50
---------------------
I surrender my soul
Odin hear my call

flag{Bur4si_b1r_0yun_park1}

hacknology@hacknologyroot:~/
KingSton666, SuLtan AbdaL Teşekkür etti.
MyGf - ait Kullanıcı Resmi (Avatar)
Researcher
Üyelik tarihi:
07/2016
Nereden:
Hall of Fame
Mesajlar:
3.280
Konular:
319
Teşekkür (Etti):
505
Teşekkür (Aldı):
1321
Ticaret:
(0) %
28-04-2017 09:08
#2
Ellerine sağlık hocam.
Konu MyGf tarafından (28-04-2017 09:13 Saat 09:13 ) değiştirilmiştir.
Leopic - ait Kullanıcı Resmi (Avatar)
Tamamen Askıya Alındı
Üyelik tarihi:
02/2016
Mesajlar:
9.940
Konular:
2066
Teşekkür (Etti):
27
Teşekkür (Aldı):
4319
Ticaret:
(0) %
28-04-2017 10:06
#3
Ellerine sağlık bu tür konuların devamını bekliyorum.
SeNZeRo - ait Kullanıcı Resmi (Avatar)
Green Team Lideri
Üyelik tarihi:
09/2016
Mesajlar:
5.083
Konular:
477
Teşekkür (Etti):
103
Teşekkür (Aldı):
1721
Ticaret:
(0) %
28-04-2017 10:07
#4
Eline emeğine sağlık. Umarız devamı gelir
KingSton666 - ait Kullanıcı Resmi (Avatar)
Tasarımcı
Üyelik tarihi:
04/2016
Nereden:
Büyükada
Mesajlar:
9.701
Konular:
988
Teşekkür (Etti):
3213
Teşekkür (Aldı):
2098
Ticaret:
(0) %
28-04-2017 10:07
#5
Ellerine sağlık
---------------------
Ruhumdaki düğümler fazlasıyla sıkı. Kimsenin onları çözecek kadar ince tırnakları yok. Bense çoktan vazgeçtim tırnaklarımı uzatmaktan. Kendimi bilmeyi bıraktım. Yanıtı olmayan bir soru olarak geldim dünyaya ve sorusu olmayan bir yanıt gibi de gidiyorum.
Hacknology - ait Kullanıcı Resmi (Avatar)
Geliştirici
Üyelik tarihi:
10/2015
Nereden:
rm -rf /
Mesajlar:
2.703
Konular:
151
Teşekkür (Etti):
930
Teşekkür (Aldı):
1245
Ticaret:
(0) %
28-04-2017 18:40
#6
Konu sabite çekilmiş, herkese teşekkürler
---------------------
I surrender my soul
Odin hear my call

flag{Bur4si_b1r_0yun_park1}

hacknology@hacknologyroot:~/
b0mb - ait Kullanıcı Resmi (Avatar)
Geliştirici
Üyelik tarihi:
03/2017
Nereden:
İzmir
Yaş:
18
Mesajlar:
471
Konular:
64
Teşekkür (Etti):
143
Teşekkür (Aldı):
220
Ticaret:
(0) %
29-04-2017 16:08
#7
Ellerine sağlık
Karaturkk2 - ait Kullanıcı Resmi (Avatar)
Yeni Üye
Üyelik tarihi:
05/2018
Mesajlar:
8
Konular:
3
Teşekkür (Etti):
0
Teşekkür (Aldı):
2
Ticaret:
(0) %
06-06-2018 21:50
#8
ellerine sağlık hocam
--------------------- Delinse yer, çökse gök, yаnsа kül olsа dört yаn, Yüce dileğe doğru yine yürürüz yаyаn. Yıldırımdаn, tipiden, kаsırgаdаn, yılmаyаn, ölümlerle eylenen tunç yürekli Türkleriz..
Shadowfire - ait Kullanıcı Resmi (Avatar)
Tamamen Askıya Alındı
Üyelik tarihi:
03/2018
Nereden:
KARANLIK
Mesajlar:
763
Konular:
130
Teşekkür (Etti):
48
Teşekkür (Aldı):
101
Ticaret:
(0) %
23-07-2018 01:40
#9
Hocam sağolasın

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler