Jellyfish 项目使用教程

Jellyfish 项目使用教程

1. 项目目录结构及介绍

Jellyfish 项目是一个基于 Linux 的用户态 GPU rootkit 证明概念项目,它使用 LD_PRELOAD 技术和 OpenCL API 来实现 GPU 上恶意代码的存储和执行。以下是项目的目录结构及其说明:

jellyfish/
├── build/          # 构建目录,存放编译生成的文件
├── rootkit/        # 根kit 相关代码
├── server/         # 服务器端代码
├── .gitignore      # Git 忽略文件列表
├── LICENSE         # 项目许可证文件
└── readme.md       # 项目说明文件
  • build/:构建目录,用于存放编译过程中产生的文件。
  • rootkit/:包含 rootkit 的核心代码,负责 GPU 上恶意代码的加载和执行。
  • server/:服务器端代码,负责监听客户端的连接和数据传输。
  • .gitignore:指定 Git 忽略跟踪的文件和目录。
  • LICENSE:项目的开源许可证,本项目采用 GPL-2.0 许可。
  • readme.md:项目说明文件,包含项目的简要介绍和基本使用说明。

2. 项目的启动文件介绍

项目的启动主要涉及服务器端和客户端的代码。以下是一些关键的启动文件:

  • server/server.c:服务器端主程序文件,负责启动监听服务和处理客户端连接。
  • rootkit/rootkit.c:rootkit 主程序文件,负责在 GPU 上加载和执行恶意代码。

启动服务器

首先,确保你的系统已经安装了 OpenCL 驱动程序,然后编译服务器端代码:

cd server
gcc server.c -o server -lOpenCL

启动服务器:

./server

启动 rootkit

编译 rootkit 代码:

cd rootkit
gcc rootkit.c -o rootkit -lOpenCL

运行 rootkit:

./rootkit

3. 项目的配置文件介绍

本项目没有专门的配置文件。所有的配置都是通过编译时的参数或者代码中的宏定义来实现的。如果需要修改配置,可以直接在源代码中找到相应的宏定义或者参数,并按照需求进行修改。

例如,服务器端的监听端口和 rootkit 的行为参数都可以在代码中找到并修改。

请确保在使用前正确配置并编译项目,以避免运行时出现错误。


以上是 Jellyfish 项目的使用教程,希望对您有所帮助。在使用过程中,请遵守法律法规,仅用于教育目的。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值