а кордону. В основі цього методу лежить виконання перевірок виходу за межі змінної при кожному зверненні до неї. Це запобігає всі можливі атаки по переповненню буфера, оскільки повністю виключає саме переповнення. Однак, у цього рішення є істотний недолік - значне (до 30 разів) зниження продуктивності програми.
. Застосування перевірок цілісності. Рішення, засноване на даному методі, отримано завдяки проекту Synthetix. Мета Synthetix - спеціалізація коду для збільшення продуктивності операційних систем. При цьому вводиться поняття так званого квазі-сталості (Quasi-invariant), тобто стану середовища, який незмінно в певних рамках. Таке квазі-сталість дозволяє усунути ряд надлишкового коду перевірки виконання різних умов. В рамках проекту реалізований набір утиліт, у тому числі забезпечують контроль і захист квазі-постійних станів середовища. До їх числа відносяться StackGuard і PointGuard.
Використання спеціалізованих програм
Робочі станції кінцевих користувачів дуже уразливі для вірусів і троянських коней. Вірусами називаються шкідливі програми, які впроваджуються в інші програми для виконання певної небажаної функції на робочій станції кінцевого користувача. Як приклад можна привести вірус, який прописується у файлі command (головному інтерпретаторі систем Windows) і стирає інші файли, а також заражає всі інші знайдені ним версії command.
Троянський кінь - Це не програмна вставка, а справжня програма, яка виглядає як корисний додаток, а на ділі виконує шкідливу роль. Прикладом типового троянського коня є програма, яка виглядає, як проста гра для робочої станції користувача. Однак поки користувач грає в гру, програма відправляє свою копію електронною поштою кожному абоненту, занесеному в адресну книгу цього користувача. Всі абоненти отримують поштою гру, викликаючи її подальше розповсюдження.
Сніффер пакетів являє собою прикладну програму, яка використовує мережеву карту, що працює в режимі promiscuous mode (в цьому режимі всі пакети, отримані по фізичних каналах, мережевий адаптер відправляє додатком для обробки). При цьому сниффер перехоплює всі мережеві пакети, які передаються через визначений домен. В даний час сніффери працюють в мережах на цілком законній підставі. Вони використовуються для діагностики несправностей та аналізу трафіку. Однак через те, що деякі мережеві додатки передають дані в текстовому форматі (telnet, FTP, SMTP, POP3 і т.д.), за допомогою сніффер можна дізнатися корисну, а іноді і конфіденційну інформацію (наприклад, імена користувачів і паролі).
Приховати імен і паролів створює велику небезпеку, оскільки користувачі часто застосовують один і той же логін і пароль для безлічі додатків і систем. Багато користувачів взагалі мають один пароль для доступу до всіх ресурсів і додатків. Якщо додаток працює в режимі клієнт/сервер, а аутентифікаційні дані передаються по мережі в читається текстовому форматі, цю інформацію з великою ймовірністю можна використовувати для доступу до інших корпоративним або зовнішніх ресурсів.
Rootkit - програма або набір програм для приховування слідів присутності зловмисника або шкідливої ??програми в системі. Більшість з реалізацій сучасних rootkit можуть ховати від користувача файли, папки та ключі реєстру, приховувати запущені програми, системні служби, драйвери і мережеві з'єднання. Тобто зловмисник має можливість створювати файли і ключі реєстру, запускати програми, працювати з мережею і ця активність не буде виявлена ??адміністратором. Крім того, rootkits можуть приховувати мережеву активність шляхом модифікації стека протоколів TCP/IP. Так, наприклад rootkit Hacker Defender перехоплює виклики Winsock і може обробляти мережевий трафік до того як він буде переданий додатком. Тобто якщо в системі встановлений Web сервер, і відповідно відкритий 80й порт, rootkit може використовувати його для взаємодії з зломщиком, в той час як інші користувачі будуть без проблем працювати по протоколу HTTP.
Виділяють наступні способи боротьби з цими видами атак:
. Використання антивірусних засобів і регулярне оновлення їх сигнатур. Може вирішити проблему з троянськими програмами, вірусами, поштовими хробаками, але не вирішить проблему сніфферов і rootkit-ів.
. Шифрування переданих даних. Проблема не вирішує повністю проблему сніфферов, проте, противник перехоплює дані, які не можна вільно прочитати. Для їх розшифровки потрібен час.
. Використання антісніфферов (Наприклад, AntiSniff або PromiScan).
. Використання міжмережевих екранів.
. Використання антіруткіта.
Мережева розвідка
Мережевий розвідкою називається збі...