吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 22486|回复: 50
收起左侧

[Disassemblers] Ghidra 9.0.4(最新版)

  [复制链接]
goldberg 发表于 2019-8-12 12:59
Ghidra是由美国国家安全局(NSA)研究部门开发的软件逆向工程(SRE)套件,是一个软件逆向工程(SRE)框架,包括一套功能齐全的高端软件分析工具,使用户能够在各种平台上分析编译后的代码,包括Windows、Mac OS和Linux。功能包括反汇编,汇编,反编译,绘图和脚本,以及数百个其他功能。Ghidra支持各种处理器指令集和可执行格式,可以在用户交互模式和自动模式下运行。用户还可以使用公开的API开发自己的Ghidra插件和脚本。
下载地址:https://pan.baidu.com/s/1hDX7oObq331HV64B1xL5cg 提取码:731s
---------------------------------------------------------------------------------------------
英文使用说明如下:
Platforms Supported
  • Microsoft Windows 7 or 10 (64-bit)
  • Linux (64-bit, CentOS 7 is preferred)
  • macOS (OS X) 10.8.3+ (Mountain Lion or later)
NOTE: All 32-bit OS installations are now deprecated. Please contact the Ghidra team if you have a specific need.
Minimum RequirementsHardware
  • 4 GB RAM
  • 1 GB storage (for installed Ghidra binaries)
  • Dual monitors strongly suggested
Software
  • Java 11 Runtime and Development Kit (JDK) (see Java Notes)
    • OpenJDK distributed from jdk.java.net is suggested
(Back to Top)Installing GhidraTo install Ghidra, simply extract the Ghidra distribution file to the desired filesystem destination using any unzip program (built-in OS utilities, 7-Zip, WinZip, WinRAR, etc)Installation Notes
  • Ghidra does not use a traditional installer program. Instead, the Ghidra distribution file is simply extracted in-place on the filesystem. This approach has advantages and disadvantages. On the up side, administrative privilege is not required to install Ghidra for personal use. Also, because installing Ghidra does not update any OS configurations such as the registry on Windows, removing Ghidra is as simple as deleting the Ghidra installation directory. On the down side, Ghidra will not automatically create a shortcut on the desktop or appear in application start menus.
  • Administrative privilege may be required to extract Ghidra to certain filesystem destinations (such as C:\), as well as install the Ghidra Server as a service.
  • Ghidra relies on using directories outside of its installation directory to manage both temporary and longer-living cache files. Ghidra attempts to use standard OS directories that are designed for these purposes in order to avoid several issues, such as storing large amounts of data to a roaming profile. If it is suspected that the default location of these directories is causing a problem, they can be changed by modifying the relevant properties in the support/launch.properties file.
Java Notes
  • Ghidra requires a supported version of a Java Runtime and Development Kit on the PATH to run. However, if there is a version of Java on the PATH that Ghidra does not support, it will use that version of Java (if 1.7 or later) to assist in locating a supported version on your system. If one cannot be automatically located, the user will be prompted to enter a path to the Java home directory to use (the Java home directory is the parent directory of Java's bin directory). This minimizes the impact Ghidra has on pre-existing configurations of Java that other software may rely on.
  • Ghidra is developed and tested against OpenJDK distributed from jdk.java.net. Consider using this OpenJDK distribution for the most stable experience.
  • If Ghidra failed to run because no versions of Java were on the PATH, a supported JDK should be manually installed and added to the PATH. The following steps outline how to add an OpenJDK distribution to the operating system's PATH.
    • Windows: Extract the JDK distribution (.zip file) to your desired location and add the JDK's bin directory to your PATH:
      • Extract the JDK:
        • Right-click on the zip file and click Extract All...
        • Click Extract
      • Open Environment Variables window:
        • Windows 10: Right-click on Windows start button, and click SystemWindows 7: Click Windows start button, right-click on Computer, and click Properties
        • Click Advanced system settings
        • Click Environment variables...
      • Add the JDK bin directory to the PATH variable:
        • Under System variables, highlight Path and click Edit...
        • At the end of the the Variable value field, add a semicolon followed by <path of extracted JDK dir>\bin
        • Click OK
        • Click OK
        • Click OK
      • Restart any open Command Prompt windows for changes to take effect
    • Linux and macOS (OS X): Extract the JDK distribution (.tar.gz file) to your desired location, and add the JDK's bin directory to your PATH:
      • Extract the JDK:
        tar xvf <JDK distribution .tar.gz>
      • Open ~/.bashrc with an editor of your choice. For example:
        vi ~/.bashrc
      • At the very end of the file, add the JDK bin directory to the PATH variable:
        export PATH=<path of extracted JDK dir>/bin:$PATH
      • Save file
      • Restart any open terminal windows for changes to take effect

  • In some cases, you may want Ghidra to launch with a specific version of Java instead of the version that Ghidra automatically locates. To force Ghidra to launch with a specific version of Java, set the JAVA_HOME_OVERRIDE property in the support/launch.properties file. If this property is set to an incompatible version of Java, Ghidra will revert to automatically locating a compatible version. Note that some Java must still be on the PATH in order for Ghidra to use the JAVA_HOME_OVERRIDE property. This limitation will be addressed in a future version of Ghidra.
(Back to Top)Ghidra Installation Directory LayoutWhen Ghidra is installed, the runnable software gets extracted to a new directory we will refer to as <GhidraInstallDir>. Below is a description of the top-level directories and files that can be found in <GhidraInstallDir> once extraction of the distribution file is complete.
Ghidra
Base directory for Ghidra distribution.  Contains files needed to run Ghidra.
Extensions
Optional components that can extend Ghidra's functionality and integrate Ghidra with other tools.
See the Extensions section for more information.
GPL
Standalone GPL support programs.
server
Contains files related to Ghidra Server installation and administration.
support
Contains files useful for debugging Ghidra, running Ghidra in advanced modes, and controlling how Ghidra launches.
docs
Contains documentation for Ghidra, such as release notes, API files, tutorials, etc.
ghidraRun(.bat)
Script used to launch Ghidra.
LICENSE.txt
Ghidra license information.
licenses
Contains licenses used by Ghidra.
(Back to Top)Running GhidraGUI Mode
  • Navigate to <GhidraInstallDir>
  • Run ghidraRun.bat (Windows) or ghidraRun (Linux or macOS)If Ghidra failed to launch, see the Troubleshooting section.
Ghidra ServerGhidra can support multiple users working together on a single project. Individual Ghidra users launch and work on their own local copies of a particular Ghidra project but check changes into a common repository containing all commits to that repository. For detailed information on installing/configuring the Ghidra Server see the <GhidraInstallDir>/server/svrREADME.html file.Headless (Batch) ModeGhidra is traditionally run in GUI mode. However, it is also capable of running in headless batch mode using the command line. For more information, see the <GhidraInstallDir>/support/analyzeHeadlessREADME.html file.Single Jar ModeNormally, Ghidra is installed as an entire directory structure that allows modular inclusion or removal of feature sets and also provides many files that can be extended or configured. However, there are times when it would be useful to have        all or some subset of Ghidra compressed into a single jar file at the expense of        configuration options. This makes Ghidra easier to run from the command line for headless operation or to use as a library of reverse engineering capabilities for another Java application.A single ghidra.jar file can be created using the <GhidraInstallDir>/support/buildGhidraJar script.(Back to Top)ExtensionsExtensions are optional components that can:
  • Extend Ghidra's functionality with experimental or user-contributed Ghidra plugins or analyzers.
  • Integrate other tools with Ghidra, such as Eclipse or IDAPro.
Ghidra comes with the following extensions available for use (and by default uninstalled), which can be found in the <GhidraInstallDir>/Extensions directory.
  • Eclipse: The GhidraDev Eclipse plugin for a pre-existing Eclipse installation. For information on installing and using the GhidraDev Eclipse plugin, see <GhidraInstallDir>/Extensions/Eclipse/GhidraDev/GhidraDev_README.html.
  • Ghidra: Ghidra extensions (formerly known as contribs). See Ghidra Extension Notes for more information.
  • IDAPro: IDAPro plugins/loaders for transferring items with Ghidra.
Ghidra Extension Notes
  • Ghidra extensions are designed to be installed and uninstalled from the Ghidra front-end GUI:
    • Click File → Install Extensions...
    • Check boxes to install extensions; uncheck boxes to uninstall extensions
    • Restart Ghidra for the changes to take effect
  • Installing or uninstalling Ghidra extensions may fail if the user does not have write permissions to <GhidraInstallDir>. This may occur if the user is running Ghidra from a shared installation location. In this situation, the owner of the Ghidra installation directory will be responsible for managing what Ghidra extensions are available for that particular installation of Ghidra.
  • It is possible to install and uninstall Ghidra extensions manually when the Ghidra front-end GUI is not available. This may be required if a system administrator is managing the Ghidra extensions of a shared Ghidra installation on behalf of a user, or if a user wishes to install an extension into a Ghidra installation that is only ever used headlessly.To install an extension in these cases, simply extract the desired Ghidra extension archive file(s) to the <GhidraInstallDir>/Ghidra/Extensions directory. For example, on Linux or macOS:
    • Set current directory to the Ghidra installed-extensions directory:
      cd <GhidraInstallDir>/Ghidra/Extensions
    • Extract desired extension archive file(s) to the current directory:
      unzip ../../Extensions/Ghidra/<extension>.zip
    • The extension(s) will be installed the next time Ghidra is started.
    To uninstall extensions, simply delete the extracted extension directories from <GhidraInstallDir>/Ghidra/Extensions. The extension(s) will be uninstalled the next time Ghidra is started.NOTE: It may not be possible to uninstall an extension in this manner if there is an instance of Ghidra running that holds a file lock on the extension directory that is trying to be deleted.
(Back to Top)Ghidra DevelopmentUsers can extend the functionality of Ghidra through the development of custom Ghidra scripts, plugins, analyzers, etc.Ghidra supports development in Eclipse by providing a custom Eclipse plugin called GhidraDev, which can be found in the <GhidraInstallDir>/Extensions/Eclipse directory. For more information on installing and using the GhidraDev Eclipse plugin, see <GhidraInstallDir>/Extensions/Eclipse/GhidraDev/GhidraDev_README.html.NOTE: Eclipse is not provided with Ghidra. The GhidraDev Eclipse plugin is designed to be installed in a pre-existing Eclipse installation.(Back to Top)Upgrade InstructionsGeneral Upgrade Instructions
  • !!!Important!!! BACKUP YOUR OLD PROJECTS FIRST!! !!!Important!!!
    • Backup by manually copying the .rep directory and .gpr file from any Ghidra project directories to a safe location on your file system.
  • New installations of Ghidra will, by default, use the saved profile from a user's most recent version of Ghidra. This allows any saved tool configurations to be automatically ported to new projects. However, this may also prevent new tool options and features from automatically being configured in some cases. To open new tools containing the latest configurations, users should, from the Project Manager Window, choose Tools → Default Tools...
  • When you open a program that was created using a previous version of Ghidra, you will be prompted to upgrade the program before it can be opened. The upgrade will not overwrite your old file until you save it. If you save it (to its original file), you will no longer be able to open it using an older version of Ghidra. You could, however, choose to perform a “Save As” instead, creating a new file and leaving the old version unchanged. Be very careful about upgrading shared program files since everyone accessing the file must also upgrade their Ghidra installation.
Server Upgrade Instructions
  • Please refer to the<GhidraInstallDir>/server/svrREADME.html file for details on upgrading your Ghidra Server.
(Back to Top)Troubleshooting & HelpLaunching GhidraWhen launching Ghidra with the provided scripts in <GhidraInstallDir> and <GhidraInstallDir>/support, you may encounter the following error messages:
  • Problem: Java runtime not found.
    • Solution: A Java runtime (java/java.exe) is required to be on the system PATH. Please see the Requirements section for what version of Java must be pre-installed for Ghidra to launch.
  • Problem: Failed to find a supported JDK.
    • Solution: The Ghidra launch script uses the Java runtime on the system PATH to find a supported version of a Java Development Kit (JDK) that Ghidra needs to complete its launch. Please see the Requirements section for what version of JDK must be pre-installed for Ghidra to launch.
  • Problem: Exited with error. Run in debug mode for more details.
    • Solution: Ghidra failed to launch in the background and the error message describing the cause of the failure is being suppressed. Rerun Ghidra using the <GhidraInstallDir>/support/ghidraDebug script to see the error message.

Using GhidraThere are several ways you can get help with using Ghidra:
  • Tutorials and other documentation can be found in <GhidraInstallDir>/docs.
  • When Ghidra is running, extensive context sensitive help is available on many topics.  To access Help on a topic, place your mouse on a window, menu or component and press <F1>.  Help for that window/menu/component will be displayed.
  • When Ghidra is running, indexed help can be found under Help → Topics...
(Back to Top)Known Issues for current releaseAll Platforms
  • Displaying the correct processor manual page for an instruction requires the installation of Adobe Reader 8.0.x or later.  Adobe broke the goto page in Reader version 7.x.  If a newer version of Reader is not installed, then the manual for the processor will display at the top of the manual.  Using an Adobe Reader version later than 8.0.x works for most platforms, but some platforms and version of the reader still have issues.
  • Some actions may block the GUI update thread if they are long running.
  • Project archives only store private and checked out files within the archive.  Project archives do not support server-based repositories.
  • When using a Ghidra server, all clients and the server must have a valid Domain Name Server (DNS) defined which has been properly configured on the network for both forward and reverse lookups.
  • Image base can not be changed if overlays have been defined.
  • Language versioning and migration does not handle complex changes in the use of the context register.
  • Ghidra uses Java reflection in a manner that has been deprecated in newer versions of Java. It is expected to see Java warnings the about illegal reflective access, especially when importing new files. Future versions of Ghidra will address this in order to ensure compatibility with the newest versions of Java.
Windows
  • Older versions of 7-Zip may not be able to unpack the Ghidra distribution file if it contains any files with a 0-byte length. Upgrade to a newer version of 7-Zip to fix this problem.
Linux
  • Ghidra Server does not support PAM-based user authentication (-a1 authentication mode).
  • Some users have reported Ghidra GUI rendering issues on 4k displays and multi-monitor thin client setups. These problems are attributed to reported bugs in Java. Upgrading to a newer version of Java may fix the issue.
  • At the time of writing, installing the openjdk-11 package in Ubuntu 18.04 results in openjdk-10 being installed which is incompatible with Ghidra.
macOS (OS X)
  • Building new Ghidra module extensions on macOS (OS X) using a network drive (including a network-mapped home directory) throws a Java exception. This issue is known to the Java/macOS community but a fix has not yet been released. See <GhidraInstallDir>/Extensions/Eclipse/GhidraDev/GhidraDev_README.html for more information on building Ghidra module extensions from Eclipse.
  • 2.png

免费评分

参与人数 7吾爱币 +5 热心值 +6 收起 理由
GAOKAI + 1 + 1 我很赞同!
wbzb + 1 + 1 兄弟,你是从哪儿搞到的这东西!!
yujie0880 + 1 + 1 谢谢@Thanks!
FleTime + 1 没汉化版,差评~
agonie + 1 我很赞同!
W_MoHan + 1 + 1 我很赞同!
s3nake + 1 我很赞同!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

紫蝶冰澜 发表于 2019-11-17 22:12
yaoyao7 发表于 2019-8-13 22:03
这个在mac下怎么安装

先安装java11以上的jre环境,https://www.oracle.com/technetwork/java/javase/archive-139210.html

然后在终端确认「java -version」命令可用后,下载解压,把「ghidraRun」设置可运行的权限后,在终端直接执行运行这个文件就可以了,程序是基于Java的窗口程序,理论上Java虚拟机能运行的系统都能启动
紫蝶冰澜 发表于 2019-11-17 22:03
本帖最后由 紫蝶冰澜 于 2019-11-17 22:07 编辑

9.1的正式版出来了

https://ghidra-sre.org/ghidra_9.1_PUBLIC_20191023.zip

sha-256:29d130dfe85da6ec45dfbf68a344506a8fdcc7cfe7f64a3e7ffb210052d1875e

TIM截图20191117220138.jpg
wanbinbo 发表于 2019-8-12 13:26
pjyhm 发表于 2019-8-12 13:31
看不懂!

要是发中文版的,一定会有很多赞的
浩劫QAQ 发表于 2019-8-12 13:35
额,这一大坨英文。。。为什么不换成中文(笑哭)
aa737087 发表于 2019-8-12 13:37
学习学习
yanmingming 发表于 2019-8-12 14:12
这样逼格更高吗
yywapj 发表于 2019-8-12 14:19
好想让Siri翻译成中文
xhot 发表于 2019-8-12 14:22
看不懂  能不能发个中文版的?
年轻不能无为 发表于 2019-8-12 14:24
英语好的就派上用场了
a244688347 发表于 2019-8-12 15:03
emmm感觉高大上啊
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-23 05:37

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表