Java 在Windows Linux子系统(WSL)上安装mitmproxy

Java 在Windows Linux子系统(WSL)上安装mitmproxy,java,windows,https,man-in-the-middle,Java,Windows,Https,Man In The Middle,我一直在使用修改服务器发送的HTTPS响应,该响应是由客户端的POST请求启动的,该请求工作正常 在Windows上使用Java我想实现这个中间人攻击,因此我正在寻找能够处理系统范围HTTPS流量的代码。将证书导入系统的信任库也是必要的,但我正在努力启动实际的Java代码。例如,它有一个Windows安装程序,但它不提供mitmproxy可执行文件。同样使用WSL我得到以下Python异常: $ sudo apt-get -y install mitmproxy [sudo] password

我一直在使用修改服务器发送的
HTTPS
响应,该响应是由客户端的
POST
请求启动的,该请求工作正常

Windows
上使用
Java
我想实现这个中间人攻击,因此我正在寻找能够处理系统范围
HTTPS
流量的代码。将证书导入系统的信任库也是必要的,但我正在努力启动实际的
Java
代码。例如,它有一个
Windows
安装程序,但它不提供
mitmproxy
可执行文件。同样使用
WSL
我得到以下
Python
异常:

$ sudo apt-get -y install mitmproxy
[sudo] password for ubuntu:
Reading package lists... Done
Building dependency tree
Reading state information... Done
mitmproxy is already the newest version (2.0.2-3).
0 upgraded, 0 newly installed, 0 to remove and 106 not upgraded.
root@mypc:~$ mitmproxy --port 1080
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 574, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 892, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 783, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (urwid 2.0.1 (/usr/lib/python3/dist-packages), Requirement.parse('urwid<1.4,>=1.3.1'), {'mitmproxy'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/mitmproxy", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 3088, in <module>
    @_call_aside
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 3072, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 3101, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 576, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 589, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 778, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'urwid<1.4,>=1.3.1' distribution was not found and is required by mitmproxy
$sudo apt get-y安装mitmproxy
ubuntu的[sudo]密码:
正在阅读软件包列表。。。多恩
构建依赖树
正在读取状态信息。。。多恩
mitmproxy已经是最新版本(2.0.2-3)。
0已升级,0已新安装,0已删除,106未升级。
root@mypc:~$mitmproxy—端口1080
回溯(最近一次呼叫最后一次):
文件“/usr/lib/python3/dist-packages/pkg_-resources/_-init__.py”,第574行,在构建主文件中
ws.require(\uuuu requires\uuuuu)
文件“/usr/lib/python3/dist packages/pkg_resources/_init__.py”,第892行,在require中
需要=自我解析(解析需求(需求))
文件“/usr/lib/python3/dist packages/pkg_resources/_init__.py”,第783行,解析中
提升版本冲突(dist,req)。带有上下文(dependent\u req)
pkg_resources.ContextualVersionConflict:(urwid2.0.1(/usr/lib/python3/dist包),Requirement.parse('urwid=1.3.1'),{'mitmproxy'})
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“/usr/bin/mitmproxy”,第6行,在
从打包资源导入加载入口点
文件“/usr/lib/python3/dist packages/pkg_resources/_init__.py”,第3088行,在
@_把你叫到一边
文件“/usr/lib/python3/dist packages/pkg_resources/_init__.py”,第3072行,放在一边
f(*args,**kwargs)
文件“/usr/lib/python3/dist packages/pkg\u resources/\uuuu init\uuuu.py”,第3101行,在“初始化”主工作集中
工作集=工作集。_build_master()
文件“/usr/lib/python3/dist-packages/pkg_-resources/_-init__.py”,第576行,在构建主文件中
从需求返回cls.\u构建需求(\u需要\u)
文件“/usr/lib/python3/dist packages/pkg_resources/_init__.py”,第589行,从需求生成
dists=ws.resolve(请求,环境())
文件“/usr/lib/python3/dist packages/pkg_resources/_init__.py”,第778行,解析中
未找到raise DistributionNotFound(请求,请求者)
pkg_resources.DistributionNotFound:未找到“urwid=1.3.1”发行版,mitmproxy需要该发行版
的maven依赖项会导致错误

如何解决这些问题,或者使用
Java
编程来捕获和修改任何系统范围的
HTTPS
流量?它只需要在
窗口上工作

工作:


注意:此命令适用于
Ubuntu

未维护用于mitmproxy的Ubuntu包。 您有3种选择:

如图所示,您可以从pip安装它

您可以从获取linux的编译二进制文件


或者您可以从github下载源代码并以这种方式运行

我们应该使用pip3作为根吗?
sudo apt install python3-pip && sudo pip3 install -U pip && sudo pip3 install mitmproxy