Deadpool代理工具:轻松构建自己的Socks5代理池
免责声明
本工具仅面向合法授权的企业安全建设行为。
在合法使用本工具时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。
如您在使用本工具的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任。
在安装并使用本工具前,请您务必审慎阅读、充分理解各条款内容,限制、免责条款或者其他涉及您重大权益的条款可能会以加粗、加下划线等形式提示您重点注意。 除非您已充分阅读、完全理解并接受本协议所有条款,否则,请您不要安装并使用本工具。您的使用行为或者您以其他任何明示或者默示方式表示接受本协议的,即视为您已阅读并同意本协议的约束。
0x01 介绍
Deadpool是一款功能强大的Socks5代理池工具,它可以帮助您轻松构建和管理自己的代理池。在[明确获得合法授权]的前提下,您是否在攻防演练中遇到过IP被封禁的困扰?是否渴望拥有大量高质量的代理IP,但又不想为此付费?Deadpool代理工具能在一定程度上解决您的烦恼。
该工具的主要功能是从各大网络空间测绘平台(如Hunter, Quake, Fofa)自动获取高质量的Socks5代理,也支持从本地文件导入代理。Deadpool会对所有收集到的代理进行有效性验证和筛选,并以轮询的方式为您提供稳定可靠的代理服务。
0x02 主要功能
- 多平台代理获取: 支持从Hunter, Quake, Fofa等主流网络空间测绘平台获取Socks5代理。
- 本地代理导入: 支持从本地文件(
lastData.txt)导入代理,方便您管理自己的代理资源。 - 代理自动验证: 自动对收集到的代理进行存活性和有效性检测,确保代理池中的代理都是可用的。
- 智能轮询机制: 以轮询方式使用有效代理,均衡负载,提高代理的稳定性和可用性。
- 灵活的配置选项: 提供详细的
config.toml配置文件,允许用户根据需求进行深度定制。 - 周期性任务: 支持设置周期性任务,定时检测代理存活性、定时从网络空间获取代理。
- GitHub Action自动化: 支持通过GitHub Action实现代理池的自动收集和更新。
- SOCKS5认证: 支持设置用户名和密码,保护您的代理服务不被滥用。
0x03 快速开始
- 修改配置: 打开
config.toml文件,填入您在Hunter, Quake, Fofa等平台的API Key和Email等信息。 - 运行程序: 在命令行中直接运行
Deadpool.exe(Windows)或编译后的Go程序。 - 使用代理: 将您的应用程序(如Burp Suite, Proxifier, SwitchyOmega等)的Socks5代理设置为
127.0.0.1:10086(或其他您在配置文件中设置的IP和端口)。
0x04 配置文件config.toml详解
config.toml是Deadpool的核心配置文件,它分为几个主要部分:
[listener]
此部分用于配置Deadpool本地监听的地址和端口。
IP: 本地监听的IP地址,默认为127.0.0.1。PORT: 本地监听的端口,默认为10086。userName: SOCKS5认证的用户名,为空则不认证。password: SOCKS5认证的密码,为空则不认证。
[task]
此部分用于配置周期性任务。
periodicChecking: 定时检测内存中已有代理存活性的cron表达式。例如0 */5 * * *表示每5小时检查一次。periodicGetSocks: 定时从网络空间测绘平台获取代理的cron表达式。例如0 6 * * 6表示每周六早上6点获取一次。
[checkSocks]
此部分用于配置代理验证的相关参数。
checkURL: 用于验证代理有效性的URL,默认为https://www.baidu.com。checkRspKeywords:checkURL返回内容中必须包含的关键字,用于判断代理是否真实有效。maxConcurrentReq: 验证代理时的最大并发请求数。timeout: 验证代理的超时时间(秒)。
[checkSocks.checkGeolocate]
此部分用于根据IP地理位置信息筛选代理。
switch:open为启用,其他为禁用。checkURL: 获取IP地理位置信息的API地址。excludeKeywords: 响应内容中包含任一关键字则排除该代理。includeKeywords: 响应内容中必须包含所有关键字才保留该代理。
[FOFA], [QUAKE], [HUNTER]
这三个部分分别用于配置Fofa, Quake, Hunter平台的相关信息。
switch:open为启用,close为禁用。apiUrl: 平台的API地址。email,key: 您在相应平台的认证信息。queryString: 查询语法,用于筛选代理。resultSize: 希望获取的代理数量。
0x05 使用示例
Deadpool启动后,会首先从lastData.txt文件中读取代理,然后根据config.toml中的配置从各大平台获取代理。所有代理会经过有效性验证,最终形成一个可用的代理池。
当您在浏览器或渗透测试工具中设置好Socks5代理后,Deadpool会监听到您的网络请求,并从代理池中选择一个代理进行流量转发。如果某个代理失效,Deadpool会自动将其从代理池中移除,并切换到下一个可用代理。
Burp Suite配置
在User options -> Connections -> SOCKS Proxy中,填入127.0.0.1和10086。
Proxifier配置
在Profile -> Proxy Servers...中,添加一个新的Socks5代理服务器,地址为127.0.0.1,端口为10086。
SwitchyOmega配置
新建一个情景模式,代理协议选择SOCKS5,代理服务器填127.0.0.1,代理端口填10086。
0x06 使用GitHub Action实现自动化
您可以利用GitHub Action来自动化收集和更新代理池,非常适合个人使用场景。
- 导入仓库: 将Deadpool仓库导入为您自己的私有仓库。
- 设置Workflow: 在
.github/workflows/目录下创建一个schedule.yml文件,配置定时任务。 - 配置启动脚本: 创建一个
entrypoint.sh脚本来运行Deadpool并处理超时。 - 设置权限: 为Action配置写入权限,以便它可以更新
lastData.txt文件。 - 修改配置文件: 将您的API Key等信息填入
config.toml中。请务必将您的仓库设置为私有,以防API Key泄露!
详细的配置步骤可以参考README.md文件。
0x07 结语
Deadpool是一个强大而灵活的代理池工具,通过合理的配置和使用,可以为您在网络安全工作中提供极大的便利。希望这个工具能对您有所帮助!如果您觉得项目不错,不妨去GitHub给个Star支持一下。