ไปที่เนื้อหา


รูปภาพ

การ debug โดยใช้ OllyDbg


  • กรุณาลงชื่อเข้าใช้เพื่อตอบกระทู้
มี 3 โพสต์ตอบกลับกระทู้นี้

#1 watan

watan

    ซาลาเปาไข่แดง

  • Members
  • 5 โพสต์

โพสต์เมื่อ 06 January 2008 - 04:58:18 AM

รบกวนหน่อยครับผม คือ ถ้า เกมที่เราจะ Debug มัน ใช้ file run 2 ตัว หรือ ตัว loader and ตัว bin
ตอนนี้ผมไปลอง debug ที่ตัว .bin โดยเปลี่ยนเป็น .exe แล้ว ลอง debug ดูโดยใช้โปรแกรม OllyDbg ปรากฎว่ามันต้องการค่ามาจากตัว loader เราจะมีวิธีอะไรไหมครับที่จะทำการหลอกมันได้ (ค่าที่มันต้องการเหมือนจะเป็น Server ที่จะ login เข้าเกมอ่ะครับ)
ช่วยแนะนำที่ครับ ขอบคุณล่วงหน้างับ

#2 tonton130

tonton130

    จอมยุทธใหม่

  • Members
  • 1 โพสต์

โพสต์เมื่อ 21 January 2008 - 12:30:17 PM

QUOTE(watan @ Jan 6 2008, 04:58 AM) ดูโพสต์

รบกวนหน่อยครับผม คือ ถ้า เกมที่เราจะ Debug มัน ใช้ file run 2 ตัว หรือ ตัว loader and ตัว bin
ตอนนี้ผมไปลอง debug ที่ตัว .bin โดยเปลี่ยนเป็น .exe แล้ว ลอง debug ดูโดยใช้โปรแกรม OllyDbg ปรากฎว่ามันต้องการค่ามาจากตัว loader เราจะมีวิธีอะไรไหมครับที่จะทำการหลอกมันได้ (ค่าที่มันต้องการเหมือนจะเป็น Server ที่จะ login เข้าเกมอ่ะครับ)
ช่วยแนะนำที่ครับ ขอบคุณล่วงหน้างับ



***พอมีคู่มือ หรือวิธีใช้ คำแนะนำ เป็นภาษาไทย บ้างไหมครับ อยากได้ครับ...หรือจะให้ซื้อก็ได้นะครับ****
***********wprasai@hotmail.com*********




#3 มูมิน้อย

มูมิน้อย

    Exclusive Member

  • Exclusive Programmer
  • 10001 โพสต์

โพสต์เมื่อ 30 January 2008 - 06:53:08 PM

QUOTE(watan @ Jan 6 2008, 04:58 AM) View Post

รบกวนหน่อยครับผม คือ ถ้า เกมที่เราจะ Debug มัน ใช้ file run 2 ตัว หรือ ตัว loader and ตัว bin
ตอนนี้ผมไปลอง debug ที่ตัว .bin โดยเปลี่ยนเป็น .exe แล้ว ลอง debug ดูโดยใช้โปรแกรม OllyDbg ปรากฎว่ามันต้องการค่ามาจากตัว loader เราจะมีวิธีอะไรไหมครับที่จะทำการหลอกมันได้ (ค่าที่มันต้องการเหมือนจะเป็น Server ที่จะ login เข้าเกมอ่ะครับ)
ช่วยแนะนำที่ครับ ขอบคุณล่วงหน้างับ


ทำได้หลายทางมาก ขึ้นอยู่กับวิธีที่ ตัวจริงจะเชคว่า ถูกเรียกจาก loader หรือป่าว ถ้าโชคดีก็ง่าย แค่ pass argument (ส่วนใหญ่ทำแบบนี้) แต่ บางเกมก็ ใช้ท่ายาก ส่งผ่าน พวก IPC (Mutex,namepipe, sharemen แล้วแต่เค้าจะคิดออก)

เท่าที่เรานึกออก
0) Process Viewer
อันนี้ ง่ายสุด แต่ต้อง มีโชคด้วย หา software ที่ สามารถ แสดง process ที่รัน รวมทั้ง argument ได้ มาหาก็จบ ที่ต้องมีโชคด้วยคือ ถ้า เค้าแค่ส่งง่ายๆก็จะได้เลย แต่ ถ้าส่งแบบ dynamic หรือ มี IPC ก็จะไม่มีประโยชน์ แต่เท่าที่เคยเห็นมีน้อยมาก ที่ใช้แบบนั้น

1) Debug loader
อันนี้ก็เข้าไปดูว่า ตัวloader เรียก ตัวจริงยังไง หาพวก CreateProcess, WinExec อะไรแบบนี้ แล้ว ก็ ดูว่าเค้าส่งอะไร ไปบ้าง หรือมีวิธีคำนวน argument แบบไหน (บางเกม argument ที่ส่ง เป็น dynamic คือไม่เหมือนกัน) แบบนี้จะง่ายหน่อย ถ้า ตัว loader ไม่ได้กันอะไรก็ง่าย ถ้ากันก็ ไปแกะออกซะก่อน

2) Debug main
อันนี้ก็ไปดูว่า ตัว main ว่าเชค parameter อะไร แล้ว พอไม่เจอ ถึงไม่ยอมรัน ของพวกนี้ จะเจอ แถวๆ ต้นๆโปรแกรม เราใช้แบบนี้ตอนที่ตัว loader pack เอาไว้ขี้เกียจแกะ หาทางนี้อาจจะง่ายกว่า แต่ยากตรงที่ต้องเข้าใจ asm พอที่จะรู้ว่าเค้าเชคหาอะไร เราว่ายากพอๆๆกะ หา serial^^ บางที แก้ให้ bypass ไปเลยง่ายกว่า



#4 Dsa

Dsa

    จอมยุทธใหม่

  • Members
  • 1 โพสต์

โพสต์เมื่อ 03 February 2008 - 12:49:01 PM

QUOTE(watan @ Jan 6 2008, 04:58 AM) View Post

รบกวนหน่อยครับผม คือ ถ้า เกมที่เราจะ Debug มัน ใช้ file run 2 ตัว หรือ ตัว loader and ตัว bin
ตอนนี้ผมไปลอง debug ที่ตัว .bin โดยเปลี่ยนเป็น .exe แล้ว ลอง debug ดูโดยใช้โปรแกรม OllyDbg ปรากฎว่ามันต้องการค่ามาจากตัว loader เราจะมีวิธีอะไรไหมครับที่จะทำการหลอกมันได้ (ค่าที่มันต้องการเหมือนจะเป็น Server ที่จะ login เข้าเกมอ่ะครับ)
ช่วยแนะนำที่ครับ ขอบคุณล่วงหน้างับ


เกมอะไรครับ
เมื่อเปิดแล้วมันว่าอะไรมั่ง
ส่งลิ้งไฟล์มาก็ดีนะครับ




0 สมาชิกกำลังอ่านกระทู้นี้

0 สมาชิก, 0 ผู้เยี่ยมชม, 0 ผู้ใช้งานที่ซ่อนตัว