УДК 004

Уязвимости прокторинг систем и их возможные решения

Ишанхонов Азизхон Юнусхон угли – магистр Университета науки и технологий МИСИС

Аннотация: Прокторинг системы имеют уязвимость, недостаток, связанный с программным обеспечением и проверкой системы, в которой запускается программное обеспечение. В данной статье будут рассмотрены четыре из них, решение которых позволить закрыть другие уязвимости. Известные другие уязвимости строятся на основе этих четырех.

Ключевые слова: прокторинг, компьютерное зрение, уязвимость, мошенничество.

Обзор уязвимостей

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

А) Прокторинг системы не могут отследить запись или же захват экрана если команды выполняется программным путем, то есть запущен определенный софт, который вызывает системные функции. Усугубляет и то, что при захвате, снимке экрана явные логи не пишутся, а нужно зависимости от разных факторов мониторит события и загрузку библиотек, а также мониторит память, а это увеличивает факторы влияющие на быстроту обнаружения захвата экрана. Как подтверждение выше написанного протестированы ПС компании как “Pearson Vue”, “Duolingo” в операционной системе Windows, а также исходный код стандартной, системной библиотеки (gdi32.dll) Windows, который отвечает за захват экрана, доказывает гипотезу [1], [2], помимо этого в форумах эксперты так же подтверждают, что по умолчанию никакие логи не записываются, события не происходят [3], [4].

Возможным решением мог бы добавлении в системную библиотеку логирования, но мошенники могут использовать любую другую имплементацию захвата экрана. При этом для скрытия возможно присоединится к другому процессу, например explorer.exe тем самим на фоне записывать снимки экрана.

Б) Проблема с идентификацией операционной системы заключается в том, что если ПС запустить в виртуальных машинах, то оно никак не отличить от реальной машины. В этой проблеме таится несколько уязвимостей, таких как в пункте А и мошенник может запускать любые программные обеспечения, которые даже могут автоматизировать выполнения заданий без участия, сдающего экзамен что очень сильно сказывается на доверия такой системы, а с возможностями новых инструментов как «ChatGPT», это стало еще проще.

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

Обнаружить что ПС запущен в виртуальной среде можно, сопоставив информацию о ОС, производителе, модели компьютера, но существует заменить эти значения поэтому можно воспользоваться физико-динамической информацией таких как температура процессора (рисунок 1), потребление CPU [5], [6], а также некоторые специфические значения для определенных ОС.

image001 

Рисунок 1. Значения сенсоров компьютера.

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

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

Подобное решение используется стартапом «Proctor 360» [7], а также они предоставляют устройства позволяющий наблюдать за происходящим в 360 градусов что с одной стороны эффективно, но с другой требует специального оборудования [8].

Г) Несмотря на большое количество методов поимки жульничества, мошенники тоже использует более продвинутые методы жульничества такие как замена кадра. Мошенники используют сторонние программные обеспечения для замены кадров с веб-камеры и в итоге ПС получает заранее записанное видео, а пользователь успешно списывает. К сожаления не все ПС могут идентифицировать зацикленность, замены кадра. Обычно такого рода программные обеспечения используют виртуальные камеры и в списке драйверов можно их обнаружить. Например, приложение «ManyCam» устанавливает виртуальный микрофон, а также веб-камеру идентифицирует как USB устройство как показано на рисунке 2.

image002

Рисунок 2. Виртуальные устройства, установленные приложением «ManyCam».

Разработка

Как подтверждение ранее описанных гипотез, разработана прокторинг система с минимальным функционалом для ОС Windows с использование фреймворка .NET MAUI. Данный фреймворк позволить в дальнейшем переиспользовать часть существующих модулей прокторинг системы для запуска приложения в ОС MacOS.

Решение проблемы пункта А связан с поставщиками операционных систем и не будет рассмотрен в данной статье.

Как решение проблемы пункта Б может использован проект «al-khaser», который помогает обнаружить использование популярных виртуальных машин различными методами [9], но корпоративные и персональные решения киберзащиты относить поведение, обращение к системным данным как небезопасный и могут блокировать запуск данного кода, что сужает количество допустимых устройств для использования прокторинг системы. Возможным решением является добавление в исключения запуска данного приложения, но это требует тщательного изучения исходного кода проекта «al-khaser» и согласования со специалистами кибербезопасности что на практике занимает не один день.

