当前位置: 首页 > 新闻中心 > 数据中心

Token防重放绕过Burp插件

作者:来源:发表时间:2021-08-01 23:32:17

内容摘要: JC-AntiToken burp插件:python版,token防重放绕过 Author: JC0o0l,Jerrybird Team: Z1-Sec WeChat: JC_SecNotes(Zer

JC-AntiToken

burp插件:python版,token防重放绕过

Author: JC0o0l,JerrybirdTeam: Z1-SecWeChat: JC_SecNotes(Zer0ne安全研究)
0x01 目标:

token防重放绕过

界面效果如下:

1610785517_6002a2edb09b3228617d4.png!small

0x02 适用场景:请求包带有防重放的token该token需要去请求另一个接口才能得到0x03 使用:0x0301 下载安装:从GitHub下载该项目:https://github.com/chroblert/JC-AntiTokenBurp中配置python环境jython-2.7.jar加载JC-AntiToken.py插件0x0302 配置:

(一)、左侧设置token在响应中位置:

URL:填写token接口的URL,如:https://test.com/getToken.php注:不要填写`?`及之后的参数

ReqMeth: 选择请求头方法

ConType: 选择Content-Type

CharSet: 选择编码方式

Headers: 设置请求头。(json字符串格式,字段和值使用双引用括起来)

通过该Headers设置的请求头的优先级最高,会覆盖掉程序内置的请求头Cookie除外,使用请求包中的cookie作为最新的cookie

Data: 设置请求体

对于GET来说,Data被编码成urlencode形式。通过`?`追加到URL后面对于POST来说,可选择json格式和urlencode两种形式

TokenPosition: token在token接口响应包的哪个位置

若选择Header,则在”TokenName”中填写请求头名称注:区分大小写示例: `Via`1610785556_6002a3141f491422bbb17.png!small若选择Body,则在”TokenRegex”项中填写正则表达式注:该正则表达式从^开始匹配,用`()`括起来的为要提取的token值示例:`.”_TransactionId”:”(.?)”`1610785538_6002a302e42044672a468.png!smallBody: 在响应体中Header: 在请求头中

TEST: 设置参数并测试是否有效

若成功,则显示提取出的数据若失败,则显示None

下方文本框:显示响应报文

(二)、右侧设置token在请求中位置:TokenPosition:token在请求报文中的位置:设置TokenRegex格式:(.前缀)(要替换的地方)(后缀.)
如:(.”_tokenName”:”)(.?)(“.*)匹配
,”_tokenName”:”ir9xGm”}
1610785570_6002a322a87ce3590ed51.png!small设置TokenNameHeader:在URL参数或请求头中Body:在请求体中

SET:检查并设置参数

(三)、配置Session Handling Rules

1610785587_6002a33319a000e24ab5d.png!small

新建一个规则,新建一个Rule Action选择Invoke a Burp Extension选择JC-AntiToken之后根据项目需求设置Scope:设置生效的工具设置生效的URL设置生效的条件:请求中具有某参数才生效

1610785601_6002a3411b0b01acc452a.png!small

0x04 总结

比较简单的一款小burp插件,大部分时间耗在布局和排版上面了

注:防重放,使用多线程会报错,非本插件功能问题,是目标网站的限制

0x05 踩坑指南问题:’unicode’ object has no attribute ‘items’

解决:
○ 在文件首行添加:
# — coding: utf-8 —
○ 在文件代码前添加:
sys_encoding = sys.getfilesystemencoding()问题:BoxLayout控制JTextField的高度

解决:
textField = new JTextField( … );
textField.setMaximumSize( textField.getPreferredSize() );


参考资料:让BoxLayout管理器尊重JTextField的实际尺寸

参考资料:How do I keep JTextFields in a Java Swing BoxLayout from expanding?

参考资料:HOW TO RAPIDLY BUILD A BURP SESSION HANDLING EXTENSION USING JAVASCRIPT

参考资料:BurpSuite插件编写

参考资料:urllib2添加headers和设置代理

参考资料:re-正则表达式操作

参考资料:python中str,bytes,bytearray的相互转化

相关推荐:对于crawlergo|rad|burpsuite|awvs爬虫的对比 蚁剑流量改造学习 php代码审计前奏之ctfshow之命令执行 Python代码审计实战案例总结之CRLF和任意文件读取 红队攻防之隐匿真实Cobalt Strike IP
最新开服更多
    时间游戏名称游戏厂商相关
页游排行榜更多
关于我们| 广告服务| 联系我们| 诚聘英才| 友情链接 健康游戏忠告:抵制不良游戏 拒绝盗版游戏 注意自我保护 谨防受骗上当 适度游戏益脑 沉迷游戏伤身 合理安排时间 享受健康生活