Linux research 5.4.0-91-generic #102~18.04.1-Ubuntu SMP Thu Nov 11 14:46:36 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
java --version
IOT自带的java是符合要求的,不需要额外下载
iot@research:~/install-file$ java --version
openjdk 11.0.13 2021-10-19
OpenJDK Runtime Environment Temurin-11.0.13+8 (build 11.0.13+8)
OpenJDK 64-Bit Server VM Temurin-11.0.13+8 (build 11.0.13+8, mixed mode)
屁,当我没说,我做到后面现在又来补前面的,没有java17
要重新下载找到对应版本的java17
https://adoptium.net/zh-CN/temurin/releases/
或者直接sudo
sudo apt install openjdk-17-jdk
Ubuntu 22.04、20.04、18.04上安装OpenJDK 17 - 知乎 (zhihu.com)
如何切换Java版本
在主文件夹中的 .bashrc中把java的path改了
gradle -v(没用,仅记录)
下载
Gradle | Releases 也可以直接在这里下载
wget https://downloads.gradle.org/distributions/gradle-7.6.3-bin.zip
手动安装,因为直接sudo apt-get install gradle的版本是4.4.1,不符合ghidra的要求
解压
unzip gradle-7.6.3-bin.zip
sudo unzip gradle-7.6.3-bin.zip -d /opt
运行以下命令来重命名Gradle目录
sudo mv /opt/gradle-7.6.3 /opt/gradle
配置环境变量
主目录里面隐藏文件.bashrc,直接打开它,在末尾加上
export PATH=$PATH:/opt/gradle/bin
保存文件
刷新环境变量
source ~/.bashrc
或者这样:
步骤3:配置环境变量
在终端中打开~/.bashrc或~/.bash_profile文件(取决于你使用的Shell):
nano ~/.bashrc
或
nano ~/.bash_profile
在文件末尾添加以下内容:
export PATH=$PATH:/opt/gradle/bin
按下Ctrl + X,然后输入Y保存文件。
步骤4:刷新环境变量
在终端中运行以下命令来刷新环境变量:
source ~/.bashrc
或
source ~/.bash_profile
验证
gradle -v
安装成功就可以看到版本信息
其他依赖条件
make -v
gcc -v
g++ -v
下载ghidra
我选择去手动下载再解压(git好慢好慢啊)
github链接
GitHub - NationalSecurityAgency/ghidra: Ghidra is a software reverse engineering (SRE) framework
我选择的是
解压,然后打开这个目录的文件夹,然后 直接运行./ghidraRun
打开就可以create new project,选择项目存储的位置,就可以反汇编文件了
下载idea
参考教程
Linux系统安装IDEA保姆级教程_linux安装idea-CSDN博客
IDEA官网的链接:https://www.jetbrains.com/idea/
下载IDEA
首先在官网上下载linux版本的IDEA,免费版本就行了,第一次没有经验,ghidra那个插件自己编译太难搞了,还是选择2022版本的算了
解压下载好的IDEA
配置环境变量
然后将如下的内容添加至~/.bashrc文件的最后一行(!!!注意替换掉对应的目录名!!!)。
export IDEA_HOME=/home/iot/install-file/idea-IC-233.14015.106
export PATH=${IDEA_HOME}/bin:$PATH
export IDEA_HOME=/home/iot/install-file/idea-IC-233.14015.106
export PATH=${IDEA_HOME}/bin:$PATH
更新启用环境变量
source ~/.bashrc
启动IDEA
Linux环境下的IDEA已经安装完成了,我们只需要进入解压目录中的bin文件夹,输入如下指令,即可启动IDEA
./idea.sh
我们首先启动IDEA,认真阅读使用协议后,选择同意,并点击Continue
接下来IDEA询问我们是否愿意分享自己使用软件过程中的数据,我们可以根据自己的情况选择。
汉化
选择完毕后,就进入了IDEA的欢迎界面了,我们点击左侧的Plugins
在顶部的搜索框里面,输入Chinese
,就可以找到中文的汉化插件。
我们点击Install
,就会开始下载安装插件,安装完成后,我们点击Restart IDE
,重启后,就可以显示中文的IDEA界面了。
安装完成
IDEA和Ghidra
主要教程Ghidra IDEA 开发环境配置 | Niko's BLOG (tinyniko.github.io)
使用IDEA搭建Ghidra Script开发调试环境配置_idea ghidra script-CSDN博客
下载插件,但编译没成功,不过有现成的
从github链接 中下载IDEA的插件
intellij-ghidra(Github)
现成的:Versions: Ghidra - IntelliJ IDEs Plugin | Marketplace (jetbrains.com)
下载到本地,解压,然后修改项目目录下的gradle.properties
然后在源代码目录下运行 gradle buildPlugin
build错误,搞不好
直接在插件里搜索Ghidra,出来的就是对应版本的0.4.1
安装试试看
配置插件
把Ghidra的地址写上,在此之前最好打开Ghidra,因为插件要检测用户家目录下的.ghidra文件夹里的一些内容,所以先运行一下ghidra
点击确定,等待,IDEA下面有一个进度条,要等他走完
点这里,编辑配置
然后添加,就配置完了
但是打开ghidra的script manager,发现并没有我们写的java脚本
继续配置脚本目录
回到script manager可以看到我们写的脚本了
直接在ghidra里运行
简单的实例
简单的代码:
//@author why
//@category test
//@keybinding
//@menupath
//@toolbar
import ghidra.app.script.GhidraScript;
public class helloGHidra extends GhidraScript {
protected void run() throws Exception {
printf("hello idea\n");
printf("hello ghidra\n");
String name = currentProgram.getName();
printf("hello %s\n", name);
}
}
如果直接在IDEA里运行的话,我们可以在代码的最后一行下一个端点,他会跳转到打开Ghidra的界面
然后再ghidra的脚本管理器里点运行
在IDEA中就可以看到了
debug之后,在ghidra里也可以看到输出
如果直接在IDEA里结束运行,他会把Ghidra也关掉