В качестве примера в ходе написании статьи проект «al-khaser» модифицирован оставив только необходимые компоненты проверок для обнаружения виртуальных машин и опубликован в репозитории [9]. Интеграция с прокторинг приложением возможен через лог-файл, в котором содержится результаты проверок.

image003 

Рисунок 3. Результат сканирования.

Компьютерное зрение и обнаруживание объектов является решением пункта В, так как не требует участия проктора. Как описывалось выше в данном пункте разработан два модуля [12]. Первый модуль для трекинга глаз и второй для обнаружения объектов в кадре. Трекинг глаз, взгляда происходить обработкой веб-камеры компьютера, который передается по RTP протоколу. Изображение положение передается мобильным приложением также по RTP протоколу [13]. В качестве RTP сервера использован «MonaServer» [14] который локально развернуть на одноплатном компьютере «Raspberry PI» для облечения обмена данными. Ниже на рисунке приведена компонентная диаграмма. Также существует коммерческие решения и использование готовых решений облегчить задачу, но требует больше финансовых средств связи с чем в данной статье разработаны компонент на основе бесплатных библиотек и инструментов с внесением необходимых изменений для прокторинг системы. Нарушение правил и/или подозрительное поведение фиксируется и сохраняется в хранилище. Недостатком данное решения является низкая производительность.

image004

Рисунок 4. Демо модуля треккинга взгляда.

image005 

Рисунок 5. Демо модуля треккинга положения.

image006 

Рисунок 6. Диаграмма компонентов.

Заключение

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

Список литературы

  1. Документация .Net фреймворка / [Электронный ресурс]. – Режим доступа: https://learn.microsoft.com/en-us/dotnet/api/system.drawing.graphics.copyfromscreen?view=dotnet-plat-ext-7.0&viewFallbackFrom=net-8.0 (дата обращения: 17.02.24).
  2. Исходный код .Net фреймворка / [Электронный ресурс]. – Режим доступа: https://referencesource.microsoft.com/#System.Drawing/commonui/System/Drawing/Graphics.cs,891 (дата обращения: 17.10.24).
  3. Обнаруживание захвата экрана в ОС Windows / [Электронный ресурс]. – Режим доступа: https://security.stackexchange.com/questions/126433/detecting-when-a-screenshot-is-taken-by-a-software-spyware-in-windows (дата обращения: 17.02.24).
  4. Логирование захвата экрана в ОС Windows / [Электронный ресурс]. – Режим доступа: https://stackoverflow.com/questions/774925/detect-when-users-take-screenshots-of-my-program (дата обращения: 17.02.24).
  5. Определение виртуальной машины / [Электронный ресурс]. – Режим доступа: https://stackoverflow.com/questions/498371/how-to-detect-if-my-application-is-running-in-a-virtual-machine (дата обращения: 17.02.24).
  6. Определение виртуальной машины / [Электронный ресурс]. – Режим доступа: https://learn.microsoft.com/en-us/archive/blogs/virtual_pc_guy/detecting-microsoft-virtual-machines (дата обращения: 17.02.24).
  7. Прокторинг система: наблюдение несколькими камерами / [Электронный ресурс]. – Режим доступа: https://proctorcom/service/multi-cam-live-proctoring (дата обращения: 17.02.24).
  8. Прокторинг система: наблюдение 360° камерой / [Электронный ресурс]. – Режим доступа: https://proctorcom/service/360-total-view (дата обращения: 17.02.24).
  9. Исходный код библиотеки для анализа системы / [Электронный ресурс]. – Режим доступа: https://github.com/Proctoring/al-khaser/tree/feature/result-as-string (дата обращения: 17.02.24).
  10. Исходный код: модуль верификации паспорта / [Электронный ресурс]. – Режим доступа: https://github.com/Proctoring/verification (дата обращения: 17.02.24).
  11. Исходный код: модуль трекинга взгляда и положения / [Электронный ресурс]. – Режим доступа: https://github.com/Proctoring/proctoring-ai (дата обращения: 17.02.24).
  12. Исходный код: клиентское приложение / [Электронный ресурс]. – Режим доступа: https://github.com/Proctoring/proctoring-mobile (дата обращения: 17.02.24).
  13. RTMP сервер / [Электронный ресурс]. – Режим доступа: https://www.monaserver.ovh/ (дата обращения: 17.02.24).

Интересная статья? Поделись ей с другими: