RU2777704C1 - Method for secure booting of the operating system of computers - Google Patents

Method for secure booting of the operating system of computers Download PDF

Info

Publication number
RU2777704C1
RU2777704C1 RU2021132512A RU2021132512A RU2777704C1 RU 2777704 C1 RU2777704 C1 RU 2777704C1 RU 2021132512 A RU2021132512 A RU 2021132512A RU 2021132512 A RU2021132512 A RU 2021132512A RU 2777704 C1 RU2777704 C1 RU 2777704C1
Authority
RU
Russia
Prior art keywords
operating system
computer
network resource
file system
files
Prior art date
Application number
RU2021132512A
Other languages
Russian (ru)
Inventor
Алексей Валерьевич Швецов
Original Assignee
федеральное государственное автономное образовательное учреждение высшего образования «Национальный исследовательский университет ИТМО» (Университет ИТМО)
Filing date
Publication date
Application filed by федеральное государственное автономное образовательное учреждение высшего образования «Национальный исследовательский университет ИТМО» (Университет ИТМО) filed Critical федеральное государственное автономное образовательное учреждение высшего образования «Национальный исследовательский университет ИТМО» (Университет ИТМО)
Application granted granted Critical
Publication of RU2777704C1 publication Critical patent/RU2777704C1/en

Links

Abstract

FIELD: information technology.
SUBSTANCE: invention relates to the field of information technology. The method for secure booting of the computer operating system includes the stages of preparing the computer, encrypting the operating system files, launching a separately hosted operating system loader, decrypting files and loading the operating system. The bootloader of the operating system is started from a network resource. Before starting the loader, the root file system of the operating system is encrypted. The encryption key is formed in accordance with the parameters of the computer hardware. The files of the operating system loader, its kernel and the image of the initial file system placed in the network resource are signed digitally. The exchange with the network resource takes place via a secure hypertext transfer protocol using symmetric encryption.
EFFECT: increase in the degree of protection against unauthorized access when loading the computer operating system and providing the possibility of parallel loading of computer operating systems to computer network workstations.
1 cl

Description

Изобретение относится к вычислительной технике, а именно к способам защиты компьютерной сети от несанкционированного доступа к данным.The invention relates to computer technology, and in particular to methods for protecting a computer network from unauthorized access to data.

Известен способ защищенной загрузки операционной системы компьютера с проверкой целостности, содержащий этапы запуска загрузчика операционной системы, считывания ключа шифрования, проверки целостности операционной системы и загрузки операционной системы (см. заявку РФ 2005115918, кл. G06F 21/00, опубл. 20.11.2006).There is a known method for securely booting a computer operating system with an integrity check, comprising the steps of starting the operating system loader, reading the encryption key, checking the integrity of the operating system and loading the operating system (see RF application 2005115918, class G06F 21/00, publ. 20.11.2006) .

Недостатком этого способа является то, что, поскольку проверка целостности системы проводится без использования ключа шифрования, при загрузке с альтернативного носителя можно внести изменения как в операционную систему, так и в контрольные суммы.  Такие изменения недетектируемы и не могут обеспечить доверенную загрузку. Таким образом, известный способ не обеспечивает достаточную защиту системы от несанкционированного вмешательства.The disadvantage of this method is that, since the system integrity check is carried out without using an encryption key, when booting from alternative media, you can make changes to both the operating system and the checksums. Such changes are undetectable and cannot provide a trusted boot. Thus, the known method does not provide sufficient protection of the system from unauthorized interference.

Известен также наиболее близкий к предлагаемому и принятый за прототип способ защищенной загрузки операционной системы компьютера с проверкой целостности, содержащий этапы подготовки компьютера, шифрования операционной системы, запуска отдельно размещенного загрузчика операционной системы и загрузки операционной системы (Патент РФ № 2396594 C2, кл. G06F 21/22, опубл. 10.08.2010).Also known is the method closest to the proposed and adopted for the prototype method of securely booting the operating system of a computer with an integrity check, containing the steps of preparing the computer, encrypting the operating system, launching a separately placed operating system loader and loading the operating system (RF Patent No. 2396594 C2, class G06F 21 /22, published on August 10, 2010).

Недостатком данного способа является то, что загрузку операционной системы производят с устройства, подсоединяемого непосредственно к аппаратным средствам компьютера. При этом обеспечивается защита информации, вводимой в единственный компьютер, что усложняет масштабирование загрузки защищенной информации на множество компьютеров.The disadvantage of this method is that the operating system is loaded from a device connected directly to the computer hardware. This ensures the protection of information entered into a single computer, which complicates the scaling of downloading protected information to multiple computers.

Задачей, на решение которой направлено настоящее изобретение, является повышение степени защиты от несанкционированного доступа компьютерной сети. The problem to be solved by the present invention is to increase the degree of protection against unauthorized access of a computer network.

Поставленная задача решается при реализации предлагаемого способа за счет достижения технического результата, заключающегося в обеспечении параллельной загрузки на рабочие станции компьютерной сети защищенной информации.The problem is solved by implementing the proposed method by achieving a technical result, which consists in providing parallel downloading of protected information to workstations of a computer network.

Данный технический результат достигается тем, что способ защищенной загрузки операционной системы компьютеров, содержащий этапы подготовки компьютера, шифрования файлов операционной системы, запуска отдельно размещенного загрузчика операционной системы, расшифровки файлов и загрузки операционной системы, отличается тем, что запуск загрузчика операционной системы производят с места его размещения в сетевом ресурсе, перед его запуском производят шифрование размещенной в сетевом ресурсе корневой файловой системы операционной системы, подписывают цифровой подписью размещенные в сетевом ресурсе файлы загрузчика операционной системы, её ядра и образ начальной файловой системы в оперативной памяти. При подготовке компьютера включают режим безопасной загрузки унифицированного расширяемого интерфейса встроенных микропрограмм, добавляют ключ проверки цифровой подписи и сертификат безопасного протокола передачи гипертекста, регистрируют адрес сетевого ресурса. Затем производят обращение к сетевому ресурсу для получения подписанных файлов загрузчика, проверяют действительность цифровой подписи загрузчика, в случае ее корректности загрузчик запускается и считывает по безопасному протоколу передачи гипертекста ядро операционной системы и образ начальной файловой системы в оперативной памяти, проверяют действительность цифровой подписи ядра и образа начальной файловой системы в оперативной памяти, в случае корректности цифровой подписи ядро и образ начальной файловой системы в оперативной памяти загружаются в оперативную память компьютера, после чего начальная файловая система считывает с сетевого ресурса зашифрованный образ корневой файловой системы операционной системы, расшифровку которой перед загрузкой операционной системы производят ключом, сформированным в соответствии с параметрами аппаратного обеспечения компьютера.This technical result is achieved by the fact that the method of securely loading the operating system of computers, comprising the steps of preparing the computer, encrypting the operating system files, launching a separately placed operating system loader, decrypting files and loading the operating system, differs in that the operating system loader is launched from its place. placement in a network resource, before its launch, the root file system of the operating system located in the network resource is encrypted, the files of the operating system loader, its kernel and the image of the initial file system in RAM placed in the network resource are digitally signed. When preparing a computer, enable the Unified Extensible Firmware Interface Secure Boot mode, add a digital signature verification key and a secure hypertext transfer protocol certificate, and register a network resource address. Then, a network resource is accessed to obtain signed bootloader files, the validity of the digital signature of the bootloader is checked, if it is correct, the bootloader starts and reads the kernel of the operating system and the image of the initial file system in RAM using a secure hypertext transfer protocol, checks the validity of the digital signature of the kernel and the image of the initial file system in RAM, if the digital signature is correct, the kernel and the image of the initial file system in RAM are loaded into the RAM of the computer, after which the initial file system reads the encrypted image of the root file system of the operating system from the network resource, decrypting it before loading the operating system produced by a key generated in accordance with the parameters of the computer hardware.

Согласно изобретению загрузка операционной системы компьютера осуществляется из защищенного от изменений состояния, которое обеспечивается шифрованием и применением цифровой подписи к загружаемой информации. Программный загрузчик также подписывается цифровой подписью и находится в защищённом от изменений состоянии, и располагается совместно с операционной системой в сетевом ресурсе. Доступ к сетевому ресурсу осуществляется по безопасному протоколу передачи гипертекста (HTTPS) с симметричной схемой шифрования. Унифицированный расширяемый интерфейс встроенных микропрограмм (UEFI) компьютера настроен на загрузку операционной системы с сетевого ресурса. According to the invention, the computer operating system is loaded from a change-protected state, which is provided by encryption and the application of a digital signature to the downloaded information. The software loader is also signed with a digital signature and is in a state protected from changes, and is located together with the operating system on a network resource. Access to a network resource is carried out using a secure hypertext transfer protocol (HTTPS) with a symmetric encryption scheme. The computer's Unified Extensible Firmware Interface (UEFI) is configured to boot the operating system from a network share.

Предварительно, для обеспечения загрузки операционной системы осуществляют следующие операции. В унифицированном расширяемом интерфейсе встроенных микропрограмм (UEFI) включается безопасный режим (Secure Boot), добавляется ключ проверки цифровой подписи, добавляется сертификат протокола HTTPS. Регистрируется адрес сетевого ресурса, в котором размещают подписанные цифровой подписью файлы загрузчика, ядра и образа начальной файловой системы в оперативной памяти (initramfs). Также в сетевом ресурсе помещают образ корневой файловой системы операционной системы, зашифрованный ключом, сформированным исходя из параметров аппаратного обеспечения компьютера, на который осуществляется загрузка операционной системы.Previously, to ensure the loading of the operating system, the following operations are carried out. In the Unified Extensible Firmware Interface (UEFI), secure mode (Secure Boot) is enabled, a digital signature verification key is added, and an HTTPS protocol certificate is added. The address of a network resource is registered, in which the files of the bootloader, the kernel and the image of the initial file system in RAM (initramfs) signed with a digital signature are placed. Also, an image of the root file system of the operating system is placed in the network resource, encrypted with a key generated based on the hardware parameters of the computer on which the operating system is loaded.

По включении компьютера выполняются команды унифицированного расширяемого интерфейса встроенных микропрограмм (UEFI). С сетевого ресурса считывается загрузчик, проверяется его цифровая подпись, и если подпись корректна, то происходит его запуск. Загрузчик, в свою очередь, запрашивает требуемую конфигурацию операционной системы с сетевого ресурса и получает набор файлов ядра и начальной файловой системы в оперативной памяти (initramfs), необходимых для старта операционной системы. Проверяются цифровые подписи для ядра и initramfs, и если подпись корректна, происходит загрузка ядра и initramfs. Затем, начальная файловая система считывает с сетевого ресурса зашифрованный образ корневой файловой системы и производит её расшифровку. Ключ для расшифровки формируется в оперативной памяти на основании параметров аппаратного обеспечения компьютера, на котором происходит загрузка. Если расшифровка происходит успешно, то операционная система загружается в штатном режиме.When the computer is turned on, Unified Extensible Firmware Interface (UEFI) commands are executed. The bootloader is read from the network resource, its digital signature is checked, and if the signature is correct, it is launched. The bootloader, in turn, requests the required configuration of the operating system from a network resource and receives a set of kernel and initial file system files in RAM (initramfs) necessary to start the operating system. The digital signatures for the kernel and initramfs are checked, and if the signature is correct, the kernel and initramfs are loaded. Then, the initial file system reads the encrypted image of the root file system from the network resource and decrypts it. The decryption key is generated in RAM based on the hardware parameters of the computer on which the download takes place. If the decryption is successful, then the operating system boots normally.

Данный способ загрузки позволяет производить загрузку множества компьютеров с обозначенного доверенного сетевого ресурса. Таким образом обеспечивается целостность загружаемой операционной системы и программной среды в однозначно исходном состоянии для каждого компьютера, осуществляющего загрузку.This boot method allows you to boot multiple computers from a designated trusted network resource. This ensures the integrity of the bootable operating system and software environment in a uniquely initial state for each booting computer.

Предлагаемый способ загрузки операционной системы компьютера обеспечивает высокую степень защиты загружаемых данных, поскольку информация, необходимая для загрузки, размещается в защищенном от изменения состоянии, а обмен с сетевым ресурсом происходит по безопасному протоколу передачи гипертекста с применением симметричного шифрования. Помимо того, ключ, необходимый для расшифровки, не имеет отдельной локации на носителях информации, что является дополнительным фактором, повышающим защищенность системы.The proposed method of loading the operating system of a computer provides a high degree of protection of the downloaded data, since the information necessary for loading is placed in a state protected from change, and the exchange with the network resource occurs via a secure hypertext transfer protocol using symmetric encryption. In addition, the key required for decryption does not have a separate location on storage media, which is an additional factor that increases the security of the system.

Claims (1)

Способ защищенной загрузки операционной системы компьютеров, содержащий этапы подготовки компьютера, шифрования файлов операционной системы, запуска отдельно размещенного загрузчика операционной системы, расшифровки файлов и загрузки операционной системы, отличающийся тем, что запуск загрузчика операционной системы производят с места его размещения в сетевом ресурсе, перед его запуском производят шифрование размещенной в сетевом ресурсе корневой файловой системы операционной системы, подписывают цифровой подписью размещенные в сетевом ресурсе файлы загрузчика операционной системы, её ядра и образ начальной файловой системы в оперативной памяти, при подготовке компьютера включают режим безопасной загрузки унифицированного расширяемого интерфейса встроенных микропрограмм, добавляют ключ проверки цифровой подписи и сертификат безопасного протокола передачи гипертекста, регистрируют адрес сетевого ресурса, затем производят обращение к сетевому ресурсу для получения подписанных файлов загрузчика, проверяют действительность цифровой подписи загрузчика, в случае ее корректности загрузчик запускается и считывает по безопасному протоколу передачи гипертекста ядро операционной системы и образ начальной файловой системы в оперативной памяти, проверяют действительность цифровой подписи ядра и образа начальной файловой системы в оперативной памяти, в случае корректности цифровой подписи ядро и образ начальной файловой системы в оперативной памяти загружаются в оперативную память компьютера, после чего начальная файловая система считывает с сетевого ресурса зашифрованный образ корневой файловой системы операционной системы, расшифровку которой перед загрузкой операционной системы производят ключом, сформированным в соответствии с параметрами аппаратного обеспечения компьютера.A method for securely loading a computer operating system, comprising the steps of preparing a computer, encrypting operating system files, launching a separately placed operating system loader, decrypting files, and loading an operating system, characterized in that the operating system loader is launched from its location in a network resource, before it startup, they encrypt the root file system of the operating system located on the network resource, digitally sign the files of the operating system loader, its kernel and the image of the initial file system in RAM located on the network resource, when preparing the computer, enable the secure boot mode of the unified extensible firmware interface, add the digital signature verification key and the certificate of the secure hypertext transfer protocol, register the address of the network resource, then access the network resource to obtain signed download files check the validity of the digital signature of the bootloader, if it is correct, the bootloader starts and reads the kernel of the operating system and the image of the initial file system in RAM using the secure hypertext transfer protocol, checks the validity of the digital signature of the kernel and the image of the initial file system in RAM, if correct of the digital signature, the kernel and the image of the initial file system in RAM are loaded into the RAM of the computer, after which the initial file system reads from the network resource the encrypted image of the root file system of the operating system, which is decrypted before loading the operating system with a key generated in accordance with the hardware parameters computer.
RU2021132512A 2021-11-09 Method for secure booting of the operating system of computers RU2777704C1 (en)

Publications (1)

