前言

本文主要记录📝与密码攻击相关内容


自带字典

路径: /usr/share/wordlists/

image-20220521000241685

dirb目录

image-20220521005637902
  • big.txt #大的字典
  • small.txt #小的字典
  • catala.txt #项目配置字典
  • common.txt #公共字典
  • euskera.txt #数据目录字典
  • extensions_common.txt #常用文件扩展名字典
  • indexes.txt #首页字典
  • mutations_common.txt #备份扩展名
  • spanish.txt #方法名或库目录
  • others #扩展目录,默认用户名等
  • stress #压力测试
  • vulns #漏洞测试

dirbuster目录

image-20220521005711266
  • apache-user-enum-** #apache用户枚举
  • directories.jbrofuzz #目录枚举
  • directory-list-1.0.txt #目录列表大,中,小 big,medium,small

fern-wifi目录

image-20220521005738099
  • common.txt #公共wifi账户密码

metasploit目录

#各种类型的字典

image-20220521005853706

wfuzz目录

image-20220521183811478

#模糊测试,各种字典…

webslayer目录(需手动安装webslayer)

image-20220521010442157
  • general #普通字典目录

    • admin-panels.txt #后台路径 字典
  • Injections #注入字典目录

    • All_attack.txt #全部攻击
    • bad_chars.txt #字符注入
    • SQL.txt #sql注入
    • Traversal.txt #路径回溯
    • XML.txt #xml注入
    • XSS.txt #xxs注入
  • others #扩展目录

    • common_pass.txt #通用密码字典
    • names.txt #用户名字典
  • stress #压力测试目录

image-20220521010600009
  • vulns #漏洞测试目录

    • apache、iis、cgis…
  • webservicces #web服务目录

    • ws-dirs.txt #路径测试
    • ws-files.txt #文件测试

密码攻击

创建密码字典

密码字典主要是配合密码破解软件所使用,密码字典里包括许多人们习惯性设置的密码。这样可以提高密码破解软件的密码破解成功率和命中率,缩短密码破解的时间。当然,如果一个人密码设置没有规律或很复杂,未包含在密码字典里,这个字典就没有用了,甚至会延长密码破解所需要的时间。在Linux中有Crunch和rtgen两个工具,可以来创建密码字典.

Crunch工具

Crunch是一种创建密码字典工具,该字典通常用于暴力破解。使用Crunch工具生成的密码可以发送到终端、文件或另一个程序.

查看crunch版本和用法

终端输入crunch

image-20220521184630466

从图中,我们可以知道使用crunch命令生成密码的语法格式如下所示:

1
crunch <minimum length> <maximum length> [character set] [options]

crunch命令常用的选项如下所示.

  • -o:用于指定输出字典文件的位置。
  • -b:指定写入文件最大的字节数。该大小可以指定KB、MB或GB,但是必须与-o START选项一起使用。
  • -t:设置使用的特殊格式。
  • -l:该选项用于当-t选项指定@、%或^时,用来识别占位符的一些字符。

例子:

创建一个密码列表文件,并保存在桌面.其中,生成密码列表的最小长度为8,最大长度为10,并使用ABCDEFGabcdefg0123456789为字符集.

1
crunch 8 10 ABCDEFGabcdefg0123456789 -o /home/lanyun/桌面/
image-20220521185502446

由图可知,crunch将会创建 691266960 MB 675065 GB 659 TB 这么大的字典,由于硬盘空间不足,故生成到6.3GB时就被我终止了.

image-20220521185635098

我们将这个字典文件📃打开,双击使用Nano打开或用命令 Nano加文件📃路径 方式打开.

由于本人Kali虚拟机内存有限,故采用gedit应用打开.

image-20220521190002043

如图就是我们用crunch命令生成的密码.

更多关于如何使用crunch的说明和例子,请参考man页。

rtgen工具

rtgen工具用来生成彩虹表。彩虹表是一个庞大的和针对各种可能的字母组合预先计算好的哈希值的集合。彩虹表不一定是针对MD5算法的,各种算法都有,有了它可以快速的破解各类密码。越是复杂的密码,需要的彩虹表就越大,现在主流的彩虹表都是100G以上。

接下来我们用rtgen工具生成彩虹表作为示例.

由于通过apt install rainbowcrack安装Rainbowcrack失败,故把项目克隆到/usr/share/目录下.md,结果不是ARM架构的二进制文件📃,跑不起来,草,所以后面的演示不了了.

image-20220521192236210

切换到rainbowcrack目录

1
cd /usr/share/rainbowcrack/
image-20220521192432387

使用rtgen命令生成一个基于MD5的彩虹表

1
./rtgen md5 loweralpha-numeric 1 5 0 3800 33554432 0
回显
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
rainbow table md5_loweralpha-numeric#1-5_0_3800x33554432_0.rt parameters
hash algorithm: md5
hash length: 16
charset: abcdefghijklmnopqrstuvwxyz0123456789
charset in hex: 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a 30 31 32 33 34 35 36 37 38 39
charset length: 36
plaintext length range: 1 - 5
reduce offset: 0x00000000
plaintext total: 62193780
sequential starting point begin from 0 (0x0000000000000000)
generating…
131072 of 33554432 rainbow chains generated (0 m 42.5 s)
262144 of 33554432 rainbow chains generated (0 m 39.2 s)
393216 of 33554432 rainbow chains generated (0 m 41.6 s)
524288 of 33554432 rainbow chains generated (0 m 42.0 s)
655360 of 33554432 rainbow chains generated (0 m 39.1 s)
786432 of 33554432 rainbow chains generated (0 m 40.1 s)
917504 of 33554432 rainbow chains generated (0 m 39.9 s)
1048576 of 33554432 rainbow chains generated (0 m 38.8 s)
1179648 of 33554432 rainbow chains generated (0 m 39.2 s)
1310720 of 33554432 rainbow chains generated (0 m 38.2 s)
.....
33161216 of 33554432 rainbow chains generated (0 m 40.2 s)
33292288 of 33554432 rainbow chains generated (0 m 38.9 s)
33423360 of 33554432 rainbow chains generated (0 m 38.1 s)
33554432 of 33554432 rainbow chains generated (0 m 39.1 s)

以上信息显示了彩虹表的参数及生成过程。例如,生成的彩虹表文件名为md5_loweralpha-numeric#1-5_0_3800x33554432_0.rt;该表使用MD5散列算法加密的;使用的字符集abcdefghijklmnopqrstuvwxyz0123456789等。

(3)为了容易使用生成的彩虹表,使用rtsort命令对该表进行排序。执行命令如下 所示:

1
2
3
4
5
6
7
/usr/share/rainbowcrack# rtsort md5_loweralpha-numeric#1-5_0_
3800x33554432_0.rt
md5_loweralpha-numeric#1-5_0_3800x33554432_0.rt:
1351471104 bytes memory available
loading rainbow table…
sorting rainbow table by end point…
writing sorted rainbow table…

输出以上信息表示生成的彩虹表已成功进行排序。

先水一部分吧,后面如果有空继续水