一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

信息处理装置、控制方法以及控制程序与流程

2022-02-22 17:38:09 来源:中国专利 TAG:


1.本发明涉及信息处理装置、控制方法以及控制程序。


背景技术:

2.以往,在服务器等设备中,提出了对在该设备的启动序列中执行的程序确认完整性的技术。例如,已知有使用在系统的启动序列中执行的各程序的哈希(hash)值和预先记录在tpm(trusted platform module:可信平台模块)中的哈希值来验证各程序的完整性的方法(例如参照非专利文献1)。此外,已知一种通过在系统的启动序列中链接仅执行通过预先分配的电子签名确认了完整性的程序的方法来构成验证了完整性的操作系统(os)环境的方法。
3.另外,还存在在重启服务器等设备时的启动序列中进行文件的更新的技术。例如,在windows(注册商标)os中,存在使用注册表或设定文件进行文件的更新的机制(例如参照非专利文献3至5)。
4.现有技术文献
5.非专利文献
6.非专利文献1:ipa,“情報
セキュリティ
技術動向調査
タスクグループ
報告書(2009年上期)”,pp.11-13,2009年9月,https://www.ipa.go.jp/security/fy21/reports/tech1-tg/indexa.html
7.非专利文献2:uefi“unified extensible firmware interface specification version 2.6”,pp.1803-1808,january,2016,http://www.uefi.org/sites/default/files/resources/acpi_6_1.pdf
8.非专利文献3:microsoft,“windows

使用
しているファイルを
再起動時




える
方法”,2018/04/20,https://support.microsoft.com/ja-jp/help/181345/how-to-replace-in-use-files-at-windows-re start
9.非专利文献4:microsoft,“movefileex function”,https://msdn.microsoft.com/ja-jp/windows/aa365240(v=vs.80)
10.非专利文献5:technet,“wininit.exe
について”
,https://social.technet.microsoft.com/forums/ja-jp/b0114542-e0ad-4e87-8306-170396f6d5f6/wininitexe12395123881235612390?forum=windowsvistaja


技术实现要素:

