Tag Archives: Thaicert

ThailandCTF – My password collection (Write-up)

ในข้อนี้โจทย์มีชื่อว่า My password collection สามารถดาวน์โหลดโจทย์ได้ที่ลิงค์นี้ >>> disk.zip

ขั้นแรกให้ทำการแตกไฟล์ออกมาก่อน โดยใช้คำสั่ง unzip disk.zip จะได้ไฟล์ disk.dd ออกมา

ลองเช็คประเภทของไฟล์ดูก่อน โดยใช้คำสั่ง file disk.dd
จะเห็นได้ว่า Partition เป็น MSDOS ซึ่งจากประสบการณ์ ใช้ 7Zip แตกไฟล์ในคอมพิวเตอร์โดยตรงเลยง่ายกว่า 555+

เมื่อแตกไฟล์ใน Windows ด้วย 7Zip ก็จะได้ไฟล์ประมาณนี้

ไฟล์ข้างในแต่ละ Folder ก็จะได้ประมาณนี้

ทำการไล่เช็คประเภทของไฟล์ใน Document (เนื่องจากไม่มี .extension ทำให้ไม่ทราบได้ว่าเป็นไฟล์ประเภทอะไร)
โดยใช้คำสั่ง for f in Documents/*; do file $f; done

จะเห็นได้ว่าน่าสนใจทุกไฟล์เลย 55+ แต่เราจะทำการเช็ค 2 ไฟล์กันก่อน คือไฟล์ g ที่เป็นไฟล์ pdf และไฟล์ w ที่เป็น textfile
เมื่อดูข้อมูลใน textfile จะพบข้อความ VyAtMzAwClAgMApSIDI= ซึ่งแน่นอนว่ามันคือ base64 หลังจาก decode ก็จะได้ผลลัพธ์ตามรูปด้านบน

กลับไปดูอีกไฟล์ที่เป็น pdf ซึ่งจริงๆมันเป็นคำใบ้ในการเอา key ในขั้นต่อไป (จำรูปภาพ และ filters ด้านล่างไว้ให้ดีๆ 😁)

ไปดูที่อีกโฟลเดอร์บ้าง ในโฟลเดอร์ Pictures นั่นเอง เห็นอะไรแปลกๆมั้ยครับ 🙃

ใช่เลยครับ รูปแรกนี่แหละ เมื่อลองเปิดรูปดู จะเห็นว่าเหมือนมีข้อความโดนหมุนเป็นเกลียวอยู่!

จำไฟล์ pdf ที่เปิดก่อนหน้าได้ไหมครับ นั่นแหละ! มันคือคำใบ้!! อ้อ textfile อักอัน
ก่อนอื่นให้เปิดรูปด้วย Gimp ก่อนครับ จากนั้นไปที่ Filters → Distorts → Whirl and Pinch เพื่อจะทำการหมุนภาพกลับ
ซึ่งไม่ต้องไปงมให้เมื่อยว่าแต่ละค่าต้องหมุนไปที่เท่าไหร่ เพราะมันบอกไว้แล้วใน textfile ที่เป็น base64
จะได้ 4XAktWZ3tH7AHsO9

กลับไปดูใน Documents อีกรอบ จะเห็นว่าเหลืออีก 2 ไฟล์คือ f: openssl และไฟล์ p: Keepass
โดยไฟล์ f เป็น Encryption file แล้วจะแกะยังไง ในเมื่อไม่มี passphase 😂

งั้นกลับไปดูอีกไฟล์กันก่อน อันนี้ยอมรับว่าไม่รู้จัก เท่าที่ไปถามอากู๋มา ได้ความว่าเป็น Password Management ซึ่งส่วนตัวรู้จักแค่ Dashlane, 1Password และ Lastpass 555+
ทำการโหลด Keepass แล้วเปิดไฟล์ p โลดดดด ซึ่งจะเจอหน้าถามหา Master Password = =”
ลองเอา key ที่ถอดมาได้จากรูปภาพใส่ดู แล้วก็โป๊ะเชะ!

ด้วยความที่ไม่เคยใช้ ก็เลยลองเอาเมาส์ไปชี้เล่นๆดู เอ๊ะตรงนี้คืออัลไล (,__,  )a เก็บไว้ก่อน

ลองดับเบิลคลิกเข้าไปดูใน Text file ซะหน่อย จะเห็นว่าตรงช่อง Notes: มันว่างๆเหมือนไม่มีอะไร แต่ทำไมมันยาวววววว 😶
เมื่อเลื่อนไปดูล่างสุด เหมือนจะเจอ key อีกแล้ว แต่มันไม่ใช่ flag !!!
UzE0f6Sb2ZvUtvsD

ตอนนี้ใน Documents ก็เหลือไฟล์เดียวแล้ว คือไฟล์ f: openssl
จากที่บอกข้างต้นว่ามันเป็น Encryption data ต้องใช้ key ในการ Decryption ซึ่งแน่นอนเหลือ key เดียวแล้วที่ยังไม่ได้ใช้ และเพิ่งแกะออกมาได้

ซึ่งในการ Decryption ต้องรู้ก่อนว่าใช้ Algorithm อะไร และแน่นอนว่ามันคือ AES-256-CBC ที่โจทย์ได้ทำการใบ้ไว้ใน Keepass
เมื่อทำการ Decrypt แล้วก็จะได้ Flag ออกมา 😎

THCTF{Uu5AzrJD3mMKDG0z}

จอบอ. 😁