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

— Ось в Америці — це так! А у нас і брати-то нічого.

— А якщо є, то кому? Вони ж не вміють!

Це неправда. За статистикою найбільше комп’ютерних злочинів вчиняється співробітниками (або колишніми співробітниками) фірми. У будь-якій організації є секретна інформація, і все більша її частина виявляється довіреної комп’ютера. Мотиви можуть бути різні: гроші, помста, бажання пограти, цікавість, незадоволене почуття власної значущості. Це набагато простіше, ніж залізти в чужий будинок і стягнути столове срібло. Кілька натискань на клавіші і все: багаторічна робота втрачена назавжди. Потрібно бути готовим до того, що такою людиною може виявитися будь-хто. Як у детектива Агати Крісті. Норми моралі нині слабо стримують людей від численних спокус. Інтернет дає кожному непідготовленій людині можливість зламати складну комп’ютерну систему. Досить запустити пошукову машину, і кожен зможе знайти інструкції для початківців хакерів і бойовий арсенал для нападу. Це набагато простіше, ніж розшукати відмичку!

Ваше завдання, як адміністратора мережі (шерифа містечка в преріях), полягає в тому, щоб викрити злочинця або, краще, запобігти злочину. Напад через Інтернет заслуговує окремої розмови, тому я хотів би звернути увагу на локальну мережу, яка є практично в будь-якій організації. Це може виявитися складним, але завжди цікаво змагатися з розумним противником. Взяти хоча б Кевіна Мітніка, одного з найбільш відомих хакерів сучасності. Що змусило його проникнути в комп’ютер провідного фахівця з комп’ютерної безпеки Цутому Шимомуры? Манія величі або ж інші причини — неважливо, але такі люди дуже небезпечні, тому що вони думають про злом мережі постійно. А скільки разів на день ви думаєте про захист? Протистояння меча і щита, броні і снаряда буде тривати весь час, поки існує світ. Переможцями в цій битві стають тільки тимчасово. Показово те, що меч винайшли раніше, ніж щит. Значить, ваш противник завжди на один крок попереду.

Яку ж стратегію захисту мережі вибрати?

Пасивний варіант передбачає включення всіх захисних механізмів, що є в наявності, уважне спостереження за усіма історіями злому, регулярне залатування дірок. Це цілком традиційну поведінку, і від хакерів воно врятувати не може. Справді, хіба не виявляють одну дірку, то іншу в програмах Microsoft, Netscape і інших? Помилки неминучі, і вважати систему безпечною можна, лише нічого не знаючи про неї. Це нагадує спокій людини, що сидить на бомбі з запаленим гнотом, не знаючи про це. Його не можна вважати сміливим: він не знає. Хочете прикладів? — Будь ласка!

Першим оборонним редутом зазвичай вважається пароль на BIOS. Якщо зловмисник не має доступу до працюючого комп’ютера, то, по ідеї, єдиним виходом для нього буде розбирання корпусу і зняття пароля. Це ускладнює дії хакера і змушує його залишити сліди злому. І що ви скажете: для AWARD BIOS 4.22-4.50 є універсальні паролі! А адже AWARD BIOS в даний час дуже поширений. Я був в шоці, коли набрав на своєму домашньому комп’ютері слово «AWARD_SW» і система мене впустила. Як вам це подобається? У мене було таке відчуття, що я залишився голим! Нехай у версіях вище 4.50 це виправлено, але вже з’явилася утиліта unaward3, яка читає і паролі нової версії. Потрібно лише змусити користувача запустити маленьку програму (під виглядом законної), і пароль перекочує в чужу кишеню!

Novell Netware (так само як і Windows NT можна вважати відносно захищеної ОС. Якщо дотримати всі рекомендації щодо безпеки, можна змусити хакера попотіти. Тим не менш, розслаблятися не варто, так як відомо чимало способів обходу захисту.

Якщо зловмисник отримує доступ до файл-серверу, нехай і вимкненому, через 15 хвилин він отримає на ній права адміністратора. Кому цікаво, може прочитати «The Unofficial Netware Hack FAQ» (www.tsu.tomsk.su/~eugene/) і переконатися в цьому.
Якщо користувач одержує доступ до машини адміністратора, він може встановити невеликий перехоплювач кодів клавіатури типу GETIT. Так як у вихідному файлі буде купа сміття, можна взяти NWL, орієнтовану на запис натиснень після запуску login. Помітить адміністратор, чи ні?
Якщо фізичної допуску на машину адміністратора немає, можна покластися на більш складну процедуру аналізу пакетів.
Але набагато простіше взяти CHKNULL. Це відмінна програма, яка після запуску видає список користувачів, у яких немає паролів. Вона не робить нічого протизаконного з точки зору ОС!
Дірок в захисті Windows NT теж чимало (www.HackZona.Ru).

Отримати доступ до NTFS ДОС можна за допомогою спеціального драйвера ntfsdos (www.sysinternals.com/ntfs13.htm).
Якщо ви забули прибрати права зміни для Everyone (вони є за замовчуванням) в каталогах %systemroot% і %systemroot%system32, то цим хтось цілком може скористатися. Щоб легше було контролювати призначені права, скористайтеся програмою DumpAcl (http://somarsoft.com/ftp/DUMPACL.ZIP).
Підроблені DLL (типу fpnwclnt) дозволяють виводити у файл паролі та права користувачів.
При перейменуванні виконуваних файлів вони все одно будуть запущені. Наприклад: start readme.doc (readme.doc може виявитися утилітою rollback або будь-який інший програмою).
Якщо Administrator має право входу в систему через мережу, то це дозволяє хакерові запустити процедуру вгадування пароля, так як для адміністратора немає захисту за кількістю невдалих спроб.
Досить багато помилок захисту пов’язано з привілейованими Microsoft-програмами типу IIS, FrontPage і іншими (http://ntsecurity.com/News/bugs/alert.html, www.iss.net/vd/ntfaq.html). Частина багів виправлена, інші залишаються. Але як ми можемо дізнатися, скільки зроблено нових?
Проте справжньою «дірою в захисті» потрібно назвати Windows 95. Ця система, можна сказати, оптимізована для злому. Сама себе вона захистити ніяк не може, тому запит пароля на вхід в Windows 95 можна назвати глузуванням над користувачем. Найгірше, що система запам’ятовує введені паролі в PWL-файлів і в кеші. Для тих, хто ще не дуже в курсі, пояснюю, що при введенні нового імені і пароля в каталозі Windows 95 створюється файл з вказаним іменем і розширенням PWL. Для шифрування використовується непоганий алгоритм, але в ньому записано ім’я користувача, яке ви вводили. Завдяки такій помилку програма glide успішно читає цей пароль (виправлено в OSR2). Якщо включено кешування паролів, то невелика програма pwlview успішно вибирає їх з кешу. В принципі, пароль Windows 95 втратити не так страшно, його краще взагалі зробити порожнім. Жахливо виглядає, коли паролі Windows 95, NT Netware і збігаються. Це дуже зручно? для хакерів! Багато диски користувачів відкриті робочої групи для читання. Одним рухом можна отримати доступ до всього. Сумно і те, що система пропонує зберігати паролі для доступу до окремих ресурсів. Адміністратор може випадково забути, що входив на іншій машині, і залишити шлях вільним. Утиліту PWLEDIT (з Windows Resource Kit) слід було б краще рекламувати.

Двома кращими «інструментами» хакерів слід визнати Microsoft Excel і Microsoft Word. Макро-віруси зустрічаються настільки часто, що вухо вже звикає до знайомої трелі DrWeb, і коли її не чуєш, стає сумно. Написати макрос нескладно (особливо якщо за зразком), а що вставити у шкідливий розділ програми — залежить тільки від фантазії автора.

Активний захист. Згадайте нашого легендарного BOFH (Bastard of Hell). Як він управлявся зі своїми юзерами! Казка сказкою, але в ній натяк! Адміністратор мережі — це дійсно важлива людина в компанії, тому що він володіє (або може оволодіти) секретною інформацією. Він може вивідати все і про всіх. Про його дії може не дізнатися ніхто. Він — господар мережі! У комп’ютерному світі він бос. Адміністратор може бути самим жорстоким тираном, яким ви можете собі уявити, і самим небезпечним ворогом для фірми. І прикладів тут предостатньо. Як ви думаєте, чому на посади спеціалістів з безпеки відомі західні компанії часто запрошують колишніх хакерів? Тому що вони думають інакше, ніж звичайні люди. Їх мислення і навички такі ж, як і у супротивника. Думати як злочинець — набагато складніше. Інше питання, а чи можна їм довіряти?

Активна оборона передбачає дії, багато в чому аналогічні атакам. Щоб запобігти злочин, ви повинні знати про нього, поки воно ще готується. Ви повинні зібрати докази, що викривають у підготовці до вчинення дії.

Які заходи повинні проводитися регулярно, щоб досягти результату?

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

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

Повне обстеження комп’ютерів постійно проводити незручно (занадто довго), але пошук певних імен файлів і словосполучень в них можна здійснити. «Шукача» можна замаскувати під антивірус або що-небудь інше. Для того щоб користувачі звикли, потрібно проводити регулярне антивірусне обстеження машин, а потім підмінити програму своєї. Зауважу, що для прикладів я буду використовувати Netware і Windows NT. Пошукову програму необхідно вставити в системну процедуру реєстрації (або вхідний скрипт). Висновок перенаправляється в певний каталог, де користувачі мають права тільки на створення файлів. Для створення унікальних імен вихідних файлів використовується системна змінна — адресу мережевої карти. В Netware зручно використовувати наступне ім’я файлу: %P_STATION.%LOGIN_NAME. Якщо у вас не встановлена підтримка довгих імен для Netware, записуйте переданий параметр у вихідний файл. Тоді всередині файлу у вас буде ім’я типу: A0С941АF04.MANAGER (а файл буде називатися A0С941АF04.MAN). Після обстеження адміністратор запускає утиліту перевірки, яка, користуючись базою адрес і відповідних імен, проводить пошук. Можна переглядати і вручну. Для визначення імені користувача за його адресу мережевої карти потрібно створити файл з повним списком командою userlist /a, а потім запускати маленький BAT файл:

find “%1” c:adminulist.txt

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

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

ncd /L:t:log ree %P_STATION.%LOGIN_NAME /batch /t /a

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

Після такої перевірки коло підозрюваних різко звужується.

Це єдиний спосіб виявити крадіжку даних, доступ до яких офіційно дозволено, але винос суворо заборонено. Ось приклад з особистої практики. База даних фірми працює під управлінням FOXPRO для DOS. Зрозуміло, користувачі, що мають права на цю задачу можуть читати файли з цього каталогу. Далі командою «copy» легко можна скопіювати базу на свою машину і потихеньку унести копію. На щастя, невдалий хакер не зміг унести дані, і був виявлений службою безпеки під час пошуку покупців на товар. Коли ж почали переглядати офісний комп’ютер, знайшли стільки цікавої інформації, що і уявити було важко.

Могла програма-шукач допомогти виявити його раніше? В принципі могла! Звичайно, хакер міг перейменувати і заархівувати файли. Але йому необхідно ховати значний обсяг інформації на комп’ютері. Якщо б «шукач» перевіряла обсяг вільного місця на диску і структуру каталогів, то це могло б навести на підозри адміністратора.

Ще одна цікава гра, виявляє пристрасті ваших підопічних до комп’ютерного злому, називається «ловля на живця». «Живець» — це певний ресурс, який може викликати у «рибки» інтерес. Наприклад, який-небудь популярний декодер паролів або саморозпаковується архів з назвою password (або будь-яке інше). Створити таку програму досить легко. Після запуску вона запише файл з повідомленням («поплавок») в каталог пастки (недоступний для видалення користувачем) і попередить його про помилковість його намірів. Невелика бесіда в тісному колі напевно відіб’є у цього новачка шкідливі думки. В результаті ніхто не постраждав, та злочин не було вчинено! Для більш досвідчених хакерів призначаються і більш серйозні пастки. В якості наживки потрібно використовувати цього «живця», і «рибалка» буде дуже цікавою!

Щоб отримати реальні докази, потрібні програми, які відстежують і протоколирующие дії підозрюваного. Наприклад, spy для DOS. Вона записує всі відкриті файли у log-звіт. На жаль, якщо користувач працює під Windows, це не проходить. Але досить пошукати, і такі програми легко можна знайти. Обов’язково треба використовувати засоби аудиту тієї операційної системи, яку ви використовуєте. Включення комп’ютера в неробочий час, дивна активність користувача, великий об’єм файлів в невідповідних місцях — все це ознаки, які потрібно відстежувати. Зрозуміло, цим повинні займатися спеціально написані програми, інакше адміністратору і зітхнути буде ніколи.

Цікаву можливість надають утиліти візуального спостереження за роботою користувача. В Netware, при роботі користувача в DOS, це не призводить до значних затримок і прекрасно дозволяє стежити за декількома екранами по черзі (парочка master і minion). Ви навіть можете натискати клавіші. Зазвичай такі утиліти використовуються для віддаленого управління, але їх можна пристосувати і чисто для стеження. При роботі в Windows приховати своє перебування значно складніше. І для створення своїх програм вам цілком можуть підійти хакерські розробки, у великій кількості зустрічаються в Інтернеті. У самому справі, з мечем потрібно боротися мечем!

Дуже важливо не забути про контррозвідку. Те, що за вами можуть підглядати — достатньо очевидно. Як і завжди, в DOS ви можете виявити це легше і швидше, перевіряючи оперативну пам’ять, порівнюючи Login з еталоном. Стандартна утиліта безпеки SECURITY варта того, щоб її запустити, хоча і видає купу непотрібної інформації. Дуже корисна CHKNULL (легко знайти в Мережі). Вона перевіряє базу та видає список користувачів, у яких немає пароля.

Кожен адміністратор повинен вміти писати власні програми, і бажано, на Сі. Скориставшись Novell SDK, можна значно полегшити собі життя. Приміром, автоматично звіряти список призначених прав з еталонним, проводити порівняння паролів з наявними у власній базі і т. д.

На своїй машині, якщо ви використовуєте Windows, ставте хоча б Windows NT! NT не пустить зловмисника так просто, як Windows 95.

Яку б стратегію захисту ви не вибрали, пам’ятайте, що гніт вже запалено і бомба може вибухнути в самий невідповідний момент.