Клавиатурный шпион или keylogger – это вредоносная программа для перехвата пользовательских паролей операционной системы и определения их легальных полномочий и прав доступа к компьютерным ресурсам. Клавиатурный шпион обманом завладевает пользовательскими паролями, а затем переписывает эти данные в место, где злоумышленник может ими воспользоваться. Клавиатурные шпионы различаются только способом перехвата информации. Таким образом, существует три типа клавиатурных шпионов: имитаторы, фильтры и заместители.
Имитаторы работают по следующему принципу. Злоумышленник внедряет в операционную систему вредоносную программу, которая имитирует приглашение пользователю зарегистрироваться для входа в систему. Затем внедренный имитатор переходит в режим ожидания ввода пользовательского пароля. После того, как пользователь идентифицирует себя, имитатор сохраняет эти данные там, где они доступны злоумышленнику. Затем имитатор инициирует выход из системы. В результате перед пользователем появляется еще одно, но на этот раз уже настоящее приглашение для входа в систему.
Когда обманутому пользователю предлагается еще раз внести пароль, он думает, что сделал ошибку во время предыдущего ввода, и повторяет вход в систему заново. Некоторые имитаторы для убедительности выдают сообщение о совершенной пользователем ошибке по типу "Неверный пароль. Повторите ввод".
Для обеспечения безопасности от имитаторов нужно соблюдать следующие условия: • системный процесс, который при входе пользователя в систему получает от него регистрационное имя и пароль, должен иметь свой собственный рабочий стол, недоступный другим процессам; • переключение на регистрационное окно рабочего стола аутентификации должно происходить абсолютно незаметно для прикладных программ, которые к тому же никак не могут повлиять на это переключение.
Для повышения защиты от имитаторов можно также воспользоваться административными мерами. Например, обязать каждого пользователя тотчас сообщать системному администратору, когда вход в систему невозможен с первого раза, несмотря на правильно набранный пароль.
Фильтры отслеживают все данные, которые пользователь операционной системы вводит с клавиатуры компьютера. Элементарные фильтры просто сбрасывают перехваченный клавиатурный ввод в место доступа злоумышленника. Сложные вредоносные программы анализируют перехваченную информацию и отфильтровывают ту, которая относится к пользовательским паролям.
Фильтры являются резидентными программами, перехватывающими одно или несколько прерываний, связанных с обработкой сигналов клавиатуры. Эти прерывания возвращают информацию о нажатой клавише и введенном символе, которая анализируется фильтрами на отношение полученных данных к пользовательскому паролю.
Если в операционной системе можно переключать клавиатурную раскладку во время ввода пароля, то для нее возможна разработка фильтра. Поэтому, чтобы обезопаситься от фильтров, нужно выполнять такие мероприятия: • во время ввода пароля запретить переключение раскладок клавиатуры; • конфигурировать цепочку программных модулей, участвующих в работе с паролем пользователя, может только системный администратор; • доступ к файлам этих модулей имеет исключительно системный администратор.
Заместители подменяют собой программные модули операционной системы, отвечающие за аутентификацию пользователей. Такие клавиатурные шпионы могут быть созданы для работы в среде многопользовательской операционной системы. Перед тем как начать перехват паролей, заместитель внедряется в один или несколько системных файлов. Затем он использует интерфейсные связи между программными модулями полсистемы аутентификации для встраивания себя в цепочку обработки введенного пользователем пароля.
Чтобы защитить систему от внедрения заместителя, ее администраторам рекомендуется строго соблюдать меры безопасности. Подсистема аутентификации должна быть одним из самых защищенных элементов операционной системы.
Нужно отметить, что как только заместитель попал в компьютерную систему, защита от внедрения заместителей перестает работать. Поэтому очень важно иметь эффективные средства обнаружения и удаления внедренных клавиатурных шпионов. Но и они могут стать бесполезными, потому что машинный код вредоносной программы выполняется в контексте операционной системы, и поэтому она может предпринимать меры для затруднения собственного обнаружения. Например, заместитель может перехватывать системные вызовы, используемые администратором для выявления клавиатурного шпиона, чтобы подменить возвращаемую ими информацию.
Материал подготовила Ксения Балашевич
Литература: Анин, Б.Ю. Защита компьютерной информации / Б.Ю. Анин. – СПб.: БХВ – Санкт-Петербург, 2000.
Похожие материалы:
|