--PAGE_BREAK--
Розділ ІІ. Пошук несправностей в мережах на базі O
C
Windows
2.1 Проблеми реєстрації робочої станції
Одна з найбільш поширених проблем з’єднання в мережі виникає, коли робоча станція не може зареєструватися в домені. Це може бути через безліч причин:
· конфігурація протоколу;
· дозвіл імені;
· дозвіл імені NetBIOS;
· повноваження.
2.1.1 Команда
,,
ping
”
Якщо робоча станція має проблеми з реєстрацією в домені, перш за все необхідно перевірити з’єднання. Для цього використовується утиліта ping-. Як показано на роздруківці нижче, спочатку виконується pingза іменем щоб перевірити дозвіл на ім’я. Вона вертається назад з відповіддю. Потім виконується pingза визначеною ІР-адресою, щоб перевірити чи є доступ до того ж місця призначення. В останню чергу посилається великий пакет для перевірки того, що пакети великих розмірів можуть дістатися до місця призначення. Утиліта рingза замовчуванням посилає дуже малий 32-бітний пакет, який може дістатися до місця призначення, в той час як великий за об’ємом трафік реєстрації може не пройти через маршрутизатор.
Якщо великі пакети не доходять до місця призначення, а малі пакети доходять до сервера реєстрації, то можна підкоректувати реєстр і задати менший розмір пакета як тимчасовий захід, поки не буде відомо чи зможуть підтримуватися великі пакети. Це робиться в реєстрі наступним чином.
Додати значення в наступний ключ:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcipip\Parameters_
Ім’я значення:TcpSendSegmentSize
Тип будеReg_Dword
За замовчуванням використовується 1460 байт
Ці зміни можуть впливати на всю комунікацію ТСР/ІР і повинні робитися тільки після детального тестування. Перед тим як робити зміни в реєстрі, необхідно переконатися, що існує детально перевірена і актуальна резервна копія. Найпростіше, що можна зробити – це експортувати ключі[2].
Для аналізу проблеми використаємо програму Netmon, вибравши необхідну робочу станцію і сервер. Наступним кроком потрібно повторити команди pingі в додаток до команд pingнеобхідно також виконати команди:
· net view\\ім’я_сервера
· net user\\ ім’я_сервера\ipc$
Якщо дві команди повертаються з повідомленням про помилку, то має місце проблема. Необхідно скористатись Netmonі перевірити чи можливо знайти джерело проблеми. Із отриманих даних видно, що команда pingпрацює фактично без будь-яких проблем. Це показано на роздруківці нижче. Пакет ICMPє ехо-пакетомі його розмір 32 байти. Цей розмір використовується за замовчуванням в команді ping.
За ехо-пакетом ІСМР слідує пакет відповіді ІСМР, який пердставлений на роздруківці нижче. Цей пакет повертається із місця призначення як пакет ехо-відповідь. Він також має 32 байти. Це говорить про те, що існує елементарна комунікація між робочою станцією і сервером.
Після цього командою netview\\ ім’я_сервера перевіряєтьсямережу, що приводить до трьохходового підтвердження прийому даних (квитування) між робочою станцією і сервером. Трьохходове квитування відбувається між робочою станцією і портом 139, службою сеансу NetBIOSна сервері. В даному випадку все працює нормально, тому необхідно подивитися розділ NBTнаступного кадру, що показаний на роздруківці нижче. Кадр із робочої станції на сервер виглядає правильним. Видно, що тип пакету вказується як запит сеансу (sessionrequest). Він вміщує ім’я викликаного сервера і ім’я робочої станції яка викликає. є унікальним суфіксом NetBIOS, який вказує службу робочої станції. Можна знайти реєстрацію для цієї машини в базі даних WINS. Реєстрація в базі даних WINSполегшує NetBIOSкомунікацію між машинами.
Так як запит сеансу NTBпройшов успішно, тоді необхідно подивитись на відповідь, яка приходить з сервера. Вона міститься на роздруківці нижче і дає деяку корисну інформацію.
Отримана відповідь з відмовою сеансу (NegativeSessionResponse), і код помилки служби сеансу говорить про те, що ім’я, яке викликається, відсутнє. Завдяки цьому стає зрозуміло, що проблема не в робочій станції, а в сервері. Інші робочі станції будуть стикатися з такою ж проблемою. Тепер необхідно перевірити, що відбувається на сервері. Але спочатку необхідно глянути, чи можна отримати яку-небудь додаткову інформацію із щойно зробленого трасування Netmon.
На роздруківці нижче наведено декілька запитів контролера первинного домену, але немає відповіді. Це відбувається як SMB C transactв\mailslot\net\netlogon. Можливо існує також проблема із службою netlogon.
Якщо переглянути події на робочій станції, можна побачити наступне повідомлення: «Броузер не зміг отримати список серверів з мастер-броузера \PROX у мережі \Device\NetBT_E100Bl. Дані є кодом помилки». Це повідомлення просто підтверджує, що на сервері є проблема.
На сервері необхідно перевірити наступне:
· Чи служба сервера виконується на комп'ютері місця призначення. Перевірити аплет служб в панелі керування (рис.2.1). Якщо служба сервера не виконується, машина все одно відповідатиме на ping, але сеанс створити неможливо. Якщо служба сервера зупинена, то необхідно запустити її. Це пояснить повідомлення помилок броузерав журналі подій, оскільки служба броузеракомп'ютера залежить від служби сервера. Крім того, служба netlogonтакож залежить від служби сервера. Питання, звичайно, в тому, чому служба сервера зупинена? Деяку інформацію Netmonпросто не може повідомити. Можливо, настав час змінити пароль адміністратора.
Рис. 2.1. Перевірка стану служб.
· Чи відповідає сервер місця призначення. Він може бути заблокований. Сервер може відповідати на ехо-пакет ICMP, навіть якщо сеанс неможливо створити. Якщо комп'ютер заблокований і неможливо відновити керування менеджером завдань або будь-яким іншим способом, слід повідомити всіх користувачів про необхідність зберегти свої дані і по можливості вийти з системи. Можна спробувати виконати закриття системи, хоча залежно від того, що відбулося, можливо, доведеться зробити повне завантаження. Якщо відновлення не відбулося, то доведеться перевіряти процедури резервного копіювання.
· Перевірити аплет ліцензії в панелі керування і в журналі подій, щоб переконатися, що обмеження ліцензії не порушені.
· Чи використовується DNSабо файл хоста. Методи дозволу імені хоставикористовуються першими в pingдля дозволу імені. Команди netвикористовують методи дозволу імені NETBIOS(lmhosts, WINS). Утиліта рingможе працювати, тоді як netviewможе простоювати.
2.2 Пошук несправностей в мережі з виділеним
DHCP
сервером
Хоча DHCPполегшує життя адміністратора, іноді клієнтська машина стикається з проблемами при отриманні адреси. У таких ситуаціях інформація часто буває мізерною. Крім того факту, що робоча станція не отримала адреси, більше нічого невідомо. Тут починають відігравати роль знання процесів DHCPі Netmon.
2.2.1
Діалог з
DHCP
сервером
Перш за все, необхідно перевірити, що машина була зконфігурована для запиту адреси. Якщо у вікні властивостей TСР/ІР відмічена властивість «отримувати IP-адресу з сервера DHCP», то це повинно працювати. Якщо ні, необхідно переривати Netmonі проглянути діалог. У ідеалі повинні бути присутніми чотири кадри, перелічені нижче.
1. Пошук DHCP
2. Пропозиція DHCP
3. Запит DHCP
4. DHCPАСК
Якщо один з чотирьох кадрів не присутній, то DHCPне працюватиме, а клієнт не зможе отримати адресу. Якщо немає жодного, то клієнт неправильно сконфігурований для запиту адреси DHCP. Вирішення проблем DHCPє процесом переглядання діалогу і ідентифікація того, що з діалогу, представленого вище, пропущено[2].
2.2.2
Аналіз діалогу комп’ютерів у мережі
Перший крок полягає в перегляді трасування і пошуку пропущеного кадру. Кадр запиту DHCPпосилається за допомогою багатоадресової розсилки UDPIPз порту 68 (клієнтський порт ВООТР), в порт 67( серверний порт ВООТР). Magiccookieбудуть правильними. Це чотирьохбайтнаобласть в пакеті DHCP, яка ідентифікує початок поля, означеного постачальником для спеціальних параметрів. Якщо використовується дане поле параметрів, це наголошується IP-адресою 99.130.83.99, яка показана в трасуванні Netmonяк шістнадцяткова 63 82 53 63. Параметри можуть перелічувати ідентифікатор клієнта, запитану адресу, а також інші позиції. У нашому полі параметрів ідентифікатор клієнта рівний адресі MACкомп'ютера, що робить запит — в даному випадку KENNY. Також видно, що машина KENNYзапрошує ту ж адресу, якою вона володіла раніше. Якщо ця адреса доступна, то її можна буде використовувати знову.
У трасуванні нижче запитана адреса недоступна, оскільки вона отримує NACK, що є негативним підтвердженням. Якщо розглянути частину IPв кадрі, то можна побачити машину, яка посилає цей NACKна робочу станцію. Це видно в тій частині пакету, що приходить з порту 67 (порту сервера ВООТР), в порт 68 (порт клієнта ВООТР). Коли робоча станція отримує NACK, вона не ініціалізує TСР/ІР, поки не отримає адресу. Якщо TСР/ІР є єдиним протоколом, машина не зможе спілкуватися в мережі, поки не буде виявлений сервер DHCP.
Оскільки клієнтська машина посилає запити DHCPі отримує NACK(відмову) з сервера DHCP, то можна сказати, що вони спілкуються. Факт, що машина посилає запити, є позитивним, оскільки вона робить все, що повинна робити клієнтська машина. Для перевірки можна використовувати команду ipconfig/renew з вікна CMD, що змусить клієнтську машину створити трафік DHCP. Це один із способів виконати передачу, не перезавантажуючи машину. У трасуванні Netmonповинні бути два кадри DHCP: запит DHCPі DHCPАСК (підтвердження).
У даному випадку трасуванням DHCPможна знайти тільки запити і один NACKі жодного іншого трафіку. Наступний крок полягає в переході до сервера і вивчення властивостей DHCP, де можна виявити, що сервер не має вільних адрес, або що область дії була деактивована. Це, дві найбільш поширені причини[2].
2.3
Визначення швидкодії мережі
Немає нічого незвичайного, коли користувачі скаржаться на те, що мережа працює поволі. Ці скарги мережеві адміністратори чують достатньо часто. Проте користувачі рідко висловлюють інші думки, крім загального спостереження, що мережа повільна. Раніше адміністратор приходив до користувача, спостерігав за його діями і погоджувався або не погоджувався з точністю спостережень. Це не кращий спосіб для нового тисячоліття. У нас є Netmonяк засіб порятунку. Розглянемо приклад нижче, щоб зрозуміти, як Netmonпрацює в цій ситуації[1].
2.3.1
Засоби і способи визначення швидкодії мережі
Простим способом визначити швидкодію мережі є використання експерта середнього часу відповіді сервера, наявного в Netmon2.0. Перш ніж використати експерта, необхідно перехопити деякий об'єм трафіку між сервером і клієнтською машиною, для цього необхідно сконфігорувати фільтр перехоплення, який ізолює трафік між робочою станцією і даним сервером. Це повинно бути зроблено після перевірки робочої станції на те, скільки в ній відкрито додатків, скільки є вільного простору на диску для віртуальної пам'яті, і т.д. Коли будуть виключені всі можливі проблеми робочої станції, можна починати перехоплення даних[1].
2.3.2 Виявлення джерела впливу на швидкодію мережі
Для аналізу швидкодії необхідно завантажити перехоплений файл в Netmon2.0 і сконфігорувати експерт часу відповіді (рис.2.2). Конфігурація експерта є дуже важливою для отримання точних результатів. Якщо, наприклад, користувач скаржиться, що повільно працює пошта РОРЗ, то необхідно додати до експерта порт 110.
Змінюючи конфігураційні файли, експерт може повідомити про більшість додатків, що виконуються в мережі. Якщо видалити всі порти, окрім порту даної програми, будуть отримані різні показники продуктивності. Використання Netmon2.0 в цій області майже не обмежене.
Рис. 2.2. Експерт середнього часу відповіді сервера.
Експерт створює звіт, перелічуючи IP-адреси і середній час відповіді в секундах, як показано на рис.2.3. Якщо результати відповідають базовим показникам, можливо, доведеться знову аналізувати робочу станцію і роботу певного користувача. Якщо вони дійсно повільні, то трасування вимагатиме додаткового аналізу. Звіт розподілу протоколів, звіт верхніх користувачів і експерт пересилки TCPможуть надати цінну допомогу при пошуку причини повільної роботи мережі. Крім перегляду на екрані звіти можна зберегти як текстові файли і роздрукувати або перетворити на файли інших форматів, наприклад файли MicrosoftWord[7].
2.4 Причини помилок у журналі подій
Іноді у журналі виникають помилки подій. Однією з них є подія ID2000, яка говорить Status_no_such_file. Ця подія відбувається, коли мережевий додаток посилає команду видалення файла на загальний диск, а файл вже був видалений. Тобто, в другому рядку розділу даних повідомлення про помилку буде c000000f, яке відповідає Status_no_such_file.
2.4.1 Метод пошуку серверних проблем
Ця проблема пов'язана з SMB. Спочатку потрібно розглянути файл перехоплення. Для спрощення створюється фільтр виводу, який показує тільки команди SMBдля видалення файлу. На рис.2.4 показано, як створюється цей фільтр виводу. Знаходячись в режимі виводу, вибирається фільтр з меню виводу (display), після подвійного клацання по рядку протоколу з'являється діалогове вікно вибору, де відключаються всі протоколи. Наступним кроком потрібно вибрати SMBіз списку протоколів в правій панелі діалогового вікна, а потім клацнути по кнопці включити (enable). Далі перейти в розділ "S"списку протоколів. Це можна зробити активізувавши на панелі меню «name»і введення "S". В наслідок цього відбудеться переміщення в розділ "S", дозволяючи швидко знайти протокол SMB. Коли протокол SMBбуде включений, потрібно знайти команду SMBdelete. Щоб це зробити, потрібно вибрати закладку «property»і в ній знайти протокол SMB. Клацнувши на знаку «плюс» поряд з SMB, з'явиться список властивостей протоколу, серед яких потрібно вибрати «command»із діалогово вікна. Коли «command»буде вибрано, появиться список значень. У списку значень потрібно вибрати "deletefile"і потім натиснути "ok". Цей фільтр виводу показує команди "SMBdelete" будь-якого комп’ютера[6].
При перегляді кадрів "SMBdelete"потрібно знайти повідомлення про помилку. Розглянемо взаємодію. Клієнтська машина посилає на сервер команду "Cdeletefile". Параметри включають розміщення файлу.
Відповідь з сервера повертається в наступному кадрі який представлений в роздруківці нижче. В ньому команда "Rdeletefile"з повідомленням про відсутність помилок. Фай успішно видалений з сервера.
В першому файлі перехоплених даних проблема не локалізована. Для того щоб знайти помилку необхідно, створити фільтр перехоплення, що перехоплюватиме тільки один тип пакетів. Щоб отримати необхідну інформацію, яка показана на рис. 2.5, необхідно знайти шаблон, який вказує команду «SMBdelete». Як можна побачити з рис.2.6, вибір в панелі виводу командного рядка SMBвиводить число 06 в шістнадцятковій панелі в рядку зсуву 03. У рядку статусу Netmonв нижньому правому кутку, точний зсув рівний Зе в шістнадцятковому вигляді. Тепер є зсув і шаблон для фільтру перехоплення команди «deleteSMB».
продолжение
--PAGE_BREAK--2.4.2 Фільтр перехоплення, та його використання
Виконання програми Netmonможна спланувати за допомогоюкоманди AT яка вводиться у консолі cmd. Оскільки використовується спеціалізований фільтр перехоплення задопомогою якого можна визначити достатньо великий буфер перехоплення, то йому необхідно задати виконання протягом достатньо довгого періоду часу.
Використання фільтру перехоплення
Netmon/autostart /buffersize 1024000 /capturefilter с:/smbdelete.cf /autostop
Приведений вище текст команди необхідно ввести у текстовий редактор і зберегти як файл .bat. Для автоматизації процесу необхідно використати службу "Планувальник завдань".
На рис.2.7 зображено використання служби "Планувальник завдань"для автоматизації сеансу Netmon. Необхідно запустити службу планувальника, використовуючи аплет служби в панелі управління, у вікні CMDввести необхідну команду AT. В даному випадку планувальник виконуватиме файл .bat з понеділка до п'ятниці в 5:00 після обіду. Приведений вище файл .bat виконуватиметься, поки буфер не заповниться, і потім зупиниться.
Виконуючи автоматичний сеанс Netmonпід час прояву серверної проблеми, є можливість знайти неправильно працюючу програму, яка намагається повторно видалити вже видалений файл.
Ретельно створений фільтр перехоплення полегшує знаходження проблемної програми. При виявлені повідомлення про помилку, фільтр покаже, яка програма виконувалася в даний час. Крім того, можна включити перегляд часу при відкритті файлу перехоплення і точно побачити, який кадр відповідає певному повідомленню про помилку в переглядачі подій[6].
2.5 Проблеми що виникають при широкомовленні
Широкомовлення завжди є хорошим об'єктом для моніторингу, оскільки примушує всі машини в підмережі проглядати кадр. Це створює зайву роботу для багатьох машин. Крім того, коли виникає надмірна кількість широкомовних запитів, це створює руйнівний вплив на мережу.
При розгляді трафіку широкомовлення перший крок полягає в створенні фільтру виводу широкомовлення, що вибирає всі широкомовні повідомлення у вікні фільтру виводу, після цього перевірка широкомовних повідомлень достатньо прямолінійна. Якщо виникає широкомовний запит, як на рис.2.8, його легко виявити. Найбільш активному користувачеві звіт може дати уявлення про те, як він впливає на мережу. З рис.2.8 видно що один користувач використовує велику частину трафіку у мережі.
Наступний пакет ARPпоказує IP-адресу і MACадресу машини, яка викликає надмірне широкомовлення .
Для отримання імені користувача можна виконати наступні команди:
· використати ping–a10.0.0.163 для отримання імені хосту;
· використати arp–aдля виведення кешу ARP;
· використати nbtstart–a10.0.0.163 для отримання таблиці іменNetBIOSвіддаленої машини.
Для усунення надмірного широкомовлення необхідно дослідити машину і перевірити, яке програмне забезпечення встановлено, які протоколи завантажено, а також вид використовуваного мережевого адаптера. Також, необхідно подивитися, чи існують оновлення для будь-якого з цих об'єктів, драйверів, перевірити оновлення вбудованих програм самого комп'ютера.
Визначивши, коли виникла проблема, можна дізнатись про те, яке програмне забезпечення було додане, видалене або оновлене, тобто що викликало проблему[2].
Розділ ІІІ. Методи захисту від несанкціонованого доступу в мережі
T
CP/
IP
3.1 Безпека комп’ютерів на базі Windows 2000/XP
3.1.1Сканування мережі
TCP
/
IP
Метою сканування є визначення IP-адрес хостів мережі, що атакуються, і для виконання сканування можна скористатися утилітою ping. На рис.3.1 представлений результат сканування утилітою ping хостуSword-2000.
Із результатувидно, щокомп’ютер завказаноюадресоюпідключенийдо мережііз’єднання працюєнормально. Ценайпростішийспосіб сканування мережі, однак, вінне завждиприводитьдопотрібногорезультату, оскількибагато вузлівблокують зворотню відправку пакетів ICMP за допомогою спеціальних засобів захисту.
Якщо обмін даними запротоколомICMP заблокований, хакерами можуть бути використані інші утиліти, наприклад, hping. Ця утиліта здатна фрагментувати (тобто ділити на фрагменти) пакети ICMP, що дозволяє обходити прості пристрої блокування доступу, які не роблять зворотну збірку фрагментованихпакетів [9].
Інший спосіб обходу блокування доступу – сканування за допомогою утиліт, що дозволяють визначити відкриті порти комп'ютера. Прикладом такої утиліти є SuperScan, яка надає користувачам зручний графічний інтерфейс (див рис.3.2).
На рис. 3.2 приведений результат сканування мережі в діапазоні IP-адрес 1.0.0.1-1.0.0.7. Деревовидний список в нижній частині вікна відображає список всіх відкритих портів комп'ютераSword-2000 середяких TCP-порт 139 сеансів NETBIOS. Запам'ятавши це, перейдемо до детальнішого дослідження мережі – доїї інвентаризації .
3.1.2
Інвентаризація мережі
Інвентаризація мережі полягає у визначенні загальних мережевих ресурсів, облікових записів користувачів і груп, а також у виявленні програм, що виконуються на мережевих хостах. При цьому хакери дуже часто використовують наступний недолік комп'ютерів Windows NT/2000/XP –можливістьстворення нульового сеансу NETBIOS з портом 139.
3.1.3Нульовий сеанс
Нульовий сеанс використовується для передачі деяких відомостей про комп'ютери Windows NT/2000, необхідні для функціонування мережі. Створення нульового сеансу не вимагає виконання процедури аутентифікації з'єднання. Для створення нульового сеансу зв'язку необхідно з командного рядка Windows NT/2000/XPвиконати наступну команду:
netuse\\l.0.0.l\IPC$"" /user:""
Де1.0.0.1–цеIP-адреса комп'ютераSword-2000,щоатакується,IPC$– це(абревіатуразагальногоресурсумережіInter-Process Communication)міжпроцесна взаємодія,першапаралапокозначаєвикористанняпорожньогопароля, адругапаравзаписіuser:""вказуєнапорожнєім'явіддаленогоклієнта. Анонімнийкористувач, щопідключивсянульовимсеансом зазамовчуваннямотримуєможливістьзавантажитидиспетчеркористувачів, який використовуєтьсядляпрогляданнякористувачівігруп, виконуватипрограмупрогляданняжурналуподій. Йомутакождоступніііншіпрограмивіддаленогоадмініструваннясистемою, щовикористовуютьпротоколSMB (Server Message Block — блокповідомленьсервера). Більшетого, користувач, що під'єднався нульовим сеансом, має права на перегляд і модифікацію окремих розділів системного реєстру.
Ще одинметод інвентаризації полягає у використанні утиліт netviewі nbtstatз пакету W2RK. Утиліта netviewдозволяє відобразити список доменів мережі.
C:\>netview/domain
Домен
SWORD
Команда виконанавдало.
В результатівідобразилася назва робочої групи SWORD. Якщо вказати знайдене ім’я домену, утиліта відобразить підключені до нього комп’ютери.
C:\>net view /domain: SWORD
\\ALEX-3
\\SWORD-2000
Тепер необхідно визначити зареєстрованого на даний момент користувача серверного комп’ютера Sword-2000і завантажені на комп’ютері служби. З цією метою використаємо утиліту nbtstat. Результат її використання представлений на рис. 3.3. На цьому рисунку відображена таблиця, в якій перший стовбець вказує ім’я NetBIOS, в слід за ім’ям відображений код служби NetBIOS. Код після імені комп’ютера означає службу робочої станції, а код після імені домену – ім’я домену. Код означає службу розсилки повідомлень, які передаються користувачу, що заходить в систему, ім’я якого стоїть перед кодомв даному випадку Administrator.
На комп’ютері також працює служба браузера MSBROWSE, на що вказує код після імені робочої групи SWORD. Отже ми вже маємо ім’я користувача, зареєстрованого в даний момент на комп’ютері Administrator, за допомогою процедури net view, вказавши їй ім’я віддаленого комп’ютера. Визначаили також мережеві ресурси ком’ютера Sword-2000, які використовує Administrator. Результати пердставлені на рис. 3.4.
Отже, обліковий запис користувача Administratorвідкриває загальний мережний доступ до деяких папок файлової системи комп’ютера Sword-2000 і приводу CD-ROM. Таким чином про комп’ютер відомо достатньо багато – він дозволяє нульові сеанси NetBIOS, на ньому працює користувач Administrator, відкриті порти 7, 9, 13, 17, 139, 443, 1025, 1027 комп’ютера, і в число загальних мережних ресурсів входять окремі папки локального диску C:. Тепер необхідно дізнатись пароль доступу користувача Administrator, після чого в розпорядженні буде вся інформація про жорсткий диск С: комп’ютера.
Якщо протокол NetBIOSчерез TCP/IPбуде відключений (комп’ютери Windows 2000/XP надають таку можливість), можна використати протокол SNMP ( SimpleNetworkManagementProtocol– простий протокол мережевого управління), який забезпечує моніторинг мереж Windows NT/2000/XP [8].
3.1.4 Реалізація цілі
Виконання атаки на системи WindowsNT/2000/XPскладається з наступних етапів.
· Проникнення в систему, що полягає в отриманнідоступу.
· Розширення прав доступу, що полягає в зломіпаролівоблікових записів з великими правами, наприклад, адміністратора системи.
· Виконання мети атаки: отриманняданих, руйнування інформації і так далі.
Проникнення в систему починається з використання облікового запису, виявленого на попередньому етапі інвентаризації. Для визначення потрібного облікового запису хакер міг скористатися командою nbtstat або браузером MIB, або якими-небудь хакерськими утилітами, удосталь представленими в Інтернеті. Виявивши обліковий запис, хакер може спробувати під'єднається до комп'ютера, використовуючи йогодля вхідної аутентифікації. Він може зробити це з командного рядка, ввівши таку команду.
D:\>net use\\1.0.0.1\IPC$ * / u: Administrator
Символ «*»у рядку команди указує, що для підключення до віддаленого ресурсу IPC$ потрібно ввести пароль для облікового запису Administrator. У відповідь навведення команди відобразиться повідомлення:
Type password for\\1.0.0.1\IPC$:
Введення коректного пароля приводить до встановлення авторизованого підключення. Таким чином, ми отримуємо інструмент для підбору паролів входу в комп'ютер.Генеруючи випадкові комбінації символів або перебираючи вміст словників, можна, врешті-решт, натрапити на потрібне поєднання символів пароля. Для спрощення підбору існують утиліти, які автоматично роблять всі ці операції, наприклад SMBGrind, яка входить в комерційний пакет CyberCop Scanner компанії Network Associates. Ще однимметодом є створення пакетного файлу з циклічним перебором паролів.
Проте віддалений підбір паролів – далеконенаймогутніше знаряддя злому. Всі сучасні сервери, як правило, забезпечені захистом від багатократних спроб входу із зміною пароля, інтерпретуючи їх як атаку на сервер. Для злому системи захисту Windows NT/2000/XP частіше використовується могутніший засіб, що полягає у отриманніпаролів бази даних SAM (Security Account Manager –диспетчероблікових даних системи захисту). База даних SAM містить шифровані коди паролів облікових записів, вони можуть витягуватися, зокрема віддалено, за допомогою спеціальних утиліт. Далі ці паролі дешифруються за допомогою утиліти дешифрування, що використовує який-небудь метод злому, наприклад, «грубою силою», або словниковоюатакою, шляхом перебору слів із словника.
Найбільш відомою утилітою дешифрування є програма LC4 (скорочення від назви LOphtcrack), яка діє у парі з такими утилітами, як:
· Samdump— отримання шифрованих паролів з бази даних SAM.
· Pwdump— отримання шифрованих паролів з системного реєстру комп'ютера, включаючи віддалені системи. Ця утиліта не підтримує посилене шифрування Syskeyбази SAM.
· Pwdump2 — отримання шифрованих паролів з системного реєстру, в якому застосовано шифрування Syskey. Ця утиліта підтримує роботу тільки з локальними системами.
· Pwdump3 — те ж, що і Pwdump2, але з підтримкою віддалених систем.
Для отримання шифрованих паролів з комп'ютера Sword-2000 застосуємо утиліту Pwdump3:
C:\>pwdump3 sword-2000 > password. psw
Вміст отриманого файлу представлений у вікні додатку Блокнот (Notepad) (рис. 3.5).
Як видно, у файлі password.pswміститься обліковий запис Administratorякий був знайдений на етапі інвентаризації. Щоб розшифрувати паролі, слід застосувати програму LC4 і хоча пробна версія цієї програми підтримує тільки дешифрування паролів методом словесної атаки, все ж дає можливість взлому паролів комп’ютера Sword-2000 рис. 3.6.
Таким чином, маючи можливість створення нульових сеансів підключення NETBIOSдо комп'ютера, в принципі, можна отримати паролі облікових записів комп'ютера, включаючи адміністратора системи.
Для розширення прав доступу в системі використовуються спеціальні програми, що дозволяють виконувати віддалене керування системою, зокрема реєстрацію дій користувача. Для цього на комп'ютер можуть бути впроваджені так звані клавіатурні шпигуни – програми, що реєструють натиснення клавіш. Всі отримані дані записуються в окремий файл, який може бути відісланий наіншийкомп'ютер вмережі.
Інший варіант – розміщення в системі активного трояна, наприклад, NetBus, або Во2к (BackOrifice2000), які забезпечують засоби прихованого віддаленого керування і моніторингу за атакованим комп'ютером[8].
Розглянемо роботу NetBusна прикладі двох мережевих комп'ютерів: клієнта — комп'ютер Sword-2000 (ІР-адрес 1.0.0.1), і сервера — комп'ютер Alex-3 (IP-адрес 1.0.0.5).
Для успішної роботи троянського коня NetBus на комп'ютері, що атакується, спочатку потрібно запустити серверний компонент, який називаєтьсяNBSvr. При запуску програми NBSvr відображається діалог, представлений на рис.3.7.
Перед використанням сервера NetBus утиліту NBSvr необхідно налаштуаати. Для цього виконуєтьсятакапроцедура:
·У діалозі NB Server (Сервер NB) клацнутина кнопціSettings (Параметри).На екрані з'явиться діалог ServerSetup(Параметри сервера), представлений на рис.3.8.
·Встановити прапорець Acceptconnections(Приймати з'єднання).
·У полі Password (Пароль) ввестипароль доступу до сервера NetBus.
·Із списку Visibility of server (Видимість сервера) вибратипункт Full visible (Повна видимість), що дозволить спостерігати за роботою сервера NetBus (але для роботи краще вибрати повну невидимість).
·У полі Access mode (Режим доступу) вибратиFull access (Повний доступ), що дозволить робити на комп'ютері всі можливі операції віддаленого керування.
·Встановитипрапорець Autostart every Windows session (Автозавантаження при кожному сеансі роботи з Windows), щоб сервер автоматично завантажувався при вході в систему.
·Клацнутимишею на кнопці ОК. Сервер готовий до роботи.
Тепер необхідно налаштувати роботу клієнта — утиліту NetBus.exe.
·Завантажити утиліту NetBus.exe, після чого відобразиться вікно NetBus2.0 Pro, представлене на рис. 3.9.
·Вибрати команду меню Host* Neighborhood* Local(Хост * Сусідній хост * Локальний). Відобразиться діалог Network(Мережа), представлений на рис. 3.10.
·Клацнути на пункті MicrosoftWindowsNetwork(Мережа Microsoft Windows) і відкрити список мережевих хостів рис. 3.11.
·Вибрати комп’ютер з встановленим сервером NetBus, в даному випадкуSword-2000і клацнути на кнопці Add (Додати). На екрані з’явиться діалогове вікно Add Host (Додати хост), рис. 3.12.
·В полі Hostname/IP(Ім’я хосту/ІР)ввести ІР-адресу серверного хосту 1.0.0.1.
· В полі User name (Ім’я користувача) необхідно ввести ім’я облікового запису Administrator, а в полі Password (Пароль), що дешифрований програмою LC4пароль 007.
· Клацнутина кнопці ОК. На екрані відобразиться діалог Network (Мережа).
· Закритидіалог Network (Мережа), клацнувши на кнопці Close (Закрити). На екрані відобразиться вікно NetBus 2.0 Pro із записом доданого хосту(рис. 3.13).
· Щоб під’єднатися до хосту Sword-2000 необхідно клацнути правою кнопкою миші на пункті списку Sword-2000 і з контекстного меню, що відобразилося, вибрати команду Connect(Під'єднати). У разі успіху в рядку стану вікна NetBus 2.0 Pro відобразиться повідомлення Connected to 1.0.0.1 (v.2.0) (Підключений до 1.0.0.1 (v.2.0)).
Після успішного з'єднання з серверним компонентом Netbus, використовуючи інструменти клієнта Netbus, можна зробити з атакованим комп'ютером все що завгодно. Практично йому будуть доступні ті ж можливості, що і у локального користувача Administrator. На рис. 3.14. представлений список інструментів клієнта NetBus, який відображений в меню Control(Управління).
Серед цих інструментів можна відзначити засоби, зібрані в підменю Spyfunctions(Засоби шпигунства), що містять такі інструменти, як клавіатурний шпигун, перехоплювачі екранних зображень і інформації, що отримується з відеокамери, а також засобу запису звуків. Таким чином, хакер, що проник у комп'ютер, може підглядати, підслуховувати і читати все, що бачить користувач, говорить, або вводить з клавіатури комп'ютера. Хакер також може модифікувати системний реєстр комп'ютера Sword-2000, завантажувати будь-які програми і перезавантажувати віддалену систему Windows, не кажучи вже про можливості перегляду і копіювання будь-яких документів і файлів.
Як уже згадувалося, описана в цьому розділі утиліта сервера NetBus, вимагає попереднього запуску на комп'ютері, що атакується. Останнє завдання складає цілу окрему область хакінгуі полягає в пошуку відкритих через недогляд каталогів інформаційного сервера IIS, а також у використанні методів«соціальноїінженерії», що використовується длявпровадженнявкомп'ютер троянських коней або вірусів.
продолжение
--PAGE_BREAK--3.1.5 Приховування слідів
Аудит, поза сумнівом, є одним з найбільш серйозних засобів захисту від взлому комп'ютерної системи, і відключення засобів аудиту – одна з перших операцій, яку виконують хакери при зломі комп'ютерної системи. Для цього застосовуються різні утиліти, що дозволяють очистити журнал реєстрації і/або відключити аудит системи перед початком роботи.
Для відключення аудиту хакери можуть відкрити консоль ММС і відключити політику аудиту, скориставшись засобами операційної системи. Іншим, могутнішим засобом, є утиліта auditpol.exe комплекту інструментів W2RK. З її допомогою можна відключати (і включати) аудит як локального, так і віддаленого комп'ютера. Для цього необхідноз командного рядка ввести таку команду.
C:\Auditpol>auditpol\\sword-2000 /disable
На екрані з'являться результати роботи:
Running...
Audit information changed successfully on \\sword-2000...
New audit policy on \\sword-2000...
(0) Audit Disabled
System = No
Logon = No
Object Access = No
Privilege Use = No
Process Tracking = Success and Failure
Policy Change = No
Account Management = No
Directory Service Access = No
Account Logon = No
Параметркоманди\\sword-2000 — цеім'явіддаленогокомп'ютера, аключ/disable задаєвідключенняаудитунацьому комп’ютері. Утилітаauditpol.exeє досить ефективним засобом для управління мережевими ресурсами і також може бути інструментом який використовується при взломі. Також ця утиліта дозволяє включати і відключати аудит бази даних SAM, що є передумовою використання утиліти pwdump3.exeдля отримання паролів з бази SAM.
Очищення журналів безпеки можна виконати або за допомогою утиліти проглядання журналів Windows 2000/XP, або за допомогою спеціальних утиліт.У першому випадку слід виконатинаступні дії.
· Клацнутина кнопці Пуск (Start) і в головному меню, що з'явилося, вибратикоманду Налаштування* Панель управління (Settings*Control Panel).
· У панелі управління, відкрититеку Адміністрування (Administrative Tools).
· Двічі клацнутина аплетіУправління комп'ютером (Computer Management). На екрані з'явиться діалог консолі ММС.
· Послідовно відкрититеки Службові програми * Перегляд подій (System Tools | Event Viewer).
· Клацнутиправою кнопкоюмиші на пункті Безпека (Security Log).
· Вибратикоманду контекстного меню Стерти всі події (Clear all Events). На екрані з'явиться діалог Проглядання подій (Event Viewer) з пропозицією зберегти журнальні події у файлі.
· Клацнутина кнопці Ні(No), якщо більше не потрібні зафіксовані в журналі події. Журнал буде очищений.
При очищенні журналу безпеки з нього витираютьсявсі події, але відразу встановлюється нова подія — тільки що виконане очищення журналу аудиту! Таким чином, хакер все ж таки залишить свій слід — порожній журналіз зафіксованою подією очищення журналу[9].
3.2 Засоби віддаленого керування
Засоби віддаленого керуваннякомп'ютерами сьогоднінабуливеликоїпопулярності. Поступово, крок за кроком, з інструменту віддаленого адміністрування, що використовувалисясуто в технологічних цілях, програмні засоби цього типу почали використовуватися співробітниками різних організацій для роботи зі своїм офісним комп'ютером не виходячи з будинку, з домашнього комп'ютера. Сучасні програми віддаленого керуванняофісним комп'ютером надають цілий набір засобів для підключення — прямого, модемного і мережевого. Все це надає великі зручності для співробітників організацій, проте і хакерам також відкриваються можливостідля досягнення своїх цілей.
Інсталюючи засоби віддаленого керування, існує можливість його несанкціонованого використання. Якщо встановити на офісний комп'ютер модем і підключити його до телефонної лінії для подальших сеансів зв'язку з домашнього комп'ютера, то хакер при виявленні телефонів організації і протестувавши на наявність з'єднання за допомогою спеціальних програм ідентифікує засоби віддаленого керування та взламує їх.
3.2.1 Програма
pcAnywhere
Програма pcAnywhereкорпорації Symantecє одним з кращих інструментів віддаленого керування хостами мережі TCP/IP. pcAnywhereвстановлюється на комп'ютерах, зв'язаних локальною мережею, модемною лінією зв'язку або безпосередньо, через послідовні і паралельні порти. Комп'ютери, керовані засобами pcAnywhere, називаються хостами, а комп'ютери, що керують, називаються абонентами. Взаємодіяхостів і абонентів pcAnywhere відбувається наступним чином,після встановлення зв'язку на екрані віддаленого комп'ютера відображаються ті ж засоби призначеного для користувача інтерфейсу і діалоги програм, що і на моніторі хосту. При цьому дії користувача в діалозі абонента pcAnywhere негайно копіюютьсяна екрані хоста pcAnywhere.
Таким чином, користувач комп'ютера-абонента pcAnywhereотримує в своє розпорядження консоль віддаленого керування хостом pcAnywhere, практично співпадаючу з локальною консоллю хосту (рис. 3.15).
Для керування роботою своїх хостів і абонентів програма pcAnywhereнадає диспетчер, робоче вікно якого, pcAnywhereManager(Диспетчер pcAnywhere), представлене на рис. 3.16.
Версія 10.5.1 програми pcAnywhereне дозволяє поповнювати список абонентів хоста без вказівки логіна і пароля вхідної реєстрації. Новому абонентові при створенні надаються за замовчуванням обмежані права.
Отже, на перший погляд, все, що можна запропонувати для злому доступу до хосту pcAnywhere– це спробувати вгадати логін і пароль, часто співпадаючі з логіном і паролем вхідної реєстрації. Для цього можна скористатися програмоюBrutus. Ця програма дозволяє настроювати свої засоби злому паролів. Проте це трудомісткий і ненадійний шлях, оскільки користувач встановить надійний пароль для реєстрації, а система захисту зафіксує численні спроби вхідної реєстрації [8].
Існує обхідний шлях – підміна профілю підключення абонента до хосту. В цьому випадку необхідно створити хост pcAnywhere, ім'я якого співпадає з тим, що відображається в діалозі очікування з'єднання. Наступним кроком є створення абонента для підключення до цього хосту, цьому абонентові надаються необмежені права доступу до хосту, встановлюючи перемикач Superuser(Суперкористувач) на вкладці Privileges(Привілеї) діалогу властивостей абонента.
Після створення хосту pcAnywhereв папці Системний диск:/DocumentsandSettings/AllUsers/ApplicationData/Symantec/pcAnywhere(або в іншій папці, вказаній в списку діалогу диспетчера pcAnywhere), створюється файл профілю абонента цього хоста з передбаченим ім'ям. У даному випадку для хосту Sword-2000 після створення абонента pcAnywhereз логіном А1ех-3 був створений файл профілю з ім'ям PCA.Alex-3.CIF— тобто з ім'ям, що містить логін абонента в середині запису, і з розширенням .CІF.
Створивши за допомогою диспетчера pcAnywhereнового абонента наприклад, Hacker, профіль якого буде збережений у файлі PCA.Hacker.CIFна комп'ютері хакера. Якщо цей файл РСА.Hacker.CIFпомістити на хост Sword-2000 в теку Системний диск:/DocumentsandSettings/AllUsers/ApplicationData/Symantec/ pcAnywhere, то в діалозі абонентів хоста Sword-2000 з'явиться новий обліковий запис ( рис. 3.17).
Тепер до хосту pcAnywhereможна підключитися, знаючи логін і пароль нового абонента Hacker, в даному випадку — хакер, що трохи попрацював для створення і перенесення файлу профілю на комп'ютер-жертву.
Існує декілька шляхів для запису файлу на атакований комп’ютер. Одним з них це атака на протокол NETBIOS, або підготувавши і відправити лист з активним вкладенням, яке завантажить на хост файл, скажімо, з використанням клієнта TFTP. Можна також вдатися до методів соціальної інженерії і змусити ламера клацнути на посиланні для завантаження безкоштовної программи(це найкращий метод для людей із специфічними схильностями). Якщо хост pcAnywhereфункціонує як Web-сервер, є сенс атакувати сервер IIS, і якщо це програма IIS5, не оброблена сервісними пакетами, то шанси на успіх майже стовідсоткові[8].
Щоб віддалено визначити, чи встановлений на комп'ютері хост pcAnywhereі чи працює він в даний момент, слід звернутися до засобів інвентаризації ресурсів локальної мережі, які повинні виявити на комп'ютері відкриті порти віддаленого управління. Проте в мережах Windowsє і ще одна можливість – використання засобів інвентаризації, вбудованих в системи WindowsNT/2000/XP, які спираються на протокол SNMP(SimpleNetworkManagementProtocol-простий протокол мережевого управління).
3.2.2
Протокол SNMP
Протокол SNMP призначений для віддаленого адміністрування хостів локальної мережі. Для хакерів протокол SNMP забезпечує великі можливості зінвентаризації мережі, на вразливостяхSNMP базуєтьсябагато хакреських атак. Тому розробленобезліч програм управління мережами з опорою на протокол SNMP, з яких виділимо пакет SOLARWINDS.Ці утиліти мають подвійнезастосування.Системні адміністратори використовують їх для адміністрування мережі, а хакери – дляпроникнення в мережу і заволодіння її ресурсами. Отже,перейдемо до знайомства з пакетом SOLARWINDS з врахуванням завдань зломуі захисту.
Протоколом SNMP є стандарт управління мережами TCP/IP (а також мережами IPX). На основі протоколу SNMP створюються програмні засоби віддаленого управління мережевими серверами, робочими станціями і іншими пристроями, що дозволяють налаштовувати роботу мережевих хостів, спостерігати за їх роботою, відстежувати збої і поточну діяльність користувачів в мережі.
Для роботи вищезгаданих програмних засобів SNMPвикористовуються системи управління SNMP(або консолі SNMP) і агенти SNMP, тобто служби SNMP, що збирають інформацію про вузли, і поміщають її в бази даних MIB(ManagementInformationBase— база керуючої інформації). База MIBмістить таблицю запущених служб, звіт про спосіб розмежування доступу, перелік сеансів і облікових записів користувачів, набір загальних ресурсів сервера і іншу інформацію. Для проглядання бази МІВ застосовуються системи управління SNMP, наприклад, утиліта snmputilз пакету W2RKабо ж спеціальне програмне забезпечення, прикладом якого є застосуванню IP Network Browser, щовходитьвпакетSOLARWINDS 2002 Engineer's Edition.Хости, наякихфункціонуютьконсолііагентиSNMP, об'єднуютьсявспівтоваристваSNMP, щоідентифікуютьсяіменамиспівтовариства. Агенти SNMP кожного хостуспівтовариства можуть передавати повідомлення у відповідь на запити консолей SNMP тільки «свого» співтовариства і тих співтовариств, які вказані в списку, що створюється при конфігурації служби SNMP. Для обміну інформацією використовується транспортний протокол UDP, а передача пакетів SNMP виконується через сокетиWindows з портами 161 і 162.
Якщо хакерові вдається визначити ім'я співтовариства SNMP, інвентаризація мережевих ресурсів комп'ютерів співтовариства не викликає жодних проблем. Для вирішення цього завдання можна скористатися пакетом SOLARWINDS, що включаєу себе найрізноманітніші утиліти для збору відомостей про локальну мережу.
На рис. 3.18. представлений діалог браузера MIBз пакету SolarWinds2001 Engineer’sEdition, що відображає записи бази даних MIBкомп’ютера А1ех-3, що входять в розділ відомостей про облікові записи і загальні ресурси комп’ютера.
На рис. 3.18. можна відмітити, що дані, які відображаються браузером МІВ аналогічні таким, що виявлені з бази SAMза допомогою утиліти LC4. Таким чином, база МІВ не менш інформативна, ніж база SAM, крім того, що в ній відсутні паролі облікових записів.
Існує й інша утиліта для проглядання ресурсів мережевих хостів – NetworkBrowser, яка представляє інформацію бази даних МІВ мережі, що інвентаризується в доступнішій формі ( рис. 3.19).
Проблема у використанні бази MIB для цілей інвентаризації полягає в отриманні імені співтовариства, яке по суті є паролем для доступу до інформації в базі MIB. Це завдання зовсім не безнадійне, оскільки засоби пакету SOLARWINDS 2001 Engineer's Edition включають утиліти SNMP Brute Force Attack і SNMP Dictionary Attack для злому доступу до бази МІВпідбором імені співтовариства, що виконується, відповідно, прямим перебором символів і шляхом словниковоїатаки.
Дуже часто для надання імен співтовариствам, SNMPадміністратори використовують встановлені за замовчуванням імена public, або private, або їх варіації. Тому утиліти SNMPBruteForceAttackі SNMPDictionaryAttackдля злому доступу до співтовариства SNMPвраховують таку особливість. Вони дозволяють хакерові вводити початкові імена співтовариства SNMPтипу publicабо privateв стартовий рядок пошуку з автоматичною генерацією варіантів рядків, що випробовуються. Це дозволяє швидко знаходити імена типу public2 і інші, що базуються на стандартному імені public[8].
Для захисту від атакина протокол SNMP, слід закрити доступ до портів 161 і 162, які використовуютьсяагентами і консоллю SNMP, вдавшись до засобів фільтрації ТСР/ІР, або засобами аплета Служби (Services) комп'ютера Windows 2000/XP, щоб відключити на хостіслужбу SNMP. У будь-якому випадку ім'я співтовариства SNMP повиннобути достатньо складним для злому методом грубої сили, оскільки ім'я співтовариства служить фактично паролем доступу доагентаSNMP.
Встановлені на мережевому хості засоби віддаленого управління, як від незалежного виробника (програма pcAnywhere). так і вбудовані (служба SNMP) можуть стати справжніми знахідками для хакера, оскільки дуже часто після інсталяції цих засобів їх система захисту не настроєтна належним чином. Це стосується практично всіх загальнопоширених програмвіддаленого керування, особливо ранніх версій. Щоб виявити комп'ютер зі встановленою програмою віддаленого керування, можна скористатися засобами протоколу SNMP, що забезпечує роботу агентів і консолі SNMPуправління ресурсами комп'ютера. Браузер IPNetworkBrowser, розглянутий в цьому розділі, надійно ідентифікує відкриті порти програми віддаленого управління pcAnywhere, після чого хакер може скористатися різними засобами для віддаленого злому доступу до хосту pcAnywhere.
Не слід нехтувати також можливостями SNMPдля вирішення загального завдання інвентаризації систем, що атакуються. Засоби захисту агентів і консолі SNMP, вбудовані в систему Windowsне забезпечують належноїй безпеки для комп'ютерів співтовариства SNMP. Для хакера це надає обширні можливості для інвентаризації ресурсів мережевих хостів і подальших спроб злому доступу до комп'ютерів.
Для запобігання взлому,паролі доступу до хостівpcAnywhere мають бути досить складними, щоб їх не можна було зламати словниковою атакою,або простим перебором.Описаній вище атаці на хост pcAnywhereможна також запобігти, обмеживши доступ до папок комп'ютера, що зберігають інформацію для налаштування. Тому налаштуваннясистеми захисту Windows – найкращийспосіб запобігання атакам на засоби віддаленого управління[7].
3.3 Функції брандмауерів
Брандмауером називають спеціальний програмно-апаратний комплекс, що забезпечує захист локальної мережі від вторгнень з локальної або глобальної мережі, наприклад, Інтернету, в точці їх з'єднання. Брандмауери дозволяють пропускати через мережеве з'єднання тільки авторизований трафік, контролюючи тим самим мережеву взаємодію між комп'ютерами глобальної і локальної мережі. Високорозвинуті брандмауери дозволяють виконувати дуже точну настройкудоступу до мережевих служб, надаючи для цього зручний графічний інтерфейс. Добре настроєний брандмауер не просто блокує неавторизовані запити з боку зовнішніх комп'ютерів, але і намагається ідентифікувати авторів запиту разом з негайним повідомленням адміністратора системи про спроби таких запитів.
Брандмауери дозволяють управляти мережевим трафіком, що проходить усередині локальної мережі. За допомогою брандмауерів можна розділити локальну мережу на домени безпеки — групи комп'ютерів з одним рівнем захищеності. На комп'ютерах найбільш захищеного домена слід зберігати конфіденційну інформацію, наприклад, облікові записи користувачів, документи фінансової звітності, відомості про поточну виробничу діяльність і тому подібне. Розділення доступу користувачів до мережевих ресурсів різного ступеня секретності вже само по собі різко підвищує рівень безпеки мережі. Якщо до того ж набудувати брандмауер так, щоб доступ до виділеного мережевого сегменту був максимально обмеженим, то можна значною міроюзабезпечити інформацію, що зберігається в сегменті, від розкриття конфіденційності[6].
У загальному випадку методика Firewall, тобто брандмауерів, реалізує наступні основні три функції:
1. Багаторівнева фільтрація мережного трафіка.
Фільтрація звичайно здійснюється на трьох рівнях OSI:
• мережному (IP);
• транспортному (TCP, UDP);
• прикладному (FTP, TELNET, HTTP, SMTP).
Фільтрація мережевого трафіка є основною функцією систем Firewallі дозволяє адміністратору безпеки мережі централізовано здійснювати необхідну мережеву політику безпеки у виділеному сегменті IP-мережі. Тобто, настроївши відповідним чином Firewall, можна дозволити чи заборонити користувачам як доступ із зовнішньої мережі до хостів, що знаходяться в сегменті, який захищається, так і доступ користувачів із внутрішньої мережі до відповідного ресурсу зовнішньої мережі.
2. Proxy-схема з додатковою ідентифікацією й аутентифікацією користувачів на Firewall— хості.
Proxy-схема дозволяє, по-перше, при доступі до захищеного Firewallсегменту мережі здійснити на ньому додаткову ідентифікацію й аутентифікацію віддаленого користувача. По-друге, є основою для створення приватних мереж з віртуальними IP-адресами. Proxy-схема призначена для створення з'єднання з кінцевим адресатом через проміжний proxy-сервер (proxyвід англ. повноважний) на хості Firewall. На цьому proxy-сервері і може здійснюватися додаткова ідентифікація абонента.
3. Створення приватних віртуальних мереж (PrivateVirtualNetwork— PVN) з «віртуальними» IP-адресами (NAT— NetworkAddressTranslation).
У випадку, якщо адміністратор безпеки мережі вважає за доцільне приховати топологію своєї внутрішньої IP-мережі, то йому необхідно використовувати системи Firewallдля створення приватної мережі (PVN-мережа). Хостам у PVN-мережі призначаються будь-які «віртуальні» IP-адреси. Для адресації в зовнішню мережу (через Firewall) необхідне використання на хості Firewallproxy-серверів, або застосування спеціальних систем роутінгу (маршрутизації). Це відбувається через те, що віртуальна IP-адреса, яка використовується у внутрішній PVN-мережі, не придатна для зовнішньої адресації (зовнішня адресація — це адресація до абонентів, що знаходиться за межами PVN-мережі). Тому proxy-сервер, чи засіб роутінгу повинен здійснювати зв'язок з абонентами з зовнішньої мережі зі своєї дійсної IP-адреси. Ця схема зручна в тому випадку, якщо для створення ІР-мережі виділили недостатню кількість IP-адрес, тому для створення повноцінної IP-мережі з використанням proxy-схеми досить тільки однієї виділеної IP-адреси для proxy-сервера.
Будь-який пристрій, що реалізує хоча б одну з цих функцій Firewall-методики, і є Firewall-пристроєм. Наприклад, ніщо не заважає використовувати в якості Firewall— хосту комп'ютер зі звичайною ОС FreeBSDчи Linux, у якої відповідним чином необхідно скомпілювати ядро ОС. Firewallтакого типу буде забезпечувати тільки багаторівневу фільтрацію ІР-трафіка. Пропоновані на ринку Firewall-комплекси, створені на базі ЕОМ звичайно реалізують усі функції Firewall-методики і є повнофункціональними системами Firewall. На рис. 3.20 зображений сегмент мережі, відділений від зовнішньої мережі повнофункціональним Firewall— хостом.
Однак адміністраторам IP-мереж треба розуміти, що Firewallце не гарантія абсолютного захисту від віддалених атак у мережі Internet. Firewall— не стільки засіб забезпечення безпеки, скільки можливість централізовано здійснювати мережну політику розмежування віддаленого доступу до доступних ресурсів мережі. Firewallне зможе запобігти таким видам атак як: аналізу мережного трафіку, помилковий ARP-сервер, помилковий DNS-сервер, підміна одного із суб'єктів TCP-з'єднання, порушення працездатності хосту шляхом створення спрямованої атаки помилковими запитами чи переповнення черги запитів. В таких випадках використання Firewallне допоможе. Для того, щоб вивести з ладу (відрізати від зовнішнього світу) усі хости усередині захищеного Firewall-системою сегмента, досить атакувати тільки один Firewall. Це пояснюється тим, що зв'язок внутрішніх хостів із зовнішнім світом можливий тільки через Firewall.
З усього вищесказаного аж ніяк не випливає, що використання систем Firewallє абсолютно безглуздим, на даний момент цій методиці немає альтернативи. Однак треба чітко розуміти і пам'ятати її основне призначення. Застосування методики Firewallдля забезпечення мережної безпеки є необхідною, але аж ніяк не достатньою умовою. Не потрібно вважати, що поставивши Firewallвирішуються всі проблеми з мережною безпекою і усунуться усі можливі віддалені атаки з мережі Internet[7].
продолжение
--PAGE_BREAK--3.4 Перехоплення мережевих даних
Для сніфінгумереж Ethernet зазвичай використовуються мережеві карти, переведені в режим прослуховування. Прослуховування мережі Ethernet вимагає підключеннякомп'ютера із запущеною програмою-сніфером до сегменту мережі, після чого хакерові стає доступним весь мережевий трафік, що відправляється і отримується комп'ютерами в даному мережевому сегменті. Ще простіше виконати перехоплення трафіку радіомереж, що використовують безпровідні мережеві ретранслятори.Вцьомувипадку не потрібно навіть шукати місцядля підключення до кабелю.
Для технології сніфінгуможна використатипрограмму-сніфер SpyNet, яку можна знайти на багатьох Web-сайтах. Програма SpyNet складається з двох компонентів — CaptureNet і PipeNet. Програма CaptureNet дозволяє перехоплювати пакети, передавані по мережіEthernet на мережевому рівні, тобто у вигляді кадрів Ethernet. Програма PipeNet дозволяє збирати кадриEthernet в пакети рівня прикладних програм, відновлюючи, наприклад, повідомлення електронної пошти, повідомлення протоколу HTTP (обмін інформацією з Web-сервером) і виконувати інші функції.
Для захисту від прослуховування мережі застосовуються спеціальні програми, наприклад AntiSniff, які здатні виявляти в мережі комп'ютери, зайняті прослуховуванням мережевого трафіку. Програми антисніфери для вирішення своїх завдань використовують особливу ознаку наявності в мережі прослуховуючих пристроїв.Мережева плата комп’ютера-сніфера повинна знаходитися в спеціальному режимі прослуховування. Знаходячись в режимі прослуховування, мережеві комп'ютери особливим чином реагують на IP-дейтаграми, що посилаються наадресу тестованого хосту. Наприклад, хости, що прослуховують як правило, обробляють весь трафік, що поступає, не обмежуючись тільки відісланимина адресу хостудейтаграммами. Є і інші ознаки,щовказуютьна підозрілу поведінку хоста,які здатна розпізнати програма AntiSniff [11].
Поза сумнівом, прослуховування дуже корисне з погляду зловмисника, оскільки дозволяє отримати безліч корисної інформації: передавані по мережі паролі, адреси комп'ютерів мережі, конфіденційні дані, листи і інше. Проте просте прослуховування не дозволяє хакерові втручатися вмережевувзаємодіюміж двома хостами з метою модифікації і спотворення даних. Для вирішення такого завдання потрібна складніша технологія.
3.4.1 Фальшиві
ARP
запити
Щоб перехопити і замкнути на себе процес мережевої взаємодії між двома хостами А і В зловмисник може підмінити IP-адреси взаємодіючих хостів своєю IP-адресою, направивши хостам А і В сфальсифіковані повідомлення ARP(AddressResolutionProtocol— протокол дозволу адрес).
Для перехопленнямережевого трафіку між хостами А і В хакер нав'язує цим хостам свою IP-адресу, щоб А і Ввикористовували цю фальсифіковану IP-адресупри обміні повідомленнями. Для нав'язування своєї IP-адресихакер виконує наступні операції.
·Зловмисник визначає МАС-адресихостів А і В, наприклад, за допомогою команди nbtstat з пакету W2RK.
·Зловмисник відправляє на виявлені МАС-адресихостів А і В повідомлення, що є сфальсифікованими ARP-відповідямина запити дозволу IP-адресів хостів в МАС-адресикомп'ютерів. Хосту А повідомляється, що IP-адресіхостуВвідповідає МАС-адресакомп'ютера зловмисника; хосту В повідомляється, що IP-адресіхостуА також відповідає МАС-адресакомп'ютера зловмисника.
·Хости А і В заносять отримані МАС-адресив свої кеші ARP і далі використовують їх для відправки повідомлень один одному. Оскільки IP-адресам А і Ввідповідає МАС-адресакомп'ютера зловмисника, хостиА і В, нічого не підозрюючи, спілкуються через посередника, здатного робити з їх посланнями що завгодно.
Для захисту від таких атак мережеві адміністратори повинні підтримувати базу даних з таблицею відповідності МАС-адрес і IP-адрес своїх мережевих комп'ютерів. За допомогою спеціального програмного забезпечення, наприклад, утиліти arpwatchперіодично обстежувати мережу і виявляти невідповідності [11].
3.4.2 Фальшива маршрутизація
Щоб перехопити мережевий трафік, зловмисник може підмінити реальну ІР-адресу мережевого маршрутизатора своєю, виконавши це, наприклад, з допомогою сфальсифікованих ICMP-повідомлень Redirect. Отримане повідомлення Redirectхост А сприймає як відповідь на дейтаграмму, відіслану іншому хосту, наприклад, В. Свої дії на повідомлення Redirectхост А визначає, виходячи з вмісту отриманого повідомлення Redirect, і якщо в Redirectзадати перенаправлення дейтаграм з А в В по новому маршруту, саме це хост А і зробить.
Для виконання помилкової маршрутизації зловмисник повинен знати деякі подробиці про організацію локальної мережі, в якій знаходиться хост А, в тому числі, IP-адресу маршрутизатора, через яку відправляється трафік з хосту А у В. Знаючи це, зловмисник сформує IP-дейтаграмму, в якій IP-адреса відправника означена як IP-адреса маршрутизатора, а одержувачем вказаний хост А. Також в дейтаграму включається повідомлення ICMPRedirectз полем адреси нового маршрутизатора, встановленим як IP-адреса комп'ютера зловмисника. Отримавши таке повідомлення, хост А відправлятиме всі повідомлення заIP-адресою комп'ютера зловмисника [10].
Для захисту від такої атаки слід відключити (наприклад, за допомогою брандмауера) на хостіА обробку повідомлень ICMP Redirect, а виявити ІР-адресукомп'ютера зловмисника може команда tracert.Ці утиліти здатні знайти в локальній мережі додатковий, непередбачений при інсталяції, маршрут, якщо звичайно адміністратор мережі проявить пильність.
Приведені вище приклади перехоплень (якими можливості зловмисників далеко не обмежуються) переконують в необхідності захисту даних,що передаютьсяпо мережі, якщо в даних міститься конфіденційна інформація. Єдиним методом захисту від перехоплень мережевого трафіку є використання програм, що реалізовують криптографічні алгоритми і протоколи шифрування, що дозволяють запобігти розкриттю і підміні секретної інформації. Для вирішення таких завдань криптографія надає засоби для шифрування, підпису і перевірки достовірності повідомлень, що передаютьсяпо захищених протоколах [12].
3.4.3Перехоплення ТСР-з’єднання
Найбільш витонченою атакою перехоплення мережевого трафіку слід вважати захоплення TCP-з’єднання (TCPhijacking), коли хакер шляхом генерації і відсилання на хост, що атакується TCP-пакетів, перериває поточний сеанс зв'язку з хостом. Далі, користуючись можливостями протоколу TCPпо відновленню перерваного TCP-з’єднання, хакер перехоплює перерваний сеанс зв'язку і продовжує його замість відключеного клієнта.
Протокол TCP(TransmissionControlProtocol— протокол управління передачею) є одним з базових протоколів транспортного рівня OSI, що дозволяє встановлювати логічні з'єднання по віртуальному каналу зв'язку. По цьому каналу передаються і приймаються пакети з реєстрацією їх послідовності, здійснюється управління потоком пакетів, організовується повторна передача спотворених пакетів, а в кінці сеансу канал зв'язку розривається.
Протокол TCPє єдиним базовим протоколом з сімейства TCP/IP, що має складну систему ідентифікації повідомлень і з'єднання.
Для ідентифікації TCP-пакету в TCP-заголовку існують два 32-розрядні ідентифікатори, які також відіграють роль лічильника пакетів, що називаються порядковим номером і номером підтвердження. Поле TCP-пакета включає наступні біти керування(в порядку зліва направо):
URG — біттерміновості;
АСК — бітпідтвердження;
PSH — бітперенесення;
RST — бітпоновлення з'єднання;
SYN — бітсинхронізації;
FIN — бітзавершення з'єднання.
Розглянемо порядок створення TCP-з’єднання.
1.Якщо хосту А необхідно створити TCP-з’єднанняз хостом В, то хост А посилає хосту В наступне повідомлення: A-> B: SYN, ISSa
Це означає, що вповідомленні, якепередаєтьсяхостом А встановлений бітSYN (Synchronize sequence number — номер послідовності синхронізації), а в полі порядкового номера встановлено початкове 32-бітнезначення ISSa (Initial Sequence Number — початковий номер послідовності).
2. У відповідь на отриманий від хостуА запит хост Ввідповідає повідомленням, в якому встановлений біт SYN і встановлений біт АСК. У полі порядкового номера хост Ввстановлює своє початкове значення лічильника – ISSb. Поленомера підтвердження при цьому міститиме значенняISSa,отриманев першому пакеті від хостуА і збільшене на одиницю.Таким чином, хост В відповідає таким повідомленням: B-> A: SYN, ACK, ISSb, ACK(ISSa+1)
3. Нарешті, хост А посилає повідомлення хосту В, в якому: встановлений біт АСК; поле порядкового номера містить значення ISSa + 1;поле номера підтвердження містить значення ISSb + 1. Після цього ТСР-з’єднання між хостами А і В вважається встановленим:
A-> B: ACK, ISSa+1, ACK(ISSb+1)
4. Тепер хост А може посилати пакети з даними на хост В по тільки що створеному віртуальному TCP-каналу:
А -> В: АСК, ISSa+1, ACK(ISSb+1); DATA
Тут DATA позначає дані.
Із розглянутого вище алгоритму створення TCP-з’єднання видно, що єдиними ідентифікаторами TCP-абонентів і TCP-з’єднання є два 32-бітні параметри порядкового номера і номера підтвердження — ISSaі ISSb. Отже, якщо хакерові вдасться дізнатися поточні значення полів ISSaі ISSb, то йому ніщо не перешкодить сформувати сфальсифікований TCP-пакет. Це означає, що хакерові досить підібрати поточні значення параметрів ISSaі ISSbпакету TCPдля даного TCP-з’єднання, послати пакет з будь-якого хосту Інтернету від імені клієнта даного TCP-підключення, і даний пакет буде сприйнятий як дійсний.
Таким чином, для здійснення описаної вище атаки необхідною і достатньою умовою є знання двох поточних 32-бітових параметрів і ISSb, що ідентифікують TCP-з’єднання. Розглянемо можливі способи їх отримання. У разі, коли хакреський хост підключений до мережевогосегменту, що атакується, завдання отримання значень ISSaі ISSbє тривіальним і вирішується шляхом аналізу мережевого трафіку. Отже, потрібно чітко розуміти, що протокол TCPдозволяє захистити з'єднання тільки у випадку-неможливості перехоплення хакером повідомлень, які передаються по даному з'єднанню, тобто тільки у разі, коли хакреський хост підключений до мережевого сегменту, відмінного від сегменту абонента TCP-з’єднання [4].
Тому найбільший інтерес для хакера представляють міжсегментні атаки, коли віні його мета знаходяться в різних сегментах мережі. В цьому випадку завдання отриманнязначень ISSa і ISSb не є тривіальним. Для вирішення даної проблеми на сьогодні придумано тільки два способи.
·Математичний прогноз початкового значення параметрів TCP-з'єднання за екстраполяцією попередніх значень ISSa і ISSb.
·Використання вразливостейідентифікації абонентів TCP-з’єднанняна rsh-серверах Unix.
Перше завдання вирішується шляхом поглиблених досліджень реалізації протоколу TCP в різних операційних системах і сьогоднімає тількитеоретичне значення. Друга проблема вирішується з використанням вразливостейсистемиUnix ідентифікації довірених хостів. Довіреним по відношенню до даного хосту А називається мережевий хост В, користувач якого може підключитися до хосту А без аутентифікації за допомогою r-служби хостуА. Маніпулюючи параметрами TCP-пакетів, хакер може спробувати видати себе за довірений хост і перехопити TCP-з’єднанняз хостом, що атакується[5].
Єдиним порятунком від перехоплення даних є їх шифрування, тобто криптографічні методи захисту. Посилаючи в мережі повідомлення, слід заздалегідь припускати, що кабельна система мережі абсолютно уразлива, і будь-який хакер, що підключився до мережі, зможе виловити з неї всі передані секретні повідомлення. Є дві технології вирішення цієї задачі — створення мережі VPNі шифрування самих повідомлень. Всі ці завдання можна вирішити за допомогою пакету програм PGP Desktop Security[12].
3.5 Комутований доступ до мереж
Телефонні лінії зв'язку, підключені до корпоративної мережі, по суті є якнайкращим способом вторгнення в комп'ютерну систему організації. На входах в підключений до Інтернету сервер сьогодні, як правило, встановленібрандмауери,аось телефонні лінії, невідомо як і ким підключені до комп'ютерів за допомогою модемів – цереалії сьогодення. Дуже багато співробітників організацій підключають до своїх офісних комп'ютерів модеми для організації входів зі своїх домашніх комп'ютерів.
Після такого підключення вся система захисту комп'ютерної системи фактично обнуляється, адже немає нічого простішого, ніж визначення телефонної лінії з модемом, що працює на іншому кінці. Набравши відповідний номер, можна почути характерні звуки, що видаються модемом на іншому кінці лінії зв'язку.
Ці звуки є не що інше, як сигнали, за допомогою яких модеми зв'язуються один з одним. Знаючи протокол взаємодії модемів, частоти, послідовності і тривалість сигналів — для фахівців секретів тут немає, можнанаписати програму, що автоматизує процес пошуку модемних ліній зв'язку, здатну перебирати набори телефонних номерів із заданогодіапазону, виявляти модемні лінії зв'язку і записувати отримувані повідомлення в спеціальний журнал [4].
На сьогоднішній день існує безліч програм-сканерів, найвідоміші з них – це утиліта LoginHacker, що дозволяє застосовувати для завдань сканування сценарії, утиліта THN-Scanі ToneLockкомпанії MinorThreat&MuchoMaas. Дві останні утиліти запускаються з команднихрядківі не мають графічного інтерфейсу.
Серед усіх програм сканерів можна виділити програму PhoneSweepкомпанії Sandstorm. Ця утиліта дозволяє сканувати відразу декілька телефонних ліній, працюючи з декількома модемами одночасно, виявляти віддалену програму, що приймає телефонні дзвінки, і навіть підбирати пароль для доступу до цієї віддаленої програми. Демо-версія програми PhoneSweepдозволяє робити майже все, окрім виконання реальних дзвінків, замінюючи їх імітацією.
Щоб приступити до злому ліній зв'язку, хакерові необхідно знати телефони організації, тому перше завдання хакера — визначити, хоч би приблизно, діапазон номерів організації, комп'ютерну систему якої хакер буде атакувати.
Перед виконання атаки кваліфікований хакер завжди виконує попередній збір даних про організацію, який полягає в пошуку всіх відомостей, які хакер може зібрати про комп'ютерну систему, що атакується. Мається на увазі інформація, що містить звіт про комп'ютерну мережу організації. На хакреських сайтах можна знайти файли з результатами сканування широкого діапазону телефонних номерів. У цих файлах можна знайти безліч відомостей про телефони різних організацій з вказівкою програми, що приймає дзвінки, і навіть відомостей пропаролідоступу[12].
3.5.1 Сканер
PhoneSweep 4.4
Утиліта PhoneSweep— по суті, перший по справжньому функціональний інструмент для аналізу систем захисту телефонних ліній. Програмні інструменти, що використовувалися до цих пір були складні в управлінні, створені програмістами-любителями і позбавлені підтримки виробника. Проте основним їхнімнедоліком єпогана сумісність з сучасними системами Windows.
Програма PhoneSweepпозбавлена цих недоліків і пропонує всім користувачам могутні засоби тестування модемних ліній на предмет їх захищеності від несанкціонованого доступу. Програма PhoneSweep володіє такими можливостями.
·Працює на операційних системах Windows 95/98/NT/2000/XP.
·Забезпечена зручним графічним інтерфейсом.
·Дозволяє тестувати системи захисту на стійкість до атак «грубою
силою» з генерацією пар логін/пароль для злому з'єднань запротоколомРРР (Point-to-Point protocol — Протокол двоточкового з'єднання).
·Дозволяє створювати звіти, що налаштовуються.
·Дозволяє працювати з декількома модемами, від 1 до 4.
·Дозволяє зупиняти і перезапускати сканування з різними налаштуваннями, причому без всякої втрати отриманих даних.
3.5.2 Робота з програмоюPhoneSweep 4.4
Щоб почати сканування телефонних номерів за допомогою програми Phone-Sweep, слід зробити три операції.
·У робочому вікні програми PhoneSweep відкрити вкладку Setup (Параметри), представлену на рис. 3.22і налаштуватипоточний профіль програми.
·Відкритивкладку Phone Numbers (Телефонні номери), представлену на Рис. 3.21і, клацнувши на кнопці Add (Додати).Вдіалозі Add Phone Numbers (Додатиномери телефону), представленому на рис. 3.23, ввести діапазон телефонних номерів для прозвону.
·У робочому вікні програми PhoneSweep клацнути на кнопці Start (Старт) ідочекатисярезультатів.
Основною процедурою є налаштуванняпрофілю програми, яка в термінах довідкової системи програми називається створенням правилпрозвону(dialing riles).
Правила прозвонупрограми PhoneSweep дозволяють керуватипорядком, часом і частотою дзвінків, що виконуються в процесі сканування телефонних номерів організації. При створенні правилпрозвонуслід добитися такої поведінки програми PhoneSweep, яка, з однієїсторони, не приверне зайвої уваги системи захисту ліній зв'язку, а з іншої — дозволитьвирішити поставленезавдання з мінімальними зусиллями.
Для ідентифікації і злому доступу до віддаленої системи слід відкрити вкладку Effort (Режим)(рис.3.24).
Як видно з рис. 3.24, тут є все необхідне, щоб злом віддаленої системи пройшов якомога ефективніше. У списку Set Level (Встановіті рівень), можна вибрати, чи слід просто під'єднатися до телефону (пункт Connect (З'єднатися)), або ж спробувати ідентифікувати віддалену систему (пункт Identity(Ідентифікація)),або ж спробувати зламати доступ до системи (пунктPenetrate (Проникнути)). При цьому список Scan For (Сканувати), дозволяє вибрати режим пошуку модемів факсимільних апаратів, що важливо для різних застосувань (безглуздо, намагатися зламати доступ до факсимільного апарату).
Телефонні лінії, підключені через модем до комп'ютерної системи – найнадійніший шлях для проникнення в локальну мережу організації. Причинаполягаєвмасовомухарактерінелегальноговстановленнямодемів дляроботи з робочим комп'ютером сидячи вдома. Додатисюди наявність множинизабутих і покинутих ліній, повна зневага правилами комп'ютерної безпеки, що панує в більшості організацій, ось чому досить частовідбуваються зломи мережрізних фінансових установ.
Описана в цьому питанніпрограма PhoneSweep – ценайбільш могутній засібдля вирішення завдань проникнення у віддалену систему. Програма PhoneSweep корисна як хакерові, так і антихакерові, оскільки тестування телефонних номерів організації – ценадійний спосіб перевірки наявності недоліківв системі захисту комп'ютерної системи від віддаленого проникнення [4].
продолжение
--PAGE_BREAK--