以前写过一篇cdlinux抓握手包WiFi密码破解https://zhuanlan.zhihu.com/p/29013496,说了破解的原理和思路,现在就把文章里面的资源整理出来。资源包括以下

  1. CDLinux系统安装
  2. 跑字典工具EWSA和弱口令字典
  3. 生成字典Java代码

1. CDLinux系统安装

安装CDLinux材料

  • UltraISO
  • CDLinux.iso
  • grub4dos
  • grubinst_gui2

安装CDLinux是对于新手来说是比较难的,可参考百度经验https://jingyan.baidu.com/article/7908e85c723c59af481ad21c.html

软件下载地址https://pan.baidu.com/s/1VbjTvy07Er4DYSdw1dKMfQ#list/path=%2F%E8%B5%84%E6%BA%90%E5%85%B1%E4%BA%AB%2FWIFI%E5%AF%86%E7%A0%81%E7%A0%B4%E8%A7%A3%E8%B5%84%E6%BA%90

2. 跑字典工具EWSA和弱口令字典

跑字典的思路是先从弱口令字典开始。弱口令字典通过网络搜索也能收集,这里提供我所用过的字典和EWSA
下载地址https://pan.baidu.com/s/1VbjTvy07Er4DYSdw1dKMfQ#list/path=%2F%E8%B5%84%E6%BA%90%E5%85%B1%E4%BA%AB%2FWIFI%E5%AF%86%E7%A0%81%E7%A0%B4%E8%A7%A3%E8%B5%84%E6%BA%90

3. 生成字典Java代码

这些字典比较大,所以用代码生成,代码比较菜,有空再改下。

  • 获取地区手机号码

    public class GetPhoneNumbers {
      static String url="http://www.51hao.cc/city/guangdong/guangzhou.php";//获取号码段的网页
      private static List<List<String>> phone_sections=new ArrayList<>();//号码段
      private static List<String> phone_names=new ArrayList<>();//保存号码段的文件名
      public static void main(String[] args) {
          Document document=null;
    
          try {
              document= Jsoup.connect(url).get();
    
              Elements phonesnames_elements=document.select(".nums");//号码段名字所在标签,如130
              Elements phonesections_elements=document.select("ul"); //所有的号码段元素,一个ul对一个号码段
    
              //遍历元素,获取所有号码段
              for (int i=0;i<phonesnames_elements.size();i++){
                  phone_names.add(phonesnames_elements.get(i).text());
                  List<String> li=new ArrayList<>();
                      for (int j=0;j<phonesections_elements.get(i).children().size();j++){
                          li.add(phonesections_elements.get(i).child(j).text());
                      }
                  phone_sections.add(li);
              }
    
              FileWriter fileWriter=null; //保存为字典txt文件
              for (int i=0;i<phonesections_elements.size();i++){
                   fileWriter=new FileWriter(phone_names.get(i)+".txt");
                  for (int j=0;j<phone_sections.get(i).size();j++){
    
                      long phonestart=Long.parseLong(phone_sections.get(i).get(j)+"0000");
                      long phoneend=Long.parseLong(phone_sections.get(i).get(j)+"9999");
                      for (long k=phonestart;k<=phoneend;k++){
                          fileWriter.write(k+"\r\n");
                      }
                  }
    
              }
              fileWriter.close();
          } catch (IOException e) {
              e.printStackTrace();
          }
      }
    }

仅有一条评论

  1. CDLinux系统安装有些麻烦

发表评论