The system and method of detecting abnormal call sequence in message-based operating system are provided. Messages indicating the programming process of the calling operating system can be received. The message may include a programming process identifier, a sender process identifier, and a receiver process identifier. Call hash can be generated based on this message. Call hashes can be translated into smaller call identifiers. The call identifier may be included in the translated call sequence, which includes a series of call identifiers. Depending on whether the translated call sequence is included in the predefined call sequence generated previously, the translated call sequence can be determined as an exception or non-exception.
【技术实现步骤摘要】
【国外来华专利技术】使用系统调用序列的异常检测
本申请涉及调用序列异常检测,具体涉及操作系统调用中的异常检测。
技术介绍
在基于消息的操作系统中,操作系统的大多数编程流程的调用(call)或调取(invocation)涉及消息传递系统。在基于消息的操作系统中,操作系统的编程流程的调取可导致对应的消息通过消息传递系统从发送方进程传递给接收方进程。在一些示例中,消息传递系统在微内核中实现。微内核可以提供实现操作系统所需的相对少量的服务。例如,微内核的服务可以包括低级地址空间管理、进程管理和进程间通信(IPC)。消息传递系统可以是进程间通信服务的一部分。进程是正在执行的计算机程序的实例。在一些操作系统中,进程可以由同时执行指令的多个执行线程组成。附图说明参考以下附图和描述可以更好地理解实施例。图中的组件不一定按比例绘制。此外,在附图中,相同的附图标记在不同视图中表示对应的部件。图1示出了在基于消息的操作系统中检测调用序列异常的系统的示例;图2示出了示例消息;图3示出了示例简档;图4示出了用于检测调用序列异常的系统的示例逻辑的流程图;以及图5示出了包括存储器和处理器的系统的示例。具体实施方式提供了用于检测基于消息的操作系统中的调用序列异常的方法和系统。可以通过本文描述的方法和系统来检测软件攻击或其它异常。甚至可以检测到对以前未知的软件漏洞(称为零日攻击)的攻击。其它检测到的异常可能包括例如软件缺陷或其它不常见的事件,诸如硬件故障和超时。图1示出了用于在基于消息的操作系统(OS)102中检测调用序列异常的系统100的示例。系统100可以包括在OS102内执行的异常检测器104,或者替代 ...
【技术保护点】
1.一种在基于消息的操作系统中检测调用序列异常的方法,所述方法包括:接收指示调取操作系统的编程流程的消息,所述消息包括编程流程标识符、发送方进程标识符和接收方进程标识符,其中所述编程流程的调取是在由所述发送方进程标识符标识的进程做出的一系列操作系统编程流程调取中的一个调取;至少基于所述编程流程标识符和所述接收方进程标识符生成调取散列;将所述调取散列翻译为调取标识符;将所述调取标识符包括在已翻译的调用序列中,所述已翻译的调用序列包括所述一系列调取的调取标识符;确定所述已翻译的调用序列是否包括在多个预定的调用序列中,每个所述预定的调用序列包括对应的调取标识符,其中每个所述对应的调取标识符被映射到调取散列;以及如果所述已翻译的调用序列不包括在所述预定的调用序列中,则将所述已翻译的调用序列识别为异常,否则确定所述已翻译的调用序列不异常。
【技术特征摘要】
【国外来华专利技术】2016.07.19 US 15/213,8741.一种在基于消息的操作系统中检测调用序列异常的方法,所述方法包括:接收指示调取操作系统的编程流程的消息,所述消息包括编程流程标识符、发送方进程标识符和接收方进程标识符,其中所述编程流程的调取是在由所述发送方进程标识符标识的进程做出的一系列操作系统编程流程调取中的一个调取;至少基于所述编程流程标识符和所述接收方进程标识符生成调取散列;将所述调取散列翻译为调取标识符;将所述调取标识符包括在已翻译的调用序列中,所述已翻译的调用序列包括所述一系列调取的调取标识符;确定所述已翻译的调用序列是否包括在多个预定的调用序列中,每个所述预定的调用序列包括对应的调取标识符,其中每个所述对应的调取标识符被映射到调取散列;以及如果所述已翻译的调用序列不包括在所述预定的调用序列中,则将所述已翻译的调用序列识别为异常,否则确定所述已翻译的调用序列不异常。2.根据权利要求1所述的方法,其中,调取散列还基于所述发送方进程标识符。3.根据权利要求1或权利要求2所述的方法,其中,所述消息包括对传递给所述编程流程的参数的指示,以及所述调取散列还基于所述对传递给所述编程流程的参数的指示。4.根据权利要求1至3中任一项所述的方法,其中,所述消息包括信道标识符,并且所述调取散列还基于所述信道标识符。5.根据权利要求1至4中任一项所述的方法,其中,所述消息包括接收方节点标识符,并且所述调取散列还基于所述接收方节点标识符。6.根据权利要求1至5中任一项所述的方法,其中,翻译所述调取散列包括在翻译表中搜索所述调取散列,所述翻译表包括与所述调取标识符相关联的调取散列。7.根据权利要求6所述的方法,其中,所述调取标识符是包括所述调取散列的翻译表中的行号。8.一种非暂时性计算机可读存储介质,包括计算机可执行指令,所述计算机可执行指令能够由处理器执行,所述计算机可执行指令包括可执行以进行以下操作的指令:接收指示调取操作系统的编程流程的消息,所述消息包括编程流程标识符、发送方进程标识符和接收方进程标识符,其中所述编程流程的调取是在由所述发送方进程标识符标识的进程做出的一系列操作系统编程流程调取中的一个调取;基于所述消息的至少一部分生成调取散列;将所述调取散列翻译为调取标识符;将所述调取标识符包括在已翻译的调用序列中,所述已翻译的调用序列包括所述一系列调取的调取标识符;确定所述已翻译的调用序列是否包括在多个预定的调用序列中,每个所述预定的调用序列包括对应的调取标识符,其中每个所述对应的调取标识符被映射到调取散列;以及如果所述已翻译的调用序列不包括在所述预定的调用序列中,则将所述已翻译的调用序列识别为异常,否则确定所述已翻译的调用序列不异常。9.根据权利要求8所述的非暂时性计算机可读存储介质,其中,确定所述已翻译的调用...
【专利技术属性】
技术研发人员:穆罕穆德·阿尔沙诺比,
申请(专利权)人:二二三六零零八安大略有限公司,
类型:发明
国别省市:加拿大,CA
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。