有点Web应用拥有客户端的输入数据校验机制(如通过JavaScript、隐藏的表单、未知的POST请求参数等),测试此类应用,我们需要直接拦截浏览器发出的请求,并在请求发送到浏览器之前修改它们。这篇文章,我们讨论如何使用火狐浏览器的插件 Tamper Data拦截一个Form表单请求,并在请求发出前,修改请求内容。
操作步骤
使用配置好的Firefox浏览器访问靶机的 Damn Vulnerable Web Application (DVWA) 并登录,默认用户名/密码是:admin/admin
在火狐浏览器的插件管理器中联网安装 Tamper Data 插件,重启浏览器。
然后按快捷键(Alt + t)打开浏览器工具菜单,选择 Tamper Data,打开该插件,然后看到如下窗口:
Tamper Data现在,用浏览器访问靶机应用:
http://192.168.56.102/dvwa/login.php
此时我们在插件的Request部分,可以看到下图所示内容:
注意
只要我们开着Tamper Data插件,每个在浏览器发出的请求都会通过该插件。点击Start Tamper,开始拦截并修改请求。输入登录信息,点击登陆,会拦截登陆请求,如下图,此时填入虚假 username/password 组合,例如 test/password,然后点击Login。在确认对话框,取消勾选 Continue Tampering ,然后点击Tamper,然后 Tamper 弹窗会出现,在这个弹窗里,我们可以修改发往服务器的请求头信息和POST参数信息。现在,把错误的登陆用户名和密码改为正确的 (admin/admin) 然后点击OK。
Paste_Image.png Paste_Image.png Paste_Image.png这样就完成了登陆,虽然开始输入的都是错误的登陆信息,但是我们通过拦截请求并修改,实际发给服务器的是正确的登陆表单。
Tamper Data 虽然可以在请求离开浏览器前被抓取并修改后再发送,但是它也有一些短板,比如,不能编辑请求的URL或GET参数。
网友评论