一种用于堡垒机的SSH高危命令识别与阻断系统的制作方法

文档序号:35200753发布日期:2023-08-22 05:30阅读:54来源:国知局
一种用于堡垒机的SSH高危命令识别与阻断系统的制作方法

本发明属于信息安全,尤其涉及一种用于堡垒机的ssh高危命令识别与阻断系统。


背景技术:

1、大数据时代下,数据存储在各个企业的服务器中,在对服务器进行运维操作时,如果出现不当操作将会导致数据丢失,给企业带来巨大的损失。在相关技术领域中的一种通用解决方案是,使用堡垒机的作为客户端与服务器之间的代理工具,分析所有客户端与服务器之间的交互报文,实现对运维操作的控制与审计,达到事前预防、事中干预和事后分析的效果。目前市面上的堡垒机有两种类型,一种是企业研发的、私有的堡垒机,通过收取费用向客户提供服务,功能齐全完备但不开源;另一种是开源堡垒机,但是开源堡垒机仅仅提供了基础的运维审计功能,缺少控制功能,例如如何对运维人员将要执行的命令进行高危命令识别并阻断?

2、现有技术中,公开号cn104135389b的中国专利提出一种基于代理技术的ssh协议运维审计系统的审计方法,使用一种基于在代理服务器中加入监控模块的解决方案,其核心思想是通过监控(包括实时监控和监控回放)对运维人员进行的运维操作进行事后分析、通过实时监控对运维人员进行的运维操作进行事中干预,及时发现风险并阻断。同时,方案中提到代理服务器会根据违规规则库对命令信息进行比对,如发现违规的操作行为,则终止数据包的转发,并中断整个运维会话。在上述技术方案中,针对高危命令阻断有两种方法,其一是审计人员通过实时监控发现风险并阻断,其二是依靠代理服务器根据违规规则库对命令信息进行比对来发现违规操作,这两种方法存在效果不稳定、技术描述模糊等缺点。第一,实时监控的效果受网络延迟影响,监控数据从代理服务器发送至客户端存在时延,审计人员看到的画面未必是“实时的”。当网络延迟较高时,当审计人员看到运维人员正在输入危险命令而向代理服务器发送阻断命令时,可能运维人员已经执行了该命令。此外,如果违规规则库复杂,通过实时监控发现风险操作,对审计人员的知识水平要求很高。第二,该技术方案并没有详细描述代理服务器如何根据违规规则库将命令识别为违规操作。


技术实现思路

1、有鉴于此,本发明的目的是在代理服务器中根据高危命令规则库,利用正则表达式对高危命令进行模糊匹配识别与阻断。在使用堡垒机的作为客户端与服务器之间的代理工具,以实现对运维操作的控制与审计的模型中,客户端通过ssh连接服务器并对其进行运维操作,运维操作包括一系列运维人员要执行的命令。

2、本发明公开的一种用于堡垒机的ssh高危命令识别与阻断系统,包括软件管理模块、代理模块、认证模块和数据库,还包括命令提取模块和命令识别模块;

3、所述命令提取模块同时从发送报文和回传报文中解析客户端输入的命令,当命令提取模块感知到客户端将要执行一条命令时,立刻将提取到的完整命令送入命令识别模块进行识别;

4、所述命令识别模块接收一条待识别的命令,从数据库中获取高危命令规则库,根据高危命令规则库里的每一条规则构造相应的正则表达式去匹配待识别的命令;如果该命令与所有规则都不匹配,则认为不是高危命令,代理模块可以将其转发至目标服务器;否则认为该命令是高危命令,指示代理模块发送审批请求至软件管理模块,代理模块根据审批结果决定是否将该命令转发至目标服务器。

5、进一步地,所述正则表达式的构造方式如下:

6、将高危命令规则按照空格分割成若干部分part1,part2,…,partn,在任意两个part之间允许存在若干空格或者tab,且至少存在一个空格或一个tab分开两个part,在part1之前和partn之后允许存在集合{空,若干空格和tab的组合,分号,|,||,&&}中的一个。

7、进一步地,对于强制删除命令rm -rf,所述正则表达式如下:

8、(^|;|、|&&|[|]{1,2}|[[:blank:]]+)rm[:blank:]+-rf($|;|、|&&|[|]{1,2}|[blank:]+)

9、其中,异或符^表示开头字符串可为空;分号符;表示一条命令结束;反引号符`表示将两个反引号符之间的字符串当做命令处理而忽略特殊字符的转义功能;逻辑与符&&表示命令连接;[|]{1,2}表示1个或2个管道符,1个管道符表示将上一条命令的输出当做下一条命令的输入,2个管道符表示逻辑或用于命令连接;[blank:]表示空格或tab键;+表示匹配前面子表达式1次或以上;()表示将括号中的字符串作为一个整体,括号内通过或运算符|连将多个部分连接起来表示只需要匹配其中之一即可;rm表示删除命令,-rf表示强制递归删除文件及子目录;$表示结尾字符串可以为空。

10、进一步地,所述命令提取模块使用ssh协议进行运维审计,每次传送一个字符,即每次传送客户端的一次输入与服务器的一次响应。

11、本发明的有益效果如下:

12、在代理服务器中根据高危命令规则库,利用正则表达式对高危命令进行模糊匹配识别与阻断,保证高危命令不会在目标服务器中执行,将高危命令识别任务全自动化,而且不受网络延迟的影响,确保目标服务器的安全。



技术特征:

1.一种用于堡垒机的ssh高危命令识别与阻断系统,包括软件管理模块、代理模块、认证模块和数据库,其特征在于,还包括命令提取模块和命令识别模块;

2.根据权利要求1所述的用于堡垒机的ssh高危命令识别与阻断系统,其特征在于,所述正则表达式的构造方式如下:

3. 根据权利要求2所述的用于堡垒机的ssh高危命令识别与阻断系统,其特征在于,对于强制删除命令rm -rf,所述正则表达式如下:

4.根据权利要求1所述的用于堡垒机的ssh高危命令识别与阻断系统,其特征在于,所述命令提取模块使用ssh协议进行运维审计,每次传送一个字符,即每次传送客户端的一次输入与服务器的一次响应。


技术总结
本发明公开了一种用于堡垒机的SSH高危命令识别与阻断系统,包括软件管理模块、代理模块、认证模块和数据库、命令提取模块和命令识别模块;命令提取模块同时从发送报文和回传报文中解析客户端输入的命令;命令识别模块接收一条待识别的命令,从数据库中获取高危命令规则库,根据高危命令规则库里的每一条规则构造相应的正则表达式去匹配待识别的命令。本发明利用正则表达式对高危命令进行模糊匹配识别与阻断,保证高危命令不会在目标服务器中执行。

技术研发人员:杨志邦,黄金朋,李肯立,蔡宇辉,余思洋,杨圣洪,唐伟,段明星,吕婷
受保护的技术使用者:湖南匡安网络技术有限公司
技术研发日:
技术公布日:2024/1/14
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1