针对opc协议的安全防护方法和系统的制作方法_5

文档序号:9923854阅读:来源:国知局
上的实施方式的描述,本领域的技术人员可W清楚地了解到各实施方式可 借助软件加必需的通用硬件平台的方式来实现,当然也可W通过硬件。基于运样的理解,上 述技术方案本质上或者说对现有技术做出贡献的部分可WW软件产品的形式体现出来,该 计算机软件产品可W存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指 令用W使得一台计算机设备(可W是个人计算机,服务器,或者网络设备等)执行各个实施 例或者实施例的某些部分所述的方法。
[0177] 本领域内的技术人员应明白,本发明的实施方式可提供为方法、系统、或计算机程 序产品。因此,本发明可采用完全硬件实施方式、完全软件实施方式、或结合软件和硬件方 面的实施方式的形式。
[0178] 本发明是参照根据本发明实施方式的方法、设备(系统)、和计算机程序产品的流 程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一 流程和/或方框、W及流程图和/或方框图中的流程和/或方框的结合。可提供运些计算机程 序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器W 产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于 实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装 置。
[0179] 运些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备W特 定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指 令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或 多个方框中指定的功能。运些计算机程序指令也可装载到计算机或其他可编程数据处理设 备上,使得在计算机或其他可编程设备上执行一系列操作步骤W产生计算机实现的处理, 从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流 程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0180]最后应说明的是:W上实施例仅用W说明本发明的技术方案,而非对其限制;尽管 参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可 W对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换; 而运些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和 范围。
【主权项】
1. 一种针对OPC协议的服务器安全防护方法,包括: 对来自0PC客户端网口的TCP/IP报文进行TCP/IP层协议解析,确定所述TCP/IP报文的 协议类型以及所述客户端IP地址和服务器端口号; 若所述协议类型是TCP协议,判断所述客户端IP地址和所述服务器端口号是否在白名 单中,至少根据判断结果,确定允许所述TCP/IP报文通过所述服务器端口号传输至0PC服务 器或丢弃所述TCP/IP报文,生成日志记录; 若所述协议类型不是TCP协议,丢弃所述TCP/IP报文,生成告警信息和日志记录。2. 根据权利要求1所述的针对0PC协议的安全防护方法,其特征在于,至少根据判断结 果,确定允许所述TCP/IP报文通过所述服务器端口号传输至0PC服务器或丢弃所述TCP/IP 报文,生成日志记录包括: 根据判断结果和所述TCP/IP报文的数据帧完整性检查结果确定允许所述TCP/IP报文 通过所述服务端器口号传输至0PC服务器或丢弃所述TCP/IP报文,生成日志记录。3. 根据权利要求2所述的针对0PC协议的安全防护方法,其特征在于,所述数据帧完整 性检查结果由以下确定: 提取所述TCP/IP报文中的TCP协议应用层数据包; 按照DCERPC协议定义的帧结构解析所述数据包,以确定所述数据包中符合DCERPC协议 定义的格式的特征数据帧,所述特征数据帧包括Bind数据帧和Request数据帧; 根据DCOM协议和0PC协议分别对特征数据帧进行组包,以判定所述特征数据帧的帧完 整性。4. 根据权利要求3所述的针对0PC协议的安全防护方法,其特征在于,在确定允许所述 TCP/IP报文通过所述服务器端口号传输至0PC服务器或丢弃所述TCP/IP报文,生成日志记 录之前还包括: 提取所述Bind数据帧的Abstract Syntax中的UUID,并根据服务接口白名单检查是否 为预定接口; 提取所述Bind数据帧的Transfer Syntax中的UUID,并根据服务接口白名单检查是否 为预定接口; 当Abstract Syntax中的UUID和Transfer Syntax中的UUID分别为预定接口时,贝丨彳所述 Bind数据帧为合法的数据帧,否则丢弃所述Bind数据帧。5. 根据权利要求4所述的针对0PC协议的安全防护方法,其特征在于,在确定允许所述 TCP/IP报文通过所述服务器端口号传输至0PC服务器或丢弃所述TCP/IP报文,生成日志记 录之前还包括: 提取所述Request数据帧的对象接口编号OPnum,并检查所述Request数据帧是否为对 象接口可识别的数据帧; 判断所述对象接口编号OPnum中是否包含ORPCThis对象,如果是,则提取所述Request 数据帧的UUID; 根据服务接口白名单判断所述Request数据帧的UUID是否合法; 当所述Request数据帧是对象接口可识别的数据帧,并且所述Request数据帧的UUID合 法时,所述Request数据帧为合法数据帧,否则丢弃所述Request数据帧。6. 根据权利要求1至5任一项所述的针对0PC协议的安全防护方法,其特征在于,还包 括: 判断所述Request数据帧的功能是否为调用ISystemActivator接口的 RemoteCreateInstance,如果是则记录分配的服务器端口号,将相应的客户端IP地址和分 配的服务器端口号加入所述客户端地址端口白名单中。7. 根据权利要求6所述的针对0PC协议的安全防护方法,其特征在于,还包括容许访问 对象白名单过滤: 判断通过服务接口白名单过滤的数据帧是控制功能帧还是非控制功能帧; 针对非控制功能帧,提取所述通过服务接口白名单过滤的数据帧包含的要访问的信息 对象地址和相应的客户端IP地址; 根据提取的信息对象地址和相应的客户端IP地址与容许访问对象白名单比对,以确定 所述非控制功能帧是否合法; 针对控制功能帧,提取所述通过服务接口白名单过滤的数据帧包含的要控制的信息对 象控制值和相应的客户端IP地址; 根据提取的信息对象控制值和相应的客户端IP地址与控制对象范围白名单比对,以确 定所述控制功能帧是否合法。8. 根据权利要求7所述的针对0PC协议的安全防护方法,其特征在于,在生成日志记录 后还包括: 判断所述已经建立TCP连接,如果已经建立TCP连接,则阻断所述已经建立的TCP连接。9. 一种针对0PC协议的安全防护系统,包括: TCP/IP报文解析模块,用于对来自0PC客户端的TCP/IP报文进行TCP/IP层协议解析,确 定所述TCP/IP报文的协议类型以及所述客户端IP地址和服务器端口号; TCP/IP报文合法性判定模块,用于当所述协议类型是TCP协议,判断所述客户端IP地址 和所述服务器端口号是否在白名单中,至少根据判断结果,确定允许所述TCP/IP报文通过 所述服务器端口号传输至0PC服务器或丢弃所述TCP/IP报文,生成日志记录; 告警信息日志生成模块,用于当所述协议类型不是TCP协议,丢弃所述TCP/IP报文,生 成告警信息和日志记录。10. 根据权利要求9所述的针对0PC协议的安全防护系统,其特征在于,还包括帧完整性 检查模块,所述帧完整性检查模块包括: 数据包提取单元,用于提取所述TCP/IP报文中的TCP协议应用层数据包; 特征数据帧确定单元,用于按照DCERPC协议定义的帧结构解析所述数据包,以确定所 述数据包中符合DCERPC协议定义的格式的特征数据帧,所述特征数据帧包括Bind数据帧和 Request数据帧; 帧完整性确定单元,用于根据DCOM协议和0PC协议分别对特征数据帧进行组包,以判定 所述特征数据帧的帧完整性。
【专利摘要】本发明提供一种针对OPC协议的安全防护方法,包括:对来自OPC客户端网口的TCP/IP报文进行TCP/IP层协议解析,确定所述TCP/IP报文的协议类型以及所述客户端IP地址和服务器端口号;若所述协议类型是TCP协议,判断所述客户端IP地址和所述服务器端口号是否在白名单中,至少根据判断结果,确定允许所述TCP/IP报文通过所述服务器端口号传输至OPC服务器或丢弃所述TCP/IP报文,生成日志记录;若所述协议类型不是TCP协议,丢弃所述TCP/IP报文,生成告警信息和日志记录。本发明中通过引入TCP/IP层协议过滤和客户端IP地址过滤以及动态端口检查功能,有效地防止了非授权客户端的非法访问。
【IPC分类】H04L29/06
【公开号】CN105704145
【申请号】CN201610166409
【发明人】陈惠欣
【申请人】英赛克科技(北京)有限公司
【公开日】2016年6月22日
【申请日】2016年3月22日
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1