Skip to content

YoungYannick/FinalShellPasswordExtractor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

FinalShell Password Extractor

Java

FinalShell Password Extractor 是一个基于 Java Swing 开发的开源工具,专门用于提取和解密 FinalShell SSH 客户端本地保存的服务器连接信息及密码

该工具能够解析 FinalShell 的 JSON 配置文件,使用其特定的 DES 算法解密密码,并提供友好的图形界面进行查看、搜索和导出


✨ 功能特性

  • 🔒 核心解密: 内置 FinalShell 的 DES 解密算法,可还原加密存储的服务器密码
  • 📂 自动/手动识别:
    • 启动时自动尝试检测默认的 FinalShell 安装/数据目录 (%APPDATA%/finalshell~/.finalshell)
    • 支持手动选择 FinalShell 安装目录(包含 conn 文件夹的路径)
  • 📋 数据展示: 表格化展示连接信息(主机、端口、用户名、密码、备注等)
  • 🔍 搜索过滤: 支持对连接列表进行实时关键字搜索
  • 📤 导出功能: 支持将所有解密后的连接信息导出为 CSV 文件,方便迁移至其他 SSH 客户端
  • 💾 便捷操作:
    • 右键菜单支持复制单元格、复制解密密码、复制整行数据
    • 配置文件 (config.properties) 自动保存用户选择的路径(支持 exe4j 打包后的路径识别)

🛠️ 技术栈

  • 语言: Java 21
  • GUI 框架: Java Swing
  • 依赖库:
    • Gson (用于解析 FinalShell 的 JSON 配置文件)
  • 构建工具: Maven

🚀 快速开始

环境要求

  • JDK 21 或更高版本
  • Maven 3.x

构建步骤

  1. 克隆代码库:

    git clone https://github.com/YoungYannick/FinalShellPasswordExtractor.git
    cd FinalShellPasswordExtractor
  2. 使用 Maven 打包:

    mvn clean package
  3. 构建成功后,在 target 目录下会生成 FinalShellPasswordExtractor-0.1.jar

运行方式

方式一:直接运行 JAR

java -jar target/FinalShellPasswordExtractor-0.1.jar

方式二:打包为 EXE (可选)

本项目代码已针对 exe4j 进行了优化(见 ConfigManager.java),如果您将其打包为 Windows exe 文件,配置文件将正确保存至 exe 所在目录,而非系统临时目录

📖 使用指南

  1. 启动软件:运行程序后,主界面会自动加载检测到的连接
  2. 选择目录:如果未自动检测到,点击右上角的 "选择FinalShell目录...",定位到包含 conn 文件夹的父目录(通常是 FinalShell 的安装目录)
  3. 查看密码:在表格中找到对应的服务器,"密码" 列即为解密后的明文
  4. 导出数据:在表格区域 右键单击,选择 "导出全部到 CSV..." 即可保存文件

⚠️ 免责声明

  • 本工具仅供个人学习、安全研究或找回遗忘密码使用。
  • 请勿用于非法窃取他人服务器凭证。
  • 使用本工具产生的任何后果由使用者自行承担,开发者不承担任何法律责任。
  • 请妥善保管解密后的密码文件,防止敏感信息泄露。

About

用来解密FinalShell服务器密码的GUI工具

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages