tcp服务端端口被攻击
·
处理tcp客户端数据出现的问题
之前我们处理客户端上传的数据一直都很顺利,解析环节从未出过问题。但最近接连碰到数据解析报错的情况,多批数据都无法正常识别。结合现状推测,程序可能受到了外网攻击,造成数据异常。在尝试重启程序后,数据解析恢复正常
1.


2.发现挑衅语句


3




服务器端口正在被外网扫描和探测
日志里的 OPTIONS / HTTP/1.0、SMBr、Cookie: mstshash=nmap 等,都是外网攻击者直接发给服务端端口的探测请求。
服务端:同时收到了合法业务数据 + 外网扫描 / 攻击数据
这些数据完全不是正常的格式,而是各种网络探测行为:
OPTIONS / HTTP/1.0/OPTIONS / RTSP/1.0这是标准的 HTTP/RTSP 探测请求,黑客 / 扫描器在尝试识别你端口上跑的服务类型。Cookie: mstshash=nmap这是Nmap 扫描工具的标志性特征,攻击者在用 Nmap 探测你的服务指纹。SMBr/MICROSOFT NETWORKS / LANMAN / Samba这是在探测 SMB(文件共享)协议,尝试识别 Windows/Samba 服务,是暴力破解、永恒之蓝等攻击的前置行为。GET /nice%20ports%2C/Tri%6Eity.txt%2ebak HTTP/1.0典型的目录爆破 / 敏感文件探测请求,扫描常见的备份文件路径。EHL0/HELP/ 乱码二进制数据 这些是通用协议探测、甚至恶意 payload 尝试,试图触发服务的异常响应,来识别漏洞。
二、为什么会出现这种情况?
- 你的服务端口(大概率是客户端连接的那个端口)被暴露到了公网,被自动扫描器扫到了。
- 扫描器会发送各种通用协议的请求(HTTP、RTSP、SMB、SSH、Telnet 等),来判断你端口上跑的是什么服务,尝试找可利用的漏洞。
- 这些请求全部不是你的设备发来的,而是外网的攻击者 / 扫描器发的,所以格式和标准协议完全不匹配,解析自然会报错。
三、为什么重启程序后就正常了?
重启程序不会改变外部的扫描行为,只是:
- 重启后,旧的连接被清空,扫描器的连接断开了,暂时没有新的扫描请求打进来。
- 但只要端口还是公网可访问,扫描行为大概率还会再出现。
四、你现在必须做的排查 / 防护动作
-
紧急:确认端口是否公网暴露
- 检查你的服务器 / 设备,是否把业务端口(比如服务端口)直接映射到了公网。
- 建议改成只允许内网访问,或者通过 VPN / 白名单访问。
-
防火墙 / 安全组限制
- 只允许你的客户端 IP 段访问该端口,拒绝所有其他来源的请求。
- 开启防火墙日志,监控异常访问。
-
检查服务本身是否有漏洞
- 确认你的服务没有溢出、命令注入等可被利用的漏洞。
- 对所有非业务协议的请求(HTTP/SMB 等)直接拒绝,不做解析。
-
日志层面过滤
- 在解码器中增加协议校验,非开头的请求直接丢弃,不记录或仅做错误日志,避免日志刷屏。
- 如果是客户端被入侵,攻击者要破坏你的业务,只会篡改协议里的字段,不会用 HTTP/SMB 这些完全无关的协议去探测。
五、总结
- 这些异常数据不是客户端被入侵发来的,而是公网扫描器 / 攻击者在探测你的服务器端口。
- 问题根源是端口暴露 + 无访问控制,而不是客户端本身被篡改。
- 重启只是临时缓解,真正要解决问题,必须做网络隔离 + 访问控制。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐



所有评论(0)