![Web代码安全漏洞深度剖析](https://wfqqreader-1252317822.image.myqcloud.com/cover/20/40868020/b_40868020.jpg)
2.2 火狐浏览器56.0的HackBar和FoxyProxy
笔者使用的火狐(Firefox)浏览器版本是56.0,再配合HackBar插件,为后续审计代码过程中调试HTTP请求参数提供了方便。在代码审计过程当中,要审计的程序中可能有很多参数,使用HackBar这款火狐插件会很清晰地罗列出要审计的URL地址里面的参数。
FoxyProxy这款工具可以很方便地调整代理IP地址和端口,使用起来很方便。如果读者发现有更好用的工具,也可以使用,笔者采用这款工具只是为了演示。
2.2.1 安装火狐浏览器
本书使用Firefox56.0版本,读者如果使用新版本也是可以的。但是要注意,如果使用新版本的火狐浏览器,插件可能会出现不兼容的情况。如果出现此种情况,建议降低浏览器版本或重新安装,关闭浏览器自动更新功能,或者使用可兼容的新版本插件。
现在,在Firefox官网上只能下载最新的版本,但是官网的ftp中还是支持下载56.0版本。笔者提供如下链接供大家参考。
●Windows 32位版本:http://ftp.mozilla.org/pub/firefox/releases/56.0/win32/zh-CN/Firefox%20 Setup%2056.0.exe
●Windows 64位版本:http://ftp.mozilla.org/pub/firefox/releases/56.0/win64/zh-CN/Firefox%20 Setup%2056.0.exe
●MAC版本:http://ftp.mozilla.org/pub/firefox/releases/56.0/mac/zh-CN/Firefox%2056.0.dmg
●Linux 32位版本:http://ftp.mozilla.org/pub/firefox/releases/56.0/linux-i686/zh-CN/firefox- 56.0.tar.bz2
●Linux 64位版本:http://ftp.mozilla.org/pub/firefox/releases/56.0/linux-x86_64/zh-CN/ firefox-56.0.tar.bz2
读者可以自行下载所需版本并安装,如图2-13所示。
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-13.jpg?sign=1739312414-rHCPvWqIEHRCRtuRNk70rjeCPKKyxnoG-0-840454472de7c946a2278eddabe2355f)
图2-13 安装火狐浏览器
安装完成后需要设置浏览器的“不允许自动更新”项,设置方法为选择“选项→常规→更新”,在打开的界面中设置“不检查更新(不推荐)”,如图2-14和图2-15所示。
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-14.jpg?sign=1739312414-eVQXKhURaGQxGIKeLsPc5meXQEdbqUU8-0-867208153d6cd3bef4419225a272dca4)
图2-14 火狐软件自身更新设置
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-15.jpg?sign=1739312414-qPlYxnhSGRaRx8AKHLpu6NYOodavAf6m-0-df7a21a91e8be0ee6f1457355cf0666d)
图2-15 禁用自身更新
如果重启(关闭火狐浏览器后重新打开)后还会自动更新,那么重新安装一次即可。
2.2.2 HackBar的安装与使用
HackBar是安全测试必备插件,支持Get、Post。该插件能帮助我们在测试和学习过程中快速构造SQL、XSS语句以及URL编码,在代码审计中便于构造测试Payload。
该插件下载地址为https://addons.mozilla.org/en-US/firefox/addon/hackbar/。
访问该插件的下载地址并点击“添加到Firefox”进行下载添加,如图2-16所示。
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-16.jpg?sign=1739312414-tA9bV3Xf2JTKYBBiDNF7bPNRp2ishYht-0-8cccba1a2f547048c27ed19d0c7ea1b5)
图2-16 添加插件
重启浏览器就可以看到安装好的HackBar,如图2-17所示。
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-17.jpg?sign=1739312414-sjT2oeZKpE6xYijToPrC0Af1RpvtCoDr-0-a99d7d08a7141762b973572a3ab30fba)
图2-17 插件添加成功
在旧版本中添加插件的方法如图2-18所示,可以在“设置→附加组件→扩展”中搜索hackbar,选择需要的旧版本,按照如图2-19所示箭头1、2、3指示的步骤操作即可。
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-18.jpg?sign=1739312414-Eff24L80wBPaPvQBRjFYaHcarOENo0em-0-750d4cadccb6230adae04e281309d98b)
图2-18 旧版本插件选择
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-19.jpg?sign=1739312414-5iuGt5DSJ7m1LDg5EPxtyXTonLCF8YwV-0-5a771048a2599f00eb6b055bc7572dfa)
图2-19 旧版本插件添加
安装完成后重启火狐浏览器。
下面介绍一下HackBar这款插件的使用方法。首先介绍常用功能按钮,如图2-20所示。
●Load URL用于获取URL地址,结果显示在HackBar的Get编辑框里。
●Split URL用于将URL地址拆分,以便修改URL。
●Execute用于访问HackBar编辑框的地址。
●Enable Post data是要提交的Post数据参数。
●Enable Referrer是要提交的Referrer数据参数。
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-20.jpg?sign=1739312414-iFSWdObxh8Kv3DHapHZTjn3AueZhnm0T-0-ceeaac0b1464978dbd0fd95c23793116)
图2-20 HackBar功能简介
接下来看一下用Burp Suite抓取的post提交包,如图2-21所示。2.3节中会详细介绍Burp Suite这款抓包软件。
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-21.jpg?sign=1739312414-zezFuzkXrK5J3p6Q39Ql7P1wPAo2OP4S-0-24c126b0efaa5cc4db3ec4c78c34bf0f)
图2-21 post提交包中的HTTP字段
第一个箭头指的是Referer[1]数据,第二个箭头指的是Post参数。
2.2.3 FoxyProxy安装与使用
打开火狐浏览器,在“设置→附加组件→扩展”中搜索FoxyProxy来安装,如图2-22所示,安装完成后重启就能使用FoxyProxy插件了。
重启后点击地址栏旁边箭头1所指的按钮,可以设置代理,如图2-23所示。点击“新建代理服务器”或“编辑选中项目”后,点击“代理服务器细节”进行代理设置,如图2-23中箭头3所指,并且设置为Burp默认的代理,IP为127.0.0.1,端口为8080,设置完点击“确定”。
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-22.jpg?sign=1739312414-4B97my2SU3uhRAW21ttcWubq1MOLmPGP-0-d0ec0591eb5b4bc27b717a2375d0cb73)
图2-22 重启浏览器使用FoxyProxy插件
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-23.jpg?sign=1739312414-Gu0zLJ7F1FHoUJaLNxC5c2MLwQtnYpmn-0-5c24adefbb5b21879c817d0fded69346)
图2-23 服务器代理设置
点击“常规”选项卡,可设置修改代理名称、颜色和缓存功能,如图2-24所示。
填写信息后保存,并选中代理,这样火狐浏览器的代理就设置成功了,如图2-25所示。
在Burp Suite中设置同一端口后开启数据包截取功能就可以正常进行抓包了,如图2-26所示。
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-24.jpg?sign=1739312414-EBes4TEz6DNay1FGfZHwyP321sUJ5lPB-0-8ecf9a5999ac2d3070f919d4f80158a1)
图2-24 设置代理名称、颜色、缓存
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-25.jpg?sign=1739312414-FXtJsrR2B5bjsY8u29q3Ny5jhg6fOp7t-0-0c651e4bb31b18ce55f68f6e920c44c8)
图2-25 火狐代理插件设置成功
![](https://epubservercos.yuewen.com/AAB7B5/21233234301205006/epubprivate/OEBPS/Images/2-26.jpg?sign=1739312414-qnIwCyGvTiCSMZoDF4PCMNFe3oEW72Pz-0-7ce8dd6ab0a2751505b086bf65730695)
图2-26 Burp Suite抓包测试
[1] HTTP请求中的Referer是一个典型的拼写错误,历史悠久,可以预见还会一直错下去。也许以后Referer会变成一个专有名词也说不定。所以,一般涉及到读取HTTP请求头的场景,我们需要用Referer这种错误拼写;除此之外一般都要用Referrer这种正确的拼写。