Money Flowz คริปโตฯ โอเค Write-up

Datafarm
3 min readJan 24, 2022

--

ในช่วงสัปดาห์นี้ทาง บริษัท ดาต้าฟาร์ม จำกัด ได้มีการอบรมภายใน ในหัวข้อ

“Introduction to blockchain and cryptocurrency world”

หลังจากอบรมจึงนำ CTF ที่เกี่ยวกับ OSINT blockchain + Cryptography มาให้ทีมได้ลองเล่นกัน ซึ่งโจทย์มีอยู่ว่า

Information:

Network Rinkeby Testnet (https://rinkeby.etherscan.io)

Address From 0x888888887f29badddd5723dc1802246cdc010004

To 0x9943da0e5a38d6116b862af3ec6e2627db453596

Amount 0.000666 Ether

— — — — — — — — — — — — — — — — — —

Questions :

จากข้อมูลดังกล่าว ให้หา

  1. Transaction Hash คือ ?
  2. Flag คือ ?

— — — — — — — — — — — — — — — — — —

Walk through

จากเบาะแสที่ให้หา คือต้องหา Transaction (Txn) Hash ที่โอนจาก Adress 0x888888887f29badddd5723dc1802246cdc010004 ไปยัง 0x9943da0e5a38d6116b862af3ec6e2627db453596 จำนวนยอด 0.000666 Eth

ดังกล่าว Network ที่ระบุไว้ตามในโจทย์คือ Network Rinkeby Testnet

เราก็เข้า https://rinkeby.etherscan.io เพื่อไปหาเบาะแสดูกันเลย

อ่ะแน่นอน เราก็ต้องลองเอาเลข Address ไป Search หาดูหน่อยซิ

จากที่เราลองไปไล่หายอดไหนที่โอนไป Address 0x9943da0e5a38d6116b862af3ec6e2627db453596

ที่เป็นยอดจำนวน 0.000666 Eth

เราเหมือนเห็นละ แว่บๆ ว่าเป็น Txn Hash 0x3b0ff1a2ce05d82de6d70c4e139d603f9a526b157877fc4f6d0b42d08250bbf1

https://rinkeby.etherscan.io/tx/0x3b0ff1a2ce05d82de6d70c4e139d603f9a526b157877fc4f6d0b42d08250bbf1

แต่อาจจะมีกรณีที่มีการทำรายการซ้ำๆ ที่โอนไปยัง Address เดิม ยอดเดิม หรือบางครั้ง Address ของเป้าหมายนั้นมีข้อมูลหรือปริมาณ Txn ที่สูงมากจนทำให้เราไม่สามารถมองแค่แว่บเดียวแล้วรู้

ตรงนี้เราลอง Export รายการทั้งหมดของเขามาเป็น .csv เพื่อไป filter อะไรดูกันอีกที

(Tools ในการเล่นกับ data ตรงนี้แล้วแต่ใครถนัดเลยนะครับ ในตัวอย่างนี้ก็จะเป็น Excel)

หลังจากที่เรา filter มันก็มีอยู่อันเดียวงั้นก็ ชัดเลย!

Txn Hash 0x3b0ff1a2ce05d82de6d70c4e139d603f9a526b157877fc4f6d0b42d08250bbf1 อันนี้แน่นอน

ไหนไปดูกันต่อซิเข้าหน้า https://rinkeby.etherscan.io/tx/0x3b0ff1a2ce05d82de6d70c4e139d603f9a526b157877fc4f6d0b42d08250bbf1 มันจะมีเบาะแสอะไรบ้าง

มองผิวเผินอาจจะไม่มีอะไรเอาไว้ใช้เป็น Flag ได้ แต่ลองมองดีๆ มันยังมี Click to see More นะ

(โดยปกติแล้วตอนสร้าง Txn ของ Ether นั้นเราสามารถ Input Data เข้าไปได้)

ไปดูกันต่อ

เอ้ะๆ รายการอื่นๆ ก็ไม่มี Input Data แต่ทำไมรายการนี้มันมี Input Data อะไรเนี่ย

ไหนลองเปลี่ยนมุมมองดูเป็นแบบอื่นหน่อยซิ

แต่เปลี่ยนดูแล้ว มันก็ยังอ่านไม่ออก…

โจทย์มันเป็นเรื่อง Cryptography ก็คงไม่พ้นเข้ารหัส/ถอดรหัสแน่เลย (รึเปล่า?)

ไหนลองเอาไปเชฟเขาไปแงะเขาไปปรุงดูหน่อย

(Tools ที่ใช้ Encode/Decode ในครั้งนี้คือ CyberChef https://gchq.github.io/CyberChef/CyberChef_v9.32.3.zip แนะนำให้โหลดและใช้เป็น Offline และปิดการเชื่อมต่อออกก่อนหากมีข้อมูลสำคัญหรืออ่อนไหว)

Copy ใน Input Data ไปลองใส่ใน CyberChef ตรง Input แล้วเลือกเครื่องปรุงดูเอง ละก็ลอง Bake กันดู

โดยปกติเราอาจจะต้อง Validate ตัว Data ของเราก่อนว่าเข้ารหัสมาเป็นแบบไหน ตัว CyberChef เองจะมีตัว Operations (Recipe) Magic หรือพวก Operations Detect ไว้ช่วย Validate ได้เหมือนกัน หรือแล้วแต่ความถนัดของแต่ละท่าน ซึ่งการ Validate นี้เราอาจจะพบข้อมูลหรือไม่พบก็ได้

เบื้องต้นลองใช้ Detect File Type ดูก่อนละกัน

อ่ะได้ข้อมูลแล้วว่าเป็นชนิดรูปภาพที่เข้ารหัสเป็น Base64

ทีนี้มาลองใช้เครื่องปรุง (Recipe) เป็น From Base64 และ Render Image เลยแล้วกัน

นั่นไง! โผล่มาแล้ว

หรือเราสามารถ Save มาเป็นรูปได้เลยโดย Save Output แล้วเปลี่ยนชื่อไฟล์ตามด้วยนามสกุลรูปภาพ

และแล้วคุณก็ได้พบกับคำตอบนั้นแล้ว !!

1. Transaction Hash คือ ?

0x3b0ff1a2ce05d82de6d70c4e139d603f9a526b157877fc4f6d0b42d08250bbf1

2. Flag คือ ?

FL4G{D4T4F4RM_C0_L7D}

--

--