อ่าน 2 นาที
ตัวถอดรหัส JEB
JEBเป็น ซอฟต์แวร์ ถอดรหัสและแยกส่วนสำหรับแอปพลิเคชันAndroid และโค้ดเครื่องดั้งเดิม โดยจะแยกส่วนไบต์โค้ด Dalvikเป็นโค้ดต้นฉบับ Javaและ โค้ดเครื่อง x86 , ARM , RISC-Vและอื่นๆ...
ตัวถอดรหัส JEB
| โปรแกรมถอดรหัส JEB | |
|---|---|
![]() | |
| ผู้เขียนต้นฉบับ | นิโคลัส ฟัลลิแยร์ |
| นักพัฒนา | บริษัท พีเอ็นเอฟ ซอฟต์แวร์ อิงค์ |
| เวอร์ชันเสถียร | |
| เขียนเป็น | ชวา |
| ระบบปฏิบัติการ | วินโดวส์ , แมคโอเอสเอ็กซ์ , ลินุกซ์ |
| แพลตฟอร์ม | ชวา |
| พิมพ์ | วิศวกรรมย้อนกลับ |
| ใบอนุญาต | กรรมสิทธิ์ |
| เว็บไซต์ | www.pnfsoftware.com |
JEBเป็น ซอฟต์แวร์ ถอดรหัสและแยกส่วนสำหรับแอปพลิเคชันAndroid [ 2 ]และโค้ดเครื่องดั้งเดิม โดยจะแยกส่วนไบต์โค้ด Dalvikเป็นโค้ดต้นฉบับ Javaและ โค้ดเครื่อง x86 , ARM , RISC-Vและอื่นๆ เป็นโค้ดต้นฉบับ C เอาต์พุต แอสเซ มบลี และโค้ดต้นฉบับเป็นแบบโต้ตอบและสามารถปรับโครงสร้างใหม่ได้ผู้ใช้ยังสามารถเขียนสคริปต์และปลั๊กอินของตนเองเพื่อขยายฟังก์ชันการทำงานของ JEB ได้อีกด้วย
ประวัติศาสตร์
JEB เป็นโปรแกรมถอดรหัส Dalvik ตัวแรกที่ให้ผลลัพธ์แบบโต้ตอบได้ ทำให้วิศวกรย้อนกลับสามารถตรวจสอบการอ้างอิงโยง ใส่ความคิดเห็น หรือเปลี่ยนชื่อรายการต่างๆ เช่น คลาสและเมธอดได้ เมื่อใดก็ตามที่เป็นไปได้ ผู้ใช้จะสามารถเข้าถึงความสัมพันธ์ระหว่างไบต์โค้ดและโค้ด Java ที่ถอดรหัสแล้วได้ แม้ว่า JEB จะถูกจัดประเภทเป็นโปรแกรมถอดรหัส แต่ก็ยังให้มุมมอง APK แบบเต็มรูปแบบ (ไฟล์ Manifest, ทรัพยากร, ใบรับรอง ฯลฯ) APIช่วยให้ผู้ใช้สามารถปรับแต่งหรือทำให้การทำงานเป็นไปโดยอัตโนมัติผ่านสคริปต์และปลั๊กอินในภาษา Pythonและ Java
JEB 2.2 ได้แนะนำโมดูลการดีบัก Android สำหรับโค้ด Dalvik และโค้ดเนทีฟ (Intel, ARM, MIPS) ผู้ใช้สามารถ "ดีบักไบต์โค้ด Dalvik และโค้ดเครื่องเนทีฟได้อย่างราบรื่นสำหรับแอปทั้งหมด [...] รวมถึงแอปที่ไม่ได้อนุญาตให้ดีบักอย่างชัดเจน" [ 3 ]
JEB 2.3 ได้เพิ่มตัวถอดรหัสโค้ดเนทีฟเข้ามา ตัวถอดรหัสตัวแรกที่มาพร้อมกับ JEB คือตัวถอดรหัสแบบโต้ตอบสำหรับสถาปัตยกรรม MIPS 32 บิต
JEB 3 มาพร้อมกับตัวถอดรหัสเพิ่มเติม ได้แก่ Intel x86, Intel x86-64, WebAssembly (wasm), Ethereum (evm) และ Diem blockchain (diemvm)
JEB 4 เปิดตัวในปี 2021 มีการเพิ่มตัวถอดรหัส RISC-V ใน JEB 4.5 และมีการเพิ่มตัวถอดรหัสบล็อก PLC S7 ใน JEB 4.16
JEB 5 เปิดตัวในปี 2023 เวอร์ชัน 5.31 เพิ่มตัวถอดรหัส SASS สำหรับโค้ด GPU ของ Nvidia ที่กำหนดเป้าหมายสถาปัตยกรรม Volta+/sm_70+ เวอร์ชัน 5.32 มาพร้อมกับVIBRE (ย่อมาจาก "Vibe Reversing") ซึ่งเป็นผู้ช่วย AI ด้านวิศวกรรมย้อนกลับที่ได้รับการสนับสนุนจากLLM ภายนอกและ เซิร์ฟเวอร์ MCPของ JEB
โปรแกรมถอดรหัส
JEB มาพร้อมกับปลั๊กอินดีคอมไพเลอร์ทั้งแบบกรรมสิทธิ์และโอเพนซอร์ส ดังต่อไปนี้:
- แปลงไบต์โค้ด Dalvik เป็น Java
- แปลงไบต์โค้ด Java เป็น Java
- แปลงโค้ดเครื่อง Intel x86/x86-64 เป็นโค้ดภาษา C
- แปลงโค้ดเครื่อง ARM เป็น C
- แปลงโค้ดเครื่อง MIPS เป็นโค้ดภาษา C
- แปลงโค้ดเครื่อง RISC-V เป็น C
- ไบต์โค้ด S7 (MC7)เป็นภาษา C
- การแปลงไบต์โค้ด WebAssemblyเป็นภาษา C
- แปลงโค้ด Nvidia SASS (เคอร์เนล GPU ที่คอมไพล์แล้ว) เป็นภาษา C
- แปลงไบต์โค้ด EVM (สัญญาอัจฉริยะ Ethereum ที่คอมไพล์แล้ว) ไปเป็นซอร์สโค้ดที่คล้ายกับSolidity
- ไบต์โค้ด Diem [ 4 ] (โมดูล diemvm ที่คอมไพล์แล้วทำงานบนบล็อกเชน Diem) ไปยังซอร์สโค้ดที่คล้ายกับ mvir (Move IR)
ปลั๊กอินอื่นๆ
JEB มาพร้อมกับปลั๊กอินตัวแยกส่วนประกอบและตัวดีบักเกอร์จำนวนมาก[ 5 ]
JEB อนุญาตให้วิเคราะห์ไฟล์ได้ทุกรูปแบบ โดยการเพิ่มปลั๊กอินภายในหรือปลั๊กอินจากผู้พัฒนาภายนอก ตัวอย่างเช่น ปลั๊กอินวิเคราะห์ไฟล์ PDF (เป็นกรรมสิทธิ์) และปลั๊กอินวิเคราะห์เอกสาร XLS (โอเพนซอร์ส)
ดูเพิ่มเติม
ลิงก์ภายนอก
- เว็บไซต์อย่างเป็นทางการ
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ตัวถอดรหัส JEB
JEBเป็น ซอฟต์แวร์ ถอดรหัสและแยกส่วนสำหรับแอปพลิเคชันAndroid และโค้ดเครื่องดั้งเดิม โดยจะแยกส่วนไบต์โค้ด Dalvikเป็นโค้ดต้นฉบับ Javaและ โค้ดเครื่อง x86 , ARM , RISC-Vและอื่นๆ...
ประวัติศาสตร์
JEB เป็นโปรแกรมถอดรหัส Dalvik ตัวแรกที่ให้ผลลัพธ์แบบโต้ตอบได้ ทำให้วิศวกรย้อนกลับสามารถตรวจสอบการอ้างอิงโยง ใส่ความคิดเห็น หรือเปลี่ยนชื่อรายการต่างๆ เช่น คลาสและเมธอดได้ เมื่อใดก็ตามที่เป็นไปได้ ผู้ใช้จะสามารถเข้าถึงความสัมพันธ์ระหว่างไบต์โค้ดและโค้ด Java...
โปรแกรมถอดรหัส
JEB มาพร้อมกับปลั๊กอินดีคอมไพเลอร์ทั้งแบบกรรมสิทธิ์และโอเพนซอร์ส ดังต่อไปนี้:
ปลั๊กอินอื่นๆ
JEB มาพร้อมกับปลั๊กอินตัวแยกส่วนประกอบและตัวดีบักเกอร์จำนวนมาก [ 5 ]
