แงะแอพ QuizClash แบบบังเอิญ

Thursday, November 17, 2016 10:08 PM 8 Comments ,

ช่วงนี้แอพ QuizClash กำลังเป็นที่นิยมในหมู่เพื่อนฝูงจึงได้มีโอกาสโหลดมาเล่นบ้าง ด้วยความบังเอิญขณะนั่งทำ MITM โทรศัพท์ตัวเองอยู่เพื่อที่จะดูว่าแอพ Facebook มันยังใช้ Certificate Pinning อยู่รึเปล่า ปรากฎว่าแอพ Facebook ยังใช้ Certificate Pinning อยู่ แต่มีบางโดเมนที่ไม่ได้ใช้ (Facebook เริ่มใช้ Certificate Pinning ประมาณเดือนตุลาคมปี 2015) ซึ่งขณะที่นั่งทำ MITM อยู่ก็ได้กดเข้าไปเล่นเกมส์ QuizClash และก็ได้พบอะไรบางอย่างเกิดขึ้น . . .

ย้อนกลับไปเมื่อตอนโหลดแอพ QuizClash มาเล่นในทีแรกก็เกิดข้อสงสัยคือทำไมแอพมันโคตรใหญ่จังเลยวะ

Android  ~58 MB
IOS  ~99 MB

ในทีแรกก็คิดว่ามันคงยัดพวกคำถามกับพวกรูปภาพลงไปในแอพเลย ปรากฎว่าไม่ใช่ มันโหลดคำถามและรูปภาพจาก Network ดังภาพ



จากภาพก็จะเห็นว่ามีการใช้ Facebook SDK สำหรับการ Login (เพราะผม Login ด้วย Facebook ในการเล่น)

ตัวเกมส์ก็จะทำการ Login ด้วย Token ของตัวเองด้วยดังภาพ


ที่น่าสนใจคือมีการใช้ HMAC ด้วย น่าจะใช้สำหรับเชคความถูกต้อง Request พูดถึง HMAC แล้วก็คิดถึง Ragnarok

และที่น่าสนใจที่สุดคือ Request นี้


มันคือ Request ในการโหลดคำถามและคำตอบของเกมส์ที่เราเล่นกับเพื่อนคนใดคนหนึ่ง ซึ่ง Response เป็น JSON มีขนาดประมาณ 75KB ตัวอย่าง JSON ก็ดังภาพด้านล่าง 



ซึ่งคำถาม - คำตอบจะไม่มีการเปลี่ยนแปลง ถ้าได้ JSON ไฟล์นี้มาก็จะสามารถตอบคำถามได้ทุกข้อล่ะ 555+

ส่วนแอพที่มีขนาดใหญ่นั้นเมื่อได้ลองแกะดูเบื้องต้นน่าจะมาจาก Resource ไฟล์ภาพนั่นเอง ซึ่งตัวแอพ support หลาย locale เลยต้องมีภาพเยอะตามแต่ละ locale ไปด้วย



จบแล้วครับ

ปล. เพื่อการศึกษาเท่านั้น

8 comments:

  1. หาชื่อเกมตั้งนาน

    ReplyDelete
  2. ปกติแล้ว data พวกนี้ พี่ build จาก mobile เข้าโปรแกรม burpsuite ยังไงอ่ะครับ

    ReplyDelete
  3. root โทรศัพท์ แล้วลงแอพ ProxyDroid แบบนี้หรือเปล่าครับ ถึงจะเห็น requests ได้

    ReplyDelete
  4. @Mnosuk สามารถตั้งค่า Proxy ได้ในส่วนของ Setting โทรศัพท์ได้เลยครับ

    @Apisit Somtapthai ไม่จำเป็นต้องเป็นเครื่อง root ครับ สามารถตั้งค่า Proxy ของระบบได้เลยครับ

    สำหรับการที่จะ intercept https สามารถทำได้โดยการ export cert จาก burpsuite แล้วนำไป install ยังโทรศัพท์ครับ

    ReplyDelete
  5. ปัจจุบัน 24/11/2016 เวลา 22:44 ไม่สามารถดู JSON แบบที่คุณเจอได้แล้วใช่หรือไม่ครับ

    เนื่องจากเมื่อสักครู่ ผม Install cert ที่ ios device ของผมแล้ว ผมดักได้แต่พวก ads ในเกมตลอดเลยครับ ไม่เห็นได้ JSON ข้อมูลตามที่คุณโพสเลย ไม่ทราบว่า ตอนนี้คุณยังเห็น JSON response ที่ดักจับที่ Burpsuite ได้อยู่อีกหรือไม่

    ReplyDelete
    Replies
    1. 25/11/2016 09:02 ตอนนี้ใน Android ยังสามารถดูได้อยู่นะครับ

      Delete
  6. This comment has been removed by the author.

    ReplyDelete