问题标签 [mitmproxy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
751 浏览

python-2.7 - libmproxy 问题 - “模块”对象没有属性“TLSv1_1_METHOD”

我尝试在我的 linux RHEL 7 中使用 Libmproxy,但出现以下异常:

已经尝试重新安装 mitmproxy、netlib、PyOpenSSL 和 Cryptography。还有其他想法吗?

0 投票
0 回答
153 浏览

https - 转储到文件 Https 解密流量

如何使用 mitmdump 或 mitmproxy 将解密的 https 流量转储到文件?

还有可能只在文件上写入来自特定 IP 地址的流量吗?

0 投票
1 回答
653 浏览

python - 修改 request.url 而不改变 request.host

我使用 mitmproxy 和 python 作为 http 代理

我使用以下命令运行代理:

proxy.py 如下所示:

我期望将 www.verycd.com 更改为 url 中的 IP,但保持主机字段仍使用 www.verycd.com,如下所示:

但是 mitmproxy 总是在我得到服务器不接受的同时更改 url 和主机

0 投票
1 回答
240 浏览

python-2.7 - libmproxy - 如何异步加载请求?

我想知道如何使用 libmproxy 或 mitmproxy 异步加载请求。

我的代码如下所示:

0 投票
3 回答
8309 浏览

windows - 谷歌浏览器不信任 mitmproxy 的证书

我正在我的 Macbook Pro 上运行mitmdump(从mitmproxy),我正在通过我的 Windows 台式电脑连接到代理。

但是,由于 mitmproxy 提供的证书无效,Chrome(在 PC 上运行)拒绝连接到如此多的站点。

您的连接不是私密的/攻击者可能试图窃取您的信息。 NET::ERR_CERT_AUTHORITY_INVALID

Chrome 抛出错误:ERR::NET_CERT_AUTHORITY_INVALID

这是 mitmdump 显示的内容:

客户端握手失败

但为什么?mitmproxy 的证书有什么问题,为什么不能像什么都没发生一样直接发回 google 的证书?

我想知道如何解决这个问题并让(强制)我的台式电脑通过我的 Macbook 的 mitmproxy 连接到任何网站。

0 投票
1 回答
1814 浏览

python - 如何忽略所有与 mitmproxy 的 websocket 连接?

目前,mitmproxy 似乎无法处理 websocket 连接。

我怎样才能传递这些,以便客户端仍然可以连接到 websocket 服务器?

这是我当前的命令:

./mitmproxy --anticache -s injectScripts.py

具体来说,就我而言,我目前希望使用我的代理的客户端能够在agar.io上玩游戏,它使用 websocket 连接与托管游戏的(为了我们的目的,随机)服务器通信。

agar.io 连接到的游戏托管服务器示例:ws://151.80.96.51:1515ws://37.187.171.110:1523ws://37.187.163.130:1518

我已经尝试过使用 mitmproxy 的Ignore Domains功能(无论是从命令行还是从程序中),以及他们推荐的TCP 代理功能。这是我尝试使用的模式:

./mitmproxy --anticache -s injectScripts.py --ignore ^agar.io$

但这只会阻止 agar.io 加载(灰色背景,正确的文档标题,仅此而已)。

我认为因为客户端连接到不同的服务器(不是ws://agar.io)我不能使用简单的域忽略,但我可能错了。


虽然目前我只对 agar.io 感兴趣,但如果有一个适用于所有 websocket 服务器的解决方案,那就太好了。

那么,简而言之,我怎样才能让客户端连接到 ws 服务器呢?

0 投票
0 回答
31 浏览

python - 如何杀死并行进程(由 subprocess.Popen 启动)及其子进程?

我想使用 mitmproxy 来捕获我的模拟器的流程。我的想法是使用

proc = subprocess.Poen('mitmproxy -T -w emulator.log', shell=True)将 mitmproxy 作为并行进程启动并kill pid用于停止 mitmproxy。

prco.pid显示prcothay 是一个新的 shell,mitmproxy 是proc.

os.killpg(pid, signal.SIGKILL)无法杀死不同外壳中的进程;

os.getpid获取当前 shell 的 pid;

subprocess.Popen(str('kill ',proc.pid), shell=True)无法杀死 mitmproxy。

那么,我怎样才能杀死被称为 python 脚本的 mitmproxy?或其他方法通过 mitmproxy 捕获我的模拟器的流程。

0 投票
2 回答
664 浏览

python - 使用 Python 编辑 HTML 代码时出现 UnicodeDecodeError

mitmproxy用来操作网页的返回 HTML 代码。当我对该 HTML 代码使用命令时,我得到了UnicodeDecodeError.

我尝试做任何事情,并在这里阅读任何帖子,但仍然没有任何效果。

我已经尝试过的许多事情的两个例子:

我该如何处理?

0 投票
0 回答
104 浏览

ssl - 我的服务器上的 HTTPS 检查

我一直在尝试检查通过我的机器的所有流量。我有一台直接连接到 Internet 的服务器。我想用 URL 记录在互联网上发出的所有 youtube 请求。

由于 youtube 基于 SSL,所以我必须检查 HTTPS 流量。我在某处读过它,我必须在我自己的服务器上创建 MITM 攻击才能查看 HTTPS 请求。我已按照以下步骤创建我拥有的证书。

1 - 生成 2048 位 RSA 密钥:openssl genrsa -des3 -out private.pem 2048

2 - 将 RSA 公钥导出到文件:openssl rsa -in private.pem -outform PEM -pubout -out public.pem

3 - 现在检查公钥文件(证书):less public.pem

4 - 将 RSA 公钥导出到文件: openssl rsa -in private.pem -out private_unencrypted.pem -outform PEM -pubout

5 - 现在检查私人文件:less private.pem

6 - 将证书复制到证书目录中

7 - 使用以下命令配置证书:sudo dpkg-reconfigure ca-certificates

最后执行了所有可能的方法:

上面的命令打开一个控制台应用程序,我访问了所有的 HTTPS 站点,但对这个窗口没有影响。

该命令只是在控制台中打印了一些握手内容,然后终止。但是,与 URL 无关。

此命令继续侦听,但 sslstrip.log 文件中没有任何结果。

我在 Ubuntu 15 上使用了所有这些东西,并希望以透明模式转储 ssl 请求,即不在客户端机器上设置代理。

0 投票
0 回答
139 浏览

android - 尝试使用 HoneyProxy 监控来自 Android 应用程序的 HTTPS 流量,找出证书。

我在一台 Windows PC 上,想监控来自我的 Android 手机的特定应用程序的 HTTPS 流量。我安装了 Honeyproxy 并使用代理设置应用在我的 android 设备上设置了代理地址。我可以看到我手机的 GET 流量。接下来,为了获取 HTTPS 流量,我安装了用户信任的证书,如下所述:http ://wiki.cacert.org/FAQ/ImportRootCert#Android_Phones_.26_Tablets

我可以确认我可以在“设置”>“安全”的“用户信任的证书”列表中看到这两个证书(root 和 class3)。接下来我运行了蜜糖代理,希望这次能看到 HTTPS 流量,但没有。

此外,没有打开来自设备的 HTTPS 链接(我得到了一个不受信任的证书)。我缺少什么步骤?让我知道你的想法!