# FtpCracker **Repository Path**: byhandsome/FtpCracker ## Basic Information - **Project Name**: FtpCracker - **Description**: FtpCracker是一个高效的命令行FTP暴力破解工具,用于自动化测试FTP服务器的密码安全性。该工具采用多线程技术,支持从文件加载IP地址、用户名和密码列表,实现快速的暴力破解测试。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-13 - **Last Updated**: 2025-12-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # FTP暴力破解工具 这是一个基于C#开发的高效FTP暴力破解工具,支持多线程并发操作和智能优化。工具可以通过命令行参数指定IP地址、用户名和密码字典,实现对多个FTP服务器的密码尝试。 ## 功能特性 - 智能IP ping测试过滤功能,自动跳过不可达的目标,提高效率 - IP ping结果缓存机制,避免重复测试同一IP,大幅提升性能 - 高性能多线程并发操作,最大支持CPU核心数10倍或200个线程 - 完整的命令行参数支持 - 详细的日志记录,包括成功、失败和ping测试记录 - 自动去重和注释行跳过功能 - 实时进度显示,包括当前速度、剩余时间和成功率 - 优雅的取消操作支持(按ESC键) - 内存使用监控,防止资源耗尽 ## 系统要求 - Windows操作系统 - .NET Framework 4.7.2或更高版本/.NET Core 3.1或更高版本 ## 使用方法 ``` FTPCracker.exe -i ip.txt -u user.txt -p password.txt -x 200 ``` ### 命令行参数 - `-i` 指定包含IP地址的文件路径(必需) - `-u` 指定包含用户名的文件路径(必需) - `-p` 指定包含密码的文件路径(必需) - `-x` 指定并发线程数量(可选,默认200,最大为CPU核心数的10倍或200,取较小值) - `-h` 显示帮助信息 ## 文件格式 ### IP地址文件 (ips.txt) 每行一个IP地址,示例: ``` 192.168.1.1 192.168.1.100 10.0.0.5 # 这是注释行,会被跳过 ``` ### 用户名文件 (user.txt) 每行一个用户名,示例: ``` root admin 123456 # 这是注释行,会被跳过 ``` ### 密码文件 (password.txt) 每行一个密码,示例: ``` 123456 admin root password # 这是注释行,会被跳过 ``` ## 输出说明 - 程序执行过程中会实时显示进度信息和IP过滤情况 - 成功连接的信息会立即显示在控制台并记录到日志文件 - 所有日志文件保存在logs目录下: - `FTP_success.txt`: 成功连接的记录 - `FTP_fail.txt`: 失败连接的记录 - `FTP_summary_时间戳.log`: 执行摘要报告 - 根目录下的`FTP_ping_test.txt`: IP ping测试结果记录 ## 注意事项 1. 请确保有足够的系统资源(内存和CPU)来支持指定的线程数 2. 此工具仅用于授权测试和教育目的,请遵守相关法律法规 3. 大量线程可能会导致目标服务器负载过高,请谨慎设置线程数 4. ping测试会消耗一定时间,但能显著提高整体效率,特别是在有大量不可达IP的情况下 5. 缓存机制会自动保存已测试IP的结果,避免重复ping操作 ## 编译说明 使用Visual Studio或dotnet命令行工具编译: ``` dotnet build FTPCracker.csproj -c Release ``` ## 许可证 本工具仅供学习和授权测试使用,请勿用于非法用途。 ## 免责声明 使用本工具产生的任何后果,由使用者自行承担全部责任。开发者不承担任何直接或间接责任。