Материалы всероссийской научно-технической конференции Автоматизир
..pdfзапущен процесс основной программы в ОС, т.е. область памяти про цесса со всеми конфиденциальными данными в ней доступна для чтения, а отдельные области еще и для модификации [2].
Иным вариантом данной угрозы инъекции программного кода может быть то, что плагин имеет свою систему плагинов и подклю чает другие плагины во время выполнения программы или включает дополнительные зависимости от сторонних библиотек с кодом, кото рые могут и содержать пусть не вредоносный код, а потенциально уязвимый или опасный, т.е. увеличение исполняемого кода ведет к увеличению потенциальных угроз в нем.
Данная проблема обретает иной характер, если основная про грамма не хранит конфиденциальных данных в своей памяти, но вы полняет какие-то важные процедуры или функции, несанкциониро ванный запуск которых носит критический характер. Например, запуск какого-то внешнего автомата, обработка банковской транзак ции, анализ документа. Злоумышленника тут могут интересовать либо восстановление кода данной критичной функции как интеллек туальной ценности с последующим оформлением этого кода в от дельный программный продукт и получением какой-либо выгоды с помощью него, либо запуск данной функции на некотором защи щаемом объекте с целью как-либо повлиять на информационный процесс, протекающий в данном объекте.
Восстановление кода таких функций с целью их несанкциониро ванного запуска в основной программе очень затрудненно из-за про цедуры компиляции исходного кода на языке программирования в машинные коды процессора, которая носит характер однонаправ ленной по аналогии с хеш-функцией, который возникает из-за усече ния машинных кодов вследствие различных процедур оптимизации, заложенных в компилятор [2].
Однако, получая доступ к памяти процесса и оперируя в рамках и правах самого процесса основной программы, код плагина может передать управление на начало критичной к запуску функции и тем самым выполнить эту функцию. Далее задача эксплуатации этой уяз вимости сводится к вычислению точки входа в данную функцию
иподготовке соответствующих условий ее выполнения (нужные дан ные в стеке, регистрах и т.д.), что намного проще, чем задача полного обратного инжиниринга основной программы или искомой функции
изатем последующего ее повторения в виде отдельной программы,
поскольку доступ к памяти процесса открывает широкие возможно сти по его (процесса) анализу и отладке, в том числе и по сигнатур ному сканированию. Возможен и иной поход, когда адрес искомой функции вычисляется и затем начало кода искомой функции в облас ти основной программы заменяется переходом на программный код плагина. Либо подменяется адрес вызова в таблице виртуальных функций (см. далее) и вызов данной функции передаст управление на код плагина, который, следуя уже далее вложенной в него логике, может передавать управление оригинальной функции или нет, воз вращая управление основной программе. В этом случае реализуется контроль вызова критичной функции со стороны кода плагина, т.е. возможно выключение или блокировка какого-либо функционала основной программы плагином без ее ведома.
Задача вычисления адресов функций для программ, написанных на компилируемых языках программирования, значительно упроща ется, если в них был реализован подход объектно-ориентированного программирования и через API для плагинов передается непосредст венно указатель на объект, имеющий в своем составе критичные методы (функции) [3]. Из-за особенностей реализации ООП и воз можности полиморфизма [4], которую предусматривает данная пара дигма, компилятор вынужден создавать такой объект в памяти про граммы, как таблица виртуальных функций, хранящая адреса каждой функции (метода класса) в едином месте в строго заданном формате. Через указатель на объект определенного класса вычисляется адрес таблицы виртуальных функций для данного класса, а затем и адрес каждой функции (метода).
Даже если через API не был передан непосредственно указа тель на класс, имеющий критичный метод, но был передан указа тель на объект, который хранит в своих свойствах указатель на эк земпляр искомого класса согласно архитектуре приложения в от ношении связи отдельных объектов, то вычисление искомого указа теля возможно, поскольку через переданный указатель на объект возможно получение всех его свойств путем вычисления адреса смещения их в памяти [5].
В случае если исходный код основной программы не представ ляет ценности и доступен в открытом виде, а злоумышленник разра батывает плагин с целью влияния на информационный процесс в рамках определенного защищаемого объекта, как было упомянуто
ранее, задача вычисления смещения адресов функций в виртуальной таблице может быть сведена к простой адресной арифметике.
Подводя итог, следует отметить, что система плагинов в прило жении создает почву для реализации угроз не только и не столько по выполнению вредоносного кода, но и по контролю выполнения ос новной программы плагином, т.е. сторонним кодом, действующим со всеми правами и привилегиями основного процесса.
Библиографический список
1. Касперски К. Техника и философия хакерских атак - записки мыщ’а. - М.: СОЛОН-Пресс, 2004. - 272 с.
2.Касперски К. Записки исследователя компьютерных вирусов.
-СПб.: Питер, 2005. - 316 с.
3.Laboratory of Mathematical Logic at PDMI. Лекция. Виртуаль ные функции и полиморфизм. - URL:http://logic.pdmi.ras.ru/~smal/ aptu/cpp 10/2010_1 l_26.html (дата обращения: 29.04.2015).
4.Кудинов А. Виртуальные функции - низкоуровневый взгляд. - URL: http://devdoc.web-ide.ru/index.php/content/view/virtual_base.htm (дата обращения: 29.04.2015).
5.Таблица виртуальных методов и техника безопасности. - URL: http://habrahabr.ru/company/pvs-studio/blog/239915/ (дата обра щения: 29.04.2015).
ЗАЩИТА СООБЩЕНИЯ В РЕАЛЬНОМ ВРЕМЕНИ. ЛОЖНЫЕ СООБЩЕНИЯ
Студенты гр. КЗИ-10 Е.В. Матвеев, гр. КЗИ-10 А.А. Осколков
Научный руководитель - канд. физ.-мат. наук, доцент ЕЛ. Кротова
Пермский национальный исследовательский
политехнический университет
В данном докладе рассматривается дополнительный механизм противодействия такому методу взлома, как полный перебор ключей.
Надежность использующихся в настоящее время алгоритмов шифрования определяется главным образом временем, затраченным на их взлом с помощью BRUTEFORCE. Очевидно, что существую щие алгоритмы становятся все более и более уязвимы с развитием компьютерных технологий. Мощности компьютеров растут в геомет рической прогрессии, как наглядно показала практика последних де сятилетий. Более того, стремительность роста только увеличивается с каждым годом.
Обратим внимание на несколько аспектов развития технологий, которые могут в скором времени произвести очередной бум в ком пьютерной сфере:
-развитие нанотехнологий в области компьютерной техники;
-разработки фотонных квантовых компьютеров в России, США
иЯпонии, которые уже способны превзойти вычислительную мощ ность классических ПК в несколько раз;
-эксперименты с монослоем графита, иначе называемого графен, который может стать перспективной заменой кремния в интегральных микросхемах благодаря своей колоссальной теплопроводимости.
Ситуация, возникшая при резком прорыве в той или иной облас ти, приведет к тому, что главный критерий надежности того или ино го алгоритма перестанет быть таковым. BRUTEFORCE со временем будет становиться более быстрым и менее затратным относительно других способов дешифровки. Проблема противодействия методу полного перебора изучалась такими людьми, как А.В. Аграновский, Р.А. Хади, Nitesh Dhanjani, Billy Rios, Brett Hardin, Джеймс С. Фос тер, H. Смарт, A.A. Малюк и многими другими.
Схемы алгоритмов RSA для решения задач аутентификации и конфиденциальности показаны на рис. 1, 2.
Схема взаимодействия Алисы (отправителя) и Боба (получателя) при использовании данного механизма:
1) Боб отправляет требуемое значение счетчика Yt Алисе вместе со своим открытым ключом.
2) Алиса шифрует сообщение с помощью открытого ключа Боба, если выполняется задача конфиденциальности, и с помощью своего закрытого ключа, если выполняется задача аутентификации;
3) при получении сообщения Боб устанавливает счетчик в значение Yt;
4) Боб расшифровывает сообщение.
В заключение хотелось бы отметить, что данный механизм зна чительно усложняет подбор ключа злоумышленником. Кроме того, возможности использования подобного механизма гораздо шире, чем представленные здесь. Адаптация данного механизма для противо действия иным способам дешифровки является одной из наших при оритетных задач.
Тем не менее ближайшей задачей является реализация «Генера ции ложных сообщений», созданной на базе описанного выше алго ритма. Принцип «Генерации ложных сообщений» основывается на двух составляющих «К» и «Y2», используемых злоумышленником при взломе.
Рис. 4. Схема взаимодействия отправителя и получателя при использовании механизма
На сегодняшней стадии реализации Боб отправляет Алисе не одно, а несколько значений Yt. При удачном подборе злоумышлен ником основного тела ключа «К» сумма значений счетчика Y и К сравнивается со значением Yt+Kt. Однако, используя несколько различных значений Yt, предоставленных Бобом, злоумышленник получит не единственное верное сообщение, а несколько. Все со
общения, кроме одного, содержат дезинформацию. На определение единственного верного сообщения злоумышленник затратит опре деленное время, если это будет возможным. Данное решение можно увидеть на рис. 4.
Библиографический список
1. Аграновский А.В., Хади Р.А. Практическая криптография: ал горитмы и их программирование. - М.: Солон-Пресс, 2009.
2.Nitesh Dhanjani, Billy Rios, Brett Hardin. Hacking: The Next Generation. - O'Reilly, 2009.
3.Джеймс С. Фостер. Защита от взлома. Сокеты, shell-код, экс плойты. - М.: ДМК Пресс, 2006.
4.Смарт Н. Cryptography: An Introduction - М.: Техносфера, 2006.
5.Малюк А.А. Информационная безопасность. Концептуальные
иметодологические основы защиты информации. - М.: Горячая ли ния - Телеком, 2004.
УЯЗВИМОСТЬ RFID-ТЕХНОЛОГИЙ
Студенты гр. КЗИ-10 Е.В. Матвеев, А.А. Осколков
Научный руководитель - канд. техн. наук, доцент А С . Шабуров
Пермский национальный исследовательский
политехнический университет
В данном докладе рассматривается все больше набирающая по пулярность RFID-технология. Зачастую ее целью является контроль за важными и ценными объектами на предприятиях, будь то доку менты, электронный носитель, контейнер с грузом или даже сотруд ник. К сожалению, даже самые современные технологии не лишены недостатков. В данном докладе показан пример уязвимости, которой может воспользоваться практически любой человек.
Автоматизация, безопасность, современные системы контроля доступа, контроль персонала и ценных предметов - все это про ра диоэлектронные метки RFID-технологий. Первые разработки в об ласти радиоэлектронных меток появились в 1937 г. в США. Их при меняли в системах распознавания «свой-чужой» и успешно исполь зовали во Второй мировой войне.
Понятие RFID (англ. Radio Frequency IDentification, радиочас тотная идентификация) трактуется как способ автоматической иден тификации объектов, в котором посредством радиосигналов считы ваются или записываются данные, хранящиеся в так называемых транспондерах, или RFID-метках.
Система RFID состоит из 4 основных компонентов, а именно:
1)непосредственно сами метки. Метки - это устройства для хранения и передачи данных. В их памяти содержится уникальный код-идентификатор (может быть перезаписываемым);
2)считыватели - приборы, позволяющие считывать и записы вать информацию на метки с помощью антенн;
3)антенны - приборы, получающие информацию от меток, по падающих в их электромагнитное поле;
4)система управления считывателями - программное обеспе чение, формирующее запросы на чтение или создание меток, управ ляет системой считывателей, накапливает и анализирует информа цию, полученную от меток, сохраняет и передает всю информацию
вучетные системы или базы данных.
Если кратко описать принцип работы, то метка, зарегистриро ванная в системе, с помощью стационарного или мобильного считы вателя должна быть нанесена на контролируемый объект. Контроль над перемещением метки, а значит, и за самим объектом, будет за ключаться в чтении данных метки в контрольных точках, для чего метке достаточно попасть в электромагнитное поле, создаваемое ан тенной, подключенной к считывателю и системе их управления.
Классификация меток представлена в табл. 1 и 2.
|
Таблица 1 |
|
Классификация меток |
|
Классификация меток |
По энергообеспечению |
Активные, пассивные, полупассивные |
|
'R/O* Read Only - «только чтение»; |
По операциям |
'W ORM ' Write Once Read Many - «однократная |
чтения-записи |
запись и многократное чтение»; |
|
'R/W* Read and Write - «чтение и запись» |
По исполнению меток |
Пластиковые карты, брелоки, наклейки и т.д. |
|
|
|
Таблица 2 |
|
Классификация работоспособности меток |
||||
|
Классификация работоспособности меток |
|||
Название |
Рабочая |
Расстояние чтения |
Область применения |
|
диапазона |
частота |
|||
|
|
|||
|
|
|
Системы контроля дос |
|
Низкие частоты |
125-150 |
Несколько |
тупа, для идентифика |
|
ции животных, автомо |
||||
(LF) |
кГц |
сантиметров |
||
бильные иммобилайзе |
||||
|
|
|
||
|
|
|
ры, платежные системы |
|
|
|
|
Системы контроля дос |
|
|
|
|
тупа, платежные систе |
|
Высокие частоты |
13,56 МГц |
Около 1 м |
мы, идентификация |
|
(HF) |
товаров в складских |
|||
|
|
|||
|
|
|
системах и книг в биб |
|
|
|
|
лиотечных системах |
|
|
|
От 7 до 100 м |
Системы логистики |
|
Сверхвысокие |
860-960 МГц |
и учета движения |
||
(в зависимости от |
||||
частоты (UHF) |
2,4-5 ГГц |
товаров по цепочке |
||
типа питания) |
||||
|
|
|
поставок