通过做题来熟悉burp的使用
- 爆破模块
BUUCTF -> Basic -> BUU BRUTE 1
- 点击点击->启动靶机->点击链接
- 进入这样一个页面
这道题目的是要输入正确的用户名字和密码,然后得到flag。我们可以随便输入用户名和密码然后通过burp抓包,得到它的请求包,通过暴力破解从大量数据中获取到正确的用户名和密码。
- 随便输入,然后用burp抓包
然后点击操作将数据发送到重放器中,点击重放器,点击发送,在响应结构中点击页面渲染。会发现用户名错误。
这样说明我们可以一步一步来解决,先爆破出用户名之后再解决密码。
- 爆破用户名
在代理中选中用户名,密码不选择,然后点击操作将其发送到Intruder(入侵,攻击)
这其中$前缀的都是我们需要爆破的,即username和password(用户名和密码)
- 编辑payload
payload类型,因为是用户名所以我们就设置成简单列表就好。
payload设置,从文件中加载爆破字典(没有下载过的需要下载,txt的即可)(这也就是爆破的意义所在,通过遍历一个文件,一个字典中的大量数据来得到一个正确的数据)
然后我们就可以开始攻击了。
- 判断正确值和错误值
payload表示所有用户名的情况(文件[字典]的存量决定)
状态码:表示是否在正常攻击。(200就表示正常)
长度:错误值和正确值常通过长度来判断。通过点击长度,它会进行一个自动排序,我们就会得到与大量数据不同的值。而这个值所对应的payload大概率就是正确的payload。
攻击完成后我们发现长度有217和202,197这几种,且 217数量极少,且对应的payload都相同,点击它。
发现不再是用户名错误,而是密码错误。说明admin是正确的用户名,只是输入密码错误。这样我们将username改为正确的用户名,爆破密码即可。
- 爆破密码
重新点击代理界面,将用户名改为admin,然后选中密码,点击操作发送到Intruder
浅绿色标亮的就是要爆破的密码,然后我们还是进行设置payload。
- 设置payload
从爆破用户名我们可以知道密码是一个四位数字。所以我们将payload类型设置成数值类型。
因为是四位数字所以到(to)设置成9999,又因为它是四位数字,所以把整数的最小位数也改为四位。这样就设置成功了,可以开始攻击。
攻击完成后,发现有唯一不同的长度
对应的payload为6490,点击
显示登录成功,说明6490是正确的密码,复制flag,输入,这道题就完成了。