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