11.发明所要解决的课题
12.然而,在现有技术中,存在如下问题:有时难以避免文件的篡改以及被篡改的程序的执行于未然。
13.例如,在非专利文献3至5所记载的设定文件、注册表的条目被篡改的情况下,在无法执行未搭载tpm的设备以及签名验证的环境等下,无法执行非专利文献1以及2所记载的
os,则更新定义条目141b是注册表的“pedingfilerenameoperations”等条目。
31.启动时执行程序142是在os的启动序列中执行的程序。例如,如果os是windows os,则启动时执行程序142是“wininit.exe”等执行文件。
32.更新用文件143是用于通过置换等来更新(升级)启动时执行程序142的文件。例如,如果os是windows os,则更新用文件143是更新版的“wininit.exe”等。
33.控制部15控制信息处理装置10整体。控制部15例如是cpu(central processing unit:中央处理单元)、mpu(micro processing unit:微处理单元)等电子电路、asic(application specific integrated circuit:专用集成电路)、fpga(field programmable gate array:现场可编程门阵列)等集成电路。另外,控制部15具有用于存储规定了各种处理步骤的程序、控制数据的内部存储器,使用内部存储器来执行各处理。另外,控制部15通过各种程序进行动作而作为各种处理部发挥功能。例如,控制部15具有启动部151、停止部152、判定部153、中止部154以及通知部155。
34.启动部151执行os的启动序列而构成os。停止部152执行os的关闭并停止os。
35.在os的关闭的执行中,判定部153判定与os的启动相关的规定的数据是否具有完整性。判定部153能够判定对os启动时的文件的更新进行定义的更新定义数据141是否具有完整性。判定部153能够判定在os启动时执行的启动时执行程序142或用于更新启动时执行程序142的更新用文件143是否具有完整性。
36.在此,数据的更新是指由用户等允许的数据的变更。例如,数据的更新伴随着新程序的安装、定期的系统的更新等而产生。另一方面,数据的篡改是指用户等不允许的数据的变更。例如,数据的篡改由恶意者以及恶意软件等(以下,称为攻击主体)进行。
37.判定部153通过对文件的哈希值及设定内容进行对照来判定有无完整性。例如,在对规定的数据有更新的情况下,信息处理装置10计算更新后的数据的第1哈希值,将其与用于访问该规定的数据的路径一起存储在作为非易失性的存储区域的rom(read only memory:只读存储器)中。然后,判定部153在进行判定的定时计算该规定的数据的第2哈希值。然后,如果第1哈希值与第2哈希值相同,则判定部153判定为该规定的数据具有完整性。另外,如果第1哈希值与第2哈希值不同,则判定部153判定为该规定的数据没有完整性。
38.此外,信息处理装置10能够以同样的方法确认用于执行本实施方式的控制处理的程序、即用于实现判定部153等的程序的完整性。特别是,判定部153判定用于执行判定处理的判定程序是否具有完整性。
39.另外,判定部153也可以根据更新定义数据141的更新状况进行各判定处理。在该情况下,判定部153判定是否通过定义os启动时的文件的更新的更新定义数据141定义了文件的更新。判定部153在判定为未通过更新定义数据141定义了文件的更新的情况下,判定在os的启动时执行的启动时执行程序142是否具有完整性。另一方面,判定部153在判定为通过更新定义数据141定义了文件的更新的情况下,判定更新定义数据141、在os的起动时执行的起动时执行程序142、以及用于更新程序的更新用文件143是否具有完整性。
40.在此,关于是否定义了文件的更新,判定部153也能够通过与判定数据的完整性的方法同样的方法来判定。即,判定部153在构成os的时间点的更新定义数据141的哈希值与关闭开始时的更新定义数据141的哈希值不同的情况下,判定为通过更新定义数据141定义了文件的更新。此外,在此定义的文件的更新是在下次的os的启动时执行的更新。
41.在由判定部153判定为规定的数据没有完整性的情况下,中止部154使os的关闭中止。在由判定部153判定为规定的数据没有完整性的情况下,通知部155通知针对规定的数据的篡改内容。例如,通知部155也可以在作为显示器的输出部13上显示有可能被篡改的警告以及表示篡改内容的文本。
42.在此,具体说明用于执行判定部153的判定处理的判定程序。作为前提,判定程序通过os的引导(boot)序列而启动,常驻于易失性的存储区域(所谓的内存)。另外,判定程序的数据存储于非易失性的存储区域(rom)。另外,存储在非易失性存储区域中的数据在信息处理装置10的电源断开时不会被篡改,而在信息处理装置10的电源接通时有可能被篡改。
43.常驻在内存中的判定程序在检测到os的关闭命令时,从rom取得对象数据。此处的对象数据中除了更新定义数据141、启动时执行程序142以及更新用文件143之外,还包含执行判定部153的判定处理的判定程序自身的数据。
44.判定部153计算所取得的对象数据的哈希值。进而,判定部153从rom取得哈希值的正确值。然后,在计算出的哈希值与正确值一致的情况下,判定部153判定为没有篡改。另一方面,在计算出的哈希值与正确值不一致的情况下,判定部153判定为有篡改。另外,在判定为判定程序自身的数据存在篡改的情况下,信息处理装置10也可以进行判定程序的恢复处理。
45.在此,使用图2,对数据的篡改以及伴随篡改而产生的损害进行说明。图2是用于说明篡改的图。在图2的例子中,不进行本实施方式的篡改的避免。首先,攻击主体在os工作过程中,对更新定义文件141a、更新定义条目141b、启动时执行程序142以及更新用文件143进行篡改(步骤s11)。
46.之后,在不进行篡改的避免的情况下,当os被关闭时成为停止中,在被篡改的状态下启动系统。此时,在更新定义文件141a以及更新定义条目141b被篡改的情况下,按照被篡改的设定进行不正当的文件的更新(步骤s12、s13)。另外,在更新用文件143被篡改的情况下,启动时执行程序142被置换为不正当的文件(步骤s14)。另外,在启动时执行程序142被篡改、且未定义启动时执行程序142的更新的情况下,执行被篡改的启动时执行程序142(步骤s15)。
47.使用图3,对本实施方式的篡改的避免方法进行说明。图3是用于说明篡改的避免方法的图。如图3所示,若关闭开始,则判定部153判定更新定义文件141a、更新定义条目141b、启动时执行程序142及更新用文件143是否具有完整性(步骤s21)。
48.这里,当判定为更新定义文件141a和更新定义条目141b具有完整性时,信息处理装置10在下一次系统启动时根据确认了完整性的更新定义文件141a和更新定义条目141b来更新文件(步骤s22)。
49.另外,当判定为更新用文件143具有完整性时,将启动时执行程序142置换为未被篡改的正规的更新用文件143(步骤s23、s24)。另外,当判定为启动时执行程序142具有完整性时,在未定义启动时执行程序142的更新的情况下,执行未被篡改的正规的启动时执行程序142(步骤s25)。
50.[第1实施方式的处理]
[0051]
使用图4,对控制信息处理装置10的控制处理的流程进行说明。图4是示出第1实施方式的对信息处理装置进行控制的处理的流程的流程图。如图4所示,停止部152开始信息
处理装置10所具备的os的关闭(步骤s101)。
[0052]
在此,判定部153首先确认用于执行判定部153自身的处理的判定程序的完整性(步骤s102)。在判定部153判定为判定程序没有被篡改的情况下(步骤s103,否),信息处理装置10进入步骤s104。另一方面,在判定部153判定为存在判定程序的篡改的情况下(步骤s103,是),信息处理装置10进入步骤s110。
[0053]
接着,判定部153判定有无更新定义数据141的更新(步骤s104)。在有更新的情况下(步骤s105,是),判定部153进一步确认更新定义数据141、启动时执行程序142以及更新用文件143的完整性(步骤s106)。此时,判定部153通过判定各数据是否具有完整性,来判定是否有篡改。
[0054]
在判定为有篡改的情况下(步骤s107,是),中止部154使关闭中止(步骤s110)。然后,通知部155通知篡改内容(步骤s111)。另一方面,在判定为没有篡改的情况下(步骤s107,否),停止部152继续执行关闭(步骤s108)。
[0055]
返回步骤s105,在没有更新的情况下(步骤s105,否),判定部153进一步确认启动时执行程序142的完整性(步骤s109)。在判定为有篡改的情况下(步骤s107,是),中止部154使关闭中止(步骤s110)。然后,通知部155通知篡改内容(步骤s111)。另一方面,在判定为没有篡改的情况下(步骤s107,否),停止部152继续执行关闭(步骤s108)。
[0056]
使用图5,对判定部153的判定处理进行说明。图5是表示判定处理的流程的流程图。执行判定部153的判定处理的判定程序在os启动时开始执行,常驻在非易失性的存储区域(ram)中。
[0057]
如图5所示,判定部153计算对象数据的哈希值(步骤s201)。此处的对象数据中除了更新定义数据141、启动时执行程序142以及更新用文件143以外,还包含执行判定部153的判定处理的判定程序自身。
[0058]
接着,判定部153从rom取得哈希值的正确值(步骤s202)。然后,在计算出的哈希值与正确值一致的情况下(步骤s203,是),判定部153判定为没有篡改(步骤s205)。另一方面,在计算出的哈希值与正确值不一致的情况下(步骤s203,否),判定部153判定为有篡改(步骤s204)。
[0059]
[第1实施方式的效果]
[0060]
如上所述,判定部153在os关闭的执行过程中判定与os的启动有关的规定数据是否具有完整性。在由判定部153判定为规定的数据没有完整性的情况下,中止部154使os的关闭中止。这样,信息处理装置10能够在关闭时确认与启动相关的数据的完整性。因此,根据本实施方式,即使在未搭载tpm的设备和不能执行签名验证的环境等中,也能够避免文件的篡改和被篡改的程序的执行于未然。
[0061]
在由判定部153判定为规定的数据没有完整性的情况下,通知部155通知针对规定的数据的篡改内容。由此,用户能够在执行被篡改的程序等之前采取对策。
[0062]
判定部153判定对os启动时的文件的更新进行定义的更新定义数据141是否具有完整性。由此,即使在更新用文件本身未被篡改、而定义更新的文件被篡改的情况下,也能够防止由篡改引起的影响。
[0063]
判定部153判定在os启动时执行的启动时执行程序142或用于更新启动时执行程序142的更新用文件143是否具有完整性。由此,在更新用文件自身被篡改的情况下,能够防
止由篡改引起的影响。
[0064]
判定部153判定是否通过定义os启动时的文件的更新的更新定义数据141定义了文件的更新。判定部153在判定为没有通过更新定义数据141定义文件的更新的情况下,判定在os的启动时执行的启动时执行程序142是否具有完整性。判定部153在判定为通过更新定义数据141定义了文件的更新的情况下,判定更新定义数据141、在os的起动时执行的起动时执行程序142、以及用于更新程序的更新用文件143是否具有完整性。这样,信息处理装置10能够根据各数据的更新状况来决定确认完整性的数据。由此,信息处理装置10能够高效地执行用于避免篡改的处理。
[0065]
判定部153通过常驻于易失性的存储区域中的判定程序,进行判定包含判定程序的数据的规定的数据是否具有完整性的处理。判定部153通过常驻于易失性的存储区域中的程序来进行判定是否有完整性的处理。判定部153根据从存储于非易失性的存储区域中的规定的数据计算出的规定的计算值与存储于非易失性的存储区域中的正确值是否一致,来判定规定的数据是否具有完整性。存储在非易失性的区域中的数据被篡改的情况是信息处理装置10正在启动的情况。因此,根据本实施方式,通过在系统关闭时确认判定部程序自身没有被篡改,能够可靠地保证在下次系统启动时再次启动正确的判定部程序并常驻于易失性存储器中。
[0066]
[系统结构等]
[0067]
另外,图示的各装置的各构成要素是功能概念性的要素,不一定需要物理性地如图示那样构成。即,各装置的分散以及整合的具体的方式不限于图示的方式,能够根据各种负荷、使用状况等,以任意的单位将其全部或者一部分功能性或者物理性地分散或者整合而构成。并且,由各装置进行的各处理功能的全部或者任意的一部分能够通过cpu以及由该cpu解析执行的程序来实现,或者能够作为基于布线逻辑的硬件来实现。
[0068]
另外,也可以手动地进行在本实施方式中说明的各处理中的作为自动地进行的处理而说明的处理的全部或一部分,或者,也可以用公知的方法自动地进行作为手动地进行的处理而说明的处理的全部或一部分。此外,关于上述文档中或附图中所示的处理步骤、控制步骤、具体的名称、包含各种数据或参数的信息,除了特别记载的情况以外,能够任意地变更。
[0069]
[程序]
[0070]
作为一个实施方式,信息处理装置10能够通过将执行上述控制的控制程序作为封装软件或在线软件安装到所希望的计算机中来实现。例如,通过使信息处理装置执行上述的控制程序,能够使信息处理装置作为信息处理装置10发挥功能。在此所说的信息处理装置包括台式或笔记本型的个人计算机。另外,除此之外,在信息处理装置中,智能手机、移动电话机或phs(personal handyphone system:个人手持电话系统)等移动体通信终端、以及pda(personal digital assistant:个人数字助理)等平板终端等也包含在其范畴内。
[0071]
图6是表示执行控制程序的计算机的一例的图。计算机1000例如具有存储器1010、cpu1020。计算机1000还包括硬盘驱动器接口1030、盘驱动器接口1040、串行端口接口1050、视频适配器1060和网络接口1070。这些各部通过总线1080连接。
[0072]
存储器1010包括rom1011和ram1012。rom1011例如存储bios(basic input output system)等引导程序。硬盘驱动器接口1030与硬盘驱动器1090连接。盘驱动器接口1040与盘
驱动器1100连接。例如,诸如磁盘或光盘等可拆卸存储介质被插入到盘驱动器1100中。串行端口接口1050例如与鼠标1110、键盘1120连接。视频适配器1060例如与显示器1130连接。
[0073]
硬盘驱动器1090例如存储os1091、应用程序1092、程序模块1093、程序数据1094。即,将规定信息处理装置10的各处理的程序安装为记述有能够由计算机执行的代码的程序模块1093。程序模块1093例如存储在硬盘驱动器1090中。例如,将用于执行与信息处理装置10中的功能结构相同的处理的程序模块1093存储在硬盘驱动器1090中。此外,硬盘驱动器1090也可以由ssd代替。
[0074]
另外,在上述的实施方式的处理中使用的设定数据作为程序数据1094存储于例如存储器1010、硬盘驱动器1090。而且,cpu1020根据需要将存储在存储器1010、硬盘驱动器1090中的程序模块1093、程序数据1094读出到ram1012中,执行上述实施方式的处理。
[0075]
另外,程序模块1093、程序数据1094不限于存储在硬盘驱动器1090中的情况,例如也可以存储在可装卸的存储介质中,经由盘驱动器1100等由cpu1020读出。或者,程序模块1093和程序数据1094也可以存储在经由网络(lan(local area network:局域网)、wan(wide area network:广域网)等)连接的其他计算机中。而且,也可以从其他计算机经由网络接口1070由cpu1020读出程序模块1093和程序数据1094。
[0076]
标号说明
[0077]
10 信息处理装置
[0078]
11 通信部
[0079]
12 输入部
[0080]
13 输出部
[0081]
14 存储部
[0082]
15 控制部
[0083]
141 更新定义数据
[0084]
141a 更新定义文件
[0085]
141b 更新定义条目
[0086]
142 启动时执行程序
[0087]
143 更新用文件
[0088]
151 启动部
[0089]
152 停止部
[0090]
153 判定部
[0091]
154 中止部
[0092]
155 通知部。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献