Мой опыт разработки в основном строится вокруг разнообразных сетевых cервисов под Windows и Linux. Я обычно стремлюсь добиться максимальной кроссплатформенности вплоть до бинарной совместимости. И конечно, накопилось некоторое количество стабильных решений связанных с логированием.
Топик написан как продолжение к этой статье и будет полезен в первую очередь начинающим программистам.
- Внутреннее свойство логгера и примеры софта который его использует.
- Объемы, уровни и детализация сообщений лога.
- Общие правила конфигурации в разработке, в бою и в расследовании.
Итак, начну со своих дополнений к предыдущей статье.
Я как и автор пользуюсь NLog’ом и разумеется широко использую его особенности. Конечно, после
их реализации в любом другом логгере, нижеописанную практику можно применять и у них.
Кстати, log4net продолжает развиваться.
- Наблюдение/перезагрузка файла конфигурации — это уже не просто полезное, а весьма необходимое умение.
- Минимальное вмешательство в выключенном состоянии.
Под капотом NLog
Сразу обсудим полезность второй фичи.
Как узнать место нахождения человека в IPLOGGER!
Часто, при разработке кода, возникает необходимость посмотреть значение какой либо переменной в процессе выполнения. Обычно, используют дебаггер и останавливают программу в интересующем месте. Для меня же, это явный признак, что этом месте будет полезен Trace вывод. В комплекте с юнит-тестами мы сразу получаем развертку этой переменной во времени и протокол для сравнения с тестами в других условиях. Таким образом, дебаггером я практически не пользуюсь.
Очевидно, что в боевом применении, даже выключенное подробное логирование, может мешать как скорости выполнения так и параллельности.
- Кэширование уровня логирования в volatile переменной. Это не требует блокировки или синхронизации потоков.
- Простой метод выяснения необходимости логирования. При некоторых условиях может приводить к inline-вставке кода в процессе jit-компиляции. А это превращает логику в простой условный пропуск участка кода и избавляет от копирования и передачи параметров функции логирования.
- Подробные перегрузки методов логирования. Минимизируют преобразование типов, а также берегут от напрасного боксинга, до того как мы выяснили о необходимости логирования.
- Отложенная генерация сообщения делегатом. Позволяет наглядно и легко задавать сложную генерацию сообщений.
Исходный код класса можно посмотреть тут.
Отлично! Для NLog можно быть уверенным, что ваши сколь угодно детальные сообщения могут быть отключены и это минимально скажется на производительности. Но, это не повод посвящать логированию половину кода.
Что и как логировать
Следует придерживаться правил:
- Вывод в лог следует размещать на отдельной строке.
- Сообщение должно быть максимально коротким и информативным.
- Локализовывать можно только редкие или фатальные сообщения.
- Аргументы желательно брать из локальных переменных метода или внутренних переменных класса данного метода.
- Не желательно использовать преобразования типов.
В целом, при выводе в лог, всегда отмечайте, то количество потенциально лишних вычислений, которые потребуются для случая когда лог отключен.
Узнать ip адрес чужого компьютера | Как узнать месторасположение | IPlogger | Вычислить по IP
Простой пример (фрагмент некоторого класса):
private static Logger Log = LogManager. GetCurrentClassLogger ( ) ;
public string Request ( string cmd, string getParams )
<
Uri uri = new Uri ( _baseUri, cmd + «?» + getParams ) ;
Log. Debug ( «Request for uri:`'» , uri ) ;
HttpWebRequest webReq = ( HttpWebRequest ) WebRequest. Create ( uri ) ;
webReq. Method = «GET» ;
webReq. Timeout = _to ;
string respText ;
try
<
string page ;
using ( WebResponse resp = webReq. GetResponse ( ) )
using ( Stream respS = resp. GetResponseStream ( ) )
using ( StreamReader sr = new StreamReader ( respS ) )
page = sr. ReadToEnd ( ) ;
Log. Trace ( «Response page:`'» , page ) ;
return page ;
>
catch ( Exception err )
<
Log. Warn ( «Request for uri:`’ exception: » , uri, err. Message ) ;
throw ;
>
>
Все аргументы логирования требовались для логики. Сообщение Debug отмечает аргументы с которыми мы пришли в функцию. В обработчике ошибки мы дублируем входные параметры на случай отключения Debug уровня. А это уже даст информацию при необходимости написать юнит-тест. Стек исключения не выводим, так как остается возможность сделать это вышестоящим обработчиком.
Вообще, в текущем обработчике ошибок полезно детализировать контекст который к привел к исключению и специфичные особенности исключения. В примере было бы полезно вывести поле Status для случая WebException.
Гарантии сохранности лога
Несмотря на некоторые возможности NLog по авто записи логов, нет гарантии сохранности лога при завершении процесса.
Что интересно, попытка завершить запись обработкой события AppDomain.ProcessExit не совсем корректна. В конфигурации может быть настроено много разных способов записи в лог, в том числе и по сети. А обработчик этого события находится в ограниченном окружении. В .Net это время работы не более 2х секунд, а в Mono это остановленный ThreadPool. Поэтому, полезно позаботиться о завершении процесса в более дружественном окружении.
Первое, что следует сделать, это обработать событие AppDomain.UnhandledException. В нем следует записать в лог полную информацию об ошибке и вызвать LogManager.Flush(). Обработчик этого события использует тот же поток, который и вызвал исключение, а по окончании, немедленно выгружает приложение.
private static readonly Logger Log = LogManager. GetCurrentClassLogger ( ) ;
public static void Main ( string [ ] args )
<
AppDomain. CurrentDomain . UnhandledException += OnUnhandledException ;
( . )
LogManager. Flush ( ) ;
>
static void OnUnhandledException ( object sender, UnhandledExceptionEventArgs e )
<
Log. Fatal ( «Unhandled exception: » , e. ExceptionObject ) ;
LogManager. Flush ( ) ;
>
Кроме того, следует вызывать LogManager.Flush() везде, где потенциально возможно завершение процесса. В конце всех не фоновых потоков.
Если ваше приложение представляет собой win-service или Asp.Net, то следует обработать соответствующие события начала и завершения кода.
Сколько логировать
Серьезная проблема для разработчика. Всегда хочется получать больше информации, но код начинает выглядеть очень плохо. Я руководствуюсь следующими соображениями.
Вывод в лог это по сути комментарий. Логирование уровня Trace по большей части их и заменяет.
Уровни Trace и Debug читают разработчики, а все что выше — техподдержка и админы. Поэтому до уровня Info сообщения должны точно отвечать на вопросы: «Что произошло?», «Почему?» и по возможности «Как исправить?». Особенно это касается ошибок в файлах конфигурации.
- Trace — вывод всего подряд. На тот случай, если Debug не позволяет локализовать ошибку. В нем полезно отмечать вызовы разнообразных блокирующих и асинхронных операций.
- Debug — журналирование моментов вызова «крупных» операций. Старт/остановка потока, запрос пользователя и т.п.
- Info — разовые операции, которые повторяются крайне редко, но не регулярно. (загрузка конфига, плагина, запуск бэкапа)
- Warning — неожиданные параметры вызова, странный формат запроса, использование дефолтных значений в замен не корректных. Вообще все, что может свидетельствовать о не штатном использовании.
- Error — повод для внимания разработчиков. Тут интересно окружение конкретного места ошибки.
- Fatal — тут и так понятно. Выводим все до чего дотянуться можем, так как дальше приложение работать не будет.
Боевое развертывание
Предположим, разработка дошла до внедрения.
Отложим вопросы ротации логов, размера файлов и глубины истории. Это все очень специфично для каждого проекта и настраивается в зависимости от реальной работы сервиса.
Остановлюсь только на смысловой организации файлов. Их следует разделить на 3 группы. Может потребуется развести логи модулей в разные файлы, но дальше я все равно буду говорить об одном файле для каждой группы.
- Группа Info, с соответствующим уровнем для всех источников. Это информация для администратора. Здесь могут быть следующие вещи: когда приложение стартовало, правильно ли вычитаны конфиги, доступны ли требуемые сервисы, и т.д. Его основное свойство: файл изменяет размер только при перезагрузке приложения. В процессе работы, файл расти не должен. Это поможет обеспечить автоматизированный внешний контроль успешности запуска приложения. Достаточно проверить отсутствие в файле ключевых слов Error и Fatal. Проверка всегда будет занимать предсказуемо малое время.
- Группа Warning. Это тоже информация для администратора. Этот файл при нормальной работе должен отсутствовать или быть пустым. Соответственно мониторинг его состояния сразу укажет на сбои в работе. Гибко настроив фильтры по разным источникам, можно подобрать достаточно точный критерий, когда вообще следует обратить внимание на сервис.
- Группа Наблюдение. Как правило в ходе внедрения выделяются некоторые проблемные модули. Информация от них в детализации Debug как раз и направляется сюда.
Если приложение успешно внедрено, то в работе остаются только первые две группы.
Расследование сбоев
Когда работающий сервис подает признаки ошибки, то не следует его пытаться сразу перезагружать. Возможно нам «повезло» поймать ошибки связанные с неверной синхронизацией потоков. И не известно сколько в следующий раз ждать ее повторения.
В первую очередь следует подключить заготовленные заранее конфиги для группы наблюдения. Как раз это и должен позволять делать приличный логгер. Когда мы получили подтверждение о том, что новая конфигурация успешно применена, то пытаемся опять спровоцировать сбой. Желательно несколько раз. Это обеспечит возможность для его воспроизведения в «лабораторных» условиях.
Дальше уже работа программистов. А пока можно и перезагрузиться.
Вывод в лог желательно сделать асинхронным.
Пример, боевой настройки.
/logs/info.log» />
/logs/warn.log» />
При настройке фильтров следует учитывать относительность уровней логирования для каждой из подсистем. Например, некоторый модуль, имея Info сообщение об инициализации, может быть создан для каждого подключенного пользователя. Разумеется, его вывод в Info группу следует ограничить уровнем Warn.
Чего с логгером делать не следует
Логгер должен быть простым и надежным как молоток. И у него должна быть четко очерчена область применения в конкретном проекте. К сожалению, разработчиков часто трудно удержать. Паттерны проектирования, это в основном полезно, но не этом случае. Достаточно часто стал замечать предложения выделить для логгера обобщенный интерфейс (пример) или реализовать обертку в проекте, чтобы отложить муки выбора NLog vs log4net на потом.
Что бы ни было тому причиной, надо точно помнить, что в первую очередь, такие удобства напрочь убивают компилятору возможность оптимизации.
Не стоит напрямую выводить информацию логгера пользователю, даже с фильтрами. Проблема в том, что эта информация зависит от внутренней структуры программы. Вряд ли вы в процессе рефакторинга пытаетесь сохранить вывод логгера. Наверное, здесь стоит просто задуматься и разделить функционал. Возможно, в проекте просто требуется еще один уровень логирования.
В этом случае как раз и уместна будет обертка над логгером.
Чего же мне еще не хватает в NLog?
- Дополнительные перегрузки методов логгера, для того чтобы избежать генерации классов лямбда-функций. Хочется иметь вызов вида
Log.Trace(Func messageCreater, TArg1 arg1, TArg2 arg2)
Но на текущий момент, самый короткий человекочитаемый вариант подразумевает скрытую генерацию класса:
Log.Trace(() => MessageCreate(arg1, arg2)) - Бинарная совместимость. Помогает быстро тестировать сервисы на разных платформах. В NLog очень много инструкций условной компиляции в зависимости от платформы. Т.е. бинарник для Mono может неожиданно работь в DotNet. А очень желательна предсказуемость, хотя бы и в ограниченной комплектации.
- Условная расширяемость. Понятно, что с бинарной совместимостью придется жертвовать функционалом, но у нас уже есть удобный механизм расширений. Осталось только, чтобы он фильтровал расширения в зависимости от платформы. Вместе с предыдущей возможностью, это еще и дает простое развертывание через копирование директории с IL-бинарниками.
- Логгирование внутренних сообщений в общем контексте. Был бы полезен список создаваемых в системе логгеров. К сожалению, не уверен, что можно избежать рекурсии. Например, когда вывод в файл начнет писать ошибки вывода в себя же.
NLog, Log4Net, Enterprise Library, SmartInspect.
Разнообразные сравнения логгеров между собой, упускают одну важную деталь.
Важно сравнивать не только ограничения/возможности, но и возможность быстро добавить свои «хотелки».
Поэтому, буду пока дружить с NLog.
Чего и Вам желаю.
Источник: habr.com
Клавиатурные шпионы (кейлоггеры, keyloggers)
Кейлоггером называется устройство или ПО для перехвата данных, вводимых с клавиатуры. Оно распознаёт нажатия кнопок, скрыто сохраняет и передает информацию злоумышленнику. Кейлоггеры являются разновидностью шпионских программ.
Название термина образовано слиянием английских слов «key» («клавиша») и «logger» («регистрирующее устройство»). Соответственно, keylogger — это регистратор нажатий клавиш. Впрочем, такой шпион может записывать информацию не только о том, на какие кнопки нажимает пользователь, но и о ряде других действий — например, о движениях мыши.
Кейлоггер также фиксирует время и дату нажатий, что немаловажно для построения хронологии событий. У термина есть альтернативные и синонимичные варианты: «keyboard logger», «key capture program», «key recorder» и другие. Иногда клавиатурного регистратора называют «снупером» — от английского слова «snooper», означающего человека, который сует нос в чужие дела.
По традициям русской орфографии более уместным является написание «кейлогер» (так же, как «блогер» вместо «блоггер»), но вариант с двойной «Г» встречается чаще.
Классификация кейлоггеров
Кейлоггеры классифицируются по многим признакам: по виду, месту хранения журнала, варианту его отправки, методу применения. По способу реализации угрозы различают кейлоггеры аппаратные, программные, акустические. Так как акустические кейлоггеры встречаются сравнительно редко, остановимся на характеристике первых двух видов.
Аппаратный кейлоггер — это устройство малых размеров, подключаемое к ПК или внедряемое в него. Шпиона трудно обнаружить из-за труднодоступного расположения, малых размеров, схожести с обычным оборудованием для компьютеров. Например, компактный модуль, внешне похожий на переходник, устанавливают между кабелем клавиатуры и системным блоком; такое наружное приспособление может подключить любой пользователь (а затем и снять его в любое время, подсоединить к другому компьютеру и считать информацию). Существует визуальное наблюдение за клавиатурой, например за панелью банкомата, где вводится PIN-код. В данной ситуации роль аппаратного кейлоггера играет видеокамера.
В других случаях шпион является внутренним. Например, очень маленький аппарат может встраиваться в разрыв кабеля клавиатуры и покрываться изоляцией. При свободном доступе к машине кейлоггер легко впаивается в микросхему клавиатуры или материнскую плату.
Внутренние кейлоггеры не видны обычным пользователям и даже не всегда распознаются ИТ-специалистами при детальном исследовании внутренностей ноутбука или системного блока ПК. Бывают и бесконтактные электромагнитные кейлоггеры. Их можно крепить к кабелю клавиатуры. В таком случае устройство похоже на стандартный фильтр помех и не вызывает подозрений.
Аппаратные кейлоггеры наружного и внутреннего вида (кроме бесконтактных) не нуждаются в источнике питания, так как подключены к ПК, а их внутренняя память может сохранять до 20 млн нажатий клавиш. Устройство не обнаруживается антивирусными программами, так что считывание информации с клавиш может происходить в течение длительного периода времени. Однако у аппаратных клавиатурных шпионов есть и недостатки:
- устройство нельзя установить удаленно;
- объем памяти хоть и велик, но ограничен;
- для снятия данных нужно получить приспособление обратно, если у компьютера нет модуля Wi-Fi.
Программные кейлоггеры (keyloggers) не имеют этих ограничений и потому особенно популярны. В этом случае шпион имеет вид приложения для операционной системы, которое работает в скрытом режиме (без графического интерфейса) и записывает перехваченные сведения в файл журнала, впоследствии высылая последний хозяину через интернет.
Такие кейлоггеры не только записывают нажатия клавиш, но и фиксируют движения мыши, считывают данные из окон других программ, выполняют съемку экрана. Программный шпион перехватывает принятые и отправленные электронные письма, записывает изображения с камеры и звук с микрофона, если таковые подключены к компьютерному устройству. Приложение способно следить за файловой активностью, записывать задания, которые отправляются на печать, и т.п.
Объект воздействия
Проникновение программного кейлоггера в компьютер происходит легко и незаметно. Шпион может попасть в систему вместе с нелицензионным ПО, незаметно загрузиться при посещении сайтов, при открытии файла, прикрепленного к электронному письму, и даже быть встроенным в другое приложение. Кроме того, существуют легальные кейлоггеры, например программа Punto Switcher от компании «Яндекс». Она не только автоматически переключает раскладку клавиатуры (что является ее основной функциональностью), но и имеет опцию ведения дневника, записывая в текстовый файл все нажатия клавиш. Зная об этом, злоумышленники устанавливают ее на компьютеры жертв, так как Punto Switcher не детектируется антивирусными программами.
Кейлоггеры (keyloggers) вмешиваются в работу компьютера, но не вредят операционной системе. Из-за отсутствия деструктивных функций, а также ввиду возможности легального использования их относят к нежелательным программам, а не ко вредоносным. Действительно, регистратор нажатий клавиш может служить как хорошим средством управления безопасностью, так и результативным средством ее нарушения. Увидеть тонкую грань между этими функциями помогут только цели, с которыми применялся кейлоггер.
Итак, применение клавиатурного шпиона может быть санкционированным и несанкционированным. При санкционированном использовании аппаратного или программного кейлоггера пользователь ПК или ноутбука, инженер безопасности либо владелец автоматизированной системы ставится в известность о его наличии.
В таком случае кейлоггеры называются мониторинговыми продуктами и выполняют ряд полезных функций. В частности, регистраторы нажатий клавиш санкционированно применяются в государственных учреждениях, в частных компаниях, на производствах и в других различных организациях. Установка кейлоггеров дает возможность определить попытки передачи важной информации третьим лицам или набора паролей доступа, а также исследовать инциденты, связанные с компьютером. Клавиатурные шпионы помогают контролировать использование компьютерной техники в личных целях или в нерабочее время, а также получить информацию с жесткого диска ПК, если по какой-то причине нет пароля доступа.
Кейлоггер позволяет определить, насколько оперативно и грамотно персонал может реагировать на воздействия извне. Кроме того, кейлоггеры встраиваются в DLP-продукты с целью контроля переписки персонала для предотвращения передачи секретной информации. С помощью регистратора нажатий клавиш можно восстановить важную информацию после нарушения работы ОС.
Несанкционированное применение кейлоггера состоит во внедрении программы или аппаратного устройства без согласия и без ведома владельца или оператора. Такие регистраторы считаются шпионскими продуктами и обычно связаны с противозаконной деятельностью. Объектами воздействия несанкционированного применения кейлоггеров (keyloggers) могут быть частные лица, банковские и финансовые системы, компании большого и малого бизнеса, государственные структуры и т.д.
Незаконное использование аппаратных устройств или фиксирующих программ дает злоумышленнику возможность получить важную корпоративную информацию, номера счетов, пароли в системах платежей, коды к учетным данным, доступ к просмотру электронной почты. С помощью кейлоггеров осуществляется шпионаж в сфере политики и экономики, открывается доступ к тайнам коммерческих структур и государственных учреждений, системам криптографической защиты информации, становится возможным завладение чужими денежными средствами, использование учетных записей в своих целях.
Источник угрозы
Кто может внедрять клавиатурного шпиона и служить источником угрозы? Если говорить о санкционированном применении кейлоггеров, то они устанавливаются администраторами служб безопасности, сотрудниками правоохранительных органов, разных секретных служб. Подробнее о том, как используется кейлоггер в обеспечении безопасности данных, можно узнать в статье «Обзор Контура информационной безопасности SearchInform. Часть 2 — Сценарии применения».
Стоит отметить, что существуют доступные для скачивания программы, которые может установить любой пользователь. Например, родители отслеживают действия детей в сети, получают оповещение при попытках ребенка зайти на запрещенные ресурсы. Регистратор нажатий клавиш применяют мужья и жены для наблюдений за действиями друг друга в социальных сетях, для чтения электронных писем и других текстовых сообщений.
В организациях и на предприятиях угроза перехвата нажатий клавиш может исходить от персонала. Сотрудники имеют физический доступ к машинам, могут установить как аппаратное устройство, так и программный шпионский продукт. Тот же риск создают работники сервисных служб, выполняющие ремонт и обслуживание компьютеров, а также фирмы, продающие ПО.
Самым распространенным источником угрозы (особенно для частных лиц) является сеть. Интернет-мошенники используют множество средств заражения компьютера своей «жертвы» программой с кейлоггером: рассылка писем с вложениями по электронной почте, заражение файлов в каталогах, находящихся в общем доступе сети, автоматически запускающиеся сценарии на веб-страницах и т.п. Функция кейлоггера есть во многих троянских программах. Они проникают в компьютер пользователя и осуществляют полный контроль над совершаемыми действиями, фиксируя всю информацию. Сегодня практически нет однофункциональных кейлоггеров, настало время универсальных вредоносных программ.
Анализ риска
Риски попадания в зону внимания киберпреступников велики и у организаций, и частных лиц. И если есть уверенность в невозможности использования злоумышленником аппаратного кейлоггера, то проникновение в компьютер программного продукта предупредить не так просто.
Компания Symantec сообщает, что примерно половина вредоносных программ и приложений применяется с целью сбора информации, а не для нанесения вреда компьютеру. Разработчики антивирусов ESET раскрыли вредоносную киберкампанию «Операция Liberpy», в ходе которой мошенники воровали персональные данные пользователей путем установки в систему программ-кейлоггеров. Детальную информацию об этом происшествии можно прочитать в статье «Эксперты ESET раскрыли операцию кибершпионажа». «Лаборатория Касперского» отмечает интенсивный рост числа программ, реализующих среди прочих рисков угрозу считывания нажатий клавиш, кнопок мыши и прочих действий пользователя. Это значит, что от кражи личных данных не застрахован ни один человек, пользующийся интернетом.
При заражении компьютера кейлоггером возможны разные последствия. Для государственных учреждений и коммерческих структур они заключаются в потере конфиденциальной информации, материальном ущербе. Однако на страже интересов компаний стоят службы безопасности, поэтому чаще жертвами мошенников становятся обычные люди. Заразив компьютер кейлоггером, киберпреступники получают информацию о банковских и электронных счетах, снимают и переводят денежные средства, оформляют кредиты. Существует много примеров потери личных средств пользователями, краж крупных сумм со счетов банков, промышленного шпионажа.
Бороться с программными кейлоггерами сложно, но вполне возможно — при помощи антивирусов. Для борьбы с аппаратными регистраторами нажатий клавиш используются специальные сканеры, выполняется анализ рентгеновских снимков оборудования. Простым, но эффективным способом защиты от многих кейлоггеров являются экранные клавиатуры, заменяющие нажатие на кнопку клавиатуры щелчком мыши на участке экрана.
Источник: www.anti-malware.ru
Сравнение лучших бесплатных кейлоггеров для ПК
Кейлоггер для ПК может быть специализированным решением или компонентом многофункционального софта. Его задача – вести мониторинг действий пользователя за компьютером посредством записи (составления лога) всех взаимодействий с клавиатурой. Это эффективный метод контроля сотрудников на предприятии вне зависимости от направления деятельности.
Что такое программа кейлоггер (keylogger)?
Эти приложения еще называют клавиатурными шпионами. Они представляют собой софт для отслеживания нажатий клавиш. Не имеет значения, какую цель преследует сотрудник в данный момент: переписывается в мессенджере, отправляет электронное письмо, вбивает запрос в поисковике, работает с веб-сайтом или составляет отчет. Логирование действий через keylogger производится автоматически и перманентно.
Использование клавиатурных шпионов не преследует цель узнать пароль от личной почты рабочего или его персональную переписку. Предназначение программ кейлоггеров в том, чтобы исключить деятельность сотрудника за рабочим ПК, не связанную с исполнением должностных обязанностей.
Кейлоггеры для отслеживания нажатий клавиш могут логировать всё подряд. Или реагировать на ввод специалистом определенных комбинаций символов (слов и фраз). Клавишный мониторинг может осуществляться непрерывно или в определенное время, информация может поступать онлайн или в форме периодических отчетов. У некоторых программ шпионов для компьютера есть возможность делать автоматические скриншоты экрана в ответ на действия пользователя с пересылкой снимка на почту руководителю. Тут всё зависит от того, установка какого софта (простого или комплексного) выполнена на ПК.
Законно ли отслеживание нажатий клавиш на клавиатуре?
Кейлоггер для Windows и MacOS производит запись действий на компьютере, когда сотрудник исполняет должностные обязанности. Keylogger в большинстве случаев не записывает действия мыши, хотя комплексная система контроля сотрудников может и это делать. Keylogger запоминает нажатие на клавиши рабочего ПК. Обратите внимание – рабочего.
Рабочий PC и телефон принадлежат компании. Софт на них тоже корпоративный. Все действия, которые специалист выполняет в рамках должностных обязанностей, не относятся к личным. Компания арендует время специалиста, и оно закономерно переходит из категории личного в рабочее. По закону, компания вправе использовать средства для отслеживания действий сотрудников в рабочее время с целью мониторинга.
Следовательно, наблюдение за компьютером с помощью программы keylogger абсолютно законно. Более того – установка программы для записи нажатых клавиш может собирать данные если сотрудники заходит на ПК или сервер удаленно. Но в этом случае отслеживание действий на компьютере пользователя допустимо только в рабочие часы, оговоренные в договоре. Комплексный софт может делать скриншоты с отправкой их на указанный e-mail или облачный сервер.
1. Keylogger в решении Bitcop
Платформа: Windows XP, Vista, 7, 8, 10.
Бесплатная версия: полный функционал в рамках одного пользователя
Система для комплексного слежение за компьютером
В программу встроен отдельный модуль, позволяющий запоминать все нажатые клавиши. В зависимости от настроек есть возможность активировать скриншоты. Софт действует скрытно, считывание нажатий с клавиатуры не влияет на деятельность специалиста, он никак не взаимодействует с Bitcop. Помимо keylogger у решения есть и другие возможности.
Например, полный лог действий специалиста – какие приложения запускал, какие сайты посещал, что делал в тот или иной момент времени. В Bitcop можно интегрировать сторонние решения, включая взаимодействие с ip-телефонией и слежку за звонками с целью повышения эффективности техподдержки или отдела продаж. Скачать кейлоггер отдельно нельзя, эта возможность встроена в дополнительный модуль комплекса.
Дополнительно включено в систему:
- Учет работы времени за компьютером,
- Логирование программ и вебсайтов,
- Мониторинг переписки в менеджерах (skype, whatsapp, viber)
- Логирование интернет запросов,
- Учёт системных событий,
- Скрытый режим работы,
- Блокировка запрещенных сайтов,
- Структура дня,
- Скриншоты экрана,
- Тайм-трекинг.
2. Best Free Keylogger
Платформа: Windows
Free версия: с ограниченными возможностями
Назначение: программа для считывания действий на клавиатуре
Дополнительные функции:
- Собирает данные о интернет-активности,
- Логирует переписку по e-mail и в мессенджерах, сохраняя пароли,
- Мониторинг приложений,
- Сохраняет скриншоты экрана,
- FTP, USB, Локальная сеть,
- Невидимый режим работы.
3. SC-Keylogger
Операционные системы: Windows
Полностью бесплатная версия
Предназначение: запись действий мыши и клавиатурный перехватчик
Типичная программа «клавиатурный шпион». В отличие от большинства аналогов, фиксирует действия мыши и клавиатуры. Обратите внимание, под действиями мыши подразумеваются клики, а не ее движения на экране. Это программа базового контроля за PC, ее основная задача – скрытая запись нажатий клавиш в системе.
Работающий за этим PC человек может удалять переписку и очистить историю посещения сайтов, но история самого софта всё равно сохранится. Учет и запись сведений осуществляются перманентно, пока софт активен. Информация по работе с ПК суммируется в автоматические отчеты, в качестве меры удаленного наблюдения высылается письмом на веб-почту с заданным интервалом. Как и предыдущая программа для постоянного слежения за клавиатурой, подходит для упрощенного контроля сотрудников, либо можно произвести установку на домашний PC для контроля за ребенком.
4. Windows Keylogger — Pro
Совместимость: Windows
Free версия: с ограниченными возможностями
Функционал: программа для скрытого наблюдения, записывающая нажатия клавиш
Скрытая программа для слежения за домашним или рабочим компьютером с тотальным учетом клавиатурной активности. Обратите внимание – это сканер клавиатуры, не мыши и клавиатуры. Софт для наблюдения за телефоном и иные решения интегрировать нельзя.
Kelogger ведет мониторинг системы, вне зависимости от того, при каких обстоятельствах пользователь будет нажимать кнопки и как использовать доступные возможности. Пароли, поисковые запросы, ввод на веб-сайтах, переписка в мессенджерах и на e-mail – программа для слежения за компьютером зафиксирует все эти действия, сформирует отчет и вышлет его по указанному адресу. Невидимо ведется мониторинг и учет активности системы, включая две уникальные функции – запись информации из буфера обмена и активация по расписанию.
Дополнительно:
- Сохраняет скриншоты,
- 100% невидимый режим,
- Доступ к отчётам по e-mail и FTP,
- Расписание мониторинга,
- Самоудаление
5. Iwantsoft Free Keylogger
Функционирует на ОС Windows XP, Vista, 7, 8, 10.
Фри версия: использование без ограничений
Назначение: слежение за клавиатурой и буфером обмена, учет посещения веб-сайтов
Приложение с расширенными возможностями по мониторингу и контролю активности пользователей. Предназначение – простой перехватчик паролей, запоминающий нажатия клавиш. Работает невидимо, может делать скриншоты. Скриншоты с информацией как метод мониторинга и контроля сотрудников высылаются на указанную почту. Также софт подойдет для контроля и мониторинга ребенка.
Удалять историю в браузере и мессенджере бесполезно, фиксируется каждое действие, когда пользователь будет нажимать кнопки. То, что он будет получать, не фиксируется, интеграции с телефоном и другим оборудованием нет. Из особенностей учета и мониторинга системы – наличие фильтров, блокирующих сетевые ресурсы и приложения.
- Оповещение по ключевым словам,
- Блокировка нежелательных сайтов.
6. KidInspector Кейлоггер
Для: Windows, MacOS, Android, iOS
Free версия: с ограничениями, доступна только 1 день
Основные функции: приложение для полноценного клавиатурного мониторинга системы с отправкой на почту
Бесплатный вариант сильно ограничен по возможностям мониторинга и контроля. Но многие считают этот софт лучшим кейлоггером. Помимо запоминания и учета клавиатурной активности с отправкой отчетов по почте, решение контролирует деятельность в сети – фиксирует посещаемые ресурсы и использование приложений.
Отдельно работает с мессенджерами , соцсетями и SMS, записывает звонки с телефона. Фиксирует сообщения, которые пользователь будет отправлять и получать. Ведет учет активности веб-камеры на ПК и телефоне. Для учета работы сотрудников решение подходит в меньшей степени, чем для мониторинга активности на личных устройствах ребенка или других членов семьи.
7. Refog Free Keylogger
Совместимость: Windows, MacOS
Бесплатная версия: бесплатный кейлоггер – с ограниченными возможностями по работе софта, платный вариант полнофункциональный
Функциональность: контроль за компьютерами сотрудников в аспекте использования клавиатуры
Типичная система для записи действий мыши и клавиатуры. От мыши фиксируются только клики и запуск программ. Сама отслеживающая программа используется для считывания паролей с клавиатуры, мониторинга переписки на веб-ресурсах, в соцсетях и мессенджерах. Лучшим кейлоггером для контроля сотрудников Refog не считается, но оптимален для бытового применения.
Он точно обозначит, какие кнопки нажимал ребенок, какие получал сообщения. Входящая текстовая информация не логируется, но система может делать скриншоты. Фиксируется запуск игр, иных приложений, поисковые запросы, переходы на сетевые ресурсы, вход и выход из системы. В дополнение к фиксации ввода с клавиатуры программа кейлоггер может записывать голос в приложениях, например, в Skype.
8. Revealer Keylogger
Платформа: Windows
Бесплатная версия: только сам кейлоггер
Назначение: программа для отслеживания действий на клавиатуре компьютера
Стандартная программа кейлоггер без уникальных возможностей. Лучшей не является, не подойдет для корпоративных ПК, так как имеет только ручной режим запуска (не прописывается в автозапуске). Может быть скрыта от пользователя комбинацией клавиш. Делает скриншоты, не узнает, что человек получает в сообщениях. Ведет учет и запись в историю (лог) только по активности на клавиатуре.
Логирование включает дату и время, фиксирует пароли, с телефоном софт не взаимодействует. Результаты могут отсылаться на почту или на указанный сервер. Целесообразна только работа варианта Pro, где все эти возможности присутствуют.
Дополнительно:
- Отправляет отчеты по электронной почте, Dropbox, ftp , по локальной сети
- Программа полностью срывается в диспетчере задач, при запуске на диске.
9. Keyber Кейлоггер
Платформа: Windows
Свободна версия: для работы в частном порядке, для коммерческих целей предлагается платный вариант системы
Функционал: простой кейлоггер на русском языке
Программа, записывающая ввод фраз с клавиатуры в скрытом режиме. Система программу не видит, найти ее сложно, а удалить без прав администратора не получится. Все клавиши, которые пользователь будет нажимать (сотрудник в офисе или ребенок дома), софт зафиксирует и сохранит в отчет. На рабочий процесс запись ввода с клавиатуры не влияет. Можно настроить периоды логирования.
Функционально это один из самых простых кейлоггеров на русском. Оптимален для получения ответа на вопрос, что делает ваше чадо, пока вас нет рядом. В качестве корпоративного решения для рабочих ПК софт не особо актуален, так как не позволит получать подробные и структурированные сведения об активности специалиста.
Дополнительно:
- Отправка отчетов на электронную почту,
- Программа вызывается на компьютере комбинацией Ctrl+Win+Alt+K,
- Русскоязычный интерфейс.
10. Ardamax Keylogger
Платформа: Windows
Бесплатная версия: с ограниченными возможностями
Основные функции: программа слежения за клавиатурой компьютера
Этот keylogger можно бесплатно скачать на русском и английском языке. Он фиксирует активность взаимодействия пользователя с клавишами во время работы. Все последовательности клавиш, которые человек будет использовать (включая введенные пароли, поисковые запросы и сообщения), сохраняются в скрытом текстовом файле.
Программа не только делает скриншоты, но также фиксирует остальную активность сотрудника. Например, даже если вы скачали бесплатный вариант кейлоггера, ПО будет наблюдать за работой сотрудника в сети – какие сайты он посещал, что писал в социальных сетях и мессенджерах. Причем для каждого мессенджера будет свой блок в файле с отчетом. Если сотрудник использует голосовое общение, программа может записывать аудиофайлы. Софт не позиционируется как лучший, но это определенно один из самых простых кейлоггеров.
11. Keylogger Detective
Платформа: Windows
Бесплатная демо версия: с сильно ограниченными возможностями
Отслеживание нажатий клавиш на компьютерной клавиатуре
Использование софта дает контроль за деятельностью пользователя посредством мониторинга, записи в лог и учета всех клавиатурных взаимодействий в системе. Будь то сотрудник за ПК в офисе или ребенок дома в отсутствие взрослых, софт будет скрытно фиксировать действия в системе, сохраняя историю даже если удалить переписку.
Особенность кейлоггера Detective в глубоком шифровании – найти записи очень сложно, а открыть их без специального доступа и вовсе невозможно. Скриншоты софт не делает, полученную информацию по веб-сайтам, мессенджерам и прочему может отсылать на почту. Еще одно отличие от аналогов – сканер клавиатуры может удалить себя через заданное время. Удаление безвозвратное и полное, никаких следов в системе не остается.
Вывод по обзору кейлоггеров – какой выбрать
Программы для постоянного отслеживания нажатий клавиш обеспечивают эффективный контроль сотрудников за ПК. Они подходят в том числе для наблюдения за удаленными специалистами (включая фрилансеров) благодаря учету активности клавиш на клавиатуре. Keylogger может применяться для ограничения детей в аспекте их защиты от нежелательной информации. На производстве же это защита от инсайдерских сливов и неэффективного использования рабочего времени.
Практически любой keylogger можно бесплатно скачать на целевое устройство, но не все они универсальны. Большинство работает на Windows, только некоторые на MacOS, совсем мало решений для Android и iOS. Выбор софта зависит от того, для чего конкретно он нужен. Чтобы узнать, какие клавиши нажимают дети в ваше отсутствие (что ищут в интернете, о чем переписываются с друзьями), достаточно самого простого решения с минимальными возможностями. Но если пользователь – это ваш сотрудник, и вам важно, чтобы он в рабочее время занимался работой, а не чем-то другим, необходимо комплексное профессиональное решение.
Если речь идет о корпоративном использовании keylogger, обязательны скриншоты, и чтобы вы могли оперативно их получать на свой e-mail. Обязательна автозагрузка и скрытая работа, возможность настройки активности отслеживания и реагирования системы на определенные действия (например, на конкретные клавиши и их комбинации). Оптимально, чтобы история была структурирована, тогда проще будет, отличить смену пароля или найти конкретные поисковые запросы. Интеграция с телефонией и другими системами доступна только наиболее мощному ПО вроде Bitcop.
Подумайте, какие параметры для вас приоритетны. Чего вы хотите добиться, используя софт для клавиатурного шпионажа. Исходя из цели и требуемых возможностей, выберите одно из доступных решений. Почти все они имеют бесплатный вариант для оценки функциональности. Этого достаточно, чтобы понять, какое ПО будет лучшим в вашей ситуации.
Источник: bitcop.ru