CTFHUB-密码口令-弱口令

前置知识:

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
Burpsuit的几种爆破模式:
一:sniper【狙击手】

这种攻击基于原始的请求内容,需要一个字典,每次用字典里的一个值去代替一个待攻击的原始值。

攻击次数=参数个数X字典内元素个数

例如:原始请求中

name=aa , password=bb,

字典:

{ 1 ,2 };

那么会产生四个请求:

name=1 , password=bb

name=2 , password=bb

name=aa , password=1

name=aa , password=2

这种模式主要适用于:竞争条件测试(选择Null payloads),密码、验证码暴力破解,重放攻击等场景。

二、battering ram 【撞击物】

也需要一个字典,这会使字典里每个值同时赋给所有参数。上例的结果为:

name=1 , password=1

name=2, password=2

攻击次数=字典内元素个数

这种模式主要适用于:撞裤。

三、pitchfork【相交叉】

需要的字典个数=参数个数。

每个请求是由每个参数轮流取各自负载集合里的值得到。

如果每个字典里元素数量不一致,那么请求个数以最小的那个为准。

例:

原始请求中

name=aa , password=bb,payload1={ 1 , 2 }, payload2={ 3 , 4 , 5 }

会产生两个请求:

name=1 , password=3

name=2 , password=4

攻击次数=字典内元素个数最小值

这种模式主要适用于:恶意注册。

四、cluster bomb 【炸弹丛】(最常用)

需要的字典个数=参数个数。

最后产生的所有请求是各参数取值的所有组合,攻击次数是字典内元素个数的集合。

例:

原始请求中

name=aa , password=bb,payload1={ 1 , 2 }, payload2={ 3 , 4 , 5 }

会产生 请求:

name=1 , password=3

name=1 , password=4

name=1 , password=5

name=2 , password=3

name=2 , password=4

name=2 , password=5

这种模式主要适用于:账号、密码暴力破解。

进入靶机,发现一个用户密码登录页面,

直接使用burpsuit抓包,

添加admin 和 123456为变量,然后选择bp的Cluster bomb(集束炸弹模式),用户名手动添加几个常见的admin,test,uesr,以及ctfhub,密码直接选择密码爆破字典里的top3000,然后开始爆破。完成后按长度排序,发现用户为admin,密码为password时的长度与其他的不同

然后查看该页面,发现flag