avtoref (Защита информации в системах дистанционного обучения с монопольным доступом), страница 2

2016-07-31СтудИзба

Описание файла

Документ из архива "Защита информации в системах дистанционного обучения с монопольным доступом", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "avtoref"

Текст 2 страницы из документа "avtoref"

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

Задача легкой адаптации уже существующих АСДО полностью лежит в сфере информационных технологий и имеет достаточно простое решение. В ОС Windows имеется механизм, который позволит легко адаптировать уже существующие системы дистанционного обучения и тестирования, причем разработанные на различных языках. Он обладает широкой поддержкой средств разработки и библиотек. Это COM (Component Object Model). COM - модель компонентных объектов Microsoft (стандартный механизм, включающий интерфейсы, с помощью которых одни объекты предоставляют свои сервисы другим, - является основой многих объектных технологий, в том числе OLE и ActiveX) [15].

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

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

Рассмотрим более подробно объекты системы дистанционного локального обучения, требующие защиты.

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

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

Исполняемые файлы систем тестирования подвержены модификации с целью изменения алгоритма их работы. Примером может служить модификация алгоритма выставления оценки за пройденное тестирование или алгоритма генерации отчета с соответствующей оценкой. Дополнительная трудность состоит в том, чтобы усложнить процесс массового взлома. Нет такой программы, которую невозможно было бы взломать. Но вот критерий трудоемкости взлома прямо пропорционален критерию надежности. Таким образом, стоит задача по возможности ограничения возможности создания программы – взломщика, которую можно будет применить для модификации обучающего пакета любого студента. Задача состоит не в создании очень сложной системы защиты исполняемых модулей. Задача состоит в том, чтобы разработанная кем-то программа–взломщик не имела своего действия на другие пакеты, или, точнее сказать, чтобы создание такой программы было очень трудоемким и экономически нецелесообразным. Представим такую ситуацию. Группе студентов выдали пакет дистанционного обучающего программного обеспечения. Один из студентов вместо честного обучения и тестирования потратил все время на изучение и взлом этой системы в результате чего получил высокую оценку, так и не ознакомившись с предметом. Такой частный случай сам по себе не страшен. Намного страшнее, если после этого данный студент начнет распространять свое техническое достижение. И, таким образом, все студенты следующего года обучения воспользуются этим. Результатом будет полное не владение курсом студентами, обучение которых происходит на взломанной АСДО. Один из путей защиты – это создание уникальных программных модулей. То есть модулей, для которых неприменима простая программа - взломщик модифицирующая определенную последовательность байт. Предлагаемое решение генерации таких модулей будет описано в дальнейшем и будет основано на применении полиморфных алгоритмов шифрования.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Естественным выбором будет использование Visual C++. Данное средство разработки отвечает всем необходимым требованиям. Также понадобится библиотека для сжатия данных. Наиболее подходящим кандидатом является библиотека ZLIB.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее