游客发表
打开Burp Suite,操册第一眼看到的作手是Proxy模块的拦截开关。默认状态下它是操册灰的,意味着所有经过浏览器的作手流量会直接放行。点一下变成橙色,操册请求就被卡在半路,作手等你手动放行或丢弃。操册这个动作我重复过上千次,作手但每次看到那个橙点亮起,操册还是作手会下意识坐直——接下来要抓的东西可能很重要。
Proxy是操册Burp的心脏,但别只盯着它。作手Intercept标签页里有个容易忽略的操册细节:右键请求可以“Send to Repeater”。Repeater才是作手真正干活的地方。把请求丢进去,操册改参数、换Cookie、调Header,点Send,右边立刻回显。我习惯把Repeater的请求窗口拉大,因为经常要粘贴一长串JSON或XML。有一次测一个API,参数藏在body里嵌套了四层,Repeater的自动格式化帮了大忙,不然眼睛得看瞎。
Intruder的用法分场景。Sniper模式适合单个参数爆破,比如测验证码是否可复用。Cluster bomb用来组合攻击,用户名和密码两个字典同时跑。但Intruder有个坑:社区版限速,跑大字典会慢到怀疑人生。我的做法是先用Intruder定位可疑参数,确认存在注入或越权后,写Python脚本调requests库批量跑。Burp的Payload Processing里可以加规则,比如对参数值做MD5哈希或Base64编码,省去手动转换的麻烦。
Scanner是Pro版才有的功能,但别全信它的报告。自动扫描能发现SQL注入、XSS这些常见漏洞,可逻辑漏洞它基本抓瞎。上周测一个电商站,Scanner没报任何问题,我手动把商品ID从1001改成1002,直接看到了别人的订单。这种水平越权,工具扫不出来。所以我的流程是:Scanner跑一遍拿基础分,然后人工过一遍所有涉及用户ID、订单号、文件路径的参数。
Decoder和Comparer是辅助模块,用好了能省时间。Decoder支持多种编码互转,测JWT的时候经常要把Base64部分解出来看payload。Comparer用来对比两个请求或响应的差异,比如登录前后Cookie的变化,或者不同用户看到的响应长度。有一次测文件上传,上传正常图片和包含恶意代码的图片,响应的Content-Length差了37字节,Comparer直接高亮出来。
项目配置别偷懒。每次开始新测试,先建个新项目,设置好Target Scope。Scope之外的主机,Proxy默认不拦截,避免抓到一堆无关流量。Logger模块可以记录所有请求,但默认只存内存,关掉Burp就没了。要持久化得在Project options里勾选“Save only in-scope items”,然后指定磁盘路径。我吃过亏,跑了一下午的测试,电脑蓝屏,日志全丢,只能重来。
最后说个细节:Burp的默认字体在4K屏幕上小得可怜。User options → Display里把字体调到16pt,行高1.4,眼睛舒服很多。还有,记得关掉“Update automatically”,有次自动更新到新版本,插件全挂,折腾半天才降回去。工具是死的,人是活的,别被Burp的默认设置绑住手脚。
友情链接