【Xepor:一款针对逆向工程和安全分析的Web路由框架】Xepor是一款专为逆向分析工程师和安全研究专家设计的Web路由框架,该工具可以为研究人员提供类似Flask API的功能,支持以人类友好的方式拦截和修改HTTP请求或HTTP响应信息 。
该项目需要与mitmproxy一起结合使用,用户可以使用Xepor来编写脚本,并在mitmproxy中使用下列命令来运行脚本:
mitmproxy -s your-script.py
功能介绍
1、使用@api.route()来编码,和Flask类似,支持在一个脚本中完成所有任务 。使用场景
2、支持处理多条URL路由,甚至可以在一个InterceptedAPI实例中处理多台主机 。
3、针对每个路由,可以选择在连接到服务器之前修改请求,或者在转发给用户之前修改响应 。
4、支持黑名单模式或白名单模式 。
5、支持正则表达式匹配 。
6、通过主机重映射定义跟匹配URL路径 。
7、结合mitmproxy实现更强大的功能 。
1、通过MitM实现AP安全测试和网络钓鱼测试;工具下载源码下载广大研究人员可以使用下列命令将该项目源码克隆至本地:
2、通过iptables+透明代理嗅探来自特定设备的流量,使用Xepor动态修改Payload;
3、用大约100行代码编写复杂的网络爬虫...
git clone https://github.com/xepor/xepor.git
pip安装pip install xepor
工具使用我们以项目中examples/httpbin内的脚本为例给大家演示该工具的使用:mitmweb --web-host=* --set connection_strategy=lazy -s example/httpbin/httpbin.py
在这个离职中,我们配置mitmproxy服务器的地址为127.0.0.1,你也可以将其修改为设备的其他IP地址 。如果需要让mitmproxy服务器以反向、上游和透明模式运行的话,则需要设置下列参数:--set connection_strategy=lazy
此时Xepor将会正常功能工作,我们也建议设置该选项以保证工具的稳定运行 。接下来将浏览器HTTP代理设置为“http://127.0.0.1:8080”,并在浏览器中访问“http://127.0.0.1:8081/”
然后,通过“http://httpbin.org/#/HTTP_Methods/get_get”发送一个GET请求,然后你将可以通过Xepor的mitmweb接口、浏览器开发者工具或Wireshark对数据请求进行修改 。
httpbin.py会做下列两件事情:
1、当用户访问“http://httpbin.org/get”时,向HTTP请求中注入一个查询字符串参数“payload=evil_param”;任务其实和mitmproxy做的类似,但我们可以通过Xepor的方式来编写代码:
2、当用户访问“
http://httpbin.org/basic-auth/xx/xx/”时,从HTTP请求中嗅探“Authorization” Header,并将密码打印给研究人员;
# https://github.com/xepor/xepor-examples/tree/main/httpbin/httpbin.pyfrom mitmproxy.http import HTTPFlowfrom xepor import InterceptedAPI, RouteTypeHOST_HTTPBIN = "httpbin.org"api = InterceptedAPI(HOST_HTTPBIN)@api.route("/get")def change_your_request(flow: HTTPFlow):"""Modify URL query param.Test at:http://httpbin.org/#/HTTP_Methods/get_get"""flow.request.query["payload"] = "evil_param"@api.route("/basic-auth/{usr}/{pwd}", rtype=RouteType.RESPONSE)def capture_auth(flow: HTTPFlow, usr=None, pwd=None):"""Sniffing password.Test at:http://httpbin.org/#/Auth/get_basic_auth__user___passwd_"""print(f"auth @ {usr} + {pwd}:",f"Captured {'successful' if flow.response.status_code < 300 else 'unsuccessful'} login:",flow.request.headers.get("Authorization", ""),)addons = [api]
许可证协议本项目的开发与发布遵循Apache-2.0开源许可证协议 。项目地址Xepor:https://github.com/xepor/xepor
推荐阅读
- 食疗治疗便秘 食谱美味又瘦身
- 哈趣|年轻人第一款迷你居家影院!哈趣投影K1开箱图赏
- 方太侧吸式油烟机哪一款好?方太2020新款油烟机侧吸_3
- 一岁多宝宝缺钙怎么补
- 肠胃药饭前吃可以吗
- 发型|美颜社|气温飙升 是时候解锁一款解暑发型了
- 安卓|唯一一款四边等宽+透明机身的新机来了:本周官宣
- 四个多月引产过程
- 发型|精选最火发型十五款,有长也有短,总有适合你的那一款
- 华为5g手机哪一款性价比最高?