• 暴力破解


     

    暴力破解

    暴力破解的原理就不讲了. 讲几个破解工具吧

    1.在线破解

      1.1hydra(九头蛇)

     

      支持很多种服务登陆破解

       

      hydra -l user -P passlist.txt ftp://192.168.0.1

        -l指定用户名 -P指定密码文件

        如果不指定用户名可用-L 指定用户名文件

        最后跟服务地址

     

      破解windows共享

        hydra -l administrator -P pass.lst smb://1.1.1.1/admin$ -vV

      破解linux 远程登陆

        hydra -l root -P pass.lst ssh://1.1.1.1 -s2121 -e nsr -t 10 -vV

        -t 参数指定并发连接数 太快可能会出现问题

        -e n(空密码) s(账号密码相同) r(eg:账号root 则尝试密码toor)

        -s 指定非默认端口

      HTTP表单提交

          

      hydra -l admin -P pass.lst 1.1.1.1  http-post-form "/dvwa/login.php:username=^USER^&password=^PASS^&Login=Login:login failed" -V

          username=^USER^&password=^PASS^&Login=Login 为表单需要提交的内容

          uername,password为提交的表单的名称

          login failed表示登陆失败后页面出现的信息可能会出现 登陆失败返回的不是同一个页面 后重定向到login 页面 此时无效

          应该用 S=index.php 表示成功登陆后的信息

       hydra比较不稳定

       另一个工具medusa(美杜莎)相比较比较稳定 但是web表单破解存在缺陷支持的服务也少一点

    2.离线破解

      2.1离线密码破解思路:

        嗅探获取密码hash

        利用漏洞登陆服务器并从用户数据库获取密码HASH

        识别hash的类型长度

        利用离线破解工具进行hash碰撞

     

      2.2 HASH识别工具:

          hash‐identifier

          Hashid

          可能会存在识别错误或无法识别

      2.3windows hash获取工具

        利用漏洞:Pwdump、fgdump、mimikatz、wce

        物理接触:samdump2(未实践)

        方法 在目标机器上用U盘启动kali

        1.mount /dev/sda1 /mnt

        2.cd /mnt/Windows/System32/config

        3.samdump2 SYSTEM SAM -o sam.hash

        4.利用nc传输HASH

     

       2.4碰撞工具:

        Hashcat

        RainbowCrack (修改版支持GPU)

        John

     

     

     

    3.密码生产工具

    3.1 CUPP:按个人信息生成其专属的密码字典

      git clone https://github.com/Mebus/cupp.git

      使用 python cupp.py -i

     

       

      不是很适合中国人的习惯 python编写 可自己修改

     

     

      3.2 CRUNCH 按规则生产字典

        crunch <min-len> <max-len> [<charset string>] [options]

        charset string 表示字符集 默认为小写字母

     

        crunch 6 6 0123456789 -o start -d 2 -b 1mb / -c 100

          -o 表示输出文件 后跟文件名 (不指定-o 时生成字典直接输出在控制台)

          -d 2 表示同一字符最多连续两次

          -b 1mb 表示生成的文件按1mb分割 (单位可以时 kb mb gb kib mib gib 其中1000kb=1mb  1024kib=1mib)

          -c 表示按行数分割文件

     

        字符集:

        在配置文件中有字符集,避免手打各种很长的字符集

        字符集位置/usr/share/crunch/charset.lst (kali中)

     

        例如 可以 hex-lower 代替手打 0123456789abcdef

        * crunch 6 6 -f /usr/share/crunch/charset.lst hex-lower

          -f 后跟字符集文件

        crunch 1 1 -p 123456789

          -p 指定一串字符 对该字符串改变顺序重组

          -p必须时最后一个参数

          最大最小长度失效 但是必须存在

          与-s参数不兼容(-s指定起始字符串)

     

        * crunch 4 4 0123456789 -s 9900

          输出 9900 - 9999 已9900起始

        * crunch 1 1 -q read

          -q 读取文件每行重组(每行不重复)

          最小长度最大长度失效

        *字典组成规则(常用)

          crunch 6 6 -t @,%%^^

            @ :小写字母

            ,:大写字母

            %:数字

            ^:特殊符号

          *输出文件压缩

          crunch 4 4 -t @,^^ -o 1.txt -z 7z

            压缩格式:7z gzip  bzip lzma

     

      组合应用:

        crunch 4 4 -f /usr/share/crunch/charset.lst mixalpha-numeric-all -space -o w.txt -t @d@@ -s cdab

          因为指定了字符集 @表示字符集中的字符

        crunch 5 5 abc DEF + !@# -t ,@^%,

        abc DEF + !@# 表示字符集 小写字母在abc中取 大写字母在DEF中取 +表示占位符全数字  表示转义 !@#表示三个特殊字符 !@#

      3.3John the Ripper

  • 相关阅读:
    用错每日活跃用户(DAU)这个指标,无异于挖坑给自己跳
    自我修复型设计-常用的架构设计原则
    UParams
    nodejs的使用场景
    问题
    GitHub Copilot可对整行或全部代码给出AI分析建
    Your AI pair programmer
    飞冰React框架如何配置懒加载
    【630】keras 实现多输出模型
    【629】图像增强(imgaug 包)
  • 原文地址:https://www.cnblogs.com/hellow0rd/p/7255615.html
Copyright © 2020-2023  润新知