web安全测试工具burpsuite模块Intruder、Repeater、Sequencer、Decoder、Comparer

举报
黑色地带(崛起) 发表于 2023/02/16 22:13:35 2023/02/16
【摘要】 web安全测试工具burpsuite模块Intruder、Repeater、Sequencer、Decoder、Comparer

web安全测试工具burpsuite模块Intruder、Repeater、Sequencer、Decoder、Comparer

Intruder(测试器)

Target(目标)

Positions(位置)

选项1、Payload Positions(有效载荷位置)

选项2、Attack type(攻击类型):

Payloads(有效载荷)

 选项1、Payload Sets(设置)

选项2、Payload Options(有效载荷选项)

选项3、Payload Processing(有效载荷处理)

选项4、Payload Encoding(有效载荷编码)

Options(选项)

选项1、Request Headers(请求标头)

选项2、Request Engine(请求引擎)

选项3、Attack Results(攻击结果)

选项4、Grep - Match

选项5、Grep - Extract(提取物)

选项6、Grep - Payloads(Grep有效载荷)

选项7、Redirections(重定向)

Repeater(重发器)

Repeater介绍一下吧

英语基础:

Sequencer模块(定序器)

Live capture 信息截取

 选项1:Select Live Capture Request(选择实时捕获请求)

选项2:Token Location Within Response  (响应中的令牌位置)

选项3:Live Capture Options (实时捕获选项)

Manual load 手动加载

选项1:Manual Load(手动阅读)

Analysis options 选项分析

 选项1:Token Handling  (令牌处理)

选项2:Token Analysis  (令牌分析)

Decoder(编码器)

Comparer(对比器)

Comparer基操:

Extender(扩展器)

扩展是万能的,没扩展是万万不能的

Extensions  扩展

BApp Store(应用程序商店)

3.APIS

4.Options  选项

Project Options(项目选项)

connect(连接)

 选项1、Platform Authentication(平台验证)

选项2、Upstream Proxy Servers(顶级代理服务器)

选项3、SOCKS代理

选项4、Timeout(超时)

选项5、Hostname Resolution(主机名解析,可添加)

选项6、Out-of-Scope Requests(超出范围的请求)

HTTP

选项1、Redirections(重定向)

选项2、Streaming Responses(流式响应) 

选项3、Status 100 Responses(状态100响应)

SSL

选项1、SSL Negotiation(SSL协商)

选项2、Client SSL Certificates(客户端SSL证书)

选项3、SSL Certificates(服务器SSL证书)

选项4、Sessions(会话)

选项5、Session Handing Rules(会话处理规则)

选项6、Cookie Jar(饼干罐)

选项7、Macros(宏)

Misc(杂项)

 选项1、Scheduled Tasks(预定任务)

选项2、Collaborator Server(协作服务器)​

选项3、Logging(日志记录)

User options(用户选项)

Connections 连接

选项1:Platform Authentication(平台认证)

选项2:Upstream Proxy Servers(顶级代理服务器)

选项3:Socks Proxy(SOCKS代理)

SSL

选项1:Java SSL Options(JAVA SSL选项)

选项2:Client SSL Certificates(客户端SSL证书)

3.Display(表示)

选项1:User Interface(用户界面)

选项2:Http Message Display(HTTP消息显示)

选项3:Character Sets(字符集)

选项4:HTML呈现

4.Misc  杂项

 选项1:Hotkeys(热键)

选项2:Project automatic backup(项目自动备份)

选项3:Temporary Files Location(临时文件位置)​

选项4、REST API(API)

选项5、Proxy Interception(代理拦截)

选项6、Agent history(代理历史记录)选项7、Performance Feedback(表现反馈)

​

 Intruder(测试器)

Target(目标)

Host(主机):目标服务器的IP地址/主机名
Port(端口):http/https服务的端口号
Use HTTPS(使用HTTPS):勾选是否使用SSL

在代理或目标模块,选中URL,右键上下文菜单中点击Send to Intruder(发送到入侵者)将会有一个新的选项卡(就像这上面的1,2,……),然后主机和端口会自动填上。

