Оглавление Оглавление ............................................................................................................... 2 Введение ................................................................................................................... 3 Глава 1. Основы обеспечения защиты критически важной информации, хранимой на съемном носителе информации ...................................................... 7 Глава 2. Определение требований безопасности ............................................... 17 2.1. Обзор аналогов.......................................................................................... 17 2.2. Качественные требования, предъявляемые к Устройству ................... 19 Глава 3. Разработка прототипа Устройства ........................................................ 22 3.2. Сборка прототипа ..................................................................................... 26 3.2.1 Среда разработки ................................................................................ 29 3.2.2 Обзор функциональных возможностей прототипа......................... 31 3.3. Скорость чтения и скорость записи на закрытый модуль памяти ...... 38 Заключение ............................................................................................................ 42 Список литературы ............................................................................................... 43 Введение Наше время — время информации, которая давно уже стала самым ценным ресурсом. Информация всегда связана с материальным носителем. Носитель информации — это среда для записи и хранения информации. В век информационных технологий, электронные носители информации стали одними из ключевых. Электронные носители информации могу классифицироваться: по энергозависимости, по физическому принципу, по форме записанной информации, по устойчивости записи и возможности перезаписи, по типу доступа, по устойчивости записи и возможности перезаписи, по геометрическому исполнению, и по количеству устойчивых (распознаваемых) состояний одного элемента памяти. [1] Наиболее широкое распространение получили энергонезависимой автономного съемные памятью, хранения этому информации носители информации способствовало: независимого от с возможность места записи использования, что определенно сделало эти носители удобными для конечного пользователя; а также низкая стоимость таких носителей информации. Когда съемный носитель информации используется для хранения конфиденциальной информации, то возникает вопрос: как защитить ту информацию, которая хранится на таком носителе от угрозы несанкционированного доступа (НСД) третьих лиц? Тема моей дипломной работы посвящена разработке прототипа защищенного съемного носителя информации (далее Устройство). Актуальность данной темы обусловлена проблемой возникновения угрозы несанкционированного доступа к данным, которые хранятся на съемном носителе информации. Степень разработанности проблемы. На рынке устройств, предназначенных для хранения информации есть и решения, представляющие собой защищенные съемные носители информации. Такими решениями 3 можно назвать следующие продукты: Samurai Flash Drive, Data Locker DL3, IStorage datAshur, Aegis Secure Key, diskAshur SSD, Kingston Digital DataTraveler Vault Privacy 3.0. Однако, на мой взгляд, устройства, позиционируемые производителями как защищенные съемные носители информации, рассматриваемые мной в рамках данной дипломной работы не предлагают оптимального решения по полному предотвращению возникновения угрозы несанкционированного доступа к той информации, которая хранится на данных устройствах. Цель дипломной работы состоит в разработке прототипа защищенного съемного носителя информации, способного предотвратить угрозу несанкционированного доступа третьих лиц к информации, которая хранится на этом носителе. Поставленная цель обусловила следующие задачи дипломной работы: выявить условия возникновения угрозы НСД к информации, которая хранится на съемном носителе информации; учитывая выявленные условия возникновения угрозы НСД, определить качественные требования, предъявляемые к Устройству, которые позволят исключить возможность возникновения угрозы НСД; разработать алгоритм работы Устройства с учетом предъявляемых к нему требований в рамках данной дипломной работы; подобрать оптимальный с точки зрения алгоритма работы Устройства и экономических затрат набор электронных компонентов необходимых для сборки Устройства; в соответствие с алгоритмом работы Устройства и с подобранным набором компонентов, разработать программную составляющую Устройства; произвести сборку прототипа Устройства. 4 Объектом исследования выступает совершенствование аппаратнопрограммных средств хранения информации, где в качестве аппаратнопрограммных средств хранения информации выступает защищенный съемный носитель информации. Предметом исследования в дипломной работе является угроза возникновения несанкционированного доступа к информации хранимой на съемном носителе данных. Теоретическая значимость дипломного исследования состоит в развитии и совершенствовании с точки зрения информационной безопасности аппаратно-программных средств хранения информации. Практическая значимость работы определяется тем, что ее результаты позволяют повысить степень защиты информации, которая хранится на съемном носителе, путем использования предложенных методов, алгоритмов и практических процедур при разработке устройства подобного класса. Новизна дипломной работы заключается в разработке комплекса методов и средств позволяющих полностью предотвратить возникновение угрозы несанкционированного доступа к информации, которая хранится на съемном носителе информации. Наиболее существенные результаты, полученные в процессе разработки, состоят в следующем: выявлены условия возникновения угрозы НСД к информации, которая хранится в Устройстве; определены качественные требования, предъявляемые к Устройству, которые позволяют исключить возможность возникновения угрозы НСД к информации, которую он содержит; 5 разработан алгоритм работы Устройства с учетом предъявляемых к нему требований в рамках данной дипломной работы; подобран оптимальный с точки зрения алгоритма работы Устройства и экономических затрат набор электронных необходимых для сборки Устройства; разработана программная составляющая Устройства; произведена сборка прототипа Устройства. 6 компонентов Глава 1. Основы обеспечения защиты критически важной информации, хранимой на съемном носителе информации 1.1. Понятие конфиденциальной информации С точки зрения законодательства РФ понятию критически важная информации наиболее близко конфиденциальная информация. Согласно Федеральным законом от 28.12.2013 № 149-ФЗ «Об информации, информационных технологиях и о защите информации» информация подразделяется на общедоступную информацию и информацию, доступ к которой ограничивается. Ограничение доступа к информации устанавливается федеральными законами. Информацией ограниченного доступа является информация представляющая ценность для ее владельца, доступ к которой ограничивается на законном основании. В свою очередь информация ограниченного доступа подразделяется на информацию составляющею государственную тайну и информацию, соблюдение конфиденциальности которой установлено федеральным законом (конфиденциальная информация). Понятие конфиденциальности информации раскрывает Федеральный закон «Об информации, информационных технологиях и о защите информации»: «конфиденциальность информации – обязательное для выполнения лицом, получившим доступ к определенной информации, требование не передавать такую информацию третьим лицам без согласия ее обладателя». Организация работы с конфиденциальной информацией регулируется рядом законов. В понятие конфиденциальной информации входят различные виды информации, перечень которых установлен Указом Президента РФ от 06.03.1997 № 188 «Об утверждении Перечня сведений конфиденциального характера» (в ред. от 23.09.2005): 1. Сведения о фактах, событиях и обстоятельствах частной жизни гражданина, позволяющие идентифицировать его личность (персональные данные), за 7 исключением сведений, подлежащих распространению в средствах массовой информации в установленных федеральными законами случаях. 2. Сведения, составляющие тайну следствия и судопроизводства. 3. Служебные сведения, доступ к которым ограничен органами государственной власти в соответствии с Гражданским кодексом Российской Федерации и федеральными законами (служебная тайна). 4. Сведения, связанные с профессиональной деятельностью, доступ к которым ограничен в соответствии с Конституцией Российской Федерации и федеральными законами (врачебная, нотариальная, адвокатская тайна, тайна переписки, телефонных переговоров, почтовых отправлений, телеграфных или иных сообщений и т.д.). 5. Сведения, связанные с коммерческой деятельностью, доступ к которым ограничен в соответствии с Гражданским кодексом Российской Федерации и федеральными законами (коммерческая тайна). 6. Сведения о сущности изобретения, полезной модели или промышленного образца до официальной публикации информации о них. [2] 8 1.2. Нарушитель информационной безопасности Для обеспечения информационной безопасности в автоматизированных системах и в их компонентах, построения эффективной системы защиты информации, не достаточно выявить каналы утечки информации, проанализировать возможные угрозы, последствия их реализации и оценить потери. Нужно еще хорошо представлять облик нарушителя. Нарушитель информационной безопасности - это лицо, предпринявшее попытку выполнения запрещенных операций по ошибке, незнанию или осознанно использующее для этого различные возможности, методы и средства. Любой нарушитель для реализации своих замыслов руководствуется определенной мотивацией и намерениями, владеет совокупностью знаний, умений и навыков (способов) совершения противоправных действий с применением технических средств, обладающих соответствующим потенциалом. Только совокупность знаний обо всех элементах облика нарушителя позволит адекватно отреагировать на возможные угрозы, и в конце концов выбрать соответствующие средства защиты. Классификация нарушителей ИБ Всех нарушителей принято классифицировать следующим образом: По уровню знаний об информационном ресурсе: нарушитель знает функциональные особенности информационного ресурса; обладает высоким уровнем знаний и опытом работы с техническими средствами системы и их обслуживанием; обладает высокими умениями в области программирования и вычислительной техники; 9 знает структуру, функции и механизм действия средств защиты, а также их сильные и слабые стороны. По уровню возможностей (по использованным методам и средствам): использует только агентурные методы получения сведений; применяет пассивные средства, т.е. технические средства перехвата без модификации компонентов системы; использует только штатные средства самой системы и недостатки систем защиты для её преодоления. Т.е. совершает НСД с использованием разрешенных средств, а также использует компактные оптические или магнитные носители информации, которые могут быть скрытно пронесены через посты охраны; применяет методы и средства активного воздействия. Возможна модификация существующих или подключенных доп. технических средств, подключение к каналам передачи данных. Внедрение программы закладок или использование специальных инструментальных и технологических программ. По времени действия: в процессе функционирования системы; в период неактивности компонентов системы (в нерабочее время, во время плановых перерывов, во время перерывов для технического обслуживания); как в процессе функционирования системы, так и в период неактивности компонентов системы. По месту действия: без доступа на контролируемую территорию организации; с контролируемой территории, технологическим средствам; 10 но без доступа в здание к внутри помещений, но без доступа к техническим средствам; с рабочих мест конечных пользователей; с доступом в зону данных; с доступом в зону управления средствами обеспечения безопасности. 11 1.3. Угроза информационной безопасности Под угрозой в информационной безопасности понимается потенциально существующая возможность случайного или преднамеренного действия (бездействия), в результате которого могут быть нарушены основные свойства информации и систем конфиденциальность. ее Если обработки: говорить доступность, простым целостность языком, то и угроза информационной безопасности — это потенциально возможное событие, действие, процесс или явление, которое может привести к ущербу чьим-либо интересам. Естественные угрозы— это угрозы, вызванные воздействием на автоматизированную систему или ее компоненты, стихийных природных явлений, не зависящих от человека. Естественные делятся на: природные, к ним можно отнести: магнитные бури, стихийные бедствия, радиоактивное излучение, осадки; технические, они связаны с надежностью технических средств, обработки информации и систем обеспечения. Искусственные бывают: непреднамеренные (случайные), это те угрозы, что совершенны по незнанию и без злого умысла, например, из любопытности или халатности; преднамеренные. Каналы проникновения в систему и их классификация: По способу: прямые; косвенные. 12 По типу основного средства для реализации угрозы: человек; аппаратура; программа. По способу получения информации: физический; электромагнитный; информационный. При разработке модели нарушителя определяют: предположение о категории лиц, к которым может принадлежать нарушитель; предположение о мотивах действий нарушителя; предположение о квалификации нарушителя и его технической оснащённости; ограничения и предположения о характере возможных действий нарушителя; по отношению к АС все нарушители могут быть либо внутренними, либо внешними. Внутренние: пользователи; персонал обслуживающий технические средства и сотрудники отделов разработки и сопровождения ПО; технический персонал, обслуживающий здания; сотрудники службы безопасности АС; руководители различных уровней должностной иерархии. Внешние: 13 клиенты; посетители; представители организаций, взаимодействующих по вопросам обеспечения жизнедеятельности предприятия (энерго-, водо- и теплоснабжение); представители конкурирующих организаций или лица, действующие по их заданию; лица, случайно или намеренно нарушившие пропускной режим; любые лица за пределами контролируемой территории. С точки зрения выделения мотивов нарушений принято выделять 3 мотива: безответственность (некомпетентность, небрежность); самоутверждение; корыстный интерес. Знание спектра потенциальных угроз защищаемой информации, умение квалифицированно и объективно оценить возможность их реализации и степень опасности каждой из них, является важным этапом сложного процесса организации и обеспечения защиты информации. Определение полного множества угроз информационной безопасности практически невозможно, но относительно полное описание их, применительно к рассматриваемому объекту, может быть достигнуто при детальном составлении модели угроз. Классификационные признаки объектов защиты и угроз безопасности автоматизированным системам: Основная угроза информационной безопасности, которая применима к разрабатываемому в данной дипломной работе прототипу Устройства, эта угроза несанкционированного доступа к информации (НСД). Угроза несанкционированного доступа к информации подразумевает под собой доступ к информации, нарушающий правила разграничения доступа с 14 использованием штатных средств, предоставляемых средствами вычислительной техники (СВТ) или автоматизированными системами (АС). Анализ модели вычислительной системы с безопасной обработкой информации позволяет рассматривать вычислительную систему как объект, в котором имеется некоторое множество возможных каналов несанкционированного доступа к предмету защиты информации. Для построения защиты информации в системе на каждом возможном канале несанкционированного доступа (ВКНСД), а если возможно, сразу на нескольких установить соответствующую преграду. Чем большее количество ВКНСД перекрыто средствами защиты и выше вероятность их преодоления нарушителем, тем выше безопасность информации. Структура защиты будет носить многозвенный и многоуровневый характер. Количество перекрываемых ВКНСД при этом будет зависеть от заданной квалификации нарушителя. На основании вышеописанного для Устройства была составлена частная модель угроз, представленная в Таблице 1. Таблица 1. Частная модель угроз разрабатываемого прототипа Устройства Наименование угрозы Объект Меры по противодействию воздействия угрозе Угрозы несанкционированного доступа к информации Ограничение доступа к памяти с Хищения носителя Носитель информации информации помощью Pin-кода; Отсутствие демаскирующих признаков во внешнем виде Устройства. 15 Физическое воздействие на пользователя обладающего знанием Уничтожение данных путем Пользователь ввода Pin-кода, предназначенного для уничтожения данных. Pin-кода Считывание информации непосредственно с внутренней памяти Устройства с Аппаратное шифрование данных; Информация Заливка платы эпоксидной смолой. использованием специальных Устройств (считыватели памяти). Полный перебор Pin- Носитель Ограничение количества попыток кода информации неправильного ввода Pin-кода. 16 Глава 2. Определение требований безопасности 2.1. Обзор аналогов В настоящий момент рынок устройств, представляющих собой защищенные съемные носители информации предлагает большое количество таких устройств. Для того, чтобы понять, что предлагают производители подобных Устройств я произвел сравнение этих устройств. Сравнение проводилось лишь по ключевым показателям, которые я определил сам. Результаты данного сравнения представлены в Таблице 2. Таблица 2. Сравнение аналогов. Название продукта Отсутствие демаскирую щих признаков Шифровани е Возможност ь мгновенного уничтожени я данных USB Samurai Data Aegis Loc IStorage Flash Secure ker datAshur Key Drive DL3 - ГОСТ 2814789 - - - Kingsto n Digital DataTra diskAshu veler Vault r SSD Privacy 3.0 - AES (256 AES AES AES (256-бит) (256-бит) (256-бит) бит) + AES (256бит) + - + - - - 2.0 3.0 2.0 2.0 3.0 3.0 17 Ограничени я доступа к памяти по средствам Pin-кода Объем памяти (ГБ) + + + + + - 32 1000 32 16 512 64 Тип памяти Nandпамять НЖ МД Nandпамять Nandпамять Nandпамять Nandпамять Автономнос ть + - + + + - Представленные в сравнительной таблице 2 результаты однозначно дают понять, что на данный момент на рынке защищенных съемных носителей информации нет решения, которое могло бы обеспечить полное предотвращение угрозы несанкционированного доступа к информации, которая на них хранится. 18 2.2. Качественные требования, предъявляемые к Устройству Исходя из разработанной в рамках данной дипломной работы частной модели угроз разрабатываемого прототипа Устройства были предъявлены следующие требования: Отсутствие демаскирующих признаков. Устройство не должно обладать демаскирующими признаками, т.е. третье лицо получившее физический доступ к Устройству не должно понять, что Устройство помимо хранения информации способно и защитить информацию, которая на нем хранится от НСД. Для выполнения этого требования необходимо, чтобы аппаратная клавиатура, предназначенная для ввода Pin-кодов была сенсорной с возможностью активации ее тогда, когда это нужно. Активация клавиатуры должна происходить после того как пользователем будут произведены определенные действия с Устройством. Активация клавиатуры представляет собой включение подсветки клавиатуры, что позволит увидеть клавиши сенсорной клавиатуры. Также необходимо, чтобы съемный носитель информации обладал двумя модулями памяти, первый из которых можно обозначить как открытый, а второй закрытый. Доступ к открытому модулю памяти всегда доступен, он играет отвлекающую роль, и предназначен лишь для того, чтобы ввести в заблуждение третье лицо получившее несанкционированный доступ к носителю информации. Доступ к закрытому модулю памяти предоставляется лишь после того, как пользователь ввел Pin-код. Ограничения доступа к закрытому модулю памяти. Так как закрытый модуль памяти предназначен для хранения конфиденциальной информации возникает необходимость ограничить доступ к этому модулю памяти. Для выполнения 19 данного требования необходимо, чтобы доступ к закрытому модулю памяти предоставлялся по средствам ввода Pin-кода, который можно обозначит как Pin-код для активации доступа к закрытому модулю памяти. В целях предотвращения возможности полного перебора (brute force) данного Pin-кода, необходимо ограничить количество попыток ввода неправильного Pin-кода. У пользователя должна быть возможность изменять Pin-код для открытия доступа к закрытому модулю памяти. Возможность мгновенного уничтожения данных, которые хранятся на закрытом модуле памяти. Всегда есть необходимо вероятность возникновения мгновенно уничтожить ситуации, когда конфиденциальную информацию. Например, в ситуации, когда с целью получения доступа к конфиденциальным данным, третьими лицами на пользователя Устройства обладающего знанием Pin-кода (для активации доступа к «закрытому» модулю памяти) оказывается физическое давление (угрозы, пытки, избиение и т.д.). Для обеспечения выполнения этого требования необходимо, чтобы Устройство обладало возможностью мгновенного уничтожения данных на «закрытом» модуле памяти по средствам ввода Pinкода, предназначенного для уничтожения данных. У пользователя должна быть возможность изменять Pin-код предназначенного для уничтожения данных. Для того, чтобы возможность мгновенного уничтожения данных была всегда доступна пользователю, нужно обеспечить автономность работы Устройства. Защита данных, которые хранятся на «закрытом» модуле памяти Для предотвращения возможного обхода ограничения доступа к «закрытому» модулю памяти по средствам использования специальных устройств (считыватели памяти) необходимо, чтобы вся информация, которая хранится на данном модуле памяти была 20 аппаратно зашифрована, и кроме того необходимо, чтобы контакты данного модуля памяти были физически недоступны для внешнего воздействия для, что затруднит выпаивание модуля памяти из платы, что в последствие позволило бы путем использования специального оборудования получить доступ к данным, которые хранятся в модуле памяти. Индикация нажатия клавиш и принятых команд. В целях удобства пользования Устройством все производимые действия (нажатие клавиш, принятие команд и т.д.) пользователем в отношение Устройства в рамках работы с ним, должны иметь индикацию, сообщающую пользователю о результатах их выполнения. 21 Глава 3. Разработка прототипа Устройства 3.1. Алгоритм работы устройства Чтобы понимать, как в конечном итоге должно работать Устройство, набор каких электронных компонентов необходим, а также для удобства отладки и сборки, необходимо представить логику работы Устройства в виде блок-схем. Ниже представлены блок-схемы алгоритма работы каждой функции Устройства (см. Рис. 1 – Рис. 4). Рисунок. 1. Блок-схема «Активация клавиатуры» 22 Рисунок 2. Основные функции Устройства 23 Рисунок 3. Блок схема «Изменение Pin-кода, предназначенного для открытия доступа к открытому модулю памяти» 24 Рисунок 4. Блок-схема «Изменение Pin-кода, предназначенного для уничтожения данных» 25 3.2. Сборка прототипа На данном этапе разработки Устройства произведена сборка прототипа (см. рис. 5). Рисунок 5. Прототип Устройства Подборка электронных компонентов для сборки прототипа производилась исходя из алгоритма работы Устройства и того, что возможно было приобрести на рынке микроэлектронных и электронных компонентов. Прототип Устройства состоит из следующих электронных компонентов: Отладочная плата; Модуль сенсорной клавиатуры; Плата со светодиодными индикаторами. Для имитации открытого модуля памяти, совместно со съемным носителем информации используется USB-разветвитель (см. рис. 6). 26 Рисунок 6. Схема подключения Устройства В основе отладочной платы лежит микроконтроллер ST32F417 компании STMicroelectronics. Компания STMicroelectronics - европейская микроэлектронная компания, одна из крупнейших компаний, которая занимается разработкой, изготовлением и продажей различных полупроводниковых электронных и микроэлектронных компонентов. [ссылка на википедию] Данный микроконтроллер относится к семейству ARM CortexM4 микроконтроллеров с широчайшим набором внутренней периферии: Ethernet, USB ,Host/OTG/Client, CAN, RS232, SPI, I2C. Разработчиком процессоров семейства ARM Cortex является британская корпорация ARM (Advanced RISC Machines), данная компания является одной из крупнейших разработчиков и лицензиаров архитектуры 32-разрядных RISC-процессоров (ARM), ориентированных на использование в портативных и мобильных устройствах (телефонах, планшетных компьютерах и т. п.). [ссылка на википедию] Отладочная плата поддерживает следующие интерфейсы: 27 Ethernet 10/100M PHY - KS8721BL, тип интерфейса – RMII; 512Kбайт SRAM; uSD; USB2.0-full speed Host, Client; CAN PHY; RS232 приемопередатчик; 80 линий PIO микроконтроллера. Плата содержит линейные LowDrop стабилизаторы, позволяющие питать ее от 5В, имеется возможность использовать питание от шины USB. Отладочная подключения плата имеет JTAG стандартный 20-ти выводной программатора/отладчика. разъем для Программирование внутренней flash производится через COM порт. Модуль сенсорной клавиатуры с 12 кнопками выполнен на базе контроллера CY8C20536A-24PVXI. Данный контроллер поддерживает все алгоритмы обработки – CSD, CSA и SmartSense (с автоподстройкой параметров). Модуль клавиатуры также может работать со всеми данными алгоритмами. Разработчиком модуля является российская компания "ЭФО" основанная в 1991 г. в Санкт-Петербурге. Компания «ЭФО» уже более 20 лет занимается поставками импортных электронных компонентов на российский рынок. По умолчанию, в контроллер модуля прошивается простая тестовая программа, демонстрирующая возможности технологии Cypress CapSense. На плате клавиатуры предусмотрена возможность подключения ЖК-дисплея (например, дисплеи Winstar WH1602x). Для визуального контроля состояния кнопок (есть касание/нет касания) на плате установлены 4 светодиода. Светодиоды подключены к линиям P1,2P1.4, P1.6 контроллера. 28 Модуль может быть подключен к внешнему устройству по интерфейсам IIC, SPI или TX8 (UART-совместимый протокол, только передатчик). Модуль программируется через 5-контактный разъем с помощью программатора MiniProg1, который поставляется в комплекте с платой. 3.2.1 Среда разработки В качестве среды разработки была использована среда Keil UVision версии 4.72, представляющая собой набор утилит для выполнения полного комплекса мероприятий по написанию программного обеспечения для микроконтроллеров. Данная среда разработки поддерживает микроконтроллер STM32F417 [http://www.keil.com/dd/], который является основой отладочной платы, выбранной в качестве электронного компонента прототипа. Keil uVision позволяет работать с проектами любой степени сложности, начиная с введения и правки исходных текстов и заканчивая внутрисхемной отладкой кода и программированием ПЗУ микроконтроллера. От разработчика скрыта большая часть второстепенных функций, что сильно разгружает интерфейс и делает управление интуитивно понятным. Однако при возрастании сложности реализуемых задач, всегда можно задействовать весь потенциал модулей, функционирующих под управлением единой оболочки. Среди основных программных средств Keil uVision можно отметить: Базу данных микроконтроллеров, содержащую подробную информацию обо всех поддерживаемых устройствах. Здесь хранятся их конфигурационные данные и ссылки на источники информации с дополнительными техническими описаниями. При добавлении нового устройства в проект все его уникальные опции устанавливаются автоматически; Менеджер проектов, служащий для объединения отдельных текстов программных модулей и файлов в группы, обрабатываемые по единым 29 правилам. Подобная группировка позволяет намного лучше ориентироваться среди множества файлов; Встроенный редактор, облегчающий работу с исходным текстом за счет использования многооконного интерфейса, выделения синтаксических элементов шрифтом и цветом. Существует опция настройки в соответствии со вкусами разработчика. Редактирование остается доступным и во время отладки программы, что позволяет сразу исправлять ошибки или отмечать проблемные участки кода; Средства автоматической компиляции, ассемблирования и компоновки проекта, которые (загрузочного) предназначены модуля для программы. При создания, этом исполняемого между файлами автоматически генерируются новые ассемблерные и компиляторные связи, которые в дальнейшем позволяют обрабатывать только те файлы, в которых произошли изменения или файлы, находящиеся в зависимости от изменённых. Функция глобальной оптимизации проекта позволяет достичь наилучшего использования регистров микроконтроллера путем неоднократной компиляции исходного кода. Компиляторы uVision работают с текстами, написанными на Си или ассемблере для контроллеров семейств ARM, MSC51, C166 и многих других; Отладчик-симулятор, отлаживающий работу скомпилированной программы на виртуальной модели микропроцессора. Довольно достоверно моделируется работа ядра контроллера и его периферийного оборудования: портов ввода-вывода, таймеров, контроллеров прерываний. Для облегчения комплексной отладки разрабатываемого программного обеспечения возможно подключение программных моделей нестандартного оборудования; Дополнительные утилиты, облегчающие выполнение наиболее распространенных задач. Число и набор меняется от версии к версии. Выделяют следующие из них: 30 Source Browser, содержащую базу данных программных символов для быстрого поиска; Find in Files, предназначенную для поиска заданного кода во всех файлах указанной папки или проекта; Tools Menu, позволяющую использовать утилиты сторонних производителей; PC-Lint, анализирующую исходный текст программы с выделением потенциально опасных мест; Flash tool, программирующую FLASH-память микроконтроллеров. [] 3.2.2 Обзор функциональных возможностей прототипа В настоящий момент прототип устройства обладает следующим набором функциональных возможностей: Активация клавиатуры; Ограничение доступа к закрытому модулю памяти по средствам Pinкода; Уничтожения данных при вводе Pin-кода для уничтожения данных; Смена Pin-кода, предназначенного для открытия доступа к закрытому модулю памяти; Смена Pin-кода, предназначенного для уничтожения данных. Функция активации клавиатуры необходима для того, чтобы во внешнем виде Устройства отсутствовали демаскирующих признаки, которые могли бы выдать тот факт, что данный съемный носитель информации является защищенным. Кроме того, возможность использовать сенсорную клавиатуры лишь в тот момент, когда она действительно нужна позволяет избежать случайных нажатий, которые могут нести неблагоприятные последствия. Алгоритм работы данной функции представлен на рисунке 1. 31 Для того, чтобы произвести активацию клавиатуры пользователю необходимо осуществить нажатие на кнопку «Изменить», расположенную на сенсорной клавиатуре Устройства. Длительность нажатия должна быть более семи секунд. После чего произойдет активация клавиатуры, о чем просигнализирует белый светодиод, который расположен на плате со светодиодными индикаторами. При активации клавиатуры сама клавиатура также оповестит пользователя о том, что в данный момент она активна по средствам четырех светодиодов зеленого цвета, которые расположены непосредственно на плате клавиатуры (см. рис. 7). Рисунок 7. Активация клавиатуры Функция ограничения доступа к закрытому модулю памяти позволяет исключить возможность НСД к информации, которая хранится в закрытом модуле памяти. Для того, чтобы открыть доступ к закрытому модулю памяти пользователю необходимо активировать клавиатуру, используя цифровые кнопки на сенсорной клавиатуре ввести текущий Pinкод для открытия доступа к закрытому модулю памяти и нажать на кнопку «Принять\применить Pin-код». Если Pin-кода введен неправильно, то 32 пользователь будет проинформирован об этом красным индикатором на плате светодиодных индикаторов (см. рис. 8). В случае, когда пользователь ввел Pin-код неправильно более чем 3 раза, информация, которая хранится на закрытом модуле памяти уничтожается. Рисунок 8. Красная световая индикация Часть программного кода в среде разработки Keil uVision функции активация клавиатуры приведена на рисунке 9. 33 Рисунок 9. Программный код функции активации клавиатуры Функция уничтожения данных при вводе Pin-кода для уничтожения данных, позволяет пользователю избежать НСД к информации, которая хранится на закрытом модуле памяти, в ситуации, когда Устройство находится в руках третьих лиц, а на пользователя оказывается какое-либо воздействие (например, физическое) с целью получения Pin-кода для открытия доступа к закрытому модулю памяти. Чтобы ввести Pin-кода для уничтожения данных, необходимо, чтобы клавиатура была активирована. При вводе Pin-кода для уничтожения данных, на плате со светодиодными индикаторами загорится зеленый светодиод, а информация на закрытом модуле памяти будет уничтожена. При вызове функции уничтожения данных начинается циклическая запись блока данных, размером 512 байт, содержащего нули. Заполнение памяти начинается с нулевого адреса с приращением, равным размеру блока данных и заканчивается при достижении максимально возможного количества блоков в модуле памяти. Максимальное количество блоков памяти (физическая емкость) считывается из модуля памяти при его инициализации. 34 Часть программного кода в среде разработки Keil uVision функции уничтожения данных приведена на рисунке 10. Рисунок 10. Программный код функции уничтожения данных Функция смены Pin-кода, предназначенного для открытия доступа к закрытому модулю памяти. Для того, чтобы изменить Pin-код предназначенный для открытия доступа к закрытому модулю памяти необходимо активировать клавиатуру, после чего необходимо нажать на кнопку «Изменить» в течение 3 секунд. Далее пользователю будет необходимо ввести текущий Pin-код, предназначенный для открытия доступа к закрытому модулю памяти и нажать кнопку «Принять\применить Pin-код». В случае если Pin-код был введен правильно загорится зеленый светодиод на плате со светодиодными индикаторами, если же пользователь ошибся, то загорится красный светодиод, и ему придется повторить все действия заново. Далее пользователю необходимо ввести новый Pin-код, предназначенный для открытия доступа к закрытому модулю памяти. Pin-код может быть длиной от 6 до 12 символов, если было введено больше 12 символов, то в качестве Pin35 кода будет записаны первые 12 символов, если было введено меньше 6 символом то загорится красный светодиод, и будет необходимо повторить все действия заново. Функция смены Pin-кодов. Чтобы изменить один из Pin-кодов пользователю необходимо активировать клавиатуру и нажать на кнопку «Изменить» в течение 3 секунд, если нужно изменить Pin-код предназначенный для открытия доступа к закрытому модулю памяти. Если же необходимо изменить Pin-код, предназначенный для уничтожения данных, то пользователь должен нажать на кнопку «Изменить» в течение 3 секунд. Далее пользователю будет необходимо ввести правильно текущий Pin-код, который он хочет изменить, а затем нажать на кнопку «Принять\применить Pin-код». В случае если Pin-код был введен правильно загорится зеленый светодиод на плате со светодиодными индикаторами, если же пользователь ошибся, то загорится красный светодиод, и ему придется повторить все действия заново. Далее пользователя должен ввести новый Pin-код. Pin-код может быть длиной от 6 до 12 символов, если было введено больше 12 символов, то в качестве Pinкода будет записаны первые 12 символов, если было введено меньше 6 символом то загорится красный светодиод, и будет необходимо повторить все действия заново начиная с нажатия кнопки «Изменить». В случае если пользователь ошибся при вводе Pin-кода он может воспользоваться кнопкой «Сброс». 36 Рисунок 11. Программный код функции смены Pin-кода Аппаратное шифрование данных. Вся информация, которая записывается на закрытый модуль памяти Устройства подвергается аппаратному шифрованию, это происходит благодаря тому, что в состав микроконтроллера STM32F417 входит криптографический сопроцессор, который позволяет осуществлять аппаратное шифрование данных следующими алгоритмами шифрования: DES; TDES: AES. В прототипе Устройства в качестве алгоритма аппаратного шифрования используется симметричный алгоритм блочного шифрования AES (Advanced Encryption Standard) с длинной ключа 128-бит. Выбор данного алгоритма шифрования был обусловлен тем, что согласно официальной документации, которую предоставляет производитель микроконтроллера при использование алгоритма шифрования AES с длиной ключа 128-бит, криптоускоритель сопроцессора микроконтроллера будет шифровать данные с хорошим 37 показателем скорости. Данные по производительности криптоускорителя приведены в таблице 3. Таблице 3. Производительность криптоускорителя в Мбайт/сек Алгоритм/Ра змер ключа Тип ядра Аппаратная (теоретическ ая) Аппаратная без DMA Аппаратная с DMA Чисто программная AES-128 CM3 137, 14 AES-192 CM CM CM 4 3 4 192 120 168 AES-256 CM3 CM4 106, 149, 67 33 51,8 72,6 51,8 72,6 44,6 9 4 9 4 128 192 120 168 TDES CM CM CM CM 3 4 3 4 60 84 20 28 62,5 30,9 43,3 11,4 5 1 106, 149, 67 33 0,99 1,38 0,82 1,14 0,69 DES 7 5 3 60 84 20 0,96 0,53 0,74 0,18 16 28 0,2 5 3.3. Скорость чтения и скорость записи на закрытый модуль памяти Скорость чтения и скорость записи играет не последнюю роль для конечного пользователя, при выборе съемного носителя информации. В целях определения скорости чтения и записи на закрытый модуль памяти Устройства, было проведено их измерение. Измерения скорости чтения и записи было произведено при помощи использования программного обеспечения, предназначенного для данных целей. Для того, чтобы выявленные данные были объективными были использованы две программы и h2testw и CrystalDiskMark 3.0. 38 CrystalDiskMark — бесплатная программа, предназначенная для сравнительного анализа (тестирования) быстродействия дисков компьютера. Позволяет измерить скорость последовательного и случайного чтения и записи данных (см. рис. 12). Сверху расположено меню. Которое позволяет выбрать данные для тестирования (по умолчанию стоит значение «Случайное»), скопировать результаты теста, получить справку о программе на английском языке и т.д. Ниже меню расположены параметры тестирования. Слева направо: количество запусков теста, размер тестируемой области и диск для тестирования. Слева находятся тестируемые значения: «Seq» - (Sequential) – последовательное тестирование скорости чтения и записи блоков по 1024 KB, «512K» - тест случайных блоков размером 512 KB, «4K» - тест случайных блоков размером 4 KB с глубиной очереди (Queue Depth) = 1 и, «4K QD 32» тест случайных блоков размером 4 KB с глубиной очереди (Queue Depth) = 32. Кликнув по какому-либо параметру для тестирования, носитель будет протестирован по этому параметру. Кликнув по кнопке «All», носитель будет протестирован по всем перечисленным параметрам. Для тестирования закрытого модуля памяти Устройства было выбрано значение «All». Результаты тестирования представлены на рисунке 13. 39 Рисунок 12. CrystalDiskMark 3.0 Рисунок 13. Результаты работы программы CrystalDiskMark 3.0 40 H2testw – программа, которая позволяет проверить любой флеш-накопитель информации на наличие ошибок. Принцип работы программы заключается в записи данных на устройство до полного его заполнения и последующей проверке записанных данных (см. рис.14). Данная программа позволяет узнать реальный объем накопителя информации и определить скорость записи на устройство. Для проверки носителя информации необходимо подключить устройство к компьютеру и произвести форматирование, предварительно скопировав с него все необходимые данные. Далее нужно запустить H2testw. С помощью кнопки «Select target» выбрать носитель, который надо проверить и нажать кнопку «OK». Здесь могла быть ваша реклама (идет замер скорости, скриншот будет позже) Рисунок 14. h2testw Здесь могла быть ваша реклама (идет замер скорости, скриншот будет позже) Рисунок 15. Результаты работы программы h2testw 41 Заключение Результатом дипломной работы стала разработка и сборка прототипа защищенного съемного носителя информации, который способен предоставить пользователю оптимальный уровень предотвращения угрозы несанкционированного доступа к информации, которая хранится в его памяти. В качестве основных функциональных возможностей прототипа можно отметить наличие аппаратного шифрования данных, возможность ограничения доступа к закрытому разделу памяти по средствам Pin-кода и отсутствие демаскирующих признаков благодаря функции активация клавиатуры. В процессе достижения поставленной цели были решены следующие задачи: выявлены условия возникновения угрозы НСД к информации, которая хранится в Устройстве; определены качественные требования, предъявляемые к Устройству, которые позволяют исключить возможность возникновения угрозы НСД к информации, которую он содержит; разработан алгоритм работы Устройства с учетом предъявляемых к нему требований в рамках данной дипломной работы; подобран оптимальный с точки зрения алгоритма работы Устройства и экономических затрат набор электронных компонентов необходимых для сборки Устройства; разработана программная составляющая Устройства; произведена сборка прототипа Устройства. Все поставленные задачи решены, цель дипломной работы достигнута. 42 Список литературы 1. http://ru.wikipedia.org/wiki/Носитель_информации (Дата обращения 27.11.14). 2. Федеральный закон Российской Федерации "Об информации, информационных технологиях и о защите информации" от 27 июля 2006 г. N 149-ФЗ 3. www.avoidance.ru/articles/narushiteli-informacionnoj-bezopasnosti/58-modelnarushitelja.html 4. STMicroelectronics, Руководство пользователя STM32 «Криптографическая библиотека», 131 стр. 5. STMicroelectronics, Руководство пользователя STM32F105xx, STM32F107xx, STM32F2xx и STM32F4xx, 107 стр. 6. www.infosafe.ru (каталог ресурсов по информационной безопасности) 7. www.old.infosecfru (сайт по ИБ) 8. www.ru.wikipedia.org/wiki/ Защищенные_носители_информации 9. www.tadviser.ru/index.php (статья «Защищенные носители информации») 10. Указ Президента РФ «Об утверждении Перечня сведений конфиденциального характера» от 06.03.1997 № 188 (в ред. от 23.09.2005) 11. www.daily.sec.ru/2013/10/02/Zashishennaya-rabota-s-fleshkami-slushebnie-nositeliSekret-ili-USB-filtri-PK-DeviceLock.html 12. www.daily.sec.ru/2013/09/23/Konkurentniy-analiz-zashishennih-fleshek.html 43