暴力破解
基于表单的暴力破解
抓包,发送到intruder模块,选中密码,添加payload位置
类型选择简单列表,选一个字典开始爆破
将爆破结果按照响应包长度排序,长度不一样就说明返回内容不一样,一般大概率就是登录成功的包
验证码绕过(on server)
有些服务器后台是不刷新验证码的,经测试只要不手动刷新页面,就不会更改验证码的值,可以先输入验证码之后和上一关一样使用burp抓包爆破
随便输入账号密码,填写正确的验证码,抓包,发送到intruder模块,选中密码,添加payload位置,选择字典开始攻击
按照响应包长度排序,查看响应包,登录成功
验证码绕过(on client)
客户端前端验证输入的验证码,可以直接禁用js然后抓包爆破,或者输入正确的验证码之后再抓包爆破
和上两关一样,随便输入账号密码,填写正确的验证码,抓包,发送到intruder模块,选中密码,添加payload位置,选择字典开始攻击
按照响应包长度排序,查看响应包,登录成功
token防爆破?
抓包发现有token参数,多次重放就会提示token错误。
这似乎可以有效的防止暴力破解,但真的是这样吗?
F12查看页面源码可以发现token参数就在前端页面中显示
抓包,发送到intruder模块,攻击类型要选择交叉攻击,两个payload自行遍历,互不干扰
第一个参数还是正常的密码字典
第二个参数我们需要在payload的设置里面找到 检索提取,点击添加
选中token所在位置,burp会自动生成正则表达式,点击确定
然后开始设置第二个参数,payload类型选递归提取,初始payload就写抓包得到的token,开始攻击
按照响应包长度排序,查看响应包,登录成功
XSS跨站脚本攻击
反射型xss(get)
前端有长度限制,关闭js或者前端修改长度验证,即可绕过
写入XSS语句,成功弹窗
<script>alert('XSS')</script>
反射型xss(post)
先按照提示登录进去,再输入XSS语句弹窗
存储型xss
写入XSS语句弹窗,刷新仍然弹窗,切入别的页面再切回来还是会弹窗
DOM型xss
输入的语句在标签中显示的位置如下
先闭合掉a标签,然后写入XSS语句,成功弹窗
'><img src=x onerror=alert('XSS')>
xss盲打
写入XSS语句,随便输入一个用户名,什么都没有发生