发新帖

用端口碰撞技术实现服务器远程管理

[复制链接]
871 4 打印 上一主题 下一主题

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
  从安全管理的角度来说,开启的服务端口越多,就越不安全,有道是“明枪易躲,暗箭难防”,因此“系统安全加固服务”中,最常用的方式,就是先关闭无用端口,再对提供服务的端口做访问控制。

  端口碰撞技术(Port knocking)

  从安全管理的角度来说,开启的服务端口越多,就越不安全,有道是“明枪易躲,暗箭难防”,因此“系统安全加固服务”中,最常用的方式,就是先关闭无用端口,再对提供服务的端口做访问控制。

  而作为远程管理与维护的人员通常需要开启一些服务端口,如FTP和SSH,这些服务使用大家熟悉的一些端口,长时间开启这些端口,往往是“严重”的安全隐患。所以能在“需要”的时候才开启服务,并只对特定的人提供服务,服务完毕端口有恢复关闭状态,攻击者就难以利用这个“安全隐患”了,端口碰撞技术提供了比较理想的解决方案。

  端口碰撞技术是一种允许服务设备在用户按照约定的序列碰撞后,打开一个约定的服务端口提供服务的技术。所谓碰撞是由一个尝试访问系统中关闭端口的序列组成,也就是特定端口的连接请求。

  说起来,端口碰撞技术的实现很简单:

  1、 开启固定的端口服务

  如在服务器上设置为:服务器接收到同一个用户的对端口2048、2049、2055、2058连接序列尝试后,则服务器打开TCP服务端口号28,该用户可以通过该端口进行远程工作,连接结束后自动关闭该服务端口。若是防火墙等网关类设备,则在截获该序列的尝试后,在访问列表中增加一条规则来放行该用户的TCP28数据包,使该连接可以通过防火墙。收到连接关闭命令后,再删除该规则,恢复对该端口的拒绝服务。

  2、 动态开启端口服务

  若需要使用端口碰撞技术打开的服务端口有多个,或者动态变化服务的端口,在设计服务器上的碰撞序列时,可以采用在序列中“指定”端口,在序列某个位置上“告之”希望打开的服务端口。如设定规则为,最后的一个端口减2000为服务端口好,则碰撞序列为2048、2049、2055、2058、2443时,就是希望开启443端口的服务。

  端口碰撞技术看起来不复杂,对于使用者了说,在正常的连接建立前,又增加了一层“密码”验证,可以做个小工具软件来自动化你每次的碰撞过程,把碰撞序列作为密码一样顺序发出,就可以直接工作了。并且不仅在防火墙上可以实现(此时服务器上可以默认打开该服务端口),而且在服务器上也可以直接实现。在实现的设备上增加了一个匹配的缓冲池,以状态机的方式跟踪进入匹配的用户(源IP),从匹配第一个端口包,开始启动状态机,该用户后来的包逐个匹配序列,完成一个进入下一个状态,直到整个序列匹配,若有一个包不匹配,则回到初试状态。

精彩评论4

沙发
内存皇  新手上路  发表于 2012-2-6 04:36:31 | 只看该作者
路过此地 投上一票              
3
青草小果  新手上路  发表于 2012-2-6 08:45:25 | 只看该作者
路过的,顺便踩一脚@~~~~~~~~~~~~~~~
4
我的名字帅不帅  新手上路  发表于 2012-2-6 15:00:55 | 只看该作者
路过此地,灌灌水              
5
5220243  乞丐  发表于 2013-10-20 12:13:25 | 只看该作者
路过,支持一下啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表