русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Сокрытие процессов


Дата добавления: 2014-11-28; просмотров: 808; Нарушение авторских прав


 

Цель мониторинга за процессами заключается в выявлении исполняемых программ, которые потребляют несоразмерно много ресурсов, а также программ, которые были запущены внешним или внутренним нарушителем для атаки компьютерной системы. Подозрительными и заслуживающими внимания администратора следует считать процессы:

· запущенные от имени root с именами, которые обычно не отображаются в списке задач. Выявление таких процессов затруднено вследствие того, что они обычно не отображаются в списке задач;

· запущенные пользователями потенциально опасные системные утилиты с установленным битом SUID. Правда, в последнем случае, как будет показано ниже, владельцем процессов является суперпользователь root;

· имеющие странные имена, в том числе включающие в себя необычные символы. Это может быть следствием программной атаки на переполнение буфера.

Упомянув программные средства контроля над процессами, нельзя обойти вниманием способы, которые могут применить злоумышленники для их сокрытия. Нарушитель при запуске вредоносной программы закономерно попытается «спрятать» ее процесс от глаз администратора и других внимательных пользователей. Нелояльные пользователи, которые пытаются незаконно повысить свои полномочия, также могут скрытно от администратора запускать ответственные утилиты su, sudo, passwd, mount, chmod и др. Никто, впрочем, не запрещает использовать эти утилиты явно и по их прямому назначению. Разумеется, скрывать от визуального контроля имеет смысл только те процессы, которые выполняются достаточно долго. О нейтрализации программных средств аудита, которые, в частности, фиксируют мгновенные события, речь пойдет отдельно.

Возможности нарушителя определяются многими факторами, среди которых наиболее значимыми являются его права доступа, квалификация и программный инструментарий. Для того чтобы полностью скрыть или сделать неприметной отображаемую информацию, нарушитель может попытаться:



· изменить параметры процесса, по которым его можно отличить от других и идентифицировать;

· осуществить подмену самих утилит ps и top, отображающих информацию о процессах;

· изменить содержимое виртуальных файлов в директории /proc/PID, соответствующей номеру скрываемого процесса;

· произвести вмешательство в «ядерные» процессы в целях перехвата и замены отображаемой информации о процессах.

Обладая правами администратора, нарушитель может:

· внедрить программный модуль;

· обеспечить автоматический или периодический запуск системного процесса или службы;

· запустить процесс из командной строки и использовать методы его сокрытия на уровне ядра.

Так называемые «ядерные» методы сокрытия процессов основаны на соображениях, изложенных в [11]. Виртуальная файловая система /proc содержит по одному «числовому» каталогу на каждый выполняющийся процесс. Если скрыть такой каталог, то процесс с соответствующим идентификатором PID не будет отображаться утилитами psи top.

Для сокрытия каталогов и процессов предлагается одинаковый подход. Он заключается в том, что каждый файл (и каталог) представлен в ядре структурой file, одно из полей которой является указателем на другую структуру file_operations, определяющей допустимые действия с файлами. Если заблокировать обращение к конкретной функции, то она перестанет вызываться. Например, для сокрытия каталога следует заблокировать вызов функции readdir(). Алгоритмические и программные особенности для программистов можно почерпнуть в [8, 10, 11].

Ядро ОС Linux не является монолитным, а использует модульную архитектуру с механизмом загружаемых модулей (LKM – Loadable Kernel Modules). Модульные ядра, как правило, не требуют полной перекомпиляции при изменении состава аппаратного обеспечения компьютера. Это позволяет один раз собрать компактное ядро и, по мере необходимости, добавлять или удалять из него требуемый функционал. Модулями ядра могут быть и драйверы аппаратных устройств компьютера. После загрузки модуля он становится частью ядра.

Модули могут быть загружены с помощью команды modprobe или insmod. Как правило, команда modprobe более предпочтительна, потому что она загружает все вторичные модули, от которых зависит основной загружаемый модуль. Просмотреть список загруженных модулей можно командой lsmod (рис. 2.9).

 

 

# lsmod



<== предыдущая лекция | следующая лекция ==>
John pts/0 2008-11-05 16.23 | Ext3 62288 2


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.176 сек.