一种多级跳转后的SSH连接源追踪方法及装置与流程

文档序号:11388927阅读:1015来源:国知局

本发明涉及一种连接源追踪方法及装置,属于信息安全技术领域,具体是涉及一种多级跳转后的ssh连接源追踪方法及装置。



背景技术:

使用ssh连接进行多级跳转的操作通常并不局限于二次跳转,多次跳转操作可能执行3,4,5或更多次的跳转操作以达成操作员的目的。目前,对于ssh连接相关监视方法并不能有效的分辨出属于同一次操作的的多级跳转ssh连接操作而是将多级跳转中的每一次ssh连接视为一次独立的操作无视了其中的相互关系,没有针对多级跳转的ssh连接链路进行关联性审计的功能。



技术实现要素:

本发明主要是解决现有技术所存在的等的上述的技术问题,提供了一种多级跳转后的ssh连接源追踪方法及装置。该方法和装置分析得出每条ssh多级跳转连接的链路信息并存入数据存储设备中,将收集到的远程操作信息与ssh连接审计分析后得出的数据进行查询比对得到执行远程操作的ssh连接信息,再通过该ssh连接信息得到其所在的ssh多级跳转链路信息,由此得到包含从第一次ssh连接到最后执行的远程操作信息的完整的ssh多级跳转链路和其执行的所有操作。

本发明的上述技术问题主要是通过下述技术方案得以解决的:

一种多级跳转后的ssh连接源追踪方法,包括:

步骤1,获取所有连接链路中ssh客户端的基础信息;

步骤2,获取连接进程在源设备上所属控制台的进程及其父进程;

步骤3,判断所述父进程是否为ssh远程连接,若是则执行步骤4,否则将所述客户端连接视为初始连接;

步骤4,将所述父进程确定为所述客户端连接的父连接,获取该父连接的源ip端口,遍历当前时间内存在的所有ssh连接的ssh客户端信息,将源ip端口与父连接的源ip端口相同的连接的标识id视为所述客户端连接的父连接id;

步骤5,重复步骤2-4直至获取包括全部ssh客户端基础信息和各连接父连接信息的ssh服务端完整信息;

步骤6,将ssh服务端完整信息中的父连接相关数据同步到sshd服务端信息中;

步骤7,在最终端设备上收集远程操作信息s,在判定为操作是远程操作后,利用远程操作基础信息在sshd服务端信息中进行匹配,匹配到的连接信息即为执行该操作的连接。

其中,所述步骤1中获取的基础信息包括以下信息中的一中或多种:源设备ip地址与端口、目标设备ip地址与端口、连接发起用户、连接开始时间、连接结束时间、连接进程在源设备上的进程号、连接进程在源设备上所属的控制台id。

其中,所述步骤4中,判断当前时间内存在的所有ssh连接的过程为遍历当前时间内存在的所有ssh客户端信息,将连接结束时间为空的连接视为现存连接。

其中,所述步骤6的同步过程中,如连接属于初始连接则生成一个绝对唯一的连接标识符,如连接存在父连接,则继承父连接的连接标识符。

其中,所述步骤7中,分析最终端设备的接受端信息与操作信息s,当操作源设备ip为0时,将操作判定为本地操作;当操作源设备ip不为0时,将操作判定为远程操作。

一种多级跳转后的ssh连接源追踪系统,包括:

基础信息获取模块,用于获取所有连接链路中ssh客户端的基础信息;

父连接获取模块,获各取连接进程在源设备上所属控制台的进程及其父进程;判断所述父进程是否为ssh远程连接,否则将所述客户端连接视为初始连接;若是则将所述父进程确定为所述客户端连接的父连接,获取该父连接的源ip端口,遍历当前时间内存在的所有ssh连接的ssh客户端信息,将源ip端口与父连接的源ip端口相同的连接的标识id视为所述客户端连接的父连接id;重复前述过程直至获取包括全部ssh客户端基础信息和各连接父连接信息的ssh服务端完整信息;

操作信息获取模块,将ssh服务端完整信息中的父连接相关数据同步到sshd服务端信息中;在最终端设备上收集远程操作信息s,在判定为操作是远程操作后,利用远程操作基础信息在sshd服务端信息中进行匹配,匹配到的连接信息即为执行该操作的连接。

其中,所述基础信息获取模块中获取的基础信息包括以下信息中的一中或多种:源设备ip地址与端口、目标设备ip地址与端口、连接发起用户、连接开始时间、连接结束时间、连接进程在源设备上的进程号、连接进程在源设备上所属的控制台id。

其中,所述父连接获取模块中判断当前时间内存在的所有ssh连接的过程为遍历当前时间内存在的所有ssh客户端信息,将连接结束时间为空的连接视为现存连接。

其中,所述操作信息获取模块的同步过程中,如连接属于初始连接则生成一个绝对唯一的连接标识符,如连接存在父连接,则继承父连接的连接标识符。

其中,所述操作信息获取模块中,分析最终端设备的接受端信息与操作信息s,当操作源设备ip为0时,将操作判定为本地操作;当操作源设备ip不为0时,将操作判定为远程操作。

因此,本发明具有如下优点:针对多级跳转的ssh连接链路进行关联性审计,提高了信息审计的全面性和安全性。

附图说明

附图1是多级跳转的ssh连接示例图。

具体实施方式

下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。

实施例:

本发明涉及对网络系统内ssh连接与远程操作的信息进行综合分析,以得出其中的关联关系供后续审计系统审计。本发明包含ssh连接信息审计分析,与ssh远程操作关联分析。其中所述ssh连接信息审计分析通过下述步骤收集ssh连接信息并对收到的信息进行整合,分析得出每条ssh多级跳转连接的链路信息并存入数据存储设备中。所述远程操作的信息分析将收集到的远程操作信息与ssh连接审计分析后得出的数据进行查询比对后得到执行远程操作的ssh连接信息,如该操作通过ssh连接的多次跳转执行,再通过该ssh连接信息得到其所在的ssh多级跳转链路信息,由此得到包含从第一次ssh连接到最后执行的远程操作信息的完整的ssh多级跳转链路和其执行的所有操作。

如图1所示,图示链路为从设备1ssh连接至设备2,再以设备2为客户端连至设备3,经过设备3ssh连接到设备4,以此类推直到设备n;最后在设备n上进行命令行操作s。

本发明所述ssh连接信息分为两个部分:ssh客户端信息与sshd服务端信息。其中ssh客户端信息为ssh连接中连接发起设备(源设备)上的ssh连接信息,sshd服务端信息为ssh连接中连接接收设备(目标设备)上的ssh连接信息。

在图1所示连接链路中ssh客户端的基础信息为连接a连接b连接c直至连接n的发起端信息:a1,b1,c1;该信息包含:1.源设备ip地址与端口,2.目标设备ip地址与端口,3.连接发起用户,4.连接开始时间,5.连接结束时间(如未结束则为空),6.连接进程在源设备上的进程号,7.连接进程在源设备上所属的控制台id(ptsid)。

在ssh客户端上获取了相关基础信息之后,还需通过监控程序进一步获取连接的上一级信息,用来实现相关的链路追溯功能。1.利用ssh客户端基础信息7(连接进程在源设备上所属的控制台id)获取该控制台的进程号pid,通过ps命令获取该pid的父进程id。2.如该父进程是一个ssh远程连接则确定为所述客户端连接的父连接,通过netstat等命令获取该父连接的源ip端口;如该父进程不是ssh远程连接则将所述客户端连接视为初始连接。3.如所述客户端连接存在父连接,遍历当前时间内存在的所有ssh客户端信息(连接结束时间为空,则连接未结束,视为现存连接),应有源ip端口与步骤2中所获取的父连接的源ip端口相同的连接存在,获取该连接的唯一标识id视为所述客户端连接的父连接id。至此已经获取了ssh客户端的完整信息,包含ssh客户端基础信息和其父连接信息。

在图1所示连接链路中sshd服务端基础信息为连接a连接b连接c直至连接n的接受端信息:a2,b2,c2与n2;该信息包含:1.源设备ip地址与端口,2.目标设备ip地址与端口,3.连接使用的用户,4.连接开始时间,5.连接结束时间(如未结束则为空),6.连接进程在目标设备上的进程号,7.连接在目标设备上开启的控制台id(ptsid)8.控制台进程的进程号。

由于一条连接的ssh客户端信息与sshd服务端信息一致,所以通过将ssh客户端完整信息与sshd服务端基础信息比对后进行同步,将ssh服务端完整信息中的父连接相关数据同步到sshd服务端信息中。同时在同步过程中,如连接属于初始连接则生成一个绝对唯一的连接标识符,如连接存在父连接,则继承父连接的连接标识符。因此同一条连接链路上的连接的连接标识符也相同。至此sshd服务端信息包含ssh服务端基础信息,父连接信息和连接标识符。

在图1所示示例中,以连接a至连接b为例,本方法通过对连接a的接收端信息a2与连接b的发起端信息b1进行分析,得到连接a与连接b的链路关系,即连接b由连接a发起;再通过分析连接b发起端信息b1与连接b接收端信息b2,得到连接b的完整信息,由此得出连接a和连接b的完整信息并将连接a,b归为统一链路。以此类推至连接n。

在设备n上收集远程操作信息s,其包含:1.操作源设备ip地址,2.操作目标设备(被操作设备)ip地址,3.操作命令执行时间,4.执行操作的用户,5.用户登入时间,6.执行操作的控制台id(ptsid),7.控制台进程号,8.操作命令内容。

对连接n的接受端信息n2与操作信息s进行分析:当操作源设备ip为0时,该操作为本地操作;当操作源设备ip不为0时,该操作为通过远程连接执行的远程操作。利用远程操作基础信息s中的1.操作源设备ip地址,2.操作目标设备ip地址,3.操作命令执行时间,6.执行操作的控制台id(ptsid),7.控制台进程号,在sshd服务端信息n2中进行匹配,匹配到的连接信息即为执行该操作的连接。

至此,从操作到连接源头的链路已经清晰判明,示例中连接链路由设备1发起经过连接a,b,c至连接n,最后在设备n上执行操作s。

本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1