文章的格式也许不是很好看,也没有什么合理的顺序
完全是想到什么写一些什么,但各个方面都涵盖到了
能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道
扫描:
上一篇介绍到了爬网,那么到这里我以及爬取了一个网站
接下来要做地事情就是,扫描这个站点:
为了扫描最大化,我在设置中勾选所有的扫描选项:
下面还有扫描的一些其他选项,比如扫描线程,速度等等,值得注意的是这里:
第一个选项是扫描速度,不用多说,速度越慢扫描越细致
下面这个要注意了
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好一些
有时候我们想做一些注入,但目标服务器会过滤掉一些危险字符,这时候就需要我们对危险字符做一些编码