Система контролю завантаження операційної системи
Формула / Реферат
Система контролю завантаження операційної системи (ОС), яка містить:
- засіб перевірки, призначений для з'ясування стану компонент комп'ютерної системи, які беруть участь до початку завантаження ОС і які згодом передають управління на початок завантаження ОС;
- засіб контролю, призначений для виконання контролю запуску на виконання системних компонент при завантаженні ОС, при цьому контроль здійснюється на підставі списків системних компонент і їх цифрових підписів та списку довірених компонент і їх хешів SHA1;
- засіб управління, зв'язаний з засобом контролю і призначений для аналізу отриманих даних в процесі завантаження ОС та формування списків довірених компонент, і який налаштований для створення дампів списків файлів та їх описувачів, дампів з реєстру і для порівняння отриманих дампів, крім того засіб управління додатково призначений для пошуку компонент у файловій системі як по хешу SHA1, так і за шаблоном імені компоненти і разом з тим, засіб управління додатково призначений для запитів в мережі Інтернет про компоненту.
Текст
Реферат: Система контролю завантаження операційної системи належить до систем безпеки комп'ютерних систем і конкретніше до систем перевірки операційної системи (ОС) на наявність шкідливих, потенційно небезпечних і небажаних компонент і призначена для вирішення проблеми ефективного і оперативного виявлення і усунення фактів присутності сторонніх компонент в ОС. UA 76687 U (54) СИСТЕМА КОНТРОЛЮ ЗАВАНТАЖЕННЯ ОПЕРАЦІЙНОЇ СИСТЕМИ UA 76687 U UA 76687 U 5 10 15 20 25 30 35 40 45 50 55 60 Корисна модель належить до систем безпеки комп'ютерних систем і конкретніше до систем перевірки операційної системи (ОС) на наявність шкідливих, потенційно небезпечних і небажаних компонент і призначена для вирішення проблеми ефективного і оперативного виявлення і усунення фактів присутності сторонніх компонент в ОС. У сучасному світі комп'ютерна техніка отримує все більшу поширеність. Вона стає все більш доступною, функціональною, мобільною, а користувачі стають досвідченіші в роботі з комп'ютерною технікою. Такий високий рівень розвитку може нести в собі також ряд загроз, пов'язаних наприклад із слабким рівнем захищеності цифрових даних та ОС. Безпека даних на персональних комп'ютерах, мобільній техніці, промислових комп'ютерах є актуальною проблемою. Щодня з'являється велика кількість нових шкідливих програм, здатних стати причиною комп'ютерних збоїв, втрати і крадіжки персональних даних. Багато шкідливих програм модифікуються для того, щоб їх було складніше виявити та знешкодити. Нині існує багато різних програм (антивіруси, антируткіти та ін.) (далі Детектори), які встановлюються в ОС і виконують роль захисника. Усі відомі Детектори, які встановлюються в ОС і виконують роль захисника мають бути встановлені в ОС, яка вже можливо має встановлені сторонні компоненти. Цими компонентами можуть бути руткіти (від англ. Rootkit), які уміють "ховати" свою присутність в ОС. Під руткітом розуміється набір утиліт або спеціальний модуль ядра, що включає в себе різноманітні функції по "замітанню слідів" вторгнення в систему. Руткіт закріплюється в операційній системі і приховує сліди свого перебування, приховуючи файли, процеси і присутність самого руткіта в системі. Таким чином, він може сховатися не тільки від користувача, але і від Детектора. Існує також імовірність того, що, отримавши більш привілейовані права, руткіт зможе якимось чином пошкодити сам Детектор, тим самим зіпсувати його працездатність. Також бувають випадки, коли в ОС встановлені сторонні компоненти, які не є небезпечними з точки зору Детекторів, або унаслідок дій самого користувача був випадково встановлений сторонній компонент, і Детектору було вказано, що встановлена програма легальна. При цьому з кожним роком все більше збільшуються об'єми жорстких дисків, і для повної перевірки ОС може піти багато часу, години, а то і десятки години. Таким чином, потрібно рішення, яке було б позбавлено недоліків Детекторів і дозволило б у будь-який момент часу перевірити ОС на наявність сторонніх компонент. Таке рішення не є замінником Детекторів, а тільки ліквідовує їх перелічені вище недоліки, використовуючи для цього інші рішення, і дозволяє визначити наскільки пошкоджена комп'ютерна система, щоб зробити висновок, чи потрібно "лікувати" комп'ютерну систему або відновити її з попередньої резервної копії (якщо вона є) або встановлювати ОС на комп'ютерну систему наново. З рівня техніки відомий спосіб захисту комп'ютерів від дії програм-вірусів (патент України № 22370, МПК G06F 11/00, опубл. 25.04.2007, бюл. № 5), що включає до свого складу контроль і виявлення несистемних додатків, в якому додатково введено операції по вибору стратегії і встановленню режиму моніторингу, скануванню дисків пристрою та відображенню результатів сканування з подальшим їх аналізом. Недоліком даного способу з використанням спеціально розробленого додатка, який функціонує та сканує диски пристрою на наявність програм-вірусів тільки в середовищі ОС Symbian OS 7.0. Відомо апаратний антивірус (Патент РФ № 92217, МПК G06N 99/00, опубл. 10.03.2010 p.), що запобігає поширенню компонентів шкідливого програмного забезпечення (ПЗ), розташований між персональним комп'ютером і накопичувачем інформації, який містить мінімум два інтерфейси, один з яких підключають до системної шини комп'ютера, а інший підключають до носія інформації, який є при цьому прозорим фільтром, що забезпечує передачу даних між інтерфейсами, фільтрація згаданих даних здійснюється центральним процесором антивірусу, який використовує оперативний запам'ятовуючий пристрій, при цьому основна робота антивірусу полягає у фільтрації даних, які надходять з носія інформація, і якщо виявлений ними компонент шкідливий ПЗ, то дані блокують, інакше дані передають на інтерфейс, який підключений до системної шини. Недоліком даного антивірусу є те, що він тільки запобігає поширенню компонент шкідливого програмного забезпечення в комп'ютерних системах, а не здійснює перевірку операційної системи на наявність шкідливих і небажаних компонент. Відома система виявлення та лікування руткітів (Патент РФ № 77472, МПК G06F 21/22, опубл. 20.10.2008 p.), що включає засіб для створення першого образу для виділених файлів операційної системи і реєстру, при цьому цей засіб виконано з можливістю створення першого образу після завантаження завантажувальних драйверів, але до завантаження всіх інших драйверів; засіб для постійного зберігання першого образу, отриманого згаданим засобом для створення першого образу; засіб для створення другого образу для виділених файлів операційної системи і реєстру, який створюється після завантаження всіх драйверів, що 1 UA 76687 U 5 10 15 20 25 30 35 40 45 50 55 60 залишилися; засіб для порівняння першого образу, отриманого зі згаданого засобу постійного зберігання, і другого образу, отриманого від засобу створення другого образу; засіб для видачі повідомлення користувачу про зараження руткітом комп'ютера за результатами порівняння, отриманим від згаданого засобу порівняння, при цьому засіб для видачі повідомлення виконано з можливістю видачі цього повідомлення в разі нерівності першого і другого образів. Дана корисна модель використовується тільки для виявлення руткітів, а не від всіх шкідливих програм, які вже є завантажені в операційну систему комп'ютерної системи, тобто її використання не дає змогу проконтролювати саме завантаження завантажуючих драйверів, виявити шкідливі, потенційно небезпечні і небажані компоненти в ОС. Найбільш близького технічного рішення до запропонованої корисної моделі в публічному доступі не виявлено. В основу корисної моделі поставлено задачу створення системи контролю завантаження операційної системи, яка здійснює повний програмний контроль запуску всіх компонент ОС, включаючи ті, які не є складовими компонентами операційної системи, і виявляє шкідливі, потенційно небезпечні і небажані компоненти в ОС. Поставлена задача вирішується тим, що запропоновано систему контролю завантаження операційної системи, яка містить: - засіб перевірки, призначений для з'ясування стану компонент комп'ютерної системи, які беруть участь до початку завантаження ОС і які згодом, передають управління на початок завантаження ОС; - засіб контролю, призначений для виконання контролю запуску на виконання системних компонент при завантаженні ОС, при цьому контроль здійснюється на підставі списків системних компонент і їх цифрових підписів та списку довірених компонент і їх хешів SHA1; - засіб управління зв'язаний з засобом контролю і призначений для аналізу отриманих даних в процесі завантаження ОС та формування списків довірених компонент, і який налаштований для створення дампів списків файлів та їх описувачів, дампів з реєстру і для порівняння отриманих дампів, крім того, засіб управління додатково призначений для пошуку компонент у файловій системі як по хешу SHA1, так і за шаблоном імені компоненти і разом з тим, засіб управління додатково призначений для запитів в мережі Інтернет про компоненту. Описана корисна модель дозволяє гарантовано контролювати увесь процес завантаження ОС, починаючи з найпершого можливого не системного компонента, звіряючи його зі списком системних компонент і їх цифрових підписів. Це досягається двоетапним завантаженням ОС. Слід зазначити, що ці етапи незалежні один від іншого, тому їх можна виконувати, або не виконувати, або повторювати стільки раз, скільки потрібно для визначення стану ОС на комп'ютерній системі. В описі корисної моделі введено такі означення: "Засіб перевірки" це Контролер 1, "Засіб контролю" - Контролер 2, "Засіб управління" - Консоль. Робота системи реалізується наступним чином. Перший етап. При включенні комп'ютерної системи завантаження виконується з завантаженого образу мінімальних розмірів, який містить модуль Контролер 1 (Засіб перевірки). Для цього підготовлюють змінний носій (наприклад диск CD, DVD або флешка), на який записують завантажений образ, всередині якого міститься модуль Контролера 1 та вказують в настройках BIOS, що завантаження потрібно виконувати в першу чергу зі змінного носія, якщо він під час завантаження підключений до комп'ютера. Отже, при включенні комп'ютерної системи змінний носій підключено і на екрані виведено запрошення "Press any key to boot from CD or DVD.». Натискаючи будь-яку кнопку, фактично виконуємо опцію "Завантаження зі змінного носія". Завантажившись, цей модуль звіряє завантажений сектор MBR жорсткого диска, сектора VBR/IPL файлової системи, бут-завантажувач ОС, цифрові підписи ядра ОС, первинність завантаження модуля Контролер 2 (Засіб контролю), наявність модуля Контролер 2 і видає підсумковий звіт результатів. У цьому звіті можуть бути позитивні результати, так і негативні результати. Наприклад, коли видається попередження, що головний завантажувальний MBR запис (англ. master boot record, MBR) жорсткого диска невідомий, то перш ніж продовжити завантаження ОС, потрібно ліквідувати цю проблему. Для цього існують як утиліти від виробника ОС, так і інших продуцентів, за допомогою яких ця проблема вирішується. Або якщо користувач сам встановив нестандартний завантажувач, тоді це попередження можна ігнорувати. У разі коли Контролер 1 при перевірці виявляє, що порушена реєстрація первинності завантаження Контролера 2, тоді він сам виправляє це відхилення і реєструє цю подію в звіті. Цей етап однозначно гарантує, що при включенні комп'ютерної системи з моменту отримання управління від BIOS (це перша програма, яку комп'ютер використовує відразу ж 2 UA 76687 U 5 10 15 20 25 30 35 40 45 50 55 60 після включення, і яка має завдання - розпізнати пристрої на комп'ютерній системі (процесор, пам'ять, диски, відео та ін), перевірити їх справність, ініціювати і передати управління завантажувачу ОС (завантажувач ОС в свою чергу завантажує в пам'ять ядро ОС і модулі (драйвера) з типом завантаження "boot" та передає управління ядру ОС. Ядро ОС в свою чергу починає запускати в роботу (ініціювати) завантажені раніше модулі (драйвера) з типом завантаження "boot", і в цьому списку на запуск в роботу Контролер 2 завжди перший) і до початку роботи Контролера 2 ніхто сторонній не одержить управління. Робота Контролера 1 завершується перезавантаженням комп'ютерної системи для подальшого завантаження основної ОС, якщо немає помилок у звіті, або, якщо є помилки, тоді використовують допоміжні утиліти інших продуцентів або виробника ОС, за допомогою яких усувають помилки. Другий етап. При завантаженні комп'ютерної системи знову буде відображено запрошення "Press any key to boot from CD or DVD", але на цей раз не потрібно натискати будь-яку кнопку, так через 5 сек очікування система передасть управління на завантаження з жорсткого диска. На цьому етапі відображається список можливих варіантів завантаження ОС. Якщо на комп'ютерній системі встановлено одну ОС, то такий список не відображається, але якщо на початковому інтервалі після включення комп'ютерної системи натискати кнопку F8, то цей список також буде відображено. В нашому випадку список відображатися буде у будь-якому випадку. Тому що, навіть якщо був тільки один запис, то другий такий запис створює інсталятор корисної моделі при встановленні її на комп'ютерну систему. Цей запис вирізняється тим, що має назву як основна ОС, в яку встановлено корисну модель, але має в своїй назві специфічний підрядок, який вказує, що тільки при виборі цього варіанту завантаження ОС буде виконуватися другий етап. Такий вибір дозволяє більш гнучкіше і безпечніше аналізувати основну ОС. Фактично для основної ОС є два варіанти завантаження, це звичайний, при якому Контролер 2 не активний і не виконує ніякої роботи. Та варіант, коли Контролер 2 включений і активно виконує свою роботу. Такий вибір дає змогу: • використовувати другий етап не постійно, а по потребі, наприклад, коли виникають підозри на наявність невластивої поведінки ОС; • зрівняти роботу ОС без роботи Контролера 2 і з ним, в випаду, якщо виконується "лікування" ОС, наприклад, коли завантажується ОС, їй потрібно щоб в певних ключах реєстр мав "стандартні" значення обов'язкові для подальшого успішного завантаження. В таких випадках Контролер 2, виявивши відхилення, "емулює" (штучно відтворює) наявність потрібної інформації в таких ключах, при цьому відмічаючи такі випадки в лог-файл. Користувач має змогу внести правильні дані в такий ключ і перезавантажити ОС в звичайному режимі і перевірити правильність своїх дій; • вилучити встановлену корисну модель з комп'ютерної системи, якщо в цьому виникає потреба. Хоча це можна зробити і при завантаженні з включеним Контролером 2, але в цьому випадку в Консолі потрібно використовувати опцію яка б дозволила вимкнути роботу Контролера 2 і тоді можна звичайними засобами ОС вилучити корисну модель з комп'ютерної системи; В нашому випадку вибравши варіант завантаження із специфічним підрядком в назві, ми фактично активуємо виконання другого етапу корисної моделі, тобто здійснюється активація Контролера 2. Як було зазначено раніше, перший етап забезпечує первинність отримання управління від ядра ОС Контролером 2. Отже, Контролер 2 завжди завантажується в списку першим і, починаючи з цього моменту, звіряє всіх інших зі списком компонент ОС та їх цифровими підписами, при цьому відхиляючи всіх хто не входить в цей список або кого немає в довіреному списку. Всю виконану роботу Контролер 2 реєструє в лог-файл, в якому зазначається сам компонент, його розміри, права доступу до нього, його реєстрація в ОС, якщо така є. Якщо компонента належить ОС і в неї порушений цифровий підпис, тоді вона також потрапляє в цей список, але запуск її не відхиляється, так як в цьому випадку комп'ютерна система може перервати свої завантаження, і "зависнути або випасти в синій екран". Згодом, такий компонент, повинен бути замінений на оригінальний з дистрибутива ОС. Після завантаження ОС, за допомогою засобу управління (Консолі), можна переглянути лог роботи Контролера 2 і виконати маніпуляції з цими результатами. Тобто, додати відхилені компоненти в довірений список, перевірити в Інтернеті їх на небезпеку, якщо є невпевненість в них, і якщо вони шкідливі, то спочатку, використовуючи значення хеш SHA1 цієї компоненти, знайти всі такі ж подібні компоненти (незалежно, які вони будуть мати імена, але вони всі є копіями шуканої компоненти) по всій комп'ютерній системі і тільки тоді видалити їх або 3 UA 76687 U 5 10 15 20 25 30 35 40 45 50 55 перемістити в потрібне місце. Всі дії в Консолі виконуються швидко і інтуїтивно зрозуміло. Наприклад для внесення відхилених компонент в довірений список, достатньо відкрити список відхилених компонент, виділити ті компоненти, які хочемо внести в довірений список і через меню вибрати команду внесення компонент в довірений список. Відповідно, якщо перейдемо в Консолі в список довірених компонент, то зможемо побачити ці компоненти. Тепер, якщо виконати перезавантаження ОС, то ці компоненти будуть легітимними і відповідно будуть завантажені і виконані. Також Контролер 2 в процесі своєї роботи веде лог подій, в якому реєструє всі важливі, з його точки зору події. Такі, як: - Зміна MBR/IPL/VBR; - Запуск процесу; - Запуск на виконання компоненти процесу; - Зупинка процесу; - Порушення цифрового підпису компоненти; - Спроба модифікації виконуваної компоненти; - Спроба видалення виконуваної компоненти; - Спроба виконання компоненти з іншої компоненти; - Запуск на виконання компоненти, яка можливо зашифрована; - Запуск потоку, який створений не стандартно; - Наявність, можливо, зайвих записів у файлі Hosts; - Наявність відмінностей в параметрах реєстрації стандартних сервісів/до датків ОС в реєстрі; - Наявність в реєстрі реєстрації налагоджувана додатка, що запускається в ключі "Image File Execution Options"; - Відсутність системного файлу, який запитує система на запуск, а його фізично немає; - Наявність завантаження системного модуля, який насправді не є системним, а підміняє реальний системний, підміняючи деякий функціонал системного модуля, а інший функціонал переправляє на справжній системний, але перейменований файл; - Наявність у завантажених компонент підписки на отримання повідомлень про запуск процесів/завантаження виконуваних образів і/або створення потоків і/або зміни реєстру; - Наявність зміни системного значення за замовчуванням адреси функції IofCallDriverRoutine; - Наявність зміни системного значення за замовчуванням адреси функції IofCompleteRequest. Всі ці події значно спрощують розуміння того, що відбувається в комп'ютерній системі і в сукупності з іншою інформацією дозволяють точно окреслити коло "підозрілих" компонент, які вимагають пильного дослідження своєї діяльності. Таблиця подій відображається динамічно в Консолі, і в ній в свою чергу можна виконувати різні дії для швидшого аналізу, тобто, встановлювати фільтри на колонки, сортувати по колонці, записати в файл і т.д. Робота другого етапу може завершуватися двома варіантами. Перший - це коли було перевірено ОС, виконані дії по безпеці відповідно наданої інформації в Консолі і перезавантажено ОС, для подальшого входу в основу ОС в звичайному режимі, коли Контролер 2 не активний. Другий - це коли заносимо в довірений список Консолі всі компоненти, які використовуються користувачем на комп'ютерній системі і залишаємося працювати в такому режимі. У цьому варіанті скомпрометувати компоненти ОС або компоненти довірених програм користувача вкрай складно. Наприклад, через Інтернет за допомогою якої-небудь раніше невідомої N-дня вразливістю, яка не була закрита оновленнями компонент ОС або довірених компонент користувача. Така уразливість не зможе "закріпитися" в ОС, для присутності в системі при наступних перезавантаженнях ОС, так як запропонована система контролю завантаження ОС в будь-якому випадку забороняє створювати/змінювати виконувані компоненти всім, навіть якщо зміни буде ініціювати сама система. За винятком, якщо внести в довірений список компоненту і їй вказати що вона може виконати "Зміну виконуваного компонента" і/або "Видалення виконуваного компонента". Навіть якщо система була скомпрометована тільки через пам'ять, без звертання на жорсткий диск, то, досить перевантажити ОС і вона знову буде без "вразливостей". Запропонована система контролю завантаження ОС дозволяє швидко вирішувати кілька важливих задач: 4 UA 76687 U 5 - знаходити і блокувати в комп'ютерній системі небажані об'єкти. Небажані об'єкти комп'ютерної системи - це будь-який модуль, який не є об'єктом системи або підмінений об'єкт системи, але не є таким в дійсності; - швидко оцінити завдані збитки комп'ютерній системі, для визначення обсягу робіт, що простіше: лікувати комп'ютерну систему або перевстановити її або відновити з резервної копії. ФОРМУЛА КОРИСНОЇ МОДЕЛІ 10 15 20 Система контролю завантаження операційної системи (ОС), яка містить: - засіб перевірки, призначений для з'ясування стану компонент комп'ютерної системи, які беруть участь до початку завантаження ОС і які згодом передають управління на початок завантаження ОС; - засіб контролю, призначений для виконання контролю запуску на виконання системних компонент при завантаженні ОС, при цьому контроль здійснюється на підставі списків системних компонент і їх цифрових підписів та списку довірених компонент і їх хешів SHA1; - засіб управління, зв'язаний з засобом контролю і призначений для аналізу отриманих даних в процесі завантаження ОС та формування списків довірених компонент, і який налаштований для створення дампів списків файлів та їх описувачів, дампів з реєстру і для порівняння отриманих дампів, крім того засіб управління додатково призначений для пошуку компонент у файловій системі як по хешу SHA1, так і за шаблоном імені компоненти і разом з тим, засіб управління додатково призначений для запитів в мережі Інтернет про компоненту. Комп’ютерна верстка І. Мироненко Державна служба інтелектуальної власності України, вул. Урицького, 45, м. Київ, МСП, 03680, Україна ДП “Український інститут промислової власності”, вул. Глазунова, 1, м. Київ – 42, 01601 5
ДивитисяДодаткова інформація
Назва патенту англійськоюSystem for controlling operational system load
Автори англійськоюTsvihun Volodymyr Yevhenovych
Назва патенту російськоюСистема контроля загрузки операционной системы
Автори російськоюЦвигун Владимир Евгеньевич
МПК / Мітки
МПК: G06F 12/16, G06F 12/14, G06F 21/00, G06F 11/00
Мітки: завантаження, системі, система, контролю, операційної
Код посилання
<a href="https://ua.patents.su/7-76687-sistema-kontrolyu-zavantazhennya-operacijjno-sistemi.html" target="_blank" rel="follow" title="База патентів України">Система контролю завантаження операційної системи</a>
Попередній патент: Спосіб стандартизації квіток цмину піскового (helichrysum arenarium l.) в багатокомпонентних рослинних сумішах
Наступний патент: Маркіза
Випадковий патент: Електрод для внутрішньопорожнинної гіпертермії