首页
社区
课程
招聘
[原创] 工具发布:Xepor,Web 流量自动化篡改 framework
发表于: 2022-3-21 16:10 5555

[原创] 工具发布:Xepor,Web 流量自动化篡改 framework

2022-3-21 16:10
5555

项目地址: https://github.com/xepor/xepor

 

个人做的一款框架类工具,一款 Web 流量自动化篡改 framework。用户无感知免 root 全流量抓包,十行代码过云端授权,一百行代码过视频加密。用例文档API说明啥啥都有,欢迎点个 star。

 

前两年我发过一个帖子 [原创]使用 mitmproxy 快速搭建软件网络验证API——以某音频处理软件为例 ,这个工具就是在这个帖子的代码原型基础之上,迭代而成。

 

由于项目本身的特性,使用它需要用户结合实际渗透目标编写脚本实现具体功能,存在一定的学习门槛,为了方便大家上手,特意准备了一些简单的实例。包括:

  1. 以 httpbin 为例演示简单的请求、返回值监听篡改
  2. 以某软件为例破解云端授权验证,这个“某软件”,就是上面的帖子里提到的那款软件。所以可以对照参考,哈哈
  3. 以某网站为例,监听、解密、保存加密的视频流

用例位于: xepor/xepor-examples: Examples for using Xepor framework

 

以下引用项目介绍(最近文档写太多了我就不翻译了):

Xepor

Xepor (pronounced /ˈzɛfə/, zephyr), a web routing framework for reverse engineers and security researchers.
It provides a Flask-like API for hackers to intercept and modify HTTP request and/or HTTP response in a human-friendly coding style.

 

This project is meant to be used with mitmproxy. User write scripts with xepor, and run the script inside mitmproxy with mitmproxy -s your-script.py.

 

If you want to step from PoC to production, from demo(e.g. http-reply-from-proxy.py, http-trailers.py, http-stream-modify.py) to something you could take out with your WiFi Pineapple, then Xepor is for you!

Features

  1. Code everything with @api.route(), just like Flask! Write everything in one script and no if..else any more.
  2. Handle multiple URL routes, even multiple hosts in one InterceptedAPI instance.
  3. For each route, you can choose to modify the request before connecting to server (or even return a fake response without connection to upstream), or modify the response before forwarding to user.
  4. Blacklist mode or whitelist mode. Only allow URL endpoints defined in scripts to connect to upstream, blocking everything else (in specific domain) with HTTP 404. Suitable for transparent proxying.
  5. Human readable URL path definition and matching powered by parse
  6. Host remapping. define rules to redirect to genuine upstream from your fake hosts. Regex matching is supported. Best for SSL stripping and server side license cracking!
  7. Plus all the bests from mitmproxy! ALL operation modes ( mitmproxy / mitmweb + regular / transparent / socks5 / reverse:SPEC / upstream:SPEC) are fully supported.

Use Case

  1. Evil AP and phishing through MITM.
  2. Sniffing traffic from specific device by iptables + transparent proxy, modify the payload with xepor on the fly.
  3. Cracking cloud based software license. See examples/krisp/ as an example.
  4. Write complicated web crawler in ~100 lines of codes. See examples/polyv_scrapper/ as an example.
  5. ... and many more.

SSL stripping is NOT provided by this project.

Installation

1
pip install xepor

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2022-3-21 16:15 被ttimasdf编辑 ,原因: 论坛格式有bug呀
收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 17
活跃值: (891)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
无感知免 root 全流量抓包 是啥意思 
2022-3-22 10:08
0
雪    币: 1631
活跃值: (1364)
能力值: ( LV7,RANK:117 )
在线值:
发帖
回帖
粉丝
3
amwpecel 无感知免 root 全流量抓包 是啥意思

比如,我搭了一个钓鱼wifi,我iptables DNAT一开,流量就进来了,我在透明代理里,加载了一个xepor脚本,可以动态对http包进行任何修改,脚本文件每次保存,代理都会自动重载,HTTP内容修改的逻辑也可以动态修改,脚本写错了(import不进来,缺依赖、typo等等各种情况),自动重载上一个版本,脚本抛异常了,打印到console里,返回未修改的response。iptables一关,一切恢复原样。受害者机器上不需要任何配置,在任何情况下都不影响网络通断。


假如我真在钓鱼,那我肯定不可能手动改包,一个intercept到这,网断了,victim就知道出问题了。burp搁这就不行了。mitmproxy和fiddler的脚本系统,封装的都不够。暴露的API太底层了。要改多个endpoint的时候,那脚本写完了都没法维护,一大堆if else,没眼看。


当然,我平时不搞这一套,我一般用来分析一个终端的系统流量,因为我拿到的机器一般是没root的,甚至没有adb,只能这么搞。

其他的用例Github中描述的更为详细。

最后于 2022-3-22 10:43 被ttimasdf编辑 ,原因:
2022-3-22 10:38
0
雪    币: 5932
活跃值: (4825)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
支持https/TCP/UDP等?单双向证书校验?
2022-3-22 13:59
0
雪    币: 14846
活跃值: (6078)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5

https应该不行?http很容易搞定不需要你这个

最后于 2022-3-22 16:45 被tDasm编辑 ,原因:
2022-3-22 16:43
0
游客
登录 | 注册 方可回帖
返回
//