Burpsuite
参考:https://zhuanlan.zhihu.com/p/29382197
Repeater
1.Repeater 使用
可以右键将请求发送到repeater:
发送到repeater后可以手动修改并点击send进行请求的重复提交。
对于凡是有变量的地方,我们都可以修改内容对其进行一个注入,发送请求,根据返回的结果进行判断是否存在某种漏洞。
2.数据包右键菜单
(1)改变请求方式
点击send发送请求后会收到回复。
raw:返回原始数据
headers:头部分
Hex:十六进制的形式显示
Html:以Html源码进行显示,不显示头
Render:对页面进行渲染一下,用户看到的近似于页面
改变后:
(2)更改body编码
(2)复制成curl命令
把该请求copy成curl命令,可以通过命令行利用curl命令,使用该请求访问页面:
(3)
怀疑该页面有CSRF漏洞生成CSRF的PoC代码,可以在本地写一个页面文件,把该要提交的数据都写进去,利用它来提交数据给服务器:
登录进去了:
(4)发送到编码Decoder模块
3.菜单栏的Repeater
在菜单栏的Repeater部分:
选中Update Content-Length是内容修改时,头长度自动修改,选中Unpack gzip /deflate压缩内容进行解压:
关于重定向:默认不跟随重定向,如果跟随重定向,点击follow redirection就会跳转到重定向的页面中去。一般默认选择never。其他三种都是跟着重定向的不同方式。
Process cookie in redirection:请求过程中如果包括cookie的时候,选中Process cookie in redirection,重定向时会把cookie也带过去。服务器会判断你是通过身份认证的用户,就会通过身份认证。
Sequencer
在测试webapplication时也是 一个很重要的模块。
有个sessionID后会认为已经经过身份认证了。通常sessionID是通过服务器的伪随机数生成的,如果伪随机算法选择不好,或者cookie就是基于有规律的变化而生成的,攻击者可能预测下一次登录的时候会返回什么样的sessionID,sequencer甄别sessionID是否真的随机,随机性是否好。
首先在访问过的页面中使用Filter过滤,找到set-cookie的请求过程响应包:
右键发送到Sequencer,选择PHPSESSID这个cookie值进行判断,或者手动进行判断
点击Start live capture能使服务器不断发送请求生成新的PHPSESSID,收集到一定量后再进行判断(可以点击Sve tokens进行保存收集到的session ID),生成到足够量的时候可以进行analyse:
查看结果,发现session ID随机性很好:
Decoder
注入攻击的时候可以用多层编码进行饶过。
可以选择加密、解密、哈希、智能解密。
在我们做注入攻击时,有很多webapplication会对用户端输入的数据进行消毒过滤处理,过滤掉不该出现的字符,防止被攻击。进行多层复杂的编码是最常用绕过的方法。
Comparer
可以爬网对比。
对于数据包可以点击右键发送到comparer,选择两个数据包进行比较。
也可以在Repeater模块中通过处理不同参数值得到的响应结果,将响应结果进行比较,如下:
Options
Platform Authentication
像HTTP身份认证等不是表单身份认证的,要在平台身份验证方法上进行添加:
Upstream Proxy Servers
上游代理服务器:
例如使用burp扫描时不想被发现,可以添加代理
想用tor做代理的话:
主机名解析:
Scheduled Tasks:
定期对某个Web站点进行扫描:
若有些webapplication需要有客户端证书才能跟服务器进行正常通讯,即服务端客户端都需要有证书,此时可以把客户端证书导入:
如果做代理,目标站点是自己的站点,不希望使用burp伪造的证书,有自己真实的服务器证书,可以指定:
Display设置用户界面字体、字符集(使用什么字符编码,通常自动识别)
Misc杂项设置Log保存数据包、临时文件位置、Scheduled Tasks等