Publication Number Publication Date
RU2777704C1 true RU2777704C1 (en) 2022-08-08

Family

ID=

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138270A1 (en) * 2002-06-07 2005-06-23 Microsoft Corporation Use of hashing in a secure boot loader
RU2007148810A (en) * 2007-12-29 2009-07-10 Александр Васильевич Соколов (RU) METHOD FOR TRUSTED DOWNLOAD OF OPERATING SYSTEM OF SOFTWARE AND HARDWARE COMPLEX
RU2396594C2 (en) * 2008-08-06 2010-08-10 Закрытое акционерное общество "Аладдин Р.Д." Method for protected boot of computer operating system with integrity check
RU2413295C2 (en) * 2004-06-30 2011-02-27 Майкрософт Корпорейшн System and method for secure operating system booting using status checkup
RU2439678C2 (en) * 2006-05-05 2012-01-10 Майкрософт Корпорейшн Initial download of operating system in separate stages
US20180276387A1 (en) * 2017-03-23 2018-09-27 Dell Products, Lp System and Method for Secure Boot of an Information Handling System Using Verification Signature and Including Verifying Applications
US20200320200A1 (en) * 2019-04-08 2020-10-08 Cisco Technology, Inc. Bios/bootloader protection

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138270A1 (en) * 2002-06-07 2005-06-23 Microsoft Corporation Use of hashing in a secure boot loader
RU2413295C2 (en) * 2004-06-30 2011-02-27 Майкрософт Корпорейшн System and method for secure operating system booting using status checkup
RU2439678C2 (en) * 2006-05-05 2012-01-10 Майкрософт Корпорейшн Initial download of operating system in separate stages
RU2007148810A (en) * 2007-12-29 2009-07-10 Александр Васильевич Соколов (RU) METHOD FOR TRUSTED DOWNLOAD OF OPERATING SYSTEM OF SOFTWARE AND HARDWARE COMPLEX
RU2396594C2 (en) * 2008-08-06 2010-08-10 Закрытое акционерное общество "Аладдин Р.Д." Method for protected boot of computer operating system with integrity check
US20180276387A1 (en) * 2017-03-23 2018-09-27 Dell Products, Lp System and Method for Secure Boot of an Information Handling System Using Verification Signature and Including Verifying Applications
US20200320200A1 (en) * 2019-04-08 2020-10-08 Cisco Technology, Inc. Bios/bootloader protection

Similar Documents

Publication Publication Date Title
EP3479282B1 (en) Targeted secure software deployment
JP7121112B2 (en) secure storage device
US9680648B2 (en) Securely recovering a computing device
JP6595822B2 (en) Information processing apparatus and control method thereof
EP2798559B1 (en) Methods and apparatus for trusted boot optimization
US10977381B2 (en) Protection system and method against unauthorized data alteration
US20110246778A1 (en) Providing security mechanisms for virtual machine images
US10169589B2 (en) Securely booting a computer from a user trusted device
US8839451B1 (en) Activation and security of software
US20060136708A1 (en) Information processing system, program product, and information processing method
TWI788594B (en) Method and computer device for securely executing extensible firmware applications
TW201415280A (en) A method and service for securing a system networked to a cloud computing environment from malicious code attacks
US8522003B2 (en) Software loading method and apparatus to a computing platform
TWI760752B (en) System for accelerating verification procedure for image file
US10192047B2 (en) Provisioning of identity information
Ruan et al. Boot with integrity, or don’t boot
EP3176723B1 (en) Computer system and operating method therefor
RU2777704C1 (en) Method for secure booting of the operating system of computers
JP7077872B2 (en) Information processing equipment, information processing methods, and programs
Hagl et al. Securing the Linux Boot Process: From Start to Finish.
US10922415B2 (en) Method and system for fail-safe booting
US20090089568A1 (en) Securely Launching Encrypted Operating Systems
JP5278520B2 (en) Information processing apparatus and information protection method
EP4216088A1 (en) Extended secure boot for launching a virtual machine
EP2138946A1 (en) Secure memory management system