Методы защиты экзаменационных баз

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

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

Облачные технологии

Тестовые базы должны быть размещены на серверах аттестационного центра.

Количество таких центров должно быть минимальным.

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

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

Проверка ответов должна осуществляться на стороне сервера

Правильные ответы ни для каких целей не должны передаваться на клиентские машины.

В процессе экзаменации ответ экзаменуемого должен передаваться серверу, сервер проверяет ответ и выдаёт только результат проверки.

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

Специфический формат баз данных

  1. Формат данных должен быть двоичным.

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

  2. Формат данных должен быть уникальным для данного программного продукта.

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

    Некоторые популярные форматы данных (например, базы данных MS Access) взламываются очень легко, другие (например, зашифрованные архивы) значительно сложнее, но создание нового средства взлома данных, как правило, обойдётся значительно дороже использования готовых средств.

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

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

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

Лучший способ избежать утечки правильных ответов — отсутствие правильных ответов в тестовых базах

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

  1. Хеширование ответов.

    Хеширование успешно используется для защиты паролей пользователей в различных информационных системах.

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

    Ту же методику можно успешно использовать для защиты ответов на экзаменационные вопросы.

    Даже получив хешированные ответы, злоумышленник не сможет восстановить по ним исходную строку ответа.

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

  2. Генерация вопросов на-лету.

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

Административно-правовые методы защиты

  1. Идентификация личности экзаменуемого.

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

    Личность экзаменуемого должна быть подтверждена перед началом экзаменации.

  2. Контроль и видеозапись процесса экзаменации.

    Процесс экзаменации должен контролироваться сотрудниками аттестационного центра.

    Во избежание злоупотреблений, процесс идентификации и экзаменации должен фиксироваться на видеокамеру.

    Данная запись должна храниться длительное время.

  3. Ответственность за взлом баз данных и коррупцию.

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