首页 / 专利库 / 专利权 / 第I章 / 国际申请 / 摘要 / Linux操作系统中脚本行为的控制方法

Linux操作系统中脚本行为的控制方法

阅读:216发布:2023-01-13

专利汇可以提供Linux操作系统中脚本行为的控制方法专利检索,专利查询,专利分析的服务。并且一种Linux 操作系统 中脚本行为的控制方法,解释器级别为A,B,C,Z多级,其中A级解释器为管理员专用,仅能由管理员在本地登录使用;B级解释器无法将脚本与用户行为进行联系共用,但不允许管理员与其它用户同时使用;C级解释器将脚本与用户行为进行联系,可以同时由管理员和其它用户使用;以上所述级别的解释器一旦被审计到出现异常行为则划为Z级,禁止任何用户使用;包括安装/初始化步骤,新装/更新步骤;启动控制步骤和运行控制步骤。本方法能够实现对系统的保护,最大限度阻止恶意脚本的破坏行为。操作系统核心层实现控制功能,避免被恶意程序旁路。实现管理员仅有权安装、配置系统,无权 访问 用户业务文件。,下面是Linux操作系统中脚本行为的控制方法专利的具体信息内容。

1.一种Linux操作系统中脚本行为的控制方法,为所有脚本及解释器定制管理档案并进行分类;其特征在于:所述的解释器级别为A,B,C,Z多级,其中A级解释器为管理员专用,仅能由管理员在本地登录使用;B级解释器无法将脚本与用户行为进行联系共用,但不允许管理员与其它用户同时使用;C级解释器将脚本与用户行为进行联系,可以同时由管理员和其它用户使用;以上所述级别的解释器一旦被审计到出现异常行为则划为Z级,禁止任何用户使用;
所述的控制方法包括安装/初始化步骤,新装/更新步骤;启动控制步骤和运行控制步骤;
所述的安装/初始化步骤,根据为系统中资料库已有的脚本及脚本解释器的管理档案进行安装/初始化;
所述的新装/更新步骤,根据为系统中新增加的脚本及脚本解释器,如果资料库已有记录,则与安装/初始化步骤相同,否则自动生成新的管理档案并将生成新的管理档案发至资料库;
所述的启动控制步骤,在脚本及脚本解释器启动时检测其是否被非法修改
所述的运行控制步骤,将脚本及脚本解释器与用户行为相关联,实现对多级用户对资源管理的控制。
2.根据权利要求1所述的Linux操作系统中脚本行为的控制方法,其特征在于:所述的安装/初始化步骤包括以下步骤;
1.1、流程被触发;
1.2、根据资料库中已有的脚本/脚本解释器建立管理档案;
1.3、判断当前系统中安装动作的执行者是否由管理员发起,若不是则禁止安装,记录审计信息;
1.4、提示管理员输入新装内容的使用者,如果是脚本解释器,跳转到1.6;
1.5、计算脚本摘要,建立脚本管理档案并更新资料库,跳转到1.7;
1.6、通过管理员选择判定脚本解释器级别,建立脚本解释器管理档案并更新资料库;
1.7、流程结束。
3.根据权利要求1所述的Linux操作系统中脚本行为的控制方法,其特征在于:所述的新装/更新步骤包括:
2.1、流程被触发;
2.2、在原有资料库中查找新发现的脚本/脚本解释器,若找到则建立对应管理档案,并跳转到2.7;
2.3、判断当前系统中安装动作的执行者是否由管理员发起,若不是则禁止安装,记录审计信息;
2.4、提示管理员输入新装内容的使用者,如果是脚本解释器,跳转到2.6;
2.5、计算脚本摘要,建立脚本管理档案并更新资料库。跳转到2.7;
2.6、通过管理员选择判定脚本解释器级别,建立脚本解释器管理档案并更新资料库;
2.7、流程结束。
4.根据权利要求1所述的Linux操作系统中脚本行为的控制方法,其特征在于:所述的脚本解释器启动控制步骤包括:
3.1、流程被触发;
3.2、检查对应管理档案的合法性,若不合法则跳转到3.6;
3.3、计算脚本解释器的摘要值,通过与管理档案中预存值进行比较判断脚本解释器的合法性,如不合法则跳转到3.6;
3.4、由管理档案决定脚本解释器级别,标记于其内核管理数据结构中;
3.5、流程结束;
3.6、标记脚本解释器为Z级,记录审计信息,要求管理员处理;
3.7、流程结束。
5.根据权利要求1所述的Linux操作系统中脚本行为的控制方法,其特征在于:所述的脚本启动控制步骤包括:
4.1、流程被触发;
4.2、检查对应管理档案的合法性,若不合法则跳转到4.8;
4.3、计算脚本的摘要值,通过与管理档案中预存值进行比较判断脚本的合法性,如不合法则跳转到4.8;
4.4、由管理档案获得脚本所有者,根据执行该脚本的脚本解释器级别、当前调用者身份信息判断调用行为的合法性。如不合法则跳转到4.9;
4.5、若为管理员调用B级脚本解释器执行脚本,则暂时冻结其它所有用户对此解释器的使用权限;
4.6、脚本置信度加1,令脚本上次运行时间为当前时间,脚本上次调用解释器为当前解释器,执行脚本;
4.7跳转到4.10;
4.8令脚本置信度为负,记录审计信息,要求管理员处理;
4.9禁止执行脚本;
4.10、流程结束。
6.根据权利要求1所述的Linux操作系统中脚本行为的控制方法,其特征在于:所述的运行控制步骤包括:
5.1、检测到脚本解释器访问资源,控制流程被触发;
5.2、判断是否只读访问或对业务文件的访问,是则允许访问,跳转到5.6;
5.3、判断脚本解释器类型,若为A级,则允许访问,跳转到5.6;
5.4、若脚本解释器为B级或C级,则判断访问行为的发起者,若为管理员发起,则允许访问,跳转到5.6;否则禁止访问,跳转到5.6;
5.5、若脚本解释器为Z级,则禁止访问,记录审计信息,报告管理员处理;
5.6、流程结束。

说明书全文

Linux操作系统中脚本行为的控制方法

技术领域

[0001] 本发明属于操作系统安全领域,是一种对Linux操作系统中脚本行为进行控制方法。该方法通过在内核层实现对系统中主客体操作行为的全局管理和审查,实现了对各类型的脚本的安全控制,能够为对外部用户提供脚本解析服务的操作系统(如带有论坛交流功能的网站服务器)提供高强度的保护。

背景技术

[0002] Linux环境下脚本执行的流程主要分为以下几个步骤:系统将脚本作为可执行程序传入内核;内核构建进程执行环境,并保存从用户态传入的可执行程序参数信息;系统寻找合适的脚本解释器,如果脚本指定了解释器则用其指定的解释器,否则用缺省的脚本解释器;用找到的解释器执行脚本文件中的命令;执行完成。
[0003] 在Linux系统中,默认的访问控制机制为自主访问控制(DAC),而部署实施SELinux及AppArmor等安全软件后,能够实现一定程度的强制访问控制(MAC)。以上访问控制机制在实现中均基于二维访问控制列表实现,在对脚本的控制中,仅能简单判断“用户A是不是能够访问脚本解释器B”,“用户A是不是能够访问脚本C”,“脚本解释器B是不是能够访问资源D”几个独立的步骤,无法综合判断“用户A能不能通过脚本解释器B执行脚本C最终访问资源D”的行为。在有多个用户同时使用脚本解释器B的时候,系统无法判断是哪个用户通过哪个脚本访问了什么资源,从而造成了大量的权限提升漏洞,为恶意脚本的运行创造了空间。

发明内容

[0004] 本发明的目的在于针对Linux操作系统中脚本功能实现的特点,提供一种Linux操作系统中脚本行为的控制方法,在保证系统功能正常运行的同时,最大程度的减少恶意脚本带来的危害,为操作系统提供更高强度的保护。
[0005] 本发明是采用以下技术方案实现的:
[0006] 一种Linux操作系统中脚本行为的控制方法,为所有脚本及解释器定制管理档案并进行分类;解释器级别为A,B,C,Z多级,其中A级解释器为管理员专用,仅能由管理员在本地登录使用;B级解释器无法将脚本与用户行为进行联系共用,但不允许管理员与其它用户同时使用;C级解释器将脚本与用户行为进行联系,可以同时由管理员和其它用户使用;以上所述级别的解释器一旦被审计到出现异常行为则划为Z级,禁止任何用户使用;
[0007] 控制方法包括安装/初始化步骤,新装/更新步骤;启动控制步骤和运行控制步骤;
[0008] 安装/初始化步骤,根据为系统中资料库已有的脚本及脚本解释器的管理档案进行安装/初始化;
[0009] 新装/更新步骤,根据为系统中新增加的脚本及脚本解释器,如果资料库已有记录,则与安装/初始化步骤相同,否则自动生成新的管理档案并将生成新的管理档案发至资料库;
[0010] 启动控制步骤,在脚本及脚本解释器启动时检测其是否被非法修改
[0011] 运行控制步骤,将脚本及脚本解释器与用户行为相关联,实现对多级用户对资源管理的控制。
[0012] 前述的安装/初始化步骤包括以下步骤;
[0013] 1.1、流程被触发;
[0014] 1.2、根据资料库中已有的脚本/脚本解释器建立管理档案;
[0015] 1.3、判断当前系统中安装动作的执行者是否由管理员发起,若不是则禁止安装,记录审计信息;
[0016] 1.4、提示管理员输入新装内容的使用者,如果是脚本解释器,跳转到1.6;
[0017] 1.5、计算脚本摘要,建立脚本管理档案并更新资料库,跳转到1.7;
[0018] 1.6、通过管理员选择判定脚本解释器级别,建立脚本解释器管理档案并更新资料库;
[0019] 1.7、流程结束。
[0020] 前述的新装/更新步骤包括:
[0021] 2.1、流程被触发;
[0022] 2.2、在原有资料库中查找新发现的脚本/脚本解释器,若找到则建立对应管理档案,并跳转到2.7;
[0023] 2.3、判断当前系统中安装动作的执行者是否由管理员发起,若不是则禁止安装,记录审计信息;
[0024] 2.4、提示管理员输入新装内容的使用者,如果是脚本解释器,跳转到2.6;
[0025] 2.5、计算脚本摘要,建立脚本管理档案并更新资料库。跳转到2.7;
[0026] 2.6、通过管理员选择判定脚本解释器级别,建立脚本解释器管理档案并更新资料库;
[0027] 2.7、流程结束。
[0028] 前述的脚本解释器启动控制步骤包括:
[0029] 3.1、流程被触发;
[0030] 3.2、检查对应管理档案的合法性,若不合法则跳转到3.6;
[0031] 3.3、计算脚本解释器的摘要值,通过与管理档案中预存值进行比较判断脚本解释器的合法性,如不合法则跳转到3.6;
[0032] 3.4、由管理档案决定脚本解释器级别,标记于其内核管理数据结构中;
[0033] 3.5、流程结束;
[0034] 3.6、标记脚本解释器为Z级,记录审计信息,要求管理员处理;
[0035] 3.7、流程结束。
[0036] 前述的脚本启动控制步骤包括:
[0037] 4.1、流程被触发;
[0038] 4.2、检查对应管理档案的合法性,若不合法则跳转到4.8;
[0039] 4.3、计算脚本的摘要值,通过与管理档案中预存值进行比较判断脚本的合法性,如不合法则跳转到4.8;
[0040] 4.4、由管理档案获得脚本所有者,根据执行该脚本的脚本解释器级别、当前调用者身份信息判断调用行为的合法性。如不合法则跳转到4.9;
[0041] 4.5、若为管理员调用B级脚本解释器执行脚本,则暂时冻结其它所有用户对此解释器的使用权限;
[0042] 4.6、脚本置信度加1,令脚本上次运行时间为当前时间,脚本上次调用解释器为当前解释器,执行脚本;
[0043] 4.7跳转到4.10;
[0044] 4.8令脚本置信度为负,记录审计信息,要求管理员处理;
[0045] 4.9禁止执行脚本;
[0046] 4.10、流程结束。
[0047] 前述的运行控制步骤包括:
[0048] 5.1、检测到脚本解释器访问资源,控制流程被触发;
[0049] 5.2、判断是否只读访问或对业务文件的访问,是则允许访问,跳转到5.6;
[0050] 5.3、判断脚本解释器类型,若为A级,则允许访问,跳转到5.6;
[0051] 5.4、若脚本解释器为B级或C级,则判断访问行为的发起者,若为管理员发起,则允许访问,跳转到5.6;否则禁止访问,跳转到5.6;
[0052] 5.5、若脚本解释器为Z级,则禁止访问,记录审计信息,报告管理员处理;
[0053] 5.6、流程结束。
[0054] 本发明与现有技术相比,具有以下明显的优势和有益效果:
[0055] 1,本方法能够实现对系统的保护,最大限度阻止恶意脚本的破坏行为。
[0056] 2,本方法在操作系统核心层实现控制功能,避免被恶意程序旁路。
[0057] 3,本方法具有良好的可扩展性,能够很好的兼容“脚本——解释器”模型下的各种脚本语言。对于新出现的脚本语言,仅需要定义其脚本格式及其适用的解释器,并将其语法参数信息输入数据库即可实现兼容。
[0058] 4,以本方法作为基础,通过修改安全策略,能够在脚本控制方面实现高安全级别操作系统中要求的“管理员权责分离”。即实现管理员仅有权安装、配置系统,无权访问用户业务文件。附图说明
[0059] 图1为Linux系统脚本行为控制方法示意图;
[0060] 图2为Linux系统脚本行为控制方法运行方式示意图;
[0061] 图3为Linux系统脚本行为控制方法安装流程图
[0062] 图4为Linux系统脚本行为控制方法脚本解释器启动检查流程图;
[0063] 图5为Linux系统脚本行为控制方法脚本启动检查流程图;
[0064] 图6为Linux系统脚本行为控制方法访问控制流程图。

具体实施方式

[0065] 本发明阐述了一种高效的脚本的管理与控制方法。它以实施了安全加固的高安全级别Linux系统为基础,通过对脚本来源、修改情况、执行者、脚本解释器的行为及脚本行为进行统筹管理,实现对系统中脚本的控制。
[0066] 本方法基于实施了安全加固的高安全级别Linux系统实现。首先,在系统安装时对脚本解释器进行定义,建立脚本解释器管理档案。并制定系统运行安全策略。脚本解释器管理档案内容如下:
[0067] 解释器名称。
[0068] 解释器版本,为当前解释器版本号。
[0069] 解释器级别,分为A,B,C,Z四级,其中,
[0070] A级为管理员专用,仅能由管理员在本地(或经由特定的可信连接方式)登录使用;
[0071] B级的解释器中,无法将脚本与用户行为进行联系,即,在有多个脚本同时执行时,系统无法分辨解释器发起的特定动作来自于哪个脚本。故此级别的解释器可以由管理员与其它用户共用,但不允许管理员与其它用户同时使用;
[0072] C级的解释器将脚本与用户行为进行联系,不会出现权限混淆。故可以同时由管理员和其它用户使用。
[0073] 以上三个级别的解释器一旦被审计到出现异常行为(入侵其它进程空间、自身代码异常改变等),则划为Z级,禁止任何用户使用。等待进一步追查异常操作的来源。
[0074] 解释器摘要值,用于校验其代码。
[0075] 在脚本文件创建时为其建立脚本管理档案,其具体内容如下:
[0076] 脚本来源,分为认证用户、未认证用户及通过可信认证的管理员。其中包括用户IP,ID等身份辨识信息。
[0077] 脚本修改时间,为脚本最后修改时间。
[0078] 脚本上次运行时间,初始为空。
[0079] 脚本上次运行使用解释器,初始为空。
[0080] 脚本置信度,为脚本在系统中正常运行过次数,初始为空。当脚本有不可信行为时视其威胁程度及重现情况置为负数。
[0081] 脚本摘要值,用于校验其代码。
[0082] 与本发明相关的安全策略有如下类型:
[0083] 对于非以下允许的情况,则禁止相关实体与其它任何实体的交互,待审查处理。
[0084] 仅允许通过可信认证的管理员通过A,B,C级脚本解释器修改系统关键数据(如管理档案,系统程序等)。
[0085] 允许所有用户通过B,C级脚本解释器以非破坏的形式访问与自身相关的系统数据。
[0086] 允许所有用户通过B,C级脚本解释器修改与自身相关的业务数据。
[0087] 本方法的整体工作流程如图2所示:
[0088] 1、控制方法初始化时先遍历查找系统中已有的脚本解释器及脚本,根据资料库建立对应的管理档案(对于系统中基本、常用的脚本解释器及脚本,可以通过经验预先填充资料库;且对于运行环境相同或类似的系统环境,可以共享资料库)。
[0089] 2、在系统中有新的脚本解释器及脚本安装、生成时,如果资料库中没有记录,则要求管理员输入配置信息,生成管理档案并扩充数据库。
[0090] 3、在系统中有脚本解释器及脚本启动时,系统依据管理档案中的摘要值检查其是否被非法修改过,检查通过后才能运行。
[0091] 4、在系统运行过程中,根据管理档案控制“用户——脚本——脚本解释器——访问目标”之间的关联关系,防范利用脚本解释器的漏洞越权访问事件的发生。
[0092] 本发明中,步骤1与步骤2的区别仅在于步骤1由对文件系统中已有脚本/脚本解释器的遍历查找动作触发,步骤2由Linux系统内核截获到的安装/生成/更新动作触发。它们的主要工作流程完全一致,说明如下:
[0093] 本发明步骤1、2的工作流程如图3所示:
[0094] 步骤1包括:
[0095] 1.1、流程被触发。
[0096] 1.2、根据资料库中已有的脚本/脚本解释器建立管理档案。
[0097] 1.3、判断当前系统中安装动作的执行者是否由管理员发起?若不是则禁止安装,记录审计信息。
[0098] 1.4、提示管理员输入新装内容的使用者(分为管理员、用户、匿名用户三类),如果是脚本解释器,跳转到1.6。
[0099] 1.5、计算脚本摘要,建立脚本管理档案并更新资料库。跳转到1.7。
[0100] 1.6、要求管理员输入脚本解释器是否管理员与其它用户共用及是否能够将管理员/用户身份标识传递到内核层。通过管理员的选择,判定脚本解释器级别,建立脚本解释器管理档案并更新资料库。
[0101] 1.7、流程结束。
[0102] 步骤2由Linux系统内核截获到的安装/生成/更新动作触发。它们的主要工作流程完全一致,说明如下:
[0103] 2.1、流程被触发。
[0104] 2.2、在原有资料库中查找新发现的脚本/脚本解释器,若找到则建立对应管理档案,并跳转到2.7。
[0105] 2.3、判断当前系统中安装动作的执行者是否由管理员发起?若不是则禁止安装,记录审计信息。
[0106] 2.4、提示管理员输入新装内容的使用者(分为管理员、用户、匿名用户三类),如果是脚本解释器,跳转到2.6。
[0107] 2.5、计算脚本摘要,建立脚本管理档案并更新资料库。跳转到2.7。
[0108] 2.6、要求管理员输入脚本解释器是否管理员与其它用户共用及是否能够将管理员/用户身份标识传递到内核层。通过管理员的选择,判定脚本解释器级别,建立脚本解释器管理档案并更新资料库。
[0109] 2.7、流程结束。
[0110] 本发明步骤3,脚本解释器启动检查的工作流程如图4所示:
[0111] 3.1、流程被触发。
[0112] 3.2、检查对应管理档案的合法性,若不合法则跳转到3.6。
[0113] 3.3、计算脚本解释器的摘要值,通过与管理档案中预存值进行比较判断脚本解释器的合法性,如不合法则跳转到3.6。
[0114] 3.4、由管理档案决定脚本解释器级别,标记于其内核管理数据结构中。
[0115] 3.5、流程结束。
[0116] 3.6、标记脚本解释器为Z级,记录审计信息,要求管理员处理。
[0117] 3.7、流程结束。
[0118] 本发明步骤4,脚本启动检查的工作流程如图5所示:
[0119] 4.1、流程被触发。
[0120] 4.2、检查对应管理档案的合法性,若不合法则跳转到4.8。
[0121] 4.3、计算脚本的摘要值,通过与管理档案中预存值进行比较判断脚本的合法性,如不合法则跳转到4.8。
[0122] 4.4、由管理档案获得脚本所有者,根据执行该脚本的脚本解释器级别、当前调用者身份信息判断调用行为的合法性。如不合法则跳转到4.9。
[0123] 4.5、若为管理员调用B级脚本解释器执行脚本,则暂时冻结其它所有用户对此解释器的使用权限。
[0124] 4.6、脚本置信度加1,令脚本上次运行时间为当前时间,脚本上次调用解释器为当前解释器。执行脚本。
[0125] 4.7跳转到4.10。
[0126] 4.8令脚本置信度为负,记录审计信息,要求管理员处理。
[0127] 4.9禁止执行脚本。
[0128] 4.10、流程结束。
[0129] 本发明步骤5,脚本行为运行控制流程如图6所示:
[0130] 5.1、检测到脚本解释器访问资源,控制流程被触发。
[0131] 5.2、判断是否只读访问或对业务文件的访问。是则允许访问,跳转到5.6。
[0132] 5.3、判断脚本解释器类型。若为A型,则允许访问,跳转到5.6。
[0133] 5.4、若脚本解释器为B型或C型,则判断访问行为的发起者,若为管理员发起,则允许访问,跳转到5.6。否则禁止访问,跳转到5.6。
[0134] 5.5、若脚本解释器为Z型,则禁止访问,记录审计信息,报告管理员处理。
[0135] 5.6、流程结束。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