scanport端口扫描修复漏洞
上周三凌晨两点,端口我盯着屏幕上跳动的扫描端口列表,发现测试服务器上竟然开着6379。修复Redis默认端口,漏洞没设密码。端口只要有人跑一遍scanport扫到这个口,扫描整台机器的修复数据就是别人的了。这不是漏洞危言耸听,是端口每天都在发生的真实场景。
scanport这类端口扫描工具,扫描说白了就是修复挨个敲门,看哪个门没锁。漏洞它的端口原理不复杂:向目标IP的特定端口发起TCP连接或发送SYN包,根据返回的扫描响应判断端口状态。开放、修复关闭、还是被防火墙过滤,一清二楚。攻击者用它找入口,运维用它查暴露面。工具本身没有善恶,关键看谁在用、怎么用。
我见过太多人把扫描结果往那一放就完事了。扫出一堆开放端口,然后呢?没有然后。这才是最要命的地方。扫描只是诊断,修复才是治疗。拿我那次凌晨的经历来说,6379端口暴露只是表象,深层问题是Redis配置文件里bind 127.0.0.1被注释掉了,而且protected-mode设成了no。三个漏洞叠在一起,等于把大门敞开还贴了张“欢迎光临”。
修复这事得从扫描结果倒推。比如扫到22端口开放,别急着关。先确认是不是真需要SSH对外。如果只是内网管理,改/etc/ssh/sshd_config里的ListenAddress,绑到内网IP上。再配合防火墙规则,只放行特定源IP。这两步做完,scanport再扫,22端口要么显示filtered,要么直接closed。效果立竿见影。
有个细节很多人忽略:UDP端口。scanport默认扫TCP,但DNS、SNMP这些服务跑在UDP上。我习惯加个-sU参数补扫一遍。去年帮朋友查一台被挖矿的机器,TCP端口干干净净,UDP的161却开着,SNMP社区字符串还是默认的public。攻击者通过它读到了网卡列表和路由表,顺着内网横向移动。TCP扫不到的东西,UDP能给你惊喜。
修复完得验证。别信自己的记忆,信扫描结果。重新跑一遍scanport,对比前后差异。我通常会把扫描输出存成XML,用diff命令比。之前有个案例,运维明明改了防火墙规则,scanport一扫3306还是open。查了半天发现iptables规则加在INPUT链末尾,前面有条ACCEPT all兜住了。这种坑,不重新扫根本发现不了。
说到防火墙,补充一点个人经验。iptables和firewalld别混用,容易出玄学问题。要么统一用firewalld的rich rule,要么直接上nftables。我现在的习惯是:服务本身先绑127.0.0.1,再用防火墙做第二层过滤。两层保险,scanport扫出来全是filtered,看着就踏实。
还有种情况更隐蔽:端口开放但服务有漏洞。比如扫到8080开着,Tomcat版本是9.0.30,这个版本有AJP文件包含漏洞。光关端口没用,业务还得跑。这时候得升级Tomcat,或者至少在server.xml里把AJP连接器注释掉。scanport只能告诉你门开着,门后面是保险箱还是炸药包,它管不了。得靠漏洞扫描器或者人工核查。
最后说个反直觉的:不是所有开放端口都要关。我见过有人为了通过安全扫描,把监控用的9100端口也关了。结果Zabbix收不到数据,服务器挂了都不知道。修复漏洞要平衡安全和可用性。该关的关,该限源的限源,该加认证的加认证。一刀切最省事,也最容易出事。
凌晨那次修复花了四十分钟。改配置、重启服务、加防火墙规则、重新扫描验证。scanport最后输出的结果里,6379变成了filtered。我关掉终端去睡觉,心里清楚:明天可能又有新的端口冒出来。端口扫描和修复这件事,没有一劳永逸,只有持续盯着。
- ·漏洞扫描报警信息
- ·信息发布系统十大品牌
- ·黑客能帮忙追回诈骗的钱嘛
- ·邯郸反渗透
- ·百度关键词竞价推广
- ·web前端培训网站
- ·宝塔域名解析
- ·自学电脑
- ·渗透有意思
- ·工业品商城
