Monday, June 6, 2011 - 17:19
#

Примеры защиты от шпионов

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

Буфер обмена

Кто отслеживает и перехватывает системный буфер обмена?

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

(Системный буфер обмена — это область памяти, предоставляемая операционной системой для временного хранения тех или иных данных).

Доступ к буферу обмена открыт для любого приложение на компьютере. По этой причине всё, что вы копируете и вставляете, может быть спокойно перехвачено другими программами. Существует много легального софта получающего данные с системного буфера обмена, который вы могли поставить самостоятельно и не знали об этом. Например, тестовый редактор Word или Excel в открытом состоянии перехватывает копирования в свою внутреннею память и это он делает, открыто для вашего удобства. Не думаю, что нам стоит перечислять сейчас или говорить про многие другие приложения с подобным функционалом, просто поверьте их очень много и получение доступа и данных с системного буфера обмена это специализированное легальное действие, на которое не реагируют (в общем понимание) классические программы защит. Возможно, у вас на компьютере стоят приложения, которыми вы давно пользуетесь и не знаете, что они дублирует данные копирования у себя. И хорошо, если для вашего удобства, а не для своего разработчика или злоумышленника. В этой статье с помощью антишпиона Mask S.W.B Pro мы покажем, как выявить в системе приложения, которые получают или перехватывают данные с системного буфера обмена, а так же расскажем, как безопасно копировать и вставлять информацию, о которой ни кто кроме вас не должен знать.

В главном окне программы Mask S.W.B Pro, нажмите правой кнопкой мыши на верхнею рамку окна и в открывшимся контекстном меню выберите пункт "Монитор буфера обмена".

Монитор буфер обмена антишпион Mask S.W.B

Окно монитора состоит из двух динамичных списков, в которых можно увидеть столбцы: "№ (порядковый) " – в списке, "Имя файла" – программы, "ID" – уникальный номер процесса в операционной системе, "Время" – в которое был послан запрос, "Адрес" – по которому находится программа.

В левом поле отображается приложение, которое стоит первым в очереди для просмотра буфера обмена в случае изменения его данных. Система создаёт очередь по запросам от приложений и в момент нового копирования, информация об этом распространяется по всем участникам последовательно. Чтобы увидеть следующий процесс, стоящий в очереди на просмотр буфера обмена, нужно завершить предыдущий, используя контекстное меню списка. Таким образом, можно посмотреть все приложения, желающие отслеживать изменения буфера обмена. На картинки ниже мы видим, что после завершения первого процесса punto.exe от программы Punto Switcher, стоящего в очереди на получения данных с буфера обмена, появился другой процесс VirtualBox.exe от установленного в системе продукта виртуализации.

Процесс punto.exe в мониторе буфер обмена

В правом поле демонстрируются приложения, работающие с буфером обмена в текущий момент или удерживающие его открытым. Через этот список мы будем отслеживать приложения, которые могут не запрашивать информацию у системы об изменении буфера обмена и не становиться в очередь, где их легко обнаружить, а проверяют данные буфера обмена постоянно, через определённый промежуток времени. Такие программы обнаружить намного сложнее и мы для этого будем использовать метод провокационного копирования и вставки. Что мы знаем точно, если на компьютере, есть программа, которая забирает данные копирования к себе, то она по любому должна открыть системный буфер обмена, продублировать информацию и потом закрыть системный буфер обмена. Обычно эта операция проходит мгновенно и отследить её практически не возможно, но именно в этот момент мы и будем отлавливать интересующий нас объект. Если скопировать большой объём текстовой информации, на копирование которого, нужно будет затратить порядка 2 секунд и больше, то значит и перехватчик должен будет затрачивать это же время, и мы сможем отследить в этот момент, какая программа удерживает буфер обмена открытым. В маскировщике через контекстное меню можно выбрать скорость обработки списков окна, чем мощней компьютер, тем выше должна быть установлена скорость. Если выбрать скоростной режим “break v 0.1s” поиск остановится сразу, после обнаружения приложения удерживающего буфер обмена открытым и пункт списка при этом будет подсвечен красным цветом.

Мы создали в программе “Блокнот” большое количество текстовых строк и при открытом мониторе буфера обмена, в режиме ускоренной обработки скопировали эти данные.

Копировать текст в блокноте

Ниже на картинке в правом поле мы видим, что после провокационного копирования, вместе с текстовым редактором данные получили ещё три программы. Процесс punto.exe от программы Punto Switcher, MPK.exe от шпиона Мipko, который мы установили специально для теста и неожиданно обнаружили, что процесс NokiaSuite.exe от приложения обмена данными с телефонами NOKIA, которое было установлено несколько лет назад, тоже за чем-то копирует данные системного буфера обмена.

Процесс MPK.exe от шпиона Мipko

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

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

Копировать текст внутри платформы защиты.

Как копировать и вставлять текст не используя буфер обмена?

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

Вернуться назад