开放互联网未经认证的SOCKS代理分析

admin 2026-01-30 17:54:39 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文基于Censys数据分析了互联网上未经认证的SOCKS代理现状。尽管发现约348万台主机运行SOCKS服务,但实测能成功代理流量的仅968个。研究揭示了利用聚合基础设施进行跨国流量转发的现象,并结合GreyNoise数据指出这些代理极易被自动化工具发现并用于恶意扫描,实际风险暴露范围远低于理论值。 综合评分: 85 文章分类: 威胁情报,网络安全


cover_image

开放互联网未经认证的 SOCKS 代理分析

原创

censys censys

暗镜

2026年1月30日 08:00 北京

SOCKS代理是一种基于SOCKS协议的计算机代理服务器,属于通用的底层网络传输网关。该协议由David Koblas于1990年开发,现为互联网RFC标准,标准端口为1080。其不解析具体应用层协议,直接传输TCP/UDP数据包,适用于企业或校园网络环境,常见于电子邮件、即时通讯及网络游戏等跨防火墙访问场景。

SOCKS代理分为SOCKS4和SOCKS5两个版本:前者仅支持TCP协议,后者新增UDP协议支持及用户名密码、GSSAPI等多种身份验证机制。用户需配置代理服务器地址、端口及认证信息实现连接,相较于HTTP代理具有更高的传输效率和协议兼容性。典型应用包括隐藏真实IP地址、突破网络地理限制以及优化长距离网络连接,可通过操作系统设置或应用程序代理配置实现。

SOCKS 协议已经存在很长时间了,并且被以多种方式用作代理。它最臭名昭著的功能之一是能够将任意客户端流量代理到任意服务器,从而有效地掩盖连接的真实来源。这就是为什么 SOCKS 在 Tor 出口基础设施等匿名系统中非常有用,以及为什么暴露的 SOCKS 服务容易被滥用为开放代理的原因。

互联网上有很多 SOCKS 服务器——非常非常多。在 Censys 数据库中,SOCKS 协议的观测数量排名第 15 位,截至撰写本文时,有 3,486,509 个独立主机宣传一个或多个 SOCKS 服务。

但我们先别慌 运行 SOCKS 服务的主机并不意味着任何人都能轻易滥用它。大多数情况下,这些服务都受到身份验证或其他方式的保护,使其无法被任意客户端访问。

在协议层面,SOCKS 很早就区分了身份验证方式。在初始握手期间,客户端会声明其支持的身份验证方法,服务器会选择其中一种。如果服务器回复表示无需身份验证,则连接可以立即建立。如果服务器选择其他方法,例如用户名和密码,则客户端必须先进行身份验证,代理才能进行。这种握手过程使我们能够快速确定 SOCKS 服务是否需要身份验证,而无需代理任何流量。

事实上, 这三百万台主机中只有 73,556 台提供了无需身份验证的 SOCKS 服务。然而,即使是这个数字也高估了实际的风险敞口。未经身份验证的 SOCKS 服务并不一定是一个功能完善的开放代理;许多此类服务都受到出站控制的限制,从而限制了流量的实际流向。

为了区分理论上的风险暴露和实际滥用的可能性,我们进行了二次验证扫描。对于73,556台未经认证的SOCKS服务器,我们尝试向ipify.org(一项返回请求者公网IP地址的服务)代理一个简单的HTTP请求。这使我们能够测试随机客户端是否能够使用SOCKS服务器访问公网并接收响应,同时也能确认代理在发出请求时使用的IP地址。

在介绍结果之前,有必要先定义一些术语。当我们提到 SOCKS 主机时,指的是运行 SOCKS 服务的主机和端口。当我们提到 传输 IP时,指的是当流量通过该 SOCKS 主机代理时,ipify API观察到的 IP 地址 。

在测试的73,556 个未经身份验证的 SOCKS 服务 中 ,只有968 个成功代理了流量。这些可用的代理映射到 802 个不同的 SOCKS 主机和 523 个不同的传输 IP 地址

在正常运行的服务中,代理行为各不相同。我们通过代理向 ipify.org 发送 HTTP 请求,并将返回地址与 SOCKS 监听器地址进行比较,发现 968 个可用代理中有 416 个(43%) 直接从 SOCKS 主机发出流量,其出口 IP 与接受连接的主机匹配。其余 552 个代理(56%)则通过不同的传输 IP 路由流量;虽然这些服务接受未经身份验证的连接,但出站流量是通过单独的上游服务器转发的,而不是直接从 SOCKS 服务器发出。

代理管理器

我们遇到的一个比较有趣的转接主机是 156[.]254[.]39[.]226 ,它位于香港,运行在 AS139880(OWGELS-AS-AP,OWGELS INTERNATIONAL)中。这个 IP 地址竟然是232 个不同的未经认证的 SOCKS 主机的转接地址 ,这意味着来自数百个不同 SOCKS 服务的流量最终都通过这个主机流向了公共互联网。

如此多原本互不相关的 SOCKS 服务器共享同一主机作为公共传输点,这表明存在某种聚合层,而非独立部署的代理服务器。出站连接并非由每个 SOCKS 主机直接路由流量到其目的地,而是通过这个共享的基础设施进行汇聚,分布在以下地址范围内:

156[.]254.39.0/24
156[.]254.42.0/24
156[.]254.44.0/24
156[.]254.47.0/24
156[.]254.50.0/24
156[.]254.54.0/24
156[.]254.58.0/24
156[.]254.60.0/24

主机似乎在 9999 端口上提供了一个管理后台的 HTTP 控制面板界面。虽然这个界面看起来大量使用了 Vibe 代码,并且是用中文编写的,但它似乎功能齐全,并且显示着实时数据。启用语言翻译可以更好地理解各个 UI 元素的含义:

在这些统计摘要下方,是一个表格,列出了当前使用此代理网络的实时、逐个连接的数据。其中包括源 IP 地址、出站连接数、传输的总流量、历史连接数,以及累计字节总数和首次/最后一次访问时间戳:

在“IP分配”配置选项卡中,有一个部分似乎列出了系统中配置的其他代理服务器。请注意,这些IP范围与我们观察到通过此主机代理流量的网络非常吻合:

在同一配置页面上,似乎还存在账户标识符和传输 IP 地址之间的映射关系。在下面的示例中,账户名 aa0a 监听端口 1111,并映射到三个不同的传输 IP 地址(以及其他类似的账户名,还有一个“admin”账户)。

这项服务的最终用途和运营者我们尚无法确定。但可以肯定的 ,这并非小规模运营。涉及的主机数量,以及使用的多个连续地址块,都表明其协调程度和持续投入远超业余爱好者的范畴。

国际代理穿越

鉴于我们经常观察到 SOCKS 代理服务器从与服务托管位置不同的 IP 地址发出流量,接下来我们研究了这种行为跨越国界的情况。或者换句话说:位于一个国家的代理服务器是否经常通过另一个国家的基础设施转发流量?如果是,涉及哪些国家和网络?

我们识别出 89 个开放的 SOCKS 主机,这些主机通过与代理服务器所在国家/地区 不同的基础设施发出流量 。值得注意的是,在这些跨国代理路径中,排名前十的来源国中有四个来自中国:

| | | | | — | — | — | | 原产国 | 过境国 | 代理主机数量 | | 中国 | 香港 | 17 | | 中国 | 新加坡 | 14 | | 中国 | 美国 | 8 | | 中国 | 日本 | 5 | | 荷兰 | 美国 | 4 | | 巴西 | 阿根廷 | 2 | | 德国 | 巴西 | 2 | | 德国 | 俄罗斯 | 2 | | 香港 | 日本 | 2 | | 爱尔兰 | 英国 | 2 |

这些跨国代理服务器的存在可能有多种原因,并非所有原因都意味着恶意。在某些情况下,运营商依赖上游提供商,其出站流量的地理位置与 SOCKS 服务本身的托管位置不同。另一些运营商可能有意将出站流量集中到少数几个中转主机上,以简化流量管理。

在其他情况下,将流量路由到其他国家的基础设施可能是一种绕过区域网络限制的巧妙方法。例如,美国的一些网络会屏蔽来自中国的流量,而中国的网络也可能限制对境外服务的访问(例如防火长城)。在这种情况下,位于中国的 SOCKS 主机通过美国的基础设施转发流量,可以作为一种绕过这些限制的有效机制。

我们可以进一步放大,检查源自美国境外但通过其他国家的基础设施发出流量的代理服务器,以及这些代理服务器所经过的网络。

对于源自中国的代理服务器,我们发现其 SOCKS 主机本身位于阿里巴巴、中国网、中国联通和 CNIX 运营的网络中。然而,它们的出站流量却通过一系列不同的美国服务提供商发出,包括 BAGE、DigitalOcean、DMIT、MONETWORKS、Oracle、OVH、YISUCLOUD 和 IT7NET。

IT7NET 也出现在新加坡 SOCKS 服务器的传输服务商名单中,而 M247 则是荷兰 WORLDSTREAM 托管代理服务器的主要传输网络。这些被观察到的传输节点大多属于云托管/机房托管和商业互联网服务提供商。

不过,有一个值得注意的例外。我们观察到,一台托管在香港的代理服务器(47[.]242[.]229[.]131)将流量路由到位于美国的ATT-INTERNET4网络(45[.]27[.]211[.]21)。ATT-INTERNET4网络主要用于住宅和小型企业连接,而非数据中心基础设施。换句话说,这构成了一个链式代理架构,其中一台托管在阿里巴巴香港地区的SOCKS服务器通过看似位于美国的住宅网络发出流量。

恶意意图(?)

虽然我们知道这些 SOCKS 代理未经身份验证,并且能够将流量转发到互联网上的任意主机,但我们并不清楚它们是否真的被用于恶意活动。为了更好地了解情况,我们对 GreyNoise进行了批量分析,分析范围涵盖了 SOCKS 代理主机本身以及它们路由流量所经过的传输 IP 地址。

在我们识别出的 802 个开放的 SOCKS 代理主机中,GreyNoise 观察到其中 110 个(约占 13.7%)存在活动。在这些活动主机中,  63 % 被归类为恶意主机,30% 为未知主机(意味着观察到流量,但无法明确判断其是良性还是恶意),其余 7% 为可疑主机。

我们在分析交通基础设施时也发现了类似的模式。在502个不同的交通IP地址中,GreyNoise掌握了其中130个的数据,约占24%。在这130个IP地址中,62%被归类为恶意IP,30%为未知IP,8%为可疑IP。

将 SOCKS 主机和传输 IP 地址合并后,我们得到 900 个不同的主机。在这些主机中,GreyNoise 检测到了其中 133 个(14%)的流量,并将 81 个标记为恶意,42 个标记为未知,10 个标记为可疑(其余 767 个主机(85%)从未被 GreyNoise 检测到)。与这些主机关联的最常见标签如下所示:

| | | | | — | — | — | | 标签 | 数数 | % | | 网络爬虫 | 95 | 71% | | 环境爬虫 | 60 | 45% | | Vite 任意文件披露尝试 CVE-2025-30208 | 43 | 32% | | 通用/过程枚举尝试 | 42 | 32% | | WordPress枚举 | 42 | 32% | | 双重URL编码 | 40 | 30% | | 弹簧靴执行器爬行器 | 38 | 29% | | TLS/SSL 爬虫 | 18 | 14% | | 打开代理扫描器 | 14 | 11% | | SSH 连接尝试 | 11 | 8% |

这里最引人注目(也并不令人意外)的是,观察到的大部分活动都属于扫描和枚举的范畴(CVE-2025-30208 除外)。一旦代理服务器暴露,它往往会吸引专门寻找此类访问权限的自动化工具,而这些主机最终往往会被分散到各种从事不法活动的人员使用的列表中。这并不一定意味着代理服务器运营商本身负有责任,但确实 表明,暴露的代理基础设施不会长时间不被发现。

结尾

这篇文章的目的之一是说明事情并非总是如表面看起来那样简单。仅仅因为某个服务宣称自己无需身份验证,并不一定意味着它真的可以用作代理。如果我们只看扫描数据,很容易误以为互联网上存在大量开放的代理服务器。只有通过实际的代理请求进行验证,才能更准确地了解情况。而实际上,实际情况远比最初看起来要少得多。

尽管如此,一些有效的代理服务器也并非无人察觉。GreyNoise 的数据显示,部分此类基础设施已被互联网上的其他人发现并使用,而许多主机从未被发现从事恶意活动。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:暗镜 censys censys《开放互联网未经认证的 SOCKS 代理分析》

评论:0   参与:  0