CJK Workbench
เว็บไซต์อย่างเป็นทางการของ CJK Workbench

Reverse engineering ที่ตรวจสอบได้ทีละบรรทัด

CJK Workbench 2.9.22 เป็นแอป Windows ที่อ่านลิสติงซึ่งดิสแอสเซมเบลอร์ของคุณส่งออกมา อธิบายแอสเซมบลีด้วยภาษาที่เข้าใจง่าย และเก็บบันทึกของคุณไว้ในไฟล์ที่คุณตรวจทานได้

แพลตฟอร์ม

Windows 10/11

เฉพาะ 64 บิต (x64)

เวอร์ชัน

2.9.22

เปิดตัว 28 ตุลาคม 2569

ตัวติดตั้ง

ประมาณ 34 MB

ไฟล์ .exe แบบพกพาประมาณ 25 MB

อินเทอร์เฟซ

13 ภาษา

ไม่ต้องมีบัญชีก็ใช้งานได้

โหมด

สามโหมด

Auto-run, Ask first, Plan only

ความเป็นส่วนตัว

ไม่มี telemetry

แชต โฟลเดอร์ และคีย์อยู่ในเครื่องของคุณ

เริ่มต้นที่นี่

Reverse engineering สำหรับผู้เริ่มเรียนคืออะไร

Reverse engineering คือการศึกษาโปรแกรมหรือไฟล์ที่สร้างเสร็จแล้วเพื่อทำความเข้าใจว่าทำงานอย่างไร เมื่อไม่มีซอร์สโค้ด การใช้งานที่ถูกกฎหมายได้แก่ การเรียนรู้ การป้องกันมัลแวร์ การตรวจสอบความเข้ากันได้ และการกู้คืนวิธีการทำงานของโปรแกรมเก่าของคุณเอง กฎหมายและเงื่อนไขใบอนุญาตแตกต่างกันตามประเทศและผลิตภัณฑ์ จึงควรตรวจสอบก่อน นี่ไม่ใช่คำแนะนำทางกฎหมาย CJK Workbench 2.9.22 ช่วยเรื่องการอ่านและการจดบันทึก

01

อ่านฟังก์ชันจากบิลด์ C ที่คุณสร้างเอง

การดูว่าฟังก์ชัน C ปรากฏเป็นแอสเซมบลีอย่างไรเคียงข้างซอร์สโค้ดเป็นแบบฝึกหัดแรกที่คลาสสิก คอมไพล์โปรแกรม C ขนาดเล็กของคุณเอง แล้วให้ Shell รันคำสั่งส่งออกของดิสแอสเซมเบลอร์กับสำเนาไฟล์ เพื่อบันทึกลิสติงเป็นข้อความ ลิสติงเป็นข้อความธรรมดา read_file เปิดไฟล์นั้น และเอเจนต์อธิบายทีละคำสั่ง พร้อมระบุว่าบน Windows 64 บิต อาร์กิวเมนต์จำนวนเต็ม 4 ตัวแรกถูกส่งผ่าน rcx, rdx, r8 และ r9 write_file บันทึกคำอธิบายลงใน notes/add.md และในโหมด Ask first คุณอ่าน diff แล้วเทียบกับซอร์สของคุณก่อนยอมรับ

บันทึกการทำงานของเครื่องมือ
Shell  your disassembler's export command on a copy  → exit 0
read_file  exports/add.lst  → text read
write_file  notes/add.md  → saved
02

ใช้ตัวช่วย Python เพื่อลิสต์สตริง

สคริปต์ Python เล็ก ๆ เป็นเพื่อนคู่ใจของการศึกษาทุกครั้ง และเอเจนต์เขียนให้คุณได้ ขอให้สร้าง strings.py ที่อ่านสำเนาไฟล์ฝึกของคุณเป็นไบต์แล้วเขียนทุกสตริงที่อ่านได้ลงไฟล์ข้อความ write_file บันทึกสคริปต์ จากนั้น Shell รันคำสั่ง Python ของคุณกับสำเนาและรายงาน exit code ที่แท้จริง อ่านสคริปต์ก่อน ใน Ask first ให้ยืนยันว่าสคริปต์อ่านไบต์จากสำเนาเท่านั้นและไม่ได้รันสำเนานั้นก่อนที่คุณจะยอมรับ รันกับสำเนา 2 ชุดแล้วค้นผลลัพธ์ด้วย grep

บันทึกการทำงานของเครื่องมือ
write_file  tools/strings.py  → saved
Shell  your Python command tools/strings.py copy.bin  → exit 0
grep  error notes/strings.txt  → 3 matches
03

อ่านภาพหน้าจอของหน้าต่างดิสแอสเซมเบลอร์

บางครั้งลิสติงมีอยู่แค่บนหน้าจอ เช่นในเครื่องมือที่ส่งออกข้อความไม่ได้ ocr อ่านข้อความจากภาพหน้าจอของไฟล์หรือสื่อฝึกของคุณเอง และ write_file เก็บเป็นไฟล์ข้อความเพื่อให้ grep ค้นได้ OCR อาจอ่านตัวอักษรผิด เปิดภาพหน้าจอไว้ข้างไฟล์ข้อความ เทียบอย่างน้อย 3 บรรทัด แล้วให้ edit_file แก้ทุกข้อผิดพลาดที่คุณพบ โดย diff จะแสดงชัดเจนว่าอะไรเปลี่ยนไป

04

เปรียบเทียบหลายลิสติงด้วยเอเจนต์ย่อย

เมื่อคุณมีลิสติงที่ส่งออกจากบิลด์ของคุณเอง 3 ไฟล์ task สามารถมอบแต่ละไฟล์ให้เอเจนต์ย่อยของตัวเอง และแต่ละตัวจะส่งสรุปสั้น ๆ ของฟังก์ชันที่พบกลับมา เริ่มด้วย Plan only ซึ่งเขียนขั้นตอนโดยไม่รันอะไรเลย เมื่อแผนดูถูกต้องก็เปลี่ยนโหมด แล้วเอเจนต์ย่อยแต่ละตัวจะเปิดลิสติงของตัวเองด้วย read_file ไฟล์บันทึกไฟล์เดียวรวบรวมทั้งหมด ตรวจสอบสรุปแต่ละอันกับลิสติงของมันด้วยตัวคุณเอง เพราะคำอธิบายอาจผิดได้

เปิดตัวอย่างการใช้งานจริง

ต่างจากผู้ช่วยแชตทั่วไปอย่างไร

คำตอบในแชตเป็นเพียงข้อความ CJK Workbench 2.9.22 รันเครื่องมือในโฟลเดอร์ทำงานของคุณ และแสดงผลจริงของแต่ละการกระทำเป็นการ์ดที่ขยายดูได้

ผู้ช่วยแชตทั่วไปCJK Workbench
ลิสติงคุณวางข้อความเป็นช่วง ๆ ลงในหน้าต่างแชตอ่านและค้นไฟล์ที่ส่งออกในโฟลเดอร์ทำงานของคุณ
บันทึกบันทึกอยู่แค่ในบทสนทนาเขียนไฟล์บันทึกและแสดงทุกการเปลี่ยนแปลงเป็น diff
คำสั่งแนะนำคำสั่งให้คุณพิมพ์เองรันคำสั่งด้วย Shell และรายงาน exit code ที่แท้จริง
การตรวจทานให้คำตอบแล้วปล่อยให้คุณตรวจเองAsk first แสดง diff ก่อนบันทึกการเปลี่ยนแปลง

ทำงานอย่างไรใน 4 ขั้นตอน

  1. เทียบค่าตรวจสอบ SHA-256 ของตัวติดตั้งกับมานิเฟสต์ที่เผยแพร่ แล้วติดตั้ง CJK Workbench บน Windows 10 หรือ 11
  2. เชื่อมต่อโมเดลบนคลาวด์ โมเดลในเครื่อง หรือโมเดลในตัว แล้วกด Test เพื่อตรวจสอบ endpoint
  3. เลือกโฟลเดอร์ทำงานที่มีเฉพาะไฟล์ของคุณเอง ไบนารีสำหรับฝึก และลิสติงที่ส่งออกไว้
  4. เลือก Ask first หรือ Plan only อธิบายงาน แล้วตรวจทานทุก diff ก่อนยอมรับ

เหมาะกับใคร

กลุ่มแรกคือคนที่เรียนรู้ด้วยตัวเองและมองหาเนื้อหาสำหรับมือใหม่ ซึ่งต้องการโปรเจกต์แรกที่ปลอดภัย เช่น โปรแกรม C เล็ก ๆ ที่เขียนเอง เอเจนต์อธิบายลิสติงทีละคำสั่ง ลองใช้ฟังก์ชัน 8 บรรทัด

นักศึกษาที่เรียนวิชาวิศวกรรมย้อนกลับในวิทยาลัยมักได้รับโจทย์ CTF เป็นการบ้าน และ CJK Workbench เก็บสิ่งที่พบไว้ในไฟล์บันทึกหนึ่งไฟล์ต่อหนึ่งโจทย์ ใช้เฉพาะไบนารีของรายวิชา ตรวจสอบกติกาการแข่งขันก่อนเริ่ม เพราะกฎหมายและเงื่อนไขใบอนุญาตแตกต่างกันตามประเทศ

ผู้ป้องกันและนักวิเคราะห์ใช้วิศวกรรมย้อนกลับด้านความปลอดภัยไซเบอร์เพื่อทำความเข้าใจตัวอย่างมัลแวร์ที่พวกเขาตรวจสอบได้อย่างถูกกฎหมาย และทำภายใน VM เสมอ ซึ่งเป็นเครื่องเสมือนที่แยกขาดพร้อมสแนปช็อตที่สะอาดและไม่มีโฟลเดอร์ที่แชร์ ตัวอย่างอยู่ภายใน VM เท่านั้น CJK Workbench 2.9.22 อ่านข้อความที่ส่งออกมา และไม่ได้ออกแบบมาเพื่อสร้างหรือแก้ไขมัลแวร์เลย

คำถามที่พบบ่อย

Reverse engineering คืออะไร

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

cjkcode.com เป็นเว็บไซต์อย่างเป็นทางการของ CJK Workbench ใช่หรือไม่

ใช่ cjkcode.com เป็นเว็บไซต์อย่างเป็นทางการของ CJK Workbench ดาวน์โหลดเฉพาะบิลด์ต้นฉบับจากหน้าดาวน์โหลด และเทียบค่าตรวจสอบ SHA-256 กับมานิเฟสต์ที่เผยแพร่ก่อนรัน เพราะตัวติดตั้งยังไม่ได้ลงนามโค้ด ตรวจค่าตรวจสอบก่อน คำถามส่งผ่านปุ่ม Send feedback ในแอป

ฉันวิเคราะห์โปรแกรมใดก็ได้ที่พบหรือไม่

ไม่ได้ วิเคราะห์เฉพาะไฟล์ที่คุณเป็นเจ้าของ ไฟล์ที่ได้รับอนุญาตเป็นลายลักษณ์อักษรให้ตรวจสอบ ซอฟต์แวร์โอเพนซอร์ส และสื่อฝึก เช่น ไบนารี CTF จากการแข่งขันที่อนุญาต กฎหมายและเงื่อนไขใบอนุญาตแตกต่างกันตามประเทศและผลิตภัณฑ์ จึงควรตรวจสอบก่อนเริ่ม เพราะเว็บไซต์นี้ไม่ใช่คำแนะนำทางกฎหมาย

CJK Workbench ดิสแอสเซมเบิลโปรแกรมหรือไม่

ไม่ แอปอ่านข้อความที่เครื่องมือของคุณเองสร้างขึ้น เช่น ลิสติงดิสแอสเซมบลี ผลลัพธ์สตริง และผลลัพธ์ดีคอมไพเลอร์ที่บันทึกลงไฟล์ แล้วอธิบายและจัดระเบียบข้อความนั้น แอปไม่แกะ แพตช์ หรือรันโปรแกรมที่ไม่รู้จัก ใช้ดิสแอสเซมเบลอร์ของคุณเองสร้างลิสติง

ฉันต้องใช้เครื่องมืออะไรควบคู่กัน

อย่างแรกคือดิสแอสเซมเบลอร์หรือดีคอมไพเลอร์ที่คุณเลือกเอง เพราะ CJK Workbench ไม่สร้างลิสติงเอง ส่วนโปรแกรมแก้ไขข้อความและคำสั่ง Python ก็เพียงพอสำหรับสคริปต์ตัวช่วย ทั้งสองอย่างเป็นตัวเลือกของคุณ ติดตั้งไว้ใน VM หากคุณวางแผนจะเปิดสิ่งที่ไม่ไว้ใจ

แอปนี้ใช้แทนคอร์สวิศวกรรมย้อนกลับได้หรือไม่

ไม่ได้ CJK Workbench ไม่มีบทเรียนหรือหลักสูตรของตัวเอง จึงใช้ควบคู่กับหนังสือ คอร์ส หรือการแข่งขันฝึกที่คุณเรียนอยู่แล้ว แอปอ่านลิสติงที่คุณส่งออก อธิบายทีละบรรทัด และเก็บบันทึกของคุณ ใช้คู่กับหนังสือ

ฉันเชื่อคำอธิบายแอสเซมบลีของแอปได้หรือไม่

ไม่ได้ คำอธิบายแอสเซมบลีอาจผิดพลาดได้ จึงควรยืนยันแต่ละอันกับลิสติง และถ้าถูกกฎหมาย ให้ทดสอบรันในห้องแล็บด้วย Ask first แสดง diff ก่อนบันทึกการเปลี่ยนแปลงบันทึก ถือว่าเป็นฉบับร่าง

เริ่มต้นใช้งาน

เปิดลิสติงแรกของคุณ

เวอร์ชัน 2.9.22 มีขนาดประมาณ 34 MB เมื่อเป็นโปรแกรมติดตั้ง และมีไฟล์ .exe แบบพกพาไฟล์เดียวขนาดประมาณ 25 MB สำหรับ Windows 10 และ 11 ด้วย เลือกไฟล์ที่คุณเป็นเจ้าของ

ดาวน์โหลด CJK Workbench สำหรับ Windows ↗

อ่านต่อ

ทุกหน้ามีให้อ่านใน 20 ภาษาด้วย

เอเจนต์ทำอะไรกับลิสติงของคุณได้บ้าง ↗ เลือกโมเดลบนคลาวด์ ในเครื่อง หรือในตัว ↗ คำอธิบายแอสเซมบลีทีละขั้นตอน ↗ ดาวน์โหลดและตรวจสอบตัวติดตั้ง ↗ คำตอบเรื่องขอบเขต ความเป็นส่วนตัว และผลลัพธ์ ↗ เว็บไซต์นี้และแอปเก็บอะไรบ้าง ↗