Fincybersec2020 New Encoding Technology Write Up

สวัสดีครับ วันนี้จะมาเขียน Write Up หมวด Misc ข้อ New Encoding Technology จากงาน Fincybersec2020 ครับ

จากโจทย์

บริษัทประกันไซเบอร์ไลฟ์ จำกัด พัฒนาวิธีการ encoding ข้อมูลแบบใหม่โดยใช้ตัวอักษรภาษาไทยในสมัยสุโขทัยเป็น character set คุณซึ่งเป็นหัวหน้า Programmer พบว่าไฟล์เกิดความเสียหายจนไม่สามารถใช้งานได้ และต้องเขียนโค้ดใหม่ให้เสร็จก่อนส่งงาน

Encode Method: base39

Encoding Character SET: “กขฃคฅฆงจฉชซญฎฏฐณดตถทธนบปผฝพฟภมยรลวศษสหอ”

Encoded Text: “อญฃวนณรบกฃผฝฆษหชญนดฟษขงฉลขฟธซลรฃนอภดทยฅพณยอฐสธฎจธณปธฟผปรฎญฟถงปฃซฝผชนทฃฏฆตปฉฃวซผรญอมฟชลพมสษชฎทฆขฃตธจภมฆฏภกดงฐพธปนญถลวฐธฅฐคญฎขสชฃพหทกจชมซดฆขปฝมขฅขฆษธปยฐตกธฎศคทชฏฉฝฆษฆธบฐผศชฐมรญงชษลฆคถษจนศรฆดคจถญดรปภฐฟซฆฏญณทอจฎฐลยยพตซกฎฝงษฃตนพฉรกจพรฉซงมษคฎขธฆนยธณรฝฃกวทฃทธฟรคกธฆตภ”

จะพบว่า ข้อความถูก encode ด้วย base39 ซึ่งมี Character Set เป็น “กขฃคฅฆงจฉชซญฎฏฐณดตถทธนบปผฝพฟภมยรลวศษสหอ” ข้อนี้ไม่ยากมากครับ ถ้าใครเคยเขียนฟังก์ชั่นแปลงเลขฐานมาก่อน ผมใช้ sourcecode จากข้อ Encoding Tool แต่ตัดฟังก์ชั่น shuffle ออกครับ

เมื่อ compile ก็จะพบ flag ครับ

Post a Comment