Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
pymultitor — PyMultitor - Python 多线程 Tor 代理 | Kitploit
工具/GitHubGitHub/realgam3/pymultitor
OSINT (开源情报)IDS/IPS规避WAF绕过Web安全渗透测试红队
GitHubrealgam3/pymultitor

pymultitor

PyMultitor - Python 多线程 Tor 代理

查看仓库
575105151年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

PyMultiTor

PyPI版本 下载量 PyPI - Python版本

Python 多线程 Tor 代理,
你是否曾想过同时出现在两个不同的地方?
当我向自己提出这个问题时,实际上我就在脑海中开始开发这个解决方案。
在执行渗透测试时,安全设备屏蔽“攻击”IP 经常会引发问题。
这让我非常烦恼,于是我编写了一个脚本来解决这个问题。
使用大量 IP 地址执行攻击,能保证更好的结果——尤其是在尝试绕过 Web 应用防火墙、暴力破解类型攻击等场景下。

[Blackhat Asia] https://www.blackhat.com/asia-17/arsenal.html#pymultitor
[Owasp-IL 演讲] https://www.owasp.org/images/3/3d/OWASPIL-2016-02-02_PyMultiTor_TomerZait.pdf
[DigitalWhisper 文章(希伯来语)] http://www.digitalwhisper.co.il/files/Zines/0x2E/DW46-3-PyMultitor.pdf

Logo

安装

前提条件

  • Python 3.10+。
  • mitmproxy (https://mitmproxy.org/)。
  • tor。
    • 在 Ubuntu / Kali 上:sudo apt install -y tor
    • 在 Centos 上:sudo yum install -y tor
    • 在 Fedora 上:sudo dnf install -y tor
    • 在 Windows 上:
      • 下载 tor 专家包:https://www.torproject.org/download/tor/
      • 将 tor 添加到你的路径环境变量中:{tor-win32-*_path}\Tor
      • 如果你不知道如何操作,请记住 tor.exe 的路径,并在 pymultitor 上使用 --tor-cmd 参数(例如:pymultitor --tor-cmd "c:\Pentest\Web\tor-win32-0.2.9.9\Tor\tor.exe")
    • 在 MacOS 上:brew install tor

通过 pip 安装

root@kitploit:~
pip3 install pymultitor

通过 Docker 安装

root@kitploit:~
docker pull realgam3/pymultitor

从源码安装

root@kitploit:~
git clone https://github.com/realgam3/pymultitor.git
cd pymultitor

# 安装 Python 依赖。
# 根据你的设置,以下命令之一或全部可能需要 sudo。
pip3 install -r requirements.txt
python3 setup.py install

# 确认一切正常
pymultitor --help

欢迎反馈安装问题!

使用

基本用法

  1. 运行 pymultitor --on-string "Your IP Address Blocked"。
  2. 在你的脚本中使用代理(http://127.0.0.1:8080)。
    当响应内容中出现字符串 Your IP Address Blocked 时,你将从一个新的 IP 地址退出。

Docker 用法

  1. 运行 docker run --rm -p 8080:8080 realgam3/pymultitor --on-string "Your IP Address Blocked"。
  2. 在你的脚本中使用代理(http://127.0.0.1:8080)。
    当响应内容中出现字符串 Your IP Address Blocked 时,你将从一个新的 IP 地址退出。

API 用法

PyMultiTor 提供了一个 REST API 用于管理代理身份。你可以使用 API 按需更改代理身份。

认证

API 需要使用 Bearer 令牌进行认证。可以通过两种方式设置令牌:

  1. 环境变量:设置 PYMULTITOR_TOKEN 环境变量:

    root@kitploit:~
    export PYMULTITOR_TOKEN="your-secret-token-here"
    

    注意:如果未设置 PYMULTITOR_TOKEN,PyMultiTor 将自动生成一个随机令牌。

  2. 命令行:启动 PyMultiTor:

    root@kitploit:~
    pymultitor
    

端点

更改身份

  • URL:/identity
  • 方法:POST

使用示例:

root@kitploit:~
curl http://pymultitor/identity -X POST \
  --header "Proxy-Authorization: Bearer {Token}" \
  --proxy http://localhost:8080

状态

  • URL:/status
  • 方法:GET

使用示例:

root@kitploit:~
curl http://pymultitor/status \
  --header "Proxy-Authorization: Bearer {Token}" \
  --proxy http://localhost:8080

注意:将 {Token} 替换为你的实际认证令牌。

命令行参数

root@kitploit:~
pymultitor --help
root@kitploit:~
usage: pymultitor.py [-h] [-v] [-lh LISTEN_HOST] [-lp LISTEN_PORT] [-s] [-a AUTH] [-i] [-d] [-p PROCESSES] [-c CMD] [-e CONFIG] [-t TIMEOUT] [-r TRIES]
                     [--request-timeout REQUEST_TIMEOUT] [--on-count ON_COUNT] [--on-string ON_STRING] [--on-regex ON_REGEX] [--on-rst] [--on-status-code [ON_STATUS_CODE ...]]
                     [--on-timeout]

options:
  -h, --help            显示此帮助信息并退出
  -v, --version         显示程序版本号并退出
  -lh, --host LISTEN_HOST
                        代理监听主机(默认:127.0.0.1)
  -lp, --port LISTEN_PORT
                        代理监听端口(默认:8080)
  -s, --socks           使用 socks 代理(而非 http 代理)(默认:False)
  -a, --auth AUTH       设置代理认证(格式:'username:pass')(默认:)
  -i, --insecure        不安全的 SSL(默认:False)
  -d, --debug           调试日志(默认:False)
  -p, --tor-processes PROCESSES
                        循环中的 tor 进程数量(默认:2)
  -c, --tor-cmd CMD     tor 命令(可执行文件路径 + 参数)(默认:tor)
  -e, --tor-config CONFIG
                        tor 扩展 JSON 配置(默认:{})
  -t, --tor-timeout TIMEOUT
                        启动 tor 实例的超时时间(秒);0 表示禁用超时(默认:90)
  -r, --tor-tries TRIES
                        启动 tor 实例失败前的尝试次数(默认:5)
  --request-timeout REQUEST_TIMEOUT
                        HTTP 请求的超时时间(秒);0 表示禁用超时(默认:0)
  --on-count ON_COUNT   每 x 个请求更改 IP(资源也被计数)(默认:0)
  --on-string ON_STRING
                        当响应内容中发现指定字符串时更改 IP(默认:)
  --on-regex ON_REGEX   当响应内容中发现匹配的正则表达式时更改 IP(默认:)
  --on-rst              当连接因 TCP RST 关闭时更改 IP(默认:False)
  --on-status-code [ON_STATUS_CODE ...]
                        当返回指定的状态码之一时更改 IP(默认:[])
  --on-timeout          当请求超时时更改 IP(默认:False)
下载工具