• Kali学习笔记28:Burpsuite(下)


    文章的格式也许不是很好看,也没有什么合理的顺序

    完全是想到什么写一些什么,但各个方面都涵盖到了

    能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道

    扫描:

    上一篇介绍到了爬网,那么到这里我以及爬取了一个网站

    接下来要做地事情就是,扫描这个站点:

    为了扫描最大化,我在设置中勾选所有的扫描选项:

    下面还有扫描的一些其他选项,比如扫描线程,速度等等,值得注意的是这里:

    第一个选项是扫描速度,不用多说,速度越慢扫描越细致

    下面这个要注意了

    minimize false negatives:只要有看起来是漏洞的就报告

    minimize false positives:只有很肯定这是漏洞才会报告

    漏洞扫描也分为也分为主动扫描和被动扫描:

    被动扫描,只要我们访问网站就会进行

    主动扫描,在站点右键Active Scan即可

    扫描出问题之后,就可以在主页查看详细,比如:

    下面介绍Burp的一个强大的功能:

    Intruder:

    Intruder可以理解为暴力破解

    演示:

    我使用带有一个发送了POST请求的页面右键发送到Intruder模块:

    然后在Intruder模块的Positions中设置好我要FUZZ的模块:

    比如我这里要FUZZ(暴破)用户名和密码

    这里要重点注意的是上方的Attack type:攻击类型,总共有四种,下面我对这四种做演示:

    Sniper方式:

    新建一个用户字典:user 用来破解用户名

    aaa
    bbb
    ccc
    ddd
    eee
    admin
    fff
    ggg

    再新建一个密码字典:pass 用来破解密码:

    aaaa
    bbbb
    cccc
    password
    dddd
    eeee
    ffff
    gggg

    在Payloads选项中导入字典:注意我这里把两个字典合在一起加载了,而且PayloadSet选择是1

    这时候点击最上方工具栏的Intruder的Start开始:

    通过观察可以发现:

    这种方式是固定第二个位置的值(默认值),然后对第一个位置利用字典暴破,字典循环完之后固定第一个位置(默认值),暴破第二个位置

    由于我这里的默认值是admin和password,取巧可以暴破成功

    Battering ram

    通过和上边一样的导入测试之后,发现这种爆破方式是:

    第一个位置和第二个位置的值一样,都是字典里面的条目

    显然,我这里想爆破用户名密码不能用这种方式

    Pitchfork

    这种方式就不能只指定一个字典文件了:

    我在Payload set 1里面指定user文件,在Payload set 2里面指定pass文件

    然后开始爆破:

    观察结果后发现:

    取第一个字典的第n项和第二个字典的第n项组合进行爆破

    显然这种方式不适合用户名密码爆破

    Cluster Bomb

    这种方式是最完善的,用User里面的每一项和Pass里面的每一项都进行组合,来爆破

    所以在这里爆破用户名密码适合使用这一种

    那么,如果爆破结果出来了,我们如何查看呢?

    正常的Web应用,我们根据状态码和响应体长度可以一目了然

    然而这个DVWA做得很巧妙,正确情况重定向到login.php,错误情况重定向到index.php,字符个数都是一样

    这时候可以用搜索过滤来查看:前提是我经过一系列的分析得知正确的结果是返回index.php

    除了这种方式,还可以在配置中设置匹配:

    注意添加完index,要不下面这个勾去掉,否则会排除头信息

    上边的字典类型也需要说一下:

    这里说几个常用的字典类型

    简单的字典直接加载即可

    大字典最好使用runtime file类型

    Case modification方式:替换大小写等操作

    Charater Block字符块方式:通过一些参数自定义一长串字符

    Dates:自定义参数插入日期

    Brute Force:通过一些参数使用所有的尽可能的组合进行爆破

    之前是我自己找的字典,Burp里面也有自带的字典:

    字典都不是很大,但实用性方面还可以

    在已经选好字典之后,还可以有各种各样的复杂操作:前缀后缀编码解码哈希等等

    还有一个重要功能就是Repeater:

    Repeater

    手动请求重复提交,任何一个模块地请求页面都可以右键send to repeater

    至于手动提交请求有什么用,有大用

    关于发送请求的选项可以点击右键来查看

    Sequencer:

    Cookie地sessionID是一定随机的吗?不是,它是服务器端采用伪随机算法生成的

    因此,我们理论上可以判断出下一个sessionID,由此来做更多的操作

    而Sequencer就有这样的功能:

    在带有Cookie响应包的页面右键Send To Sequencer:

    Burp会自动识别Cookie,如果失败可以点下面的Configure来手动识别

    然后点击Start live capture就可以进行很多次的发送,感觉数量差不多就可以停止

    然后使用Burp进行分析,Burp自带很多的分析方法

    分析之后,显示DVWA对Cookie的加密是excellent级别的,说明我们不可以在Cookie方面来找DVWA的漏洞

    最后一个功能就是编码功能:

    Burp做的比OWASP_ZAP好一些

    有时候我们想做一些注入,但目标服务器会过滤掉一些危险字符,这时候就需要我们对危险字符做一些编码

  • 相关阅读:
    关于生成并发唯一性流水号的解决方案
    父页面得到<iframe>
    struts2 convention配置中常见配置选项及说明
    Struts2下关于Calendar,date的一些处理
    怎样将用户名和密码保存到Cookie中?【转】
    如何调用用户控件(UserControl)的方法 .
    Struts遍历标签<s:iterator>总结 .
    在事业的开展上保持归零的心态
    这种日子最轻松,这样的人生最快乐
    诚实是人世间最珍贵的宝物,是每个人都应当坚守的伟大情操
  • 原文地址:https://www.cnblogs.com/xuyiqing/p/9948783.html
Copyright © 2020-2023  润新知