Захист інформації в архітектурах клієнт / сервер

www.hackerz.ru

Відкриті системи клієнт / сервер підкуповують адміністраторів ІС виключно
простим доступом до корпоративної інформації, але бентежать складністю
вирішення завдань захисту даних у зв'язку з різнорідністю обчислювальних
компонентів – апаратних платформ, операційних систем, СУБД і прикладного
ПЗ. Проблема не тільки в тому, щоб домогтися злагодженої роботи засобів
захисту різних ланок, а й спростити життя пересічних користувачів, щоб
не змушувати їх у пошуках потрібних даних продиратися через безліч
загороджувальних кордонів і відповідати на однотипні питання: "Стій, хто йде?"
Кілька років тому заяву "я працюю у відкритому середовищі" сприймалося
співробітниками інформаційних служб як черговий комп'ютерний міф,
придуманий журналістами, – надто красиво, щоб бути правдою. Однак за
міру становлення новітньої технології все більша кількість компаній
сприймали прогресивні ідеї і починали створювати і експлуатувати
системи в архітектурі клієнт / сервер.

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

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

Користувачі локальних мереж згадували про існування засобів захисту
рідко – в момент введення мережевих паролів. При настільки нерозвинених інструментах
захисту адміністратори ЛЗ відповідним чином, тобто не дуже серйозно,
ставилися і до проблеми комп'ютерного захисту.

Чи означає це, що забезпечити гідний рівень безпеки систем в
архітектурі клієнт / сервер простіше, якщо рухатися до неї "зверху"? Практика
показує, що ні. Коли закрита хост-система інтегрується з
локальними мережами та серверами баз даних, її користувачі страждають не
стільки від нестачі засобів захисту, скільки від їхнього надлишку і
несумісності. На додаток до власних засобів захисту для
мейнфреймів з'являються системи захисту моніторів транзакцій, локальних
мереж і серверів БД. Створені різними виробниками, як правило, вони
не пристосовані для кооперативної роботи. Наприклад, ПО RACF для
мейнфреймів вимагає зміни пароля з періодичністю в 30 днів, а мережева ОС
– Щоквартально. Щоб отримати доступ до потрібної інформації, користувач
повинен подолати ряд "оборонних ешелонів", повідомивши кілька паролів.
Таким чином, виникає необхідність синхронізувати роботу засобів
безпеки всіх платформ. При цьому виникає фрагментація
відповідальності, коли для догляду за кожною платформою призначається
окремий адміністратор, що відповідає за свою ділянку безпеки, а
система в цілому залишається безхазяйної. У таких умовах був би вельми
ефективний готовий продукт, що виконує функції "парасольки безпеки" над
всій комп'ютерною системою. На жаль, подібного продукту на ринку поки
немає.

Напрошується висновок, що з переходом на архітектуру клієнт / сервер життя
компаній в сенсі їх безпеки не стає легше. Більше того, перед
адміністраторами ІС постає проблема створення ще однієї лінії оборони в
загальній системі захисту корпоративної інформації. Вирішувати завдання захисту даних
необхідно комплексно, враховуючи специфіку відкритих систем.
Фактори, що впливають на безпеку

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

Рівень захисту всієї системи визначається ступенем захисту її самого
уразливого ланки, яким, як правило, є включені в мережу
персональні комп'ютери. Багато виробників СУБД, намагаючись полегшити
життя кінцевих користувачів, перекладають функції контролю доступу до
даними на операційні системи. Основна ідея зводиться до мінімізації
засобів захисту у разі доступу до даних з Unix-машини виходячи з того, що
в ОС Unix реалізована надійний захист інформації. Виникає лазівкою
охоче користуються хакери, маскуючись під клієнтів Unix допомогою
завантаження реалізації Unix для ПК. У результаті СУБД розпізнає користувача
Unix і безтурботно допускає хакера до даних.

Концепції безпеки в розподілених системах

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

