Установка mitmproxy в подсистеме Windows для Linux (WSL) - PullRequest
0 голосов
/ 10 февраля 2019

Я использовал Fiddler для изменения ответа HTTPS, отправленного сервером, который был инициирован запросом POST клиента, который работал нормально.

Используя Java на Windows Я хочу реализовать эту же атаку типа «человек посередине», поэтому я ищу код, который может обрабатывать общесистемный HTTPS трафик.Импорт сертификата в хранилище доверенных сертификатов системы также необходим, но я борюсь с запуском фактического Java кода.Например, mitmproxy имеет установщик 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

LittleProxy-mitm maven зависимость вызывает java.lang.NoClassDefFoundError: org/bouncycastle/util/Encodable.

Как я могу исправить эти проблемы или что еще можно использовать для захвата и изменения любого общесистемного HTTPS трафика с помощью программирования Java?Нужно только работать на Windows.

1 Ответ

0 голосов
/ 16 февраля 2019

Руководство по установке pip3 работает:

sudo apt install python3-pip && sudo pip3 install -U pip && sudo pip3 install mitmproxy

Примечание. Эта команда относится к Ubuntu.

...