应用:
在渗透测试中,进行请求与响应的消息验证分析。如修改请求参数,验证输入的漏洞与逻辑越权;从拦截历史记录中,捕获特征性的请求消息进行请求重放。
功能:
修改和重放http请求,如尝试手工注入,文件上传黑名单的测试等。
基本使用:
一:首先需要抓取一个http请求(历史记录):
1.关掉拦截:Proxy--Intercept--点击Intercept is on将其改为Intercept is off
2.打开浏览器(我用的火狐),查看代理是否设置完好:设置--网络设置--连接设置--手动配置代理--http代理:127.0.0.1 端口:8080
3.访问网站
4.查看bp是否抓取到所对应的请求:Proxy--HTTP history--URL
二:将请求发送到Repeater模块:Proxy--HTTP history--目标Host--右键send to repeater
三:查看Repeater模块:Repeater--Request--Raw(原始的请求):可修改
--Params(列表化形式的参数)
--Headers
--Hex:可修改
修改完点击Go,返回Response(请求重放),我们可以发现Response中HTML与Render(页面渲染)均已改变。
实战常用功能(注入):
一:寻找注入点:
如
id--注入参数
一:打开bp:Proxy--HTTP history--Host--右键Send to Repeater
二:查看id为1的时候的响应
三:在注入点添加注入请求语句(进行联合查询/分段查询):
1.修改id为2,查看响应。
2.注意不能在原始请求里面直接加语句:
如:(查询字段数)
可以看到Response中 当前查询语句并没有代入order by 1,这么做是无效的。
3.在Params中修改:修改Value为1 order by 1,点击Go
可以看到order by 1已经带入查询且返回正常
在Value里修改1分别为2,3发现返回正常,直到改为4时:
说明一共有三个字段
4.接下来可进行union的人工查询:修改Value为1 union select 1,2,3--Go
第一个显示位:用户ID : 1
第二个显示位:用户账号 : 2
第三个显示位:用户密码 : 3
5.把1,2,3换成想要查询的变量:
如(改为version)
可知MySQL版本为5.5.40
改为user() 得root@localhost
改为@@basedir(根目录) 得C:/Program Files/......./MySQL/
可选设置选项:最上方Repeater
1.自动更新请求的Content-Length
2.控制解压,压缩
3.是否跟随服务器进行跳转
4.若选中,则在跳转过程中设置cookies信息
5.Repeater视图布局
6.其他操作
学习自i春秋网站:【i春秋】-专注网络安全_信息安全_白帽子的在线学习_教育_培训平台
萌新初学,如有任何问题请多多指教