【BurpSuite实战指南】【定期更新】
⽬录
写在前⾯的话
Burp Suite是⼀个集成化的渗透测试⼯具,它集合了多种渗透测试组件,使我们⾃动化地或⼿⼯地能更好的完成对web应⽤的渗透测试和攻击。
在渗透测试中,我们使⽤Burp Suite将使得测试⼯作变得更加容易和⽅便,即使在不需要娴熟的技巧的情况下,只有我们熟悉Burp Suite 的使⽤,也使得渗透测试⼯作变得轻松和⾼效。
Burp Suite是由Java语⾔编写⽽成,⽽Java⾃⾝的跨平台性,使得软件的学习和使⽤更加⽅便。Burp Suite不像其他的⾃动化测试⼯具,它需要你⼿⼯的去配置⼀些参数,触发⼀些⾃动化流程,然后它才会开始⼯作。
Burp Suite可执⾏程序是java⽂件类型的jar⽂件,免费版的可以从进⾏下载。 免费版的Burp Suite会有许多限制,很多的⾼级⼯具⽆法使⽤,如果您想使⽤更多的⾼级功能,需要付费购买专业版。(或者破解版哈哈哈哈哈)
使⽤Burp Suite的⼩技巧
中⽂乱码问题:在User options --> Display --> HTTP Message Display 设置成⽀持中⽂的字体即可
持续重放请求:Intruder模块 --> Numbers 模式 (选择不影响结果的参数进⾏爆破,达到持续重放)
模拟 DOS 攻击:Intruder模块 --> Options选项卡 --> 线程999、失败重试次数20、重试暂停0
⽣成HTTP⽂件 :①.paste from file 。 ②. Engagement tools --> Generate CSRF PoC
⼀.Proxy模块:截取消息
1.Intercept选项卡:拦截请求
1. Forward:发送请求消息到服务端
2. Drop:丢掉当前请求消息
3. Intercept is on :开启拦截请求消息。
4. Intercept is off :关闭拦截。
5. Action:除了将当前请求的消息传递到Spider、Scanner、Repeater、Intruder、Sequencer、Decoder、Comparer组件外;还
可以⼀些请求消息的修改,⽐如改变GET或者POST请求⽅式、改变请求body的编码;也可以改变请求消息的拦截设置,如不再拦截此主机的信息、不再拦截此IP地址的消息、不再拦截此种⽂件类型的消息、不再拦截此⽬录的消息;也可以指定针对次请求消息拦截它的服务器端返回消息。
6. Comment:对请求消息添加备注
7. Highlight:对请求消息设置⾼亮的颜⾊备注
1.1)消息分析选项视图
1. Raw:实体内容。显⽰WEB请求的raw格式,包含请求地址、http协议、主机头、浏览器信息、
Accept可接受的内容类型、字符集、编码⽅式、Cookie等。
2. Params:请求参数。显⽰客户端请求的参数信息:包括GET/POST请求的参数、Cookie参数等。
3. Headers:消息头。与Row信息类似,只是展⽰的更直观。
4. Hex:16进制编码。显⽰Raw的⼆进制内容。
2.http history选项卡:记录历史请求消息和响应内容
1. 单击历史消息,在详细详情块中显⽰此条消息的⽂本详细信息
2. 双击历史消息,弹出此条消息的详细对话框
1.【Previous】:浏览上⼀条历史消息
2.【Next】:浏览下⼀条历史消息
3.【Action】:修改row的请求参数后,可通过此按钮将消息发送到Burp的其他模块
2.1)筛选过滤器:过滤不符合规则的历史消息
1. Filter by request type :请求消息类型过滤。①.仅显⽰当前作⽤域。②.仅显⽰有服务器响应。
③.仅显⽰带有请求参数
2. Filter by MIME type:根据服务器返回的⽂件类型过滤。①.HTML。②.Script。③.XML。 ④.CSS。⑤.其他⽂本。⑥.图⽚。
⑦.Flash。⑧.⼆进制⽂件
3. Filter by status code:根据服务器端返回的HTTP状态码过滤:①.2XX,成功。②.3XX,重定向。
③.4XX,客户端错误。④.服务器错误
4. Filter by search term:根据查条件过滤。①.正则表达式。②.⼤⼩写敏感。③.否定查
5. Filter by file extension:根据⽂件类型过滤。①.显⽰。②.隐藏
6. Filter by annotation:按照注释过滤。①.仅显⽰注释的消息。②.仅显⽰⾼亮的消息。
7. Filter by listener:按照监听端⼝过滤。
2.2)历史记录列表:记录了每⼀条请求消息和响应消息
请求序列号、请求协议和主机名、请求的⽅式、URL路径、请求参数、⽤户是否编辑过消息、服务
器端返回的HTTP状态码、消息长度、服务器返回的⽂件类型、⽂件类型、标题、注释、SSL、
IP、Cookie、时间、监听的端⼝
2.3)消息详情:查看具体消息的内容
1. 请求消息的raw格式内容、参数、请求头、Hex格式
2. 响应消息的Raw格式内容、请求头、Hex格式、HTML格式、渲染页⾯
3. 查内容:“+”提供了①.基于正则的查。②.区分⼤⼩写。③.当⽂本改变⾃动滚屏的设置。
3.WebSocket History选项卡:是HTTP历史的⼀个分⽀
使⽤⽅式与http history类似,唯⼀的区别是,记录通信⽅式不同的历史消息。
4.option 选项卡:对请求消息进⾏控制和处理
4.1)Proxy Listeners:对截取数据流量的监听设置
1.【add】:
1.1)绑定:①.端⼝号。②.IP地址(本地回路、所有接⼝、指定地址)
1.2)请求处理:①.端⼝重定向。②.主机名/域名重定向。③.强制使⽤SSL。④.隐形代理(应⽤于不⾛代 理,却使⽤了HTTP协议进
⾏通信的客户端,有时候需要配合BP的Project options设置中的Hostname Resolution设置。有时候客户端发送的请求中是不标准的,⽐如不包含host请求头,这时需要配合主机重定 向和端⼝重定向。如
果胖客户端程序的请求是访问多个域名和端⼝的话,这就意味着bp将这些请求转发到⼀个 ⽬标服务器上是错误的,这时需要使⽤多个loopback模式监听。)(DNS劫持)
1.3)证书:①.使⽤⾃签名证书。②.CA证书。③.⽣成与特定的主机名CA签发的证书。④.使⽤加载的证 书。
2.【Edit】:编辑代理。
3.【Remove】:移除代理。
4.2)Intercept Client Requests:拦截请求消息的设置
intercept request based on the follow rules:符合规则的都被拦截,⾃上⽽下进⾏。
1.【Add】:添加⼀条规则,
1.1)Boolean opertor:当前规则与其他规则的共存⽅式【AND | OR】 --and 必须满⾜。or 可满⾜可不满⾜
恢复历史浏览记录1.2)Match type:请求消息的匹配类型,可以基于域名、IP地址、协议、请求⽅法、URL、⽂件类 型、参数, cookies, 头部或者内
容, 状态码, MIME类型, HTML页⾯的title等。
1.3)Match relationship:对匹配类型进⾏指定或者排除。
1.4)Match condition:匹配关键字
2.【Edit】:编辑规则
3.【Remove】:删除规则
4.【Up】:调节规则向上移动
5.【Down】:调节规则向下移动
Automatically fix missing or superfluous new lines at end of request:对修改后的请求消
息,⾃动修复丢失或多余的新⾏。
Automatically update Content-Length header when the request is edited:对修改后的
请求消息,⾃动修改Content-Length消息头部为对应的值。
4.3)Intercept Server Responses:拦截响应消息的配置
Automatically update Content-Length header when the response is edited:对修改后的
响应消息,⾃动修改Content-Length消息头部为对应的值。
其他功能参考客户端请求拦截配置
4.4)Response Modification:响应消息修改的设置
1. Unhide hidden form fields:显⽰Form表单中的隐藏字段
2. Prominently highlight unhidden fields:⾼亮显⽰Form表单中的隐藏字段
3. Enable disabled form fields:使form表单中disable属性失效,变成可输⼊域
4. Remove input field length limits:移除输⼊框的长度限制
5. Remove JavaScript form Validation:移除JavaScript验证
6. Remove all JavaScript:移除所有的JavaScript
7. Remove tags:移除标签
8. Covert HTTPS links to HTTP:转换HTTPS超链接为HTTP链接。
9. Remove secure flag from cookies:移除所有cookie中的安全标志
4.5)Match and Replace:对消息⽤正则匹配,对匹配内容进⾏替换
1.【add】:添加规则
1.1)Type:请求和返回消息的消息头,消息体、请求参数名、请求参数值、请求的第⼀⾏
1.2)Math:匹配规则,⽀持正则
1.3)Replace:替换的内容
1.4)Comment:注释
2.【Edit】:编辑规则
3.【Remove】:删除规则
4.【Up】:调节规则向上移动
5.【Down】:调节规则向下移动
4.6)SSL Pass Through
1. Automatically add entries on client SSL negotiation failture:当使⽤HTTPS时CA证书不管
⽤,则⾃动将⽬标URL添加到SSL直接连接。
2. 直连的⽅式需要配置,在BurpSuite实战指南的37页。
4.7)其他:设置BP⼀些特殊的细节,⽤来处理特别的问题和情况。
1. Use HTTP/1.0 in requests to server :指定HTTP1.0协议与服务器进⾏通信。
2. Use HTTP/1.0 in responses to client:指定响应消息⽤HTTP1.0的协议进⾏反馈。
3. Set responce header “Connection: close”:设置响应头为"Connection: close",阻⽌HTTP
管道攻击。
4. Strip Proxy-* headers in incoming requests:清除消息头中的代理服务器信息。
5. Unpace gzip / deflate in requests:解压在请求消息中的消息体
6. Unpace gzip / deflate in responses:解压在响应消息中的消息体
7. Disable web interface at burp:禁⽤burp
8. Allow requests to web interface using fully-qualified DNS hostnames:允许通过域名或
主机名访问Burp Suite
9. Suppress Burp error messages in browser:不在浏览器中显⽰Burp的错误,默认显⽰
10. Disable logging to history and site map:禁⽤⽇志记录历史消息和站点地图。
11. Don’t send items to Proxy history or other Burp tools:禁⽌发送项⽬到代理历史和其他其
他Burp的⼯具
12. Don’t send items to Proxy history or other Burp tools,if out of scope:如果超过范围,
禁⽌发送项⽬到代理历史和其他其他Burp的⼯具
13. Enable interception at startup:配置拦截设置:①.总是⽣效。②.总是失效 。③.从上⼀次 的
Burp Suite中恢复
⼆.Target模块:⾃动记录和分析站点信息
1.Site map选项卡:记录浏览信息,包含每⼀个请求和响应的详细信息
灰⾊没访问过的,⿊⾊是访问过的
1.1)左:访问的站点,按照照⽹站的层级和深度,树形展⽰整个应⽤系统的结构和关联其他域的url情况。
1. 可以对指定的站进⾏爬⾍:Spider this host
2. 可以对指定的站进⾏扫描:Actively scan this host
3. 将站点加⼊⽬标站点中:Add to scope
1.2)中:某⼀个url被访问的明细列表,⽐如访问了那些URL,还有详细的请求和响应。
1.3)右:这个站点存在的疑似漏洞。
2.Scope选项卡:站点设置
2.1)Target Scope:控制拦截请求,指定爬取对象,指定扫描站点,爆破指定站点。
1. Use advanced Scope-control:使⽤⾼级的站点控制。默认是指定⼀个URL的前缀的拦截规则。
允许规则
1.【Protocol】:协议。Any、HTTP、HTTPS
2.【Host or IP range】:域名或IP地址。
3.【Port】:端⼝。
4.【File】:⽂件名。
排除规则
3. 使⽤
3.1)⼿⼯获取站点地图:需要开启浏览器代理、Burp的正常监听、以及设置Intercept is off 。通过⼿动浏览站点,Burp⾃动记录的⽅式获取站点地图。适合中⼩型系统。
3.2)站点⽐较(Compare site maps):⽐较的是权限
1. 同⼀个帐号,具有不同的权限,⽐较两次请求结果的差异。
2. .两个不同的帐号,具有不同的权限,⽐较两次请求结果的差异。
3. 两个不同的帐号,具有相同的权限,⽐较两次请求结果的差异。
3.3)攻击⾯分析(Analyze target):分析每⼀个站点所包含的URL信息
3.4)通过添加过滤器(Filter)来过滤⾮⽬标站点
1. 将⽬标站点添加到Scope:在"Target" - “Site map"区域中, ⽤⿏标右键单击⽬标站点, 然后选 择"add to scope”,此时Burp会⽣成⼀个正
则表达式,并⾃动添加到"Target"-" Scope"中、
2. 使⽤过滤器Filter: 在"Target"-“Sitemap"中,Filter可以⾃由选择过滤类型,以便我们进⾏查 看。单
击"Filter”,选择"Show only in-scope
items", 只显⽰范围内的列表,即可进⾏过滤。
三.Spider模块:爬取⼤型⽹站的信息
1.Control:爬⾍控制
1.1)Spider Status:控制Spider是否运⾏和队列中的数据管理
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论