- CTF实战:从入门到提升
- 苗春雨 叶雷鹏主编
- 1725字
- 2023-08-28 20:16:19
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