ЛАБОРАТОРНА РОБОТА №1. Інвентаризація ресурсів комп’ютерних систем

Мета: Навчитися проводити повний аналіз комп’ютерних місць на предмет виявлення можливих «дірок» у безпеці апаратних та програмних засобів.

Необхідне програмне забезпечення

MS Windows, Everest, mvPCinfo, Hinfo, довідник процесів, довідник по реєстру ОС Windows.

Теоретичні відомості

1. Методи несанкціонованого доступу до комп’ютерних систем

В загальному випадку програмне забезпечення будь-якої універсальної комп’ютерної системи складається з 3 основних компонентів: операційної системи (ОС), мереженого програмного забезпечення (МПЗ) та системи управління базами даних (СУБД). Тому всі спроби несанкціонованого доступу (НСД) та зламу захисту комп’ютерних систем можна розділити на три групи:

  • атаки на рівні ОС;
  • атаки на рівні МПЗ;
  • атаки на рівні СУБД.

1.1. Атаки на рівні СУБД

Захист СУБД є однією з найпростіших задач. Це пов’язано з тим, що СУБД мають строго певну внутрішню структуру, і операції над елементами СУБД задані досить чітко. Є чотири основні дії – пошук, вставка, видалення і заміна елементу. Інші операції є допоміжними і застосовуються не часто. Наявність строгої структури і чітко означених операцій спрощує рішення задачі захисту СУБД. В більшості випадків хакери вважають за краще зламувати захист комп’ютерної системи на рівні операційної системи і отримувати доступ до файлів СУБД за допомогою засобів операційної системи. Проте у випадку, якщо використовується СУБД, що не має досить надійних захисних механізмів, або погано відлагоджена версія СУБД, що містить помилки, або якщо при визначенні політики безпеки адміністратором СУБД були допущені помилки, то стає цілком вірогідним подолання хакером захисту, реалізованого на рівні СУБД.

Крім того, є два специфічні сценарії атаки на СУБД, для захисту від яких вимагається застосовувати спеціальні методи. У першому випадку результати арифметичних операцій над числовими полями СУБД округляються в меншу сторону, а різниця підсумовується в деякому іншому записі СУБД (як правило, цей запис містить особовий рахунок хакера в банку, а числові поля, що округляються, відносяться до рахівниць інших клієнтів банку). У другому випадку хакер дістає доступ до полів записів СУБД, для яких доступної є тільки статистична інформація. Ідея атаки хакера на СУБД – так хитро сформулювати запит, щоб безліч записів, для якого збирається статистика, складалася тільки з одного запису.

1.2. Атаки на рівні операційної системи

Захищати операційну систему (ОС) набагато складніше ніж СУБД. Річ у тому, що внутрішня структура сучасних операційних систем надзвичайно складна, і тому дотримання адекватної політики безпеки є значно важчою задачею. Існує думка, що найефективніші атаки на операційні системи можуть бути організовані тільки за допомогою складних засобів, заснованих на останніх досягненнях науки і техніка, а хакер повинен бути програмістом високої кваліфікації. Це не зовсім так.

Звичайно користувачу потрібно бути в курсі всіх новинок у області комп’ютерної техніки. Висока кваліфікація – також не зайва. Проте мистецтво хакера полягає зовсім не в тому, щоб зламувати будь-який комп’ютерний захист. Потрібно просто зуміти знайти слабке місце в конкретній системі захисту. При цьому прості методи злому виявляються нітрохи не гіршими за найвитонченіши, оскільки, чим простіше алгоритм атаки, тим вища вірогідність її завершення без помилок і збоїв, особливо якщо можливості попереднього тестування цього алгоритму в умовах, наближених до реальних, вельми обмежені.

Успіх реалізації того або іншого алгоритму атаки хакера на практиці в значній мірі залежить від архітектури і конфігурації конкретної операційної системи, що є об’єктом цієї атаки. Проте є атаки, яким може бути піддана практично будь-яка операційна система. Це такі атаки:

крадіжка пароля;

підглядання за користувачем, коли той вводить пароль, що дає право на роботу з операційною системою (навіть якщо під час введення пароль не висвічується на екрані дисплея, хакер може легко взнати пароль, просто стежачи за переміщенням пальців користувача по клавіатурі);

отримання пароля з файлу, в якому цей пароль був збережений користувачем, не охочим утрудняти себе введенням пароля при підключенні до мережі (як правило, такий пароль зберігається у файлі в незашифрованому вигляді);

пошук пароля, який користувачі, щоб не забути, записують на календарях, в записниках або на оборотній стороні комп’ютерних клавіатур (особливо часто подібна ситуація зустрічається, якщо адміністратори примушують користувачів застосовувати паролі, що важко запам’ятовуються);

крадіжка зовнішнього носія парольної інформації (дискети або електронного ключа, на яких зберігається пароль користувача, призначений для входу в операційну систему);

повний перебір всіх можливих варіантів пароля (brute force – груба сила);

підбір пароля по частоті повторень символів та біграм, за допомогою словників найчастіше вживаних паролів, із залученням знань про конкретного користувача – його ім’я, прізвища, номера телефону, дати народження і т. д., з використанням відомостей про існування еквівалентних паролів, при цьому з кожного класу випробує всього один пароль, що може значно скоротити час перебору;

сканування жорстких дисків комп’ютера (хакер послідовно намагається звернутися до кожного файлу, що зберігається на жорстких дисках комп’ютерної системи; якщо об’єм дискового простору достатньо великий, можна бути цілком впевненим, що при описі доступу до файлів і каталогів адміністратор допустив хоча б одну помилку, внаслідок чого всі такі каталоги і файли будуть прочитані хакером; для приховання слідів хакер може організувати цю атаку під чужим ім’ям: наприклад, під ім’ям користувача, пароль якого відомий хакеру);

збір «сміття» (якщо засоби операційної системи дають можливість відновлювати раніше видалені об’єкти, хакер може скористатися цією можливістю, щоб дістати доступ до об’єктів, видалених іншими користувачами: наприклад, проглянувши вміст їх об’єктів «корзина»);

перевищення повноважень (використовуючи помилки в програмному забезпеченні або в адмініструванні операційної системи, хакер одержує повноваження, що перевищують повноваження, надані йому згідно діючій політиці безпеки);

запуск програми від імені користувача, що має необхідні повноваження, або як системна програма (драйвера, сервісу, демона і т.д.);

підміна динамічної бібліотеки, що використовується системними програмами, або підміна змінних середовища, що описують шлях до таких бібліотек;

модифікація коду або даних підсистеми захисту
самої операційної системи;

відмова в обслуговуванні (метою цієї атаки є часткове або повне виведення з ладу операційної системи);

захоплення ресурсів (програма хакера здійснює захоплення всіх ресурсів, що є в операційній системі, а потім входить в нескінченний цикл);

бомбардування запитами (програма хакера постійно направляє операційній системі запити, реакція на які вимагає залучення значних ресурсів комп’ютера);

використання помилок в програмному забезпеченні або адмініструванні.

Якщо в програмному забезпеченні комп’ютерної системи немає помилок і її адміністратор суворо дотримується політики безпеки, яка рекомендується розробниками операційної системи, то атаки всіх перерахованих типів малоефективні. Додаткові заходи, які повинні бути зроблені для підвищення рівня безпеки, в значній мірі залежать від конкретної операційної системи, під управлінням якої працює дана комп’ютерна система. Проте, доводиться визнати, що незалежно від вжитих заходів повністю усунути загрозу НСД або зламу комп’ютерної системи на рівні операційної системи неможливо. Тому політика підтримки безпеки повинна проводитися так, щоб, навіть подолавши захист операційної системи, хакер не зміг завдати серйозної шкоди.

1.3. Атаки на рівні мережних програмних засобів

Мережні програмні засоби (МПЗ) є найуразливішими, тому що канал зв’язку, по якому передаються повідомлення, найчастіше не захищений, і всякий, хто може мати доступ до цього каналу, відповідно, може перехоплювати повідомлення і відправляти свої власні. Тому на рівні МПЗ можливі наступні атаки хакерів:

прослуховування сегменту локальної мережі (в межах одного і того ж сегменту локальної мережі будь-який підключений до нього комп’ютер в змозі приймати повідомлення, адресовані іншим комп’ютерам сегменту, а отже, якщо комп’ютер хакера приєднаний до деякого сегменту локальної мережі, то йому стає доступний весь інформаційний обмін між комп’ютерами цього сегменту);

перехоплення повідомлень на маршрутизаторі (якщо хакер має привілейований доступ до мережного маршрутизатора, то він дістає можливість перехоплювати всі повідомлення, що проходять через цей маршрутизатор, і хоча тотальне перехоплення неможливе через дуже великий об’єм, надзвичайно привабливим для хакера є вибіркове перехоплення повідомлень, що містять паролі користувачів і їх електронну пошту);

створення помилкового маршрутизатора (шляхом відправки в мережу повідомлень спеціального вигляду хакер добивається, щоб його комп’ютер став маршрутизатором мережі, після чого дістає доступ до всіх повідомлень, що проходять через нього);

нав’язування повідомлень (відправляючи в мережу повідомлення з помилковою зворотною мережною адресою, хакер перемикає на свій комп’ютер вже встановлені мережні з’єднання і в результаті одержує права користувачів, чиї з’єднання обманним шляхом були перемкнуті на комп’ютер хакера);

відмова в обслуговуванні (хакер відправляє в мережу повідомлення спеціального вигляду, після чого одна або декілька комп’ютерних систем, підключених до мережі, повністю або частково виходять з ладу).

Оскільки атаки хакерів на рівні МПЗ спровоковані відкритістю мережних з’єднань, розумно припустити, що для віддзеркалення цих атак необхідно максимально захистити канали зв’язку і тим самим утруднити обмін інформацією по мережі для тих, хто не є легальним користувачем. Нижче перераховані деякі способи такого захисту:

максимальне обмеження розмірів комп’ютерної мережі (чим більша мережа, тим важче її захистити);

ізоляція мережі від зовнішнього світу (по можливості треба обмежувати фізичний доступ до комп’ютерної мережі ззовні, щоб зменшити вірогідність несанкціонованого підключення хакера);

шифрування мережних повідомлень (тим самим можна усунути загрозу перехоплення повідомлень, правда, за рахунок зниження продуктивності МПЗ і зростання накладних витрат);

електронний цифровий підпис мережних повідомлень (якщо всі повідомлення, що передаються комп’ютерною мережею, забезпечуються електронним цифровим підписом, і при цьому не підписані повідомлення ігноруються, то можна забути про загрозу нав’язування повідомлень і про більшість загроз, пов’язаних з відмовою в обслуговуванні);

використання брандмауерів (брандмауер є допоміжним засобом захисту, який використовується тільки в тому випадку, якщо комп’ютерну мережу не можна ізолювати від інших мереж, оскільки брандмауер досить часто не здатний відрізнити потенційно небезпечне мережне повідомлення від абсолютно нешкідливого, і в результаті типової є ситуація, коли брандмауер не тільки не захищає мережу від атак хакерів, але і навіть перешкоджає її нормальному функціонуванню).

 

2. Порушники комп’ютерної безпеки

Перед початком розгляду потрібно визначити ряд понять, які широко використовуються в колі спеціалістів по комп’ютерній безпеці, що займаються виявленням вторгнень (ID – Intrusion Detection).

Під загрозою вважається потенційна можливість зловмисного і несанкціонованого доступу до інформації, маніпулювання інформацією, приведення системи в неробочий або ненадійний стан.

Атака – це сценарій або набір дій, направлених на виникнення загрози.

Порушення (penetration), проникнення або вторгнення (intrusion) – успішна атака. Результатом порушення є компрометація комп’ютерної системи.

Зловмисник (attacker) – це хто-небудь, хто намагається здійснити атаку в системі.

Порушником (penetrator, intruder) називається той зловмисник, атака якого виявилася успішною.

 

Класифікація порушників безпеки

1. Зовнішні порушники (outsiders).

До цієї групи відносяться користувачі, які не авторизовані для використання даної комп’ютерної системи. Це означає, що вони не мають в системі облікового запису і згідно системної політики безпеки взагалі не можуть працювати в даній системі. Таким чином, до зовнішніх порушників не відносяться користувачі, що входять в систему під гостевим ідентифікатором і паролем (в цьому випадку існує гостьовий обліковий запис).

2. Внутрішні порушники (insiders).

До цієї групи відносяться користувачі, які можуть бути авторизовані для використання даної комп’ютерної системи, тобто можуть мати в ній обліковий запис, але не авторизовані для звертань до конкретних ресурсів системи.

2.1. Імітатори (masqueraders).

Імітатори – це користувачі, які використовують для своєї діяльності обліковий запис іншого користувача (і можуть не мати свого облікового запису в системі). Звичайно, така діяльність визнається злісною, оскільки компрометується інший користувач системи, а також порушується конфіденційність інформації. Найбільш небезпечні імітатори, які заволоділи права адміністратора системи (суперкористувачі). Тим самим вони отримують практично необмежений доступ до ресурсів системи.

2.2. Нелегальні користувачі (clandestine users).

До нелегальних користувачів відносяться користувачі, що обходять засоби аудиту й контролю доступу, а також такі, що блокують інші системні механізми. Їх діяльність пов’язана з активним використанням недоліків системи, занесення в систему троянських коней і закладок. Нелегальні користувачі приховують свою злісну діяльність (тобто невидимі для засобів контролю), тому справедливо вважаються найбільш небезпечними порушниками.

2.3. Законні користувачі, які зловживають своїми повноваженнями (misfeasors).

Законні користувачі, які зловживають своїми повноваженнями (перевищують свої повноваження), виділені в певний клас порушників по тій причині, що формально ці користувачі діють, не виходячи за рамки своїх прав, не порушуючи політику безпеки системи. Тим не менш, вони можуть навмисно порушувати нормальну діяльність системи шляхом надмірного використання ресурсів. У цьому разі говорять про неправильне використання системи (misuse, abuse). Його наслідком може стати зниження швидкодії системи, виникнення відмов у обслуговуванні, що негативно відображається на загальній надійності системи. Звичайно, що вважати зловживанням і як обмежувати повноваження користувача, – це питання, яке повинно бути розглянуте ще на стадії проектування системи. Використання ресурсів обов’язкове для систем високої надійності.

Недопустимим є перевищення своїх повноважень адміністратором комп’ютерної системи, який вважається довіреним суб’єктом в системі. Тим не менш, у випадку, коли неможливо повністю виключити можливості зловживань зі сторони адміністратора системи, роль адміністратора розподіляється між декількома довіреними користувачами, які мають необмежений набір повноважень.

Користувачі, що зловживають своїми повноваженнями, визнаються важчими для виявлення, ніж імітатори, оскільки різниця між аномальною і нормальною поведінкою для них практично відсутня.

 

3. Захист комп’ютерних систем від несанкціонованого доступу

Перераховані вище методи атаки хакера на комп’ютерну систему є найтиповішими та описані в загальній формі. Для узагальненої моделі несанкціонованого доступу (НСД) та зламу комп’ютерних систем можна сформулювати універсальні правила, згідно яких, щоб звести ризик до мінімуму, потрібно:

Не відставати від хакерів: потрібно бути завжди в курсі останніх розробок з області комп’ютерної безпеки. Необхідно оформити підписку на декілька спеціалізованих журналів, в яких детально освітлюються питання захисту комп’ютерних систем від зламу. Регулярно проглядайте матеріали, що поміщаються на серверах хакерів Internet (наприклад, astalavista.box.sk, xakep.ru).

Керуватися принципом розумної достатності: не потрібно намагатися побудувати абсолютно надійний захист. Адже чим надійніший захист, тим більше він споживає ресурсів комп’ютерної системи і тим важче користуватися ним.

Зберігати в таємниці інформації про принципи дії захисних механізмів комп’ютерної системи. Чим менше хакеру відомо про ці принципи, тим важче буде для нього організувати успішну атаку.

Намагатися максимально обмежити розміри комп’ютерної мережі, що знаходиться під захистом, і без крайньої необхідності не допускати її підключення до Internet.

Пошукати інформацію про нове програмне забезпечення, що є на серверах хакерів Internet, перш ніж вкласти кошти в його закупку.

Розміщувати сервери в приміщеннях, що знаходяться під охороною. Не потрібно підключати до них клавіатуру і монітори, щоб доступ до цих серверів здійснювався тільки через мережу.

Шифрувати і забезпечувати цифровим підписом абсолютно всі повідомлення, що передаються по незахищених каналах зв’язку, повинні.

Пропускати всі повідомлення, що відправляються в комп’ютерну мережу, що знаходяться під захистом, або приймаються з неї повинні проходити через брандмауер, а також шифруватися і забезпечуватися цифровим підписом, якщо ця мережу має з’єднання з іншою незахищеною мережею.

Не нехтувати можливостями, які надає аудит. Інтервал між сеансами перегляду журналу аудиту не повинен перевищувати однієї доби.

Вивчити уважно всі нові записи з журналу аудиту, якщо з’ясується, що кількість подій надзвичайно велика, оскільки не виключено, що комп’ютерна система піддалася атаці хакера, котрий намагається приховати сліди своєї присутності, зафіксовані в журналі аудиту.

Регулярно проводити перевірку цілісності програмного забезпечення комп’ютерної системи. Перевіряти її на наявність програмних закладок.

Реєструвати всі зміни політики безпеки в звичайному паперовому журналі. Регулярно звіряйте політику безпеки із зареєстрованою в цьому журналі. Це допоможе вказати на присутність програмної закладки, якщо вона була впроваджена хакером в комп’ютерну систему.

Користуватися захищеними операційними системами.

Створити декілька пасток для хакерів (наприклад, створіть на диску файл з привабливим ім’ям, прочитати який неможливо за допомогою стандартних засобів, і якщо буде зафіксоване успішне звернення до цього файлу, значить, в комп’ютерну систему, що знаходяться під захистом, була впроваджена програмна закладка).

Регулярно тестувати комп’ютерну систему за допомогою спеціальних програм, призначених для визначення ступеня її захищеності від атак хакерів.

 

Практичні завдання

1. Провести інвентарний облік ресурсів робочої станції.

1) Апаратна частина.

а) Наявність зовнішніх ушкоджень основних комплектуючих (системний блок, монітор, клавіатура…).

б) Монітор (розмір по діагоналі, виробник, модель).

в) Системний блок:

  • Процесор (виробник, модель, тактова частота)
  • Оперативна пам’ять
  • Материнська плата
  • Відеокарта
  • Мережна карта
  • Оптичні пристрої (CD-ROM/RW, DVD-ROM/RW, …)
  • Жорсткі диски (виробник, модель, швидкість обертання пластин, розмір кеш-пам’яті, інтерфейс передачі даних)
  • Інші зовнішні запам’ятовуючі пристрої (FDD, ZIP, JAZZ, магнітооптичні, стрімери, …)
  • Комунікаційні порти (кількість кожного наявного типу)
  • Інші (звукова карта, модем, ТВ-тюнер, RAID-контролер…)

г) Периферійні пристрої:

  • Принтер
  • Сканер
  • Джерела безперебійного живлення (ДБЖ – UPS)
  • Клавіатура
  • «Миша»
  • Інші.

 

2) Програмне забезпечення.

Перевірити на наявність встановлене програмне забезпечення (назва, версія, серійний номер)

  • BIOS
  • Операційна система (виробник, версія, IP-адреса, домен, пароль адміністратора…)
  • Необхідні драйвера пристроїв (відсутні, неробочі…)
  • «Офісний» набір: текстовий редактор, редактор електронних таблиць, редактор презентацій, СУБД, графічний переглядач (редактор)
  • Електронна пошта
  • Браузер.

 

3) Документальний облік.

  • Наявні договори закупки програмного забезпечення
  • Акти передачі матеріально-технічних засобів
  • Посадові інструкції підзвітного відділу
  • Правила та інструкції з питань безпеки та охорони праці.

 

Для збору даних про технічні характеристики комплектуючих системного блоку можна скористатися інформаційними утилітами MvPCinfo, Everest, Hinfo, Aida32 або стандартними засобами операційної системи.

У разі виявлення підозрілого або невідомого обладнання зробити відповідну помітку.

 

2. Перевірити операційну систему на наявність підозрілого програмного забезпечення.

 

1) За допомогою оснастки msconfig та редактору реєстру regedit переглянути список автозавантаження.

Звернути увагу на наступні ключі реєстру:

  • [HKLM\Software\Microsoft\Windows\CurrentVersion\Run]
  • [HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce]
  • [HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices]
  • [HKLM\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce]
  • [HKCU\Software\Microsoft\Windows\CurrentVersion\Run]
  • [HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce]
  • [HKCR\exefile\shell\open\command]
  • [HKLM\Software\Microsoft\ActiveSetup\InstalledComponents\ KeyName]
  • [HKLM\SOFTWARE\Classes\exefile\shell\open\command]

2) Переглянути список запущених процесів Windows та визначити серед них підозрілі (незнайомі). Для визначення таких процесів можна скористатися довідником стандартних процесів Windows “services.chm”.

3) Провести «поверхневий» огляд файлової структури всіх дисків.

4) Знайдені підозрілі програмні продукти занести в звіт.

 

3. Провести зачистку «сміття» у всіх можливих місцях його накопичення.

Провести аналіз наявних файлів «сміття» у наступних папках:

Папки тимчасового зберігання файлів всіх користувачів.

Папки об’єкта Windows «Корзина» на всіх дисках.

Папка тимчасового зберігання системних файлів операційної системи.

 

Контрольні запитання

  1. Які види ресурсів розрізняються в комп’ютерній системи?
  2. Які ресурси є найбільш критичними для функціонування комп’ютерної системи?
  3. Дайте характеристику призначення розділів реєстру.
  4. На які групи можна поділити спроби несанкціонованого доступу до комп’ютерних систем?
  5. Що розуміють під поняттями загроза безпеці, атака та порушення безпеки?
  6. Хто такі зовнішні та внутрішні порушники?
  7. Яку загрозу несуть собою порушники?
  8. Сліди діяльності якого класу порушників найважче виявити?
  9. Які заходи потрібно проводити задля запобіганню несанкціонованого доступу?
  10. Для чого потрібно проводити регулярний огляд комп’ютерних систем?


 

завантаження...
WordPress: 23.04MB | MySQL:26 | 0,330sec