Java FTP登录破解程序

Java FTP登录破解程序,java,ftp,Java,Ftp,我目前正在开发一个最终会进行“字典攻击”的程序,这是一个大学项目,所以它不是出于非法目的 好的,到目前为止,我已经设法做到了这一点: public class Cracker { public static void main(String [] args) throws IOException { BufferedReader bufferedReader = new BufferedReader(new FileReader("/bin/a.txt")); StringB

我目前正在开发一个最终会进行“字典攻击”的程序,这是一个大学项目,所以它不是出于非法目的

好的,到目前为止,我已经设法做到了这一点:

public class Cracker {

public static void main(String [] args) throws IOException {

    BufferedReader bufferedReader = new BufferedReader(new FileReader("/bin/a.txt"));
    StringBuffer stringBuffer = new StringBuffer();
    String line = null;

    while((line =bufferedReader.readLine())!=null) {
        stringBuffer.append(line).append("\n");
    }

    System.out.println(stringBuffer);
  }
}
它从一个*.txt文件中读取并打印出它的每一行。我不太熟悉Java中的连接,所以我想知道如何实现同样的概念,并使用它来尝试FTP服务器的每一行密码。讲座已经提供给用户,因此没有必要为用户做


提前感谢所有提供帮助的人。

正如CodeChimp建议的那样,您可以使用现有的FTP客户端进行Java。如果这不是您的选项,您可以自己实现授权过程

FTP协议在上有很好的描述

授权过程可按如下方式实施:

  • 在端口
    21
    上打开与FTP服务器的连接。服务器应使用状态代码
    2xx
    (通常为
    220
    )进行响应
  • 发送命令
    USER
    。服务器应使用状态代码
    3xx
  • 发送命令
    PASS
    。服务器将响应状态代码
    230
    (成功登录)或状态代码
    430
  • 您可以使用telnet客户端提前测试授权过程


    在Java中以编程方式打开连接通常必须使用
    套接字
    。您将找到一个从/到
    Socket
    s读取和写入数据的教程。

    您可以使用几种基于Java的FTP库。只需谷歌“JavaFTP客户端”。如果您不能使用客户机库,那么您必须阅读并理解FTP的工作原理并实现它。或者,我想你可以退出并调用FTP命令行程序。Java中的原始“连接”通常是通过一个
    套接字来完成的,它提供了对原始输入/输出流的访问。非常感谢,我真的需要一个入门的基础,我正在阅读一些刚刚开始阅读的材料。谢谢你的提示