
Ghidra เป็นเฟรมเวิร์ก Software Reverse Engineering (SRE) ที่สร้างและบำรุงรักษาโดยคณะกรรมการวิจัยความมั่นคงแห่งชาติ เฟรมเวิร์กนี้รวมถึงชุดเครื่องมือวิเคราะห์ซอฟต์แวร์ระดับสูงที่มีคุณสมบัติสูงซึ่งช่วยให้ผู้ใช้สามารถวิเคราะห์โค้ดที่รวบรวมได้บนแพลตฟอร์มที่หลากหลายรวมถึง Windows, MacOS และ Linux ความสามารถรวมถึงการถอดประกอบการประกอบการสลายตัวกราฟและการเขียนสคริปต์พร้อมกับคุณสมบัติอื่น ๆ อีกหลายร้อย Ghidra รองรับชุดคำสั่งโปรเซสเซอร์ที่หลากหลายและรูปแบบการดำเนินการและสามารถทำงานได้ทั้งในโหมดผู้ใช้แบบอินเทอร์แอคทีฟและอัตโนมัติ ผู้ใช้อาจพัฒนาส่วนประกอบส่วนขยาย Ghidra ของตนเองและ/หรือสคริปต์โดยใช้ Java หรือ Python
เพื่อสนับสนุนภารกิจด้านความปลอดภัยทางไซเบอร์ของ NSA Ghidra ถูกสร้างขึ้นเพื่อแก้ปัญหาการปรับขนาดและการทำงานร่วมกันเกี่ยวกับความพยายามของ SRE ที่ซับซ้อนและเพื่อให้แพลตฟอร์มการวิจัย SRE ที่ปรับแต่งได้และขยายได้ NSA ได้ใช้ความสามารถของ Ghidra SRE กับปัญหาที่หลากหลายที่เกี่ยวข้องกับการวิเคราะห์รหัสที่เป็นอันตรายและสร้างข้อมูลเชิงลึกที่ลึกซึ้งสำหรับนักวิเคราะห์ SRE ที่แสวงหาความเข้าใจที่ดีขึ้นเกี่ยวกับช่องโหว่ที่อาจเกิดขึ้นในเครือข่ายและระบบ
หากคุณเป็นพลเมืองสหรัฐฯที่สนใจในโครงการเช่นนี้เพื่อพัฒนา Ghidra และเครื่องมือรักษาความปลอดภัยทางไซเบอร์อื่น ๆ สำหรับ NSA เพื่อช่วยปกป้องประเทศและพันธมิตรของเราให้พิจารณาสมัครงานกับเรา
คำเตือน: มีช่องโหว่ด้านความปลอดภัยที่รู้จักภายใน Ghidra บางรุ่น ก่อนดำเนินการโปรดอ่านคำแนะนำด้านความปลอดภัยของ Ghidra เพื่อความเข้าใจที่ดีขึ้นว่าคุณอาจได้รับผลกระทบอย่างไร
ในการติดตั้ง Ghidra ที่สร้างไว้ล่วงหน้าหลายแพลตฟอร์มอย่างเป็นทางการ: Ghidra:
ghidra_<version>_<release>_<date>.zip ซึ่งสามารถพบได้ภายใต้ "สินทรัพย์" แบบเลื่อนลง การดาวน์โหลดไฟล์ใดไฟล์หนึ่งชื่อ "ซอร์สโค้ด" ไม่ถูกต้องสำหรับขั้นตอนนี้./ghidraRun (หรือ ghidraRun.bat สำหรับ windows) สำหรับข้อมูลเพิ่มเติมและเคล็ดลับการแก้ไขปัญหาเกี่ยวกับการติดตั้งและเรียกใช้ Ghidra Release โปรดดูที่คู่มือการติดตั้งซึ่งสามารถพบได้ใน Ghidra Release ที่ docs/InstallationGuide.html
เพื่อสร้างการพัฒนาล่าสุดสำหรับแพลตฟอร์มของคุณจากที่เก็บแหล่งนี้:
ดาวน์โหลดจาก GitHub
unzip ghidra-master
cd ghidra-master
หมายเหตุ: แทนที่จะดาวน์โหลดแหล่งที่บีบอัดคุณอาจต้องการโคลนที่เก็บ gitHub: git clone https://github.com/NationalSecurityAgency/ghidra.git
หมายเหตุ: หากมีการเชื่อมต่ออินเทอร์เน็ตและคุณไม่ได้ติดตั้ง Gradle คำสั่ง gradle ต่อไปนี้อาจถูกแทนที่ด้วย ./gradle(.bat)
gradle -I gradle/support/fetchDependencies.gradle
gradle buildGhidra
บิลด์การพัฒนาที่บีบอัดจะอยู่ที่ build/dist/
สำหรับข้อมูลรายละเอียดเพิ่มเติมเกี่ยวกับการสร้าง Ghidra โปรดอ่านคู่มือนักพัฒนา
สำหรับปัญหาการสร้างโปรดตรวจสอบส่วนปัญหาที่รู้จักสำหรับการแก้ปัญหาที่เป็นไปได้
การติดตั้ง Ghidra สนับสนุนผู้ใช้ที่เขียนสคริปต์และส่วนขยายที่กำหนดเองผ่านปลั๊กอิน Ghidradev สำหรับ Eclipse ปลั๊กอินและคำแนะนำที่สอดคล้องกันสามารถพบได้ภายในการเปิดตัว Ghidra ที่ Extensions/Eclipse/GhidraDev/ หรือที่ลิงค์นี้
หมายเหตุ: ปลั๊กอิน Ghidradev สำหรับ Eclipse รองรับการพัฒนากับการติดตั้ง Ghidra ที่สร้างขึ้นอย่างเต็มที่ซึ่งสามารถดาวน์โหลดได้จากหน้ารุ่น
เพื่อพัฒนาเครื่องมือ Ghidra เองขอแนะนำให้ใช้ Eclipse ซึ่งกระบวนการพัฒนา Ghidra ได้รับการปรับแต่งอย่างสูง
gradle prepdev eclipse buildNatives
เมื่อ Eclipse เสร็จสิ้นการสร้างโครงการ Ghidra สามารถเปิดตัวและดีบักด้วยการกำหนดค่า Ghidra Eclipse Run
สำหรับข้อมูลรายละเอียดเพิ่มเติมเกี่ยวกับการพัฒนา Ghidra โปรดอ่านคู่มือนักพัฒนา
หากคุณต้องการมีส่วนร่วมในการแก้ไขข้อผิดพลาดการปรับปรุงและคุณสมบัติใหม่กลับไปที่ Ghidra โปรดดูที่คู่มือผู้สนับสนุนของเราเพื่อดูว่าคุณสามารถเข้าร่วมในโครงการโอเพ่นซอร์สนี้ได้อย่างไร