Около недели назад на свежеустановленную windows был установлен getscreen.ru (.me). Я часто использую remote desktop для работы - чтобы работать со слабого ноутбука на мощном стационарном ПК.

Всё бы ничего, но, при работе за ПК показалось что есть какие-то микрофризы, при этом, чуткое ухо программиста улавливает периодическое включение вентилятора без всякой причины.

Почему был выбран getscreen: Добавлю что teamviewer начинал раздражать задолго до известных событий - блокировал аккаунт, просил фото паспортов и какие-то подписки, и всё равно блокировал, хотя я никогда не использовал его более чем на одной личной машине. Добавлю, что попробовав несколько, он же оказался и самым лагающим, так что, когда он отвалился, я даже обрадовался что заменю его быстрее. Anydesk неплох по скорости, однако показался не слишком удобным, а вот getscreen показался и хорошим по скорости и по удобству, может быть причина в локальных серверах - не знаю.

Первый шаг - просто task manager. Видно, что раз в пару минут демон getscreen.exe присыпается и пару секунд ест cpu. Я не особо эксперт в этом области, но помню что была статья на хабре: https://habr.com/ru/post/571500/. Смотрю какими утилитами пользовался автор - устанавливаю и начинаю смотреть трейс, и действительно, виден всплеск активности getscreen.exe раз в несколько минут.

Подтянув отладочные символы (долгий процесс), видно что программа активно работает с gdi32, т.е. с картинками, в целом логично - программа для удалённого доступа, но, однако, никакой активной сессии при этом нету - к чему такая активность без подключений?

Понятно, что что-то делается, но надо посмотреть на сеть:

Видно что была пара пакетов, но, после того как getscreen отработал этот пик активности - количество передаваемых данных резко возрастает.

Нельзя что-то утверждать, когда нет 100% доказательств, но извлечь их из зашифрованного трафика невозможно. Однако данные действия программы, помимо неудобства, наводят на подозрения. Возможно что в них есть какая-то техническая необходимость, как пример - в самой панели подключений getscreen виден preview экрана.

-- добавлено --

Последнее навело на мысль. Обновление preview происходит с задержкой, я постоянно обновлял страницу (у getscreen есть доступ через браузер), preview обновилось точно после того как на компьютере в очередной раз покрутились вентиляторы. Т.е., техническое обоснование отправки экрана понятно, но зачем это делать постоянно, даже когда нет подключений и preview не нужно? В настройках обнаружил "Снимать скриншоты для превью" - отключил - вентилятор больше не активируется, да и сетевая активность приложения выглядит куда спокойнее.

В любом случае считаю что лучше перепараноить чем недопараноить, и сделаю следующее заключение:

1) По-умолчанию getscreen постоянно делает снимки вашего экрана.

2) Делает это даже если в этом нет никакой необходимости.

Как обычно в IT, ожидаю что фикс будет что-то типа делать это не раз в две минуты, а раз в десять или час - что картины не меняет - экран отправляется когда не просят

3) Делает это не очень аккуратно, заметно загружая процессор.

4) На текущий момент я отключаю данную программу пока не получу разъяснений от поддержки куда написал.

Спасибо и будьте бдительны :)

Комментарии (8)


  1. Aquahawk
    28.10.2022 11:03
    +4

    Https прекрасно расшифровывается если использовать Mitmproxy в Transparent Proxying режиме. Прекрасно сочетается с wireshark, который после минимальной настройки подхватывает сессионные ключи. Отлично работает через виртуалку на этом же компом, если подключить её в бридж и на самом компе прописать виртуалку дефолт гейтвеем. Если разработчики софта не пинят сертификат, всё сработает.


    1. inv2004 Автор
      28.10.2022 12:29
      +1

      Спасибо, попробую. Думал там что-то серьёзнее чем один https сертификат


  1. rrrad
    28.10.2022 11:06

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


    1. inv2004 Автор
      28.10.2022 12:31

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

      Вторая проблема - почему это так разгоняет проц


      1. rrrad
        28.10.2022 12:56

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

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


        1. inv2004 Автор
          28.10.2022 12:59

          Нашлись логи приложения, где видно что они это делают получая эвент, скорее всего внешний


          1. rrrad
            28.10.2022 13:13

            Скажу по секрету, что в Windows срабатывание таймера - это сообщение окошку (WM_TIMER), что по сути также можно классифицировать как эвент.


            1. inv2004 Автор
              28.10.2022 13:26

              Надо перепроверить, но по сетевой активности похоже что это реакция на пришедший эвент