Админу на заметку - 11. Как заблокировать TeamViewer.

  • Автор:

teamviewer-block-000.jpgУтилита удаленного администрирования TeamViewer - вещь без сомнения удобная и полезная. Её главное преимущество - работа на машинах без выделенного IP-адреса и через практически любое интернет соединение. Но это же и ее главный недостаток, при бесконтрольном применении TeamViewer представляет значительную угрозу информационной безопасности предприятия.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Как пишут сами разработчики:

Вам не нужно беспокоиться о брандмауэрах, заблокированных портах или маршрутизации NAT -- TeamViewer всегда установит подключение к удалённому компьютеру.

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

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

Поэтому озабоченность администраторов прекрасно можно понять. Новые технологии и удобство - это хорошо, но когда периметр сети практически перестает существовать - это гораздо хуже. А в данном случае лучше перебдеть, чем недобдеть, поэтому вполне логичным выглядит полный запрет на использование TeamViewer и аналогичных программ в сети предприятия. 

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

В сети описывается несколько методов блокирования TeamViewer, основанных на запрете доступа к используемым им IP-адресам. Но это не дает 100% гарантии, во первых эти адреса еще нужно вычислить, во вторых они могут со временем поменяться, отслеживать такие изменения у обычного администратора нет ни времени, ни возможности.

Что же делать? Попробуем посмотреть на вопрос с другой стороны. Мы не можем заблокировать какой-то определенный порт, так как кроме своих портов программа умеет использовать общедоступные HTTP/HTTPS соединения, в т.ч. и через прокси. Также мы не можем заблокировать и какой либо сетевой адрес или блок адресов, точнее их то мы блокировать можем, только нет никаких гарантий, что этот список будет включать все используемые программой адреса и не изменится в будущем.

Но есть одна особенность. Если мы проанализируем сетевую актвность программы, то можем заметить, что она обязательно устанавливает соединения с хостами типа servernnnn.teamviewer.com

teamviewer-block-001.jpgА теперь вспомним про технологию Split-DNS, проще говоря - следует отдавать локальным клиентам несуществующий адрес для зоны teamviewer.com, например 127.0.0.1. Ниже мы рассмотрим как это сделать в среде Windows Server и Linux.

Windows Server

Если вы используете Windows Server, то с большой долей вероятности будете использовать роль DNS-сервера в этом качестве. Для реализации задуманного откроем оснастку и создадим в ней новую зону  teamviewer.com. В этой зоне создадим А-запись с пустым именем указывающую на адрес 127.0.0.1

teamviewer-block-002.jpgЭто приведет к тому, что все имена входящие в указанную зону будут разрешаться как 127.0.0.1 и соединение с серверами TeamViewer окажется невозможным.

Ubuntu Server

В предлагаемых нами решениях используется легкий кэширующий DNS-сервер dnsmasq, поэтому откроем его конфигурационный файл /etc/dnsmasq.conf и добавим туда следующую строку:

address=/teamviewer.com/127.0.0.1

Перезапустим сервис:

service dnsmasq restart

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

Теперь при попытке подключения мы увидим следующую картину

teamviewer-block-003.jpgОднако это еще не все, через некоторое время, убедившись в безуспешности попыток подключения, TeamViewer предложит использовать прокси-сервер.

teamviewer-block-004.jpgПоэтому если в вашей сети используется прокси, то на нем также следует запретить доступ к домену  teamviewer.com. Как это сделать для прокси-серера squid мы рассказывали здесь.

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

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

Данный способ также подходит для блокировки другого аналогичного ПО, например Ammyy Admin.

teamviewer-block-005.jpgХотя для Ammyy достаточно заблокировать единственный хост rl.ammyy.com, программа не сможет получить ID, а следовательно и принимать соединения.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.


Loading Comments