千家信息网

如何映射Google Web Toolkit的攻击面

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,如何映射Google Web Toolkit的攻击面,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。GWTMapGWTMap是一款针对GW
千家信息网最后更新 2026年10月31日如何映射Google Web Toolkit的攻击面

如何映射Google Web Toolkit的攻击面,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

GWTMap

GWTMap是一款针对GWT的安全审计工具,在它的帮助下,广大研究人员不仅可以对基于Google Web Toolkit(GWT)的应用程序进行安全审计,而且还可以使用GWTMap来映射这类应用程序的攻击面。该工具的主要功能是帮助广大研究人员提取出隐藏在现代GWT应用程序混淆客户端代码中的任何服务方法节点,并尝试生成GWT-RPC请求样例Payload来与这些应用程序进行交互。

依赖环境

脚本的正常运行需要Python3环境以及argparse和requests库。在安装并配置好Python3环境之后,我们可以使用下列命令来安装相应的依赖组件:

python -m pip install -r requirements.txt

帮助菜单

$ ./gwtmap.py -husage: gwtmap.py [-h] [--version] [-u ] -F  [-b ] [-p ] [-c ] [-f ] [--basic] [--rpc] [--probe] [--svc] [--code] [--color] [--backup [DIR]] [-q] Enumerates GWT-RPC methods from {hex}.cache.js permutation files Arguments:  -h, --help              显示帮助信息并退出  --version               显示程序版本号并退出  -u , --url                         目标GWT地址  -F , --file                         本地拷贝文件路径  -b , --base                         给定组合文件的URL基地址  -p , --proxy                         HTTP代理URL地址URL,比如说:-p http://127.0.0.1:8080  -c , --cookies                         访问远程资源所需的cookie,比如说:'JSESSIONID=ABCDEF; OTHER=XYZABC'  -f , --filter                         输出过滤,比如说:-f AuthSvc.checkSession  --basic                启用HTTP Basic认证  --rpc                 针对每一个方法生成序列化RPC请求  --probe               发送HTTP探测请求来测试每一个方法  --svc                 显示枚举服务信息和方法  --code                导出给定资源的're-formatted'状态  --color                启用终端输出颜色高亮显示  --backup [DIR]         创建获取代码的本地拷贝  -q, --quiet             启用静默模式(最小化输出) 执行样例: ./gwtmap.py -u "http://127.0.0.1/example/example.nocache.js" -p "http://127.0.0.1:8080" --rpc

工具使用

通过目标的Bootstrap文件来枚举一个远程应用程序中的方法,并创建目标代码的本地备份(随机选择排列):

./gwtmap.py -u http://192.168.22.120/olympian/olympian.nocache.js --backup

通过特定的代码组合枚举远程应用程序中的方法:

./gwtmap.py -u http://192.168.22.120/olympian/C39AB19B83398A76A21E0CD04EC9B14C.cache.js

通过一个HTTP代理枚举目标应用程序的路由流量方法:

./gwtmap.py -u http://192.168.22.120/olympian/olympian.nocache.js --backup -p http://127.0.0.1:8080

枚举任意给定组合的本地文件拷贝中的方法:

./gwtmap.py -F test_data/olympian/C39AB19B83398A76A21E0CD04EC9B14C.cache.js

对特定服务或方法进行输出过滤:

./gwtmap.py -u http://192.168.22.120/olympian/olympian.nocache.js --filter AuthenticationService.login

针对已过滤的服务中所有的方法生成RPC Payload,输出数据带有颜色高亮显示:

./gwtmap.py -u http://192.168.22.120/olympian/olympian.nocache.js --filter AuthenticationService --rpc --color

针对所有已过滤服务方法自动测试(探测)生成的RPC请求:

./gwtmap.py -u http://192.168.22.120/olympian/olympian.nocache.js --filter AuthenticationService.login --rpc --probe

完整使用样例

在这个样例中,我们针对"testDetails"方法来生成了一个RPC请求,然后实现针对服务的自动化探测:

$ ./gwtmap.py -u http://192.168.22.120/olympian/olympian.nocache.js --filter TestService.testDetails --rpc --probe       ___|  \        / __ __|   \  |     \      _ \  |       \  \   /     |    |\/ |    _ \    |   |  |   |    \  \ /      |    |   |   ___ \   ___/ \____|    _/\_/      _|   _|  _| _/    _\ _|                             version 0.1 [+] Analysing====================http://192.168.22.120/olympian/olympian.nocache.jsPermutation: http://192.168.22.120/olympian/4DE825BB25A8D7B3950D45A81EA7CD84.cache.js+ fragment : http://192.168.22.120/olympian/deferredjs/4DE825BB25A8D7B3950D45A81EA7CD84/1.cache.js+ fragment : http://192.168.22.120/olympian/deferredjs/4DE825BB25A8D7B3950D45A81EA7CD84/2.cache.js  [+] Module Info====================GWT Version: 2.9.0Content-Type: text/x-gwt-rpc; charset=utf-8X-GWT-Module-Base: http://192.168.22.120/olympian/X-GWT-Permutation: 4DE825BB25A8D7B3950D45A81EA7CD84RPC Version: 7RPC Flags: 0  [+] Methods Found==================== ----- TestService ----- TestService.testDetails( java.lang.String/2004016611, java.lang.String/2004016611, I, D, java.lang.String/2004016611 )POST /olympian/testService HTTP/1.1Host: 192.168.22.120Content-Type: text/x-gwt-rpc; charset=utf-8X-GWT-Permutation: 4DE825BB25A8D7B3950D45A81EA7CD84X-GWT-Module-Base: http://192.168.22.120/olympian/Content-Length: 262 7|0|10|http://192.168.22.120/olympian/|67E3923F861223EE4967653A96E43846|com.ecorp.olympian.client.asyncService.TestService|testDetails|java.lang.String/2004016611|D|I|§param_Bob§|§param_Smith§|§param_"Im_a_test"§|1|2|3|4|5|5|5|7|6|5|8|9|§32§|§76.6§|10| HTTP/1.1 200//OK[1,["Name: param_Bob param_Smith\nAge: 32\nWeight: 76.6\nBio: param_\"Im_a_test\"\n"],0,7]  [+] Summary====================Showing 1/5 ServicesShowing 1/25 Methods

看完上述内容,你们掌握如何映射Google Web Toolkit的攻击面的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

方法 程序 应用程序 应用 服务 生成 输出 代码 文件 目标 帮助 攻击 工具 拷贝 比如说 环境 探测 组合 安全 人员 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 科技互联网企业 云信互联网科技有限公司 互联网和科技技术 科技平台互联网 卓越科技(互联网 ) 贷财互联网科技 长亮科技 互联网金融 互联网科技公司名称 新华互联网科技2019 顶级互联网科技成果有哪些 荆州市昕露互联网络科技有限公司 知域互联网科技有限公司大骗子 科技类公司包括互联网吗 上海京穆互联网科技有限公司 互联网科技资金流入 宇信科技在杭州互联网排第几 广州燕处互联网科技有限公司 绵阳真晨互联网科技有限公司 亚光科技低轨卫星互联网 长沙易易互联网科技有限公司 上海挚品互联网科技有限公司 美国互联网科技巨头监管 北京互联网科技有限公司 科技互联网创业计划书 温州喔噻互联网科技有限公司 栖莱科技互联网股份有限公司 中国互联网公司的科技投入 唐山双旺合互联网科技产业园 广西泛欧互联网科技有限公司 银川新华互联网科技学校招聘
0