​编辑




Positions(位置)


选项1、Payload Positions(有效载荷位置)

配置攻击的请求模板、有效负载标记(可以手动添加,也可自动添加)和攻击类型


每对 ‘ § ’标记的内容是一个Payload位置。有效载荷位置被分配了Payload时,标记和任何包含的文本都将被Payload替换,当有效载荷位置没有指定的Payload时,标记§将被移除。
(每对有效负载标记以及它们之间的文本会被凸显)


Add § (添加§) 

光标在字符间位置:插入一个有效载荷标记

选择的文本:则插入一对标记,并将选的内容括起来


Clear § (清除§)

清除所有§ ;清除选定部分的§


Auto §(自动§)   

在整个文本中自动添加;在选中部分自动添加

顾名思义,自动的放置有效载荷标记,快速标记适合模糊化的位置。(会将有效负载自动放置到各类型的请求参数的值中,如URL查询字符串参数、Body parameters、Cookies、参数属性,XML数据、元素属性、JSON参数等)

一般可能会有针对性的攻击,那么久需要手动定位添加了。

Refresh(刷新):刷新模板编辑器中的语法着色

Clear(清屏):删除整个模板的内容

​编辑



选项2、Attack type(攻击类型):

Bp Intruder模块支持各种攻击类型,决定分配到有效载荷位置的方式

攻击类型有:

Sniper(狙击手):以每个位置为目标,依次将Payload放到该位置,每个标记依次测试。(一组Payload)

Battering ram(破城缒):同时将Payload(相同的)放入所有被定义的位置进行测试,即多管齐下的意思。(一组Payload)

Pitchfork(音叉)    每个定义的位置都能用不同的Payload继续测试(最多20个)即一对一,且可重复,视情况而定。(多个Payload集)

Clusterbomb(集束炸弹)    每个定义的位置有一个不同的有效负载集(最多20),即在多个位置遍历不同的payload集继续攻击。(多个Payload集)

​编辑




Payloads(有效载荷)


 选项1、Payload Sets(设置)

能够进行一个或多个负载集的配置,但是Payload集的数量取决于攻击所需要选择的Attack type(攻击类型),即在Positions(位置)选项卡中选择的Attack type(攻击类型)

一般常见的,如模糊参数、强制猜测用户密码等只需要一个有效负载集。

Payload set : 配置的数量
Payload type : 类型


​编辑

 Simple list(简单字典)、Runtime file(运行文件)、Custom iterator(自定义迭代器)、Character substitution(字符替换)、Recursive grep(递归查找)、illegal Unicode(非法字典)、Character blocks(字符块)、Numbers(数组组合)、Dates(日期组合)、Brute forcer(暴力破解)、Null payloads(空Payload)、Username generator(用户名生成)、Copy other payload(复制其他Payload)



选项2、Payload Options(有效载荷选项)

有效载荷选择的类型的不同的话,配置有效载荷的选项也会有差异(也就是大同小异把)

这个看着来(太多了不能一一讲解)

​编辑





选项3、Payload Processing(有效载荷处理)

可以定义在使用有效载荷之前,对每个有效载荷执行处理的规则(按顺序执行的,可打开或关闭),即将有效载荷加工后再使用它。

​编辑


有效负载相关处理规则:

Add prefix(添加一个文本前缀)

​编辑



Add suffix(添加一个文本后缀)

​编辑


Match/replace(搜索/替换)

​编辑


Substring(部分文字列),即提取

 ​编辑


Reverse substring(翻转字符串)从指定有效负载的末尾向后计数结束偏移量,并从结束偏移量向后计数长度

​编辑


Modify case(转换大小写)

​编辑


Encode(编码)对负载进行编码:url、html、base64、ascii hex、各种平台构建的字符串

​编辑


Decode(解码)各种方法解码负载:url、html、base64、ASCII hex

​编辑


 Hash(哈希函数)对负载进行散列

​编辑

Add raw payload(添加原始的有效负载),即以原始形式提交的负载

​编辑



Skip if matches regex(正则匹配),即满足正则匹配就跳过它,好比要收集最长不超过5字符数据,如果超过5字符了就不要了

​编辑


Invoke burp extension(调用Bp扩展)顾名思义,调用bp扩展来处理有效负载(扩展注册了入侵者有效负载处理器,或者选择处理器)

​编辑





选项4、Payload Encoding(有效载荷编码)

​编辑

 可以配置将有效负载中指定的字符进行url编码并应用(安全传输)

(一般编码设置用于最终URL,非有效负载处理规则)






Options(选项)


选项1、Request Headers(请求标头)

控制Intruder是否在攻击期间更新配置的请求标头

Update Content-Length header (更新Content-Length标头):

使Intruder在每个请求中添加/更新内容长度头,并使用该特定请求的http正文长度的正确值。(主要就是面向于请求头的攻击)


Set Sconnection: close(设置连接为:关闭) :

使Intruder添加/更新值为“close”的连接头。(主要用于服务器未返回有效头时,以达到更快的展开攻势)。

​编辑




选项2、Request Engine(请求引擎)

用于攻击执行期间对引擎的设置(注意对被攻击者产生的影响,以及自身的带宽和处理能力合理配置)


Number of threads(线程数):即攻击时候能够同时并发请求数

Number of retries on network failure(网络错误的重试次数):当连接错误或发生其他网络相关问题的时候,Bp会放弃当前的错误,然后重新按之前配置的次数重新请求

Pause before retry(重试前暂停):顾名思义,停指定时间再请求(战略性撤退)

Throttle between requests(请求之前限制):即重量,在每个请求之前等待指定的时延(ms)

Start time(开始时间):顾名思义,设置攻击开始的时间(偷袭是吧,来呀,展翅)

​编辑





选项3、Attack Results(攻击结果)

即是在攻击的结果中进行捕获信息

Store requests / responses(保留请求/响应)

简而言之,就是将单个的请求记录保存起来,每一个都保存,就都在一起能进行更多的分析了(但是会占用内存)

Make unmodified baseline request(生成未修改的基本请求)

配置的攻击请求+Bp发出的模板请求(结果中能够比较攻击响应),所有有效负载位置将被设为其基本值。

Use denial-of-service mode(使用拒绝服务模式):

顾名思义,攻击时候将正常发出请求,无结果即不会等待从服务器处理后的任何响应(就是重复发送,发出就关闭TCP连接,保持打开套接字等待服务器响应,为了避免锁定本地资源)

Store full payloads(保存所有有效载荷):

Bp保存所有结果的全部有效载荷值(会占用内存),保存后可以修改负载或模板再进行发送

​编辑




选项4、Grep - Match

为结果设置一个标志,包括指定的正则表达式,并能将匹配的结果组合在一起。
这个分析能力不是一点的强大,可以很大程度上的帮助我们去分析大量结果集,便于我们找到能够利用的参数或其他注入点等。


匹配外的其他选项:

Match type(匹配类型):表达式是简单字符串/正则表达式

Case sensitive match(区分大小写匹配):表达式的检查是否区分大小写字母

exclude http headers(排除HTTP标头):是否从检查中排除HTTP响应头

​编辑





选项5、Grep - Extract(提取物)

从响应中提取有用信息并将其保存在攻击结果列表中(会添加一个新的results列,然后将提取的信息放在里面,单击标题可以对标题进行排序)

较多的用于数据挖掘,然后找到有用的信息

可以多次添加同一匹配项,然后查找到多个匹配项,就可以挖掘到更多的有用信息

能够自定义从哪后面开始,并以什么分隔符结束

​编辑




选项6、Grep - Payloads(Grep有效载荷)

可以在结果项上设置标记,反应传输的有效载荷。(检测跨站点脚本和其他响应注入漏洞)

Bp将添加一个新的results列,包含一个复选框,是否在每个响应中找到了当前负载值。(如果有多个有效载荷,则添加多个对应的列)


有效载荷的设置标记处理匹配规则:

Search response to payload strings(搜索有效载荷字符串的响应)、Case sensitive match(区分大小写字母)、exclude http headers(排除HTTP标头)

Match against pre-URL-encoded payloads(在URL编码之前匹配有效载荷):将入侵者配置为url编码请求中的有效载荷是正常的。然后由应用程序解码并以其原始形式回显,此项将以预编码形式对有效载荷进行burp check响应

​编辑




选项7、Redirections(重定向)

控制执行攻击时如何处理重定向(一般为了达到攻击目的,需要遵循重定向)

Follow redirections (跟随重定向):

Never (不遵循)
On-site only(只在同一个网站,即只重定向到同一个网站) 
In-scope only(仅限范围,即重定向到规定的URL范围内)
Always(总是,这个注意使用,可能会误伤别人其他无辜的)

​编辑


​编辑



Repeater(重发器)

Repeater介绍一下吧

 在Proxy.intercept(代理截断)、HTTP.history(HTTP历史记录)、site map(网站地图)中的URL发送到Repeater(重发器)

对于抓取的数据包发送到Repeater(重发器)模块(发送成功Repeater会亮)

右键点击数据包,然后点击send to repeater

Ctrl+r,使用快捷键发送到Repeater(重发器)模块

点击右边的Action(行动),然后再点击send to repeater



英语基础:

Repeater(重发器)

send(把数据包发送出去)、cancel(取消发送)

Request(请求包)、Response(响应包)

Raw(数据包文本)、Render(数据包回显的界面,就是网页正常的样子)

​编辑



左右箭头:(顾图思义,前进或后退,就是修改后数据包发送了,这个箭头可以返回上一个数据包,也可以再回到下一个数据包)

下箭头,查看修改记录 

​编辑




​编辑


Sequencer模块(定序器)

根据一个样本用于分析数据项(反弹CSRF、密码重置tokens)随机性的工具,就是分析不可预测的数据,像测试应用程序的session(会话)tokens或其他重要数据项。


Sequencer(定序器)模块:

Live capture 信息截取

Manual load 手动加载

Analysis options 选项分析



Live capture 信息截取

 选项1:Select Live Capture Request(选择实时捕获请求)

实时捕捉太清楚不过了

​编辑





选项2:Token Location Within Response  (响应中的令牌位置)

这个就是一个指定位置了

​编辑



选项3:Live Capture Options (实时捕获选项)

 这个就是执行捕获和收集令牌时,生成HTTP请求​编辑





Manual load 手动加载

选项1:Manual Load(手动阅读)

标记的样本(或者复制粘贴)--------->统计分析

​编辑




Analysis options 选项分析

 选项1:Token Handling  (令牌处理)

对正在分析的令牌进行处理的规则的配置(填充、解码)

​编辑



选项2:Token Analysis  (令牌分析)


​编辑




​编辑


Decoder(编码器)

 既可以编码也可以解码的工具,并且还有智能解码的功能(启发式技术)


右键菜单中点击编码下拉菜单选择编码方法,即可进行相应编码,解码与此类似,或者可以直接点击Smart decoding(智能解码)


还有一个特别方便的功能,那就是在Decoder(编码器)的界面的时候,能够进行叠加多次编码或者解码

​编辑




 ​编辑



Comparer(对比器)

Comparer基操:

 可以用来详细的比较不同的HTTP请求的各个不同的地方(能够详细的通过颜色反应出来)

可以针对两个不同或者多个不同的HTTP请求进行详细的比较,然后发现不同点


可以选择截取的URL,或在site map(网站地图中的URL)然后点击右键,再点击发送到compare进行对比

​编辑



发送到comparer(对比器)之后

可以再点击加载本地的数据包进行对比,也可以再去找到一个或多个URL数据包发送到comparer再进行对比(比较一个字/字节)


可以在第一个项目里面选择一个,在第二个选项当里,再选择不同的选项

比较后,就会出现比较的结果


​编辑

 ​编辑


​编辑


标记为亮色的都是不同的选项,通过这种方式可以快速比较不同用户请求相同页面的差别



​编辑



Extender(扩展器)

扩展是万能的,没扩展是万万不能的

支持第三方拓展插件的功能,使用者可以编写自己的插件或者从插件商店中安装拓展插件(能够根更好的自定义处理操作)


Extender(扩展器)组成模块:

Extensions(扩展)、BApp Store(应用程序商店)、APIS(Bp扩展API)、Options(选项)



Extensions  扩展

可以从本地选择文件进行加载

​编辑


日志信息的输出方式:

输出到系统控制台、保存到指定的文件、默认选择Bp界面输出




BApp Store(应用程序商店)

 在BApp Store中有各种插件的应用列表,当点击某个插件后,右侧会显示次插件的相关一些介绍等信息。 可以点击左下方的install(安装)按钮,进行安装

​编辑



安装按钮置为灰色,installing(正在安装),右下角也显示安装中

安装成功的话

instal------>Reinstall,并且能对插件进行评分,Submit rating(评分)

在Extender 的Extension的页面中,会显示已安装的插件列表(方便后期插件管理)

​编辑



我们也可以下载插件,然后进行手工安装(自我感觉多此一举,但是这样必定是有它的用处的,有待发现,或许就是换个位置安装吧,醉了,挺人性化的)

​编辑







3.APIS

使用扩展的API,可以创建自己的扩展来自定义Bp的功能

​编辑




4.Options  选项

 对于扩展的一个环境配置

​编辑




​编辑



Project Options


该模块主要用来对Project的做设置的,它拥有五个小的模块组成,下面将一一介绍这些模块


connect(连接)

 选项1、Platform Authentication(平台验证)

选项2、Upstream Proxy Servers(顶级代理服务器)

选项3、SOCKS代理

选项4、Timeout(超时)

​编辑


选项5、Hostname Resolution(主机名解析,可添加)

选项6、Out-of-Scope Requests(超出范围的请求)

防止Bp发出超出范围外的所有请求

​编辑




HTTP

选项1、Redirections(重定向)

选项2、Streaming Responses(流式响应)
 

​编辑

选项3、Status 100 Responses(状态100响应)

处理状态为100的HTTP请求

​编辑






SSL

选项1、SSL Negotiation(SSL协商)

选项2、Client SSL Certificates(客户端SSL证书)

选项3、SSL Certificates(服务器SSL证书)

​编辑





选项4、Sessions(会话)

选项5、Session Handing Rules(会话处理规则)

可以自定义规则

选项6、Cookie Jar(饼干罐)

​编辑


选项7、Macros(宏)

是一个或多个请求的序列,可以在会话处理规则中使用宏来执行任务(登录、获取CSRF令牌)

​编辑





Misc(杂项)

 选项1、Scheduled Tasks(预定任务)

可自行设置什么时候开启什么任务

选项2、Collaborator Server(协作服务器)
​编辑


选项3、Logging(日志记录)

选中选项就会在进行该项活动的时候记录下来

​编辑



​编辑




User options(用户选项)

用来配置一些常用的选项。

User options(用户选项)的组成模块:

Connections(连接)、SSL、Display(表示)、Misc(杂项)



Connections 连接

选项1:Platform Authentication(平台认证)

选项2:Upstream Proxy Servers(顶级代理服务器)

选项3:Socks Proxy(SOCKS代理)

​编辑

​编辑






SSL

选项1:Java SSL Options(JAVA SSL选项)

选项2:Client SSL Certificates(客户端SSL证书)

​编辑





3.Display(表示)

选项1:User Interface(用户界面)

选项2:Http Message Display(HTTP消息显示)

选项3:Character Sets(字符集)

选项4:HTML呈现

​编辑

​编辑





4.Misc  杂项

 选项1:Hotkeys(热键)

选项2:Project automatic backup(项目自动备份)

选项3:Temporary Files Location(临时文件位置)
​编辑


选项4、REST API(API)

选项5、Proxy Interception(代理拦截)

​编辑


选项6、Agent history(代理历史记录)
选项7、Performance Feedback(表现反馈)

​编辑

​编辑

​

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。