Буває, що дані з однієї таблиці зберігаються на різних фізичних
пристроях, тобто інформація фрагментована. Тут можливі два варіанти
(Рис. 1): інформація зберігається по рядках (горизонтальна фрагментація) або
по стовпцях (вертикальна фрагментація). Зокрема, в СУБД Oracle
принципи географічної прозорості і фрагментарною незалежності
реалізуються через механізм зв'язків (links) і синонімів (synonyms).
За допомогою зв'язків програмується маршрут доступу до даних: зазначаються
реквізити користувача (реєстраційне ім'я і пароль), тип мережного
протоколу (наприклад, TCP / IP) і ім'я БД. На жаль, всі ці параметри
доводиться описувати в тексті сценаріїв (scripts). Щоб засекретити
зазначену інформацію, паролі можна зберігати в словнику даних у
зашифрованому вигляді.

Наявність декількох внутрішніх БД у розподіленій системі, з одного
боку, ускладнює проблему безпеки, а з іншого – спрощує її.
Оскільки будь-яка база даних адмініструється автономно, для кожної з них
можна реалізувати свій власний спосіб захисту. Крім того, в такій
архітектурі легко ізолювати і обслуговувати конфіденційну інформацію.
Коли хакер зламує захист бази даних, він отримує доступ до
вмісту тільки однієї БД, а не до всієї системи в цілому.

Вона захищає вас з ранку до вечора …

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

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

Які ж засоби забезпечення безпеки є в арсеналі адміністратора
системи клієнт / сервер? По-перше, це різноманітні комерційні продукти
третіх фірм (див. врізку "Вони не пройдуть!"). По-друге, вбудовані
можливості СУБД, які адміністратор може і повинен використовувати в
метою захисту інформації. Хакер не зможе працювати з даними, якщо навіть
зуміє обійти сам додаток разом з його засобами захисту. Цінність
національних засобів правового захисту в тому, що контроль доступу відбувається
постійно, а не тільки в момент завантаження програми. На рис. 2 показана
архітектура додатку клієнт / сервер, де контроль доступу до бази даних і
її таблиць повністю реалізований на сервері. Клієнтський додаток просто
зчитує пароль користувача і відсилає його на сервер. Далі СУБД по
своїм внутрішнім таблиць користувачів перевіряє, чи має право даний
користувач працювати з БД. У разі позитивної відповіді формується
з'єднання з робочою станцією, в іншому випадку видається попередження
повідомлення типу "Неприпустимий користувач …" і зв'язок з сервером не
встановлюється.

Коли додаток адресує серверу запит на читання (оновлення, вставку
або видалення) даних або на виконання збереженої процедури, СУБД перевіряє
(Знову ж за своїм внутрішнім таблицями), дозволені користувачу ці
операції. У популярних базах даних Sybase і Microsoft SQL Server характер
доступу регулюється операторами GRANT і REVOKE, які надають і
відповідно віднімали права читання, модифікації, вставки і видалення
записів з таблиці (select, update, insert і delete в англійському
варіанті), а також виклику збережених процедур (execute).

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

Реалізація засобів захисту на рівні додатків

Застосування засобів захисту на рівні додатку (рис. 3) найбільш складний і
дорогий варіант, так як реалізувати його може тільки сам розробник
додатки. Цей метод дає більш суворий контроль доступу до даних,
оскільки дозволяє закласти в систему хитромудрі алгоритми всіляких
перевірок, відмінні від стандартних, добре відомих хакерам.
Після введення імені та пароля додаток перевіряє параметри користувача,
причому для цих цілей служить відповідна таблиця в базі даних або
спеціальний файл шифрованих користувальницьких паролів. Направляючи
SQL-запит на сервер, програма може користуватися завідомо коректним
паролем системного адміністратора або власника БД (dbo). У відповідь на
запит сервер висилає додатком всі дані без будь-якої фільтрації. Їх
відсів виконує сам додаток у момент видачі інформації з урахуванням
обмежень доступу для конкретного користувача, які можуть бути
"Зашиті" в логіці програми або зберігатися в базі даних.

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

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

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

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

Контроль цілісності бази даних ефективний також у боротьбі з
зловмисниками. Відомі випадки модифікації структури БД з корисливою
метою (див. врізку "Звідки надходить загроза"). Наприклад, легко підмінити
стандартний тригер (або збережену процедуру) однойменним новим, який
буде робити ті ж функції, що і старий, плюс додаткові, корисні
хакеру, скажімо, пересилати безгоспні копійки, які утворюються в результаті
округлення, на його банківський рахунок.

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

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

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

Реалізація централізованих систем захисту

Користувачі розподілених систем на шляху до потрібних даних повинні пройти
через декілька пунктів контролю і ввести відповідно кілька
різних паролів. Щоб легше утримувати паролі в пам'яті, вони винаходять
всілякі мнемонічні правила і схеми (наприклад, перший код –
"Січень", другий – "Лютий", третій – "Березень") або записують паролі на
листку паперу, тим самим полегшуючи собі життя, але одночасно спрощуючи і
злом системи.

Для вирішення проблеми "численних паролів" створювалися
спеціалізовані програми адміністрування безпеки. Зокрема,
програма RACF для мейнфреймів запитує всього один пароль і, якщо він
введений правильно, відкриває доступ не тільки до операційної системи (MVS),
але і, наприклад, до CICS-монітора і базі даних Oracle.

Програми управління безпекою в розподілених системах – монітори
безпеки – використовують глобальні таблиці безпеки (ГТБ), в яких
зберігаються для користувача паролі для доступу до всіх вузлів системи. Якщо
користувач правильно вводить перший код, від введення інших він
звільняється. Всю роботу за неї виконує монітор, який стежить за
тим, до якої підсистемі звертається користувач, вибирає потрібний пароль з
таблиці і передає його на вхід відповідної підсистеми. У складних
мережевих середовищах для реалізації процедур однократної реєстрації застосовуються
також довірчі відносини між серверами різних доменів.

Найпростіший і розповсюджений метод – це централізований контроль
засобів безпеки (рис. 4), вперше реалізований в продуктах RACF і
ACF2 і пізніше запозичений іншими програмами. Суть його в тому, що для
всіх елементів розподіленої системи використовується єдиний пароль, який
після введення або заміни тиражується по всіх вузлів системи. Недолік цієї
схеми в наступному: при зависанні процесора, на якому працює процедура
тиражування, блокується робота всієї системи. Крім того, якщо хто-то
зуміє перехопити (розшифрувати, вгадати) пароль на одному сайті, то
отримає вільний доступ до системи в цілому.

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

Програмно-апаратні комплекси захисту

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

Як правило, паролі діють протягом деякого часу і в цьому сенсі
є свого роду об'єктами багаторазового використання. Свої реквізити
користувач зазвичай вводить один раз на момент реєстрації в системі. Для
професійного хакера визначити чужий ID і пароль – не найскладніше.
Завдання зломщиків помітно ускладнилася б (або взагалі виявилася їм не по
зубах), якби пароль (код доступу) змінювався динамічно і ніколи не
повторювався. Саме цим шляхом пішла компанія Security Dynamics
(Кембридж, шт. Массачусетс), яка розробила технологію захисту комп'ютерних
мереж з використанням інтелектуальних карт (SecurID) і сервера захисту
(ACE / Server) для платформи Unix. Суть цієї технології полягає в тому,
що кожен користувач системи знає тільки свій персональний
ідентифікує код (PIN) і отримує пристрій, що нагадує пластикову
магнітну картку з невеликим рідкокристалічним дисплеєм, на якому
щохвилини з'являється неповторяющійся цифровий код. Карта програмується
індивідуально для кожного користувача. Генерований нею код використовується в
цілях аутентифікації користувача в комп'ютерній системі. На практиці для
отримання доступу до ресурсів, що захищаються користувач вводить PIN-код, а
потім пароль (код доступу), який у цей момент висвічується на дисплеї
карти. Ніяких додаткових пристроїв для зчитування інформації з карти
не потрібно.

Спеціальна технологія, реалізована в програмних і апаратних модулях
(Access Control Module, ACM) сервера захисту, дозволяє синхронізувати
коди доступу на сервері та карти для кожного користувача системи.
Аутентифікація відбувається в той момент, коли ACM пізнає поєднання
персонального коду та коду доступу карти.

Апаратні модулі контролю доступу можуть приєднуватися до будь-яких
компонентів мережі: хост-машин, клієнтським станціям, звичайним і
комунікаційним серверів. Для підключення цих пристроїв застосовуються
звичайні послідовні порти, а зв'язок з комп'ютером здійснюється за
інтерфейсу RS-232. Компанія випускає кілька модифікацій пристроїв
контролю в залежності від кількості обслуговуваних користувачів (від 100 до
6400) та рівня сервісу.

На рис. 6 показано схема організації системи захисту мережі масштабу
підприємства на базі ACE / Server компанії Security Dynamics, яка
забезпечує:

гарантований захист ресурсів комп'ютерної системи від доступу 
несанкціонованих користувачів;
підтримку великої кількості користувачів;
просте адміністрування системи захисту;
ведення аудиторських журналів і підготовку звітів;
можливість інтеграції з іншими корпоративними додатками: ACE / Server 
підтримує мову структурованих запитів (SQL), має власний 
інтерфейсний мова (4GL) і пропонує користувачам інтерфейс прикладного 
програмування для вирішення задач перевірки повноважень;
сумісність з продуктами безлічі незалежних фірм (IBM, Oracle, 
Cisco Systems, Shiva, Mergent, 3Com та ін), що відносяться до сфери 
віддаленого доступу, захисту в Internet, мережевих додатків; - регулярне 
виконання процедури резервного копіювання службової бази даних.

ACE / Server працює на апаратних платформах під управлінням SunOS / Solaris
компанії Sun Microsystems, AIX корпорації IBM і HP-UX від Hewlett-Packard.
В якості клієнтів можуть виступати комп'ютери під SunOS / Solaris, AIX,
HP-UX, NT / RAS, NetWare і ін

Залежно від конфігурації захищається системи ACE / Server варто від 2450
дол., а захисна карта (SecurID) – 34 дол.

Як реорганізувати корпоративну систему безпеки

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

1. Погляньте на свою систему з висоти пташиного польоту. Визначте
користувачів і склад технічних засобів, за допомогою яких вони
добираються до даних (робочі станції, неінтелектуальні термінали або
модеми). Потім з'ясуйте, де саме зберігаються дані: на мейнфрейми,
файл-серверах, серверах баз даних чи робочих станціях. В результаті у
вас з'явиться "фізичний" погляд на архітектуру системи.

2. Прорисуйте всі можливі шляхи доступу користувачів до даних, наприклад
"X6" – від терміналу до мейнфреймів, "x7" – від віддаленого користувача до
комунікаційному сервера, "x1" – від робочої станції до сервера БД і т. д.
Отримана схема проектує фізичні зв'язку на логічні маршрути
доступу до даних. Її аналіз дозволить відповісти на запитання типу "Чи зможе
користувач терміналу отримати доступ до будь-якими даними системи? ".

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

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

Чи великий запас міцності?

Припустимо, що компанія завжди серйозно ставилася до проблеми
безпеки і захистила свою обчислювальну середу усіма доступними
засобами. Виникає закономірне питання: наскільки ефективні прийняті
заходи і чи може така організація відчувати себе в цілковитій безпеці?
Співробітники Міністерства оборони США також задалися цим питанням і вирішили
перевірити свою систему захисту (найнадійнішу у світі!) на міцність.
Роботу по злому виконували інженери управління Defense Information System
Agency (DISA). Їм вдалося розкрити 7860 комп'ютерних систем (серверів і
мейнфреймів) з 8932 машин, що становлять комп'ютерний парк міністерства.
Характерно, що сам факт несанкціонованого доступу вдалося
зафіксувати лише в 390 випадках.

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

