CTF实战:从入门到提升
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4 基础工具使用

工欲善其事,必先利其器。本节会介绍一些基本工具,以便于后面的讲解。由于每一个工具的功能其实都十分完备,基本上每一个工具的用法都可以单独写成一本书。本书因为篇幅有限并不能将其一一列举,这里只是讲解最基本的下载方式及用法。在后面章节讲解到具体题目时会依据具体的题目做进一步的说明。

1.4.1 HackBar插件

(1)主要作用

构造请求进行发送,如图1-12所示。

图1-12 HackBar浏览器组件介绍

(2)使用方法

在浏览器中按<F12>键即可打开。打开的界面如图1-13所示。

图1-13 HackBar界面截图

单击LOAD按钮,即可把当前页面的URL添加到这个插件里面来。

打开Enable POST,即可编辑请求体,如图1-14所示。

如图1-14所示,在请求体中新增了一个a参数,值为1。

单击ADD HEADER按钮,即可添加一个请求头,如图1-15所示。

图1-14 HackBar编辑请求体

图1-15 HackBar添加请求头

上面还有很多预置的Payload可供使用,选中要插入的位置再选择这些Payload即可,如图1-16所示。

图1-16 HackBar中其他的Payload

1.4.2 SwitchyOmega代理插件

(1)主要作用

用于在浏览器中快速切换代理,主要和BurpSuite配合进行抓包,如图1-17所示。

图1-17 SwitchyOmega插件

(2)使用方法

安装之后,单击浏览器上的“选项”按钮进行配置,如图1-18所示。

单击左侧“新建情景模式”按钮,如图1-19所示。

图1-18 SwitchyOmega菜单

图1-19 “新建情景模式”按钮

然后在弹出的窗口中输入模式的名字,如图1-20所示。

单击“创建”按钮,然后在右侧按照如下输入进行设置。主要就是设置当前浏览器的代理为HTTP代理,地址为127.0.0.1,端口为8080,如图1-21所示。

图1-20 新建情景模式界面

图1-21 情景模式编辑界面

单击左侧“应用选项”按钮,如图1-22所示。

单击工具栏上该应用的按钮,选择刚刚创建的代理情景,即可将当前浏览器的代理切换到自己新建的情景上,如图1-23所示。

图1-22 “应用选项”按钮

图1-23 选择代理界面

1.4.3 Wappalyzer插件

(1)主要作用

判断当前网站主要使用哪些前端及后端技术构建的,如图1-24所示。

图1-24 Wappalyzer插件简介界面

(2)使用方法

任意访问一个网站,单击工具栏上该应用的按钮,即可看到当前网站用到的前端和后端技术,如图1-25所示。

图1-25 使用Wappalyzer插件查看网站所使用的技术

1.4.4 EditThisCookie插件

(1)主要作用

编辑当前网站存储在自己浏览器中的Cookie,如图1-26所示。

图1-26 EditThisCookie插件简介界面

(2)使用方法

打开任意一个网站之后,在工具栏上单击该应用的按钮。对要编辑的Cookie值进行修改之后,单击下面的“绿色对勾”按钮即可生效,如图1-27所示。

图1-27 EditThisCookie编辑Cookie

1.4.5 BurpSuite

(1)主要作用

其主要作用是抓包、改包、发包,使用特别方便。

(2)使用方法

开启之后,一直单击Next按钮即可,如图1-28所示。

图1-28 BurpSuite起始界面

1)抓包:单击Proxy选项卡,如图1-29所示。

图1-29 BurpSuite Proxy选项卡

按照之前SwitchOmega的配置方法配置好代理,并进行切换。任意访问一个页面,即可抓到包,如图1-30所示。

图1-30 BurpSuite抓包

2)改包:单击Intercept选项卡下的“Intercept is off”按钮,使其变成“Intercept is on”,如图1-31所示。

图1-31 BurpSuite拦截器按钮

可在下面修改请求包内容,再单击Forward按钮,即可把修改过的包发出去,如图1-32所示。

图1-32 BurpSuite转发按钮

3)发包:在HTTP history选项卡中任意选择一个包,右击,在弹出的快捷菜单中选择Send to Repeater选项,将请求转到发包器,如图1-33所示。

然后切换到Reapter选项卡,即可看到转过来的请求。单击Go按钮即可将请求重新发送出去,在右侧窗口中即可看到请求的返回包,如图1-34所示。

图1-33 BurpSuite发送抓到的请求到发包器

图1-34 BurpSuite发包

1.4.6 Postman

(1)主要作用

构造请求包发送出去,并自动生成相应代码。

(2)使用方法

Postman的使用界面如图1-35所示。

图1-35 Postman主界面

输入“URL”,同时可以编辑请求参数、请求头和请求体等参数,单击Send按钮即可发送请求看到返回,如图1-36所示。

图1-36 Postman发出请求

单击Code按钮即可看到自动生成的请求代码,可选择生成语言,如图1-37所示。

图1-37 Postman生成代码

1.4.7 案例解析——BUU BURP COURSE 1

下面一起来看看BUU BURP COURSE 1这个题目。

打开靶机,可以看到提示需要从本地访问。

那么用Postman来构造一下请求。将URL填写进去,并在Headers处尝试伪造X-Forwarded-For、X-Client-Ip等可用于向后端服务器表示真实IP的头。127.0.0.1则代表想伪造当前访客IP为127.0.0.1,也就是localhost(即本地),如图1-38所示。

图1-38 Postman修改XFF头

最后,经尝试发现X-Real-Ip头可行,如图1-39所示。

看页面上的提示是一个表单,里面提示了用户名为admin,密码为wwoj2wio2jw93ey43eiuw-djnewkndjlwe,那么需要构造一个POST请求,并携带这些信息。单击请求方法处,将请求方法换成POST,再选择Body选项卡,选择x-www-form-urlencoded类型,将username和password按图1-40这样填写进去。再单击Send按钮,即可伪造请求成功,拿到flag。

图1-39 Postman修改X-Real-Ip头

图1-40 Postman构造请求获取flag