Складна топологія мережного середовища характерна не лише для структур
Міністерства оборони США. Навіть у невеликих корпораціях можуть нараховуватися
десятки серверів і робочих станцій. Зрозуміло, що в таких умовах
серйозний аналіз і регулярне тестування засобів захисту вручну
практично неможливі. Для цього створюються програми, які
автоматично сканують всі компоненти мережі з метою виявлення "дірок" в
системі захисту. Найбільш відомий продукт даної категорії – SATAN
(Security Analysis Tool for Auditing Networks), розроблений двома
програмістами-ентузіастами Даном Фармером (Dan Farmer) і Уітцем Венема
(Wietse Venema). Автори ставили перед собою благородну мету – забезпечити
адміністраторів комп'ютерних мереж інструментом для виявлення лазівок в
Unix-системах, об'єднаних в мережі з протоколом IP. Однак програму
оцінили не тільки адміністратори, а й численні хакери, які застосовують
новий інструмент для більш кваліфікованого аналізу та подальшого
злому чужих систем. Поява ПО SATAN викликало жваву дискусію з
приводу сучасних засобів захисту. Кажуть, що в цьому і полягала головна
мета її творців.

У найпростішому режимі роботи SATAN намагається зібрати якомога більше
інформації про стан віддалених мережевих вузлів. Для цього він аналізує
присутність на хост-машинах таких мережевих сервісів як NFS, NIS, ftp,
tftp, rexd, і фіксує їх конфігураційні параметри. Як відомо,
більшість уразливих місць у системі захисту утворюється з причини її
неправильної налаштування, тому, порівнюючи поточні установки з
правильними, SATAN може дати конкретні рекомендації щодо виправлення
ситуації. Тим не менш одна справа, коли за допомогою SATAN ви аналізуєте
мережі своєї корпорації, і зовсім інша, коли подібні дослідження
проводить хтось з боку. "Боязнь Сатани" стимулювала поява цілого
ряду програм категорії anti-SATAN. Всі вони виходять з того, що під час
сканування SATAN залишає "відбитки пальців", які можна виявити
в процесі контролю мережевого трафіку.

Найбільш відомі програми цього класу – вільно розповсюджувані
Gabriel фірми Los Altos Technology; NATAS, створена Робертом Евансом;
Courtney, розроблена в Ліверморської національної лабораторії ім.
Лоуренса, і комерційна програма Stalker компанії Haystack Labs.
Чи такий страшний SATAN, як його малюють? Адже він виявляє тільки ті слабкі
місця, які добре відомі досвідченим адміністраторам. Чи варто взагалі
включати SATAN-детектори в набір засобів захисту корпоративної середовища?
Відповідаючи на останнє запитання, одні вважають, що при наявності надійних
засобів захисту від проникнення ззовні немає сенсу намагатися виявити
спроби їх обійти. Інші воліють фіксувати все, хай навіть не
здійснені плани проникнення, прагнучи знову і знову перевіряти на
практиці надійність засобів захисту.

Аудит та резервне копіювання

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

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

Для обмеження прав доступу користувачів до БД в обхід програми
розробники програм часто забороняють безпосередню модифікацію її
основних таблиць за допомогою операторів insert, update і delete. Замість
цього використовуються відповідні процедури, що зберігаються (наприклад,
proc_insert, proc_update і proc_delete), які викликаються з програми.
У нормальній ситуації користувачі програми повинні мати права лише на
читання даних і виклик відповідних інтерфейсних процедур.
Пряме відношення до теми безпеки має стратегія створення резервних
копій і відновлення баз даних. Проблема в тому, що зазвичай ці операції
виконуються в неробочий час в пакетному режимі. У більшості СУБД
резервне копіювання і відновлення даних дозволяються тільки
користувачам з широкими повноваженнями (права доступу на рівні системного
адміністратора або власника БД), а вказувати настільки відповідальні паролі
безпосередньо у файлах пакетної обробки вкрай небажано. Щоб не
зберігати пароль у явному вигляді, рекомендується написати простеньку прикладну
програму, яка сама б викликала утиліти копіювання / відновлення. У
цьому випадку системний пароль повинен бути "зашитий" в код зазначеного
додатки. На жаль, цю програму доведеться перекомпілювати всякий
разу при зміні пароля. Ще один метод полягає в тому, що в системі
захисту описується спеціальний користувач з широкими повноваженнями, після
чого права на читання та модифікацію даних у нього віднімаються. У результаті
такий користувач тільки й може, що виконувати операції резервного
копіювання і відновлення даних. Якщо хтось впізнає його пароль,
особливої шкоди від цього не буде.

Висновки

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

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

RACF – поширений інструмент захисту даних для мейнфреймів
Протягом всього терміну існування великих машин корпорація IBM
приділяла величезну увагу захисту інформації в своїх системах, і її
основним продуктом у цій галузі стала система Resource Access Control
Facility (RACF), що шліфувалася протягом 25 років. Зазначене ПЗ
призначено для обслуговування сімейства комп'ютерів IBM, що працюють під
управлінням ОС MVS. Наведемо деякі функції цього продукту:

 
ідентифікація, аутентифікація і авторизація користувачів. Кожному 
користувачеві комп'ютерної системи присвоюються унікальний ідентифікатор 
(ID) та пароль, за якими RACF визначає, чи входить даний користувач 
в список користувачів системи і чи може він працювати в ній. Цей 
процес називається аутентифікацією користувача. Коли останній 
запитує доступ до конкретних ресурсів або об'єктів, RACF розпізнає 
призначений для користувача ID (ідентифікує користувача) і, якщо цей 
користувач має відповідними правами, відкриває доступ до 
необхідним ресурсів. При цьому адміністратор системи може керувати 
рівнями та засобами доступу до об'єктів, які включають в себе 
команди, набори даних, дискові пристрої, термінали, накопичувачі на 
магнітних стрічках, тобто "авторизувати" користувачів. У процесі 
роботи користувача спеціальні програми - менеджери ресурсів - 
фіксують всі звернення користувачів до інформаційних ресурсів;
групові паролі. Часто група користувачів, наприклад з одного 
підрозділу, постійно працює з загальними даними. У цьому випадку можна 
не призначати індивідуальні ідентифікатори і паролі кожному користувачеві 
групи, а "виписати" груповий пропуск (Passticket);
адміністрування. Адміністратор системи може контролювати і 
аналізувати роботу RACF як з центрального пункту, так і з будь-якого 
терміналу. Передбачено два режими: командний (мовою TSO) і 
інтерактивний (за допомогою утиліти ISPF). Одна команда оператора може 
автоматично направлятися всіх баз даних. Наприклад, виконання 
команди Update для таблиць розподілених БД може бути синхронізоване;
аудит. RACF підтримує гнучкі і потужні засоби ведення журналів, 
дозволяють згодом легко аудировать роботу користувачів у системі 
(Тривалість роботи, доступ до інформаційних ресурсів і т. д.). 
Системні журнали можна переглядати динамічно (утиліта SMF), 
вивантажувати у вигляді файлів або роздруковувати за допомогою спеціального 
генератора звітів;
синхронізація паролів. За допомогою RACF користувачі можуть синхронно 
міняти свої паролі, наприклад, на різних серверах баз даних. Крім 
того, можна синхронізувати зміну паролів декількох користувачів на 
одній і тій же системі.
 

Вони не пройдуть!

Деякі програмні засоби комп'ютерної захисту для середовища клієнт / сервер
AutoSecure

Platinum Technology (Окбрук, шт. Іллінойс)

Програмне забезпечення AutoSecure (спочатку відому під ім'ям
SeOS компанії Memco Software) являє собою набір засобів захисту
обчислювальних систем з серверами під ОС Unix, HP-UX, AIX і SunOS / Solaris
і клієнтськими станціями з інтерфейсом Motif.

До складу програми входять три незалежних модуля: AutoSecure Access
Control – контролює доступ користувачів до захищуваних програмами і
файлів, а в разі спроб несанкціонованого доступу сповіщає про них
адміністратора системи; AutoSecure Security Administrator – служить для
ведення списків користувачів, груп користувачів, що захищаються ресурсів,
налаштування прав доступу користувачів до ресурсів; AutoSecure Single Sign On
– Відкриває користувачам доступ до даних, що зберігаються на мейнфреймах. У
цьому випадку адміністратор і користувачі отримують такий же рівень
безпеки і комфортності, як і на великих машинах, де використовуються
системи RACF корпорації IBM або ACF2 від Computer Associates. Нижче
наведені основні особливості продукту фірми Platinum:

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

Вартість пакету AutoSecure складає 1000 дол. на один сервер і по 150
дол. на кожну робочу станцію.

Guardian DataLynx
(Сан-Дієго, шт. Каліфорнія)

Guardian за короткий термін став стандартом де-факто для систем обліку та
контролю доступу в середовищі Unix. Програма підтримує близько 20 версій цієї
ОС і має загальний для всіх платформ графічний інтерфейс Motif. За допомогою
ПО Guardian адміністратор системи може призначити тимчасові рамки, в
межах яких користувачі можуть реєструватися в системі. Як тільки
час роботи закінчується, Guardian змушує користувача закінчити роботу.
Велика увага система приділяє дисципліні ведення паролів. Так,
програма регулярно нагадує користувачам про необхідність зміни
паролів, змушує всіх або деяких користувачів змінювати паролі при
черговій реєстрації, веде облік раніше вводяться паролів, автоматично
генерує мільйони паролів з форматним контролем (FIPS-181). Коли
користувач перевищує число допустимих спроб введення паролів, Guardian
блокує його вхід в систему. Передбачено постійне ведення журналів, в
яких фіксується історія роботи користувачів.
Програма функціонує на комп'ютерах HP, IBM і Sun Microsystems.
OmniGuard

Axent Technologies (підрозділ компанії Raxco, Роквілл, шт. Меріленд)
Комплект продуктів, призначений для вирішення проблем безпеки в
системах клієнт / сервер. Пакет складається з шести компонентів, що дозволяють
адмініструвати бази даних в розподілених мережах масштабу підприємства.
Функції продукту охоплюють всі аспекти проблеми безпеки в
архітектурах клієнт / сервер, включаючи управління захистом даних,
ідентифікацію та адміністрування користувачів, моніторинг трафіку,
контроль за вторгненням у систему ззовні, забезпечення безпечного обміну
повідомленнями і файлами.

OmniGuard реалізований в архітектурі клієнт / сервер, підтримує декілька
платформ і конструктивно складається з трьох частин: презентаційної частини,
керуючого сервера та інтелектуального агента. За бажанням інтерфейс
користувача може бути налаштований під X / Motif або Windows. Керуючий
сервер працює на платформах NetWare, OpenVMS і різних варіантах Unix.
Вартість продукту – 1995 дол.

DBA-Xpert for Oracle
Compuware (Фармінгтон-Хіллс, шт. Міннесота)

Засіб централізованого адміністрування та забезпечення захисту
інформації в розподілених системах.
Продукт підтримує роботу з довільним числом баз даних. Є
засоби аналізу та навігації для БД Oracle.

Складається з трьох компонентів: Secure-Xpert (централізоване управління
системою безпеки для розподілених даних), Change-Xpert (функції
синхронізації) і Reorg-Xpert (операції по завантаженню / вивантаженню даних).
SQL Secure 3.1

BrainTree Technology (Норвелл, шт. Массачусетс)

Додаток класу клієнт / сервер для адміністрування засобів захисту
інформації в базах даних Oracle. Програма фіксує спроби впровадження в
систему ззовні, синхронізує паролі користувачів в кількох БД,
дозволяє гнучко набудувати процес внутрішнього аудиту, регламентує
доступ користувачів до таблиць бази даних на рівні рядків.
Завдяки компоненту Password Manager користувач може працювати з
декількома базами даних на різних апаратних платформах, використовуючи
єдиний пароль. Крім того, можлива настройка механізму управління
паролями користувачів відповідно до прийнятих в конкретній організації
стандартами: передбачено завдання мінімальної довжини пароля та терміну його
дії, допустимого числа спроб підбору пароля при реєстрації в базі
даних.

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

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

Secure Network Services
Oracle (Редвуд-Шорс, шт. Каліфорнія)

Наявність засобів, що призначений для роботи з продуктом SQL * Net
корпорації Oracle і підтримує стандарт шифрування інформації R4
компанії RSA Data Security. Залежно від типу апаратної платформи
(DEC, Hewlett-Packard, Silicon Graphics та ін) вартість продукту
варіюється від 200 до 6000 дол.

Звідки виходить загроза …

Проблема захисту ІВ завжди носила реактивний характер: комп'ютерні пірати
знаходили "дірки" в системі комп'ютерного захисту, а компанії спішно шукали
кошти, щоб закрити виявилися проломи. Якщо спочатку поняття
"Хакер" асоціювалося з образом здатного молодої людини, який
"Шарить" по чужих мереж заради цікавості, то сьогодні піратський бізнес
поставлений на професійну основу і ним займаються цілком дорослі і
кваліфіковані люди. Зрозуміло, що і інтерес у них до чужої інформації
виключно комерційний. Існують хакерські електронні дошки
оголошень, де фігурують розцінки на видобуток секретної інформації, йде
обмін відомими (хакерам) паролями та кодами доступу до чужих
інформаційним системам.

У наші дні комп'ютерне піратство набуло різноманітні форми і широкий
розмах. При цьому великий відсоток злочинів припадає на частку
власних (як нинішніх, так і колишніх) співробітників організацій. До
жаль, факти витоку інформації зсередини фірми, як правило, ховаються.
Мабуть, збиток від зовнішнього ворога не настільки страшний, як невдоволення
акціонерів, готових звинуватити керівництво компанії в некомпетентності.
Всі пам'ятають Ніколаса Лісона (Nicholas Leeson), що призвів до банкрутства
найбільший і найнадійніше британський Barings Bank. Лісон застосовував пароль,
відомий йому ще з часів роботи аудитором. З його допомогою він отримав
доступ до особливих банківських рахунків, які і використовував у своїх
ризикованих операціях.

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

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

… і чому мовчить дзвін?

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

Готові програми захисту даних не користуються підвищеним попитом – повна
аналогія з продажем медичних страхових полісів: як переконати людину
купити поліс, якщо він жодного разу в житті не мала.
Справжній же інтерес компаній до засобів захисту проявляється після того,
як вони стають жертвами хакерів. За відомостями журналу "Open Computing"
і американської National Computer Security Association (NCSA), отриманими в
результаті опитування, потерпілі компанії в два рази частіше починають
використовувати шифрування даних і цифровий підпис.

Існує думка, що, поки фірма зберігає інформаційну закритість, її
дані знаходяться в безпеці, але з підключенням до Internet або
появою віддалених користувачів ступінь ризику значно зростає.
Це вірно, але багато компаній не усвідомлюють, що основна загроза виходить не
від зовнішнього, а внутрішнього ворога. За даними згаданого опитування, від 70 до
85% комп'ютерних зломщиків – це сьогоднішні або колишні співробітники фірм.
З 390 респондентів, велику частину яких склали керівники відділів
ІС і системні адміністратори, 77% думають, що вони більш-менш
застраховані від зовнішнього проникнення в корпоративні БД, і тільки 48%
коли-небудь вживали заходів для захисту від внутрішнього несанкціонованого
втручання.

Крім комерційних додатків, існують корпоративні засоби захисту,
які розробляються організаціями самостійно і можуть застосовуватися
вельми ефективно. На жаль, їх створення приділяється занадто мало
уваги. Розробники додатків зазвичай не вистачає заздалегідь
встановлені терміни і постійно перебувають під тиском адміністрації,
вимагає видачі "на гора" хоч який-небудь працює версії системи. У
війну проблеми безпеки відкладаються на потім, коли на їх
рішення не залишається ні часу, ні коштів.
Ще один чинник, що перешкоджає приживлюваності засобів захисту, –
психологічний. З точки зору пересічних користувачів, трудитися в
умовах тотального захисту і таємності дуже незручно. Вводити
багаторазові паролі (та ще й пам'ятати їх), шифрувати і дешифрувати робочі
дані для них виявляється досить важко. Однак прагнення йти
на поводу у користувачів, які відстоюють власні інтереси, нерідко
кінчається вельми плачевно.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*