Рис. 25. Схема функционирования системы POS
Самым уязвимым местом системы POS являются ее POS -терминалы. В отличие от банкоматов в этом случае изначально предполагается, что POS -терминал не защищен от внешних воздействий. Угрозы для POS -терминала связаны с возможностью раскрытия секретного ключа, который находится в POS -терминале и служит для шифрования информации, передаваемой этим терминалом в банк-эквайер. Угроза раскрытия ключа терминала достаточно реальна, так как эти терминалы устанавливаются в таких неохраняемых местах, как магазины, автозаправочные станции и пр.
Потенциальные угрозы из-за раскрытия ключа получили такие названия.
• "Обратное трассирование". Сущность этой угрозы состоит в том, что если злоумышленник получит ключ шифрования, то он может пытаться восстановить значения PIN, использованные в предыдущих транзакциях.
• "Прямое трассирование". Сущность этой угрозы состоит в том, что если злоумышленник получит ключ шифрования, то он попытается восстановить значения PIN, которые будут использоваться в последующих транзакциях.
Для защиты от угроз обратного и прямого трассирования предложены три метода:
• метод выведенного ключа;
• метод ключа транзакции;
• метод открытых ключей .
Сущность первых двух методов состоит в том, что они обеспечивают модификацию ключа шифрования передаваемых данных для каждой транзакции.
Метод выведенного ключа обеспечивает смену ключа при каждой транзакции независимо от ее содержания. Для генерации ключа шифрования используют однонаправленную функцию от текущего значения ключа и некоторой случайной величины. Процесс получения (вывода) ключа для шифрования очередной транзакции представляет собой известное "блуждание" по дереву (рис.26).
Рис.26. Схема вывода ключа с учетом двоичного представления номера S ключа
Вершиной дерева рис. 26 является некоторое начальное значение ключа I. Чтобы получить ключ с номером S, число S представляют в двоичной форме. Затем при вычислении значения ключа учитывается структура двоичного представления числа S, начиная со старшего разряда. Если L-й двоичный разряд числа S равен 1, то к текущему значению ключа К применяется однонаправленная функция FL(K), где L - номер рассматриваемого двоичного разряда. В противном случае переходят к рассмотрению следующего разряда числа S, не применяя однонаправленной функции. Последняя реализована на основе алгоритма DES. Для получения достаточного быстродействия количество единиц в двоичном представлении числа S обычно ограничивается - их должно быть не более 10. Этот метод обеспечивает защиту только от угрозы "обратного трассирования".
Метод ключа транзакции позволяет шифровать информацию, передаваемую между POS -терминалами и банком-эквайером, на уникальном ключе, который может меняться от транзакции к транзакции. Для генерации нового ключа транзакции используются следующие составляющие:
• однонаправленная функция от значения предыдущего ключа;
• содержание транзакции;
• информация, полученная от карты.
При этом предполагается, что предыдущая транзакция завершилась успешно. Метод ключа транзакции обеспечивает защиту как от "обратного трассирования", так и от "прямого трассирования". Раскрытие одного ключа не дает возможности злоумышленнику вскрыть все предыдущие и все последующие транзакции. Недостатком данной схемы является сложность ее реализации.
Метод открытых ключей позволяет надежно защититься от любых видов трассирования и обеспечить надежное шифрование передаваемой информации. В этом случае POS -терминал снабжается секретным ключом для расшифровки сообщений банка-эквайера. Этот ключ генерируется при инициализации терминала. После генерации секретного ключа терминал посылает связанный с ним открытый ключ на компьютер банка-эквайера. Обмен между участниками взаимодействия выполняется с помощью открытого ключа каждого из них. Подтверждение подлинности участников осуществляется специальным центром регистрации ключей с использованием своей пары открытого и закрытого ключей. Недостатком этого метода является его сравнительно малое быстродействие.
Обеспечение безопасности банкоматов
Банкоматом называют банковский автомат для выдачи и инкассирования наличных денег при операциях с пластиковыми картами. Кроме того, банкомат позволяет держателю карты получать информацию о текущем состоянии счета (в том числе и выписку на бумаге), а также проводить операции по перечислению средств с одного счета на другой.
Банкомат снабжен устройством для. чтения карты, а также дисплеем и клавиатурой для интерактивного взаимодействия с держателем карточки. Банкомат оснащен персональной ЭВМ, которая обеспечивает управление банкоматом и контроль его состояния. Последнее весьма важно, поскольку банкомат является хранилищем наличных денег. Для обеспечения коммуникационных функций банкоматы оснащаются платами Х.25, а иногда и модемами.
Денежные купюры в банкомате размещаются в кассетах, которые находятся в специальном сейфе. Число, кассет определяет количество номиналов купюр, выдаваемых банкоматом. Размеры кассет регулируются, что позволяет заряжать банкомат практически любыми купюрами.
Банкоматы - это стационарные устройства больших габаритных размеров и веса. Примерные размеры: высота -1,5...1,8 м, ширина и глубина - около 1 м, вес - около тонны. Более того, с целью пресечения возможных хищений их монтируют капитально. Банкоматы размещают как в охраняемых помещениях, так и непосредственно на улице.
На сегодняшний день большинство моделей банкоматов рассчитано на работу в режиме реального времени (on-line) с картами с магнитной полосой, однако появились банкоматы, способные работать со смарт-картами в автономном режиме (off-line).
Автономный режим (off-line) работы банкомата характерен тем, что банкомат функционирует независимо от компьютеров банка. Запись информации о транзакции производится на внутренний магнитный диск и выводится на встроенный принтер. Достоинствами автономного режима банкомата являются его относительная дешевизна и независимость от качества линий связи. Это весьма важно для стран с плохой телефонной связью. В то же время низкая стоимость установки напрямую обусловливает высокую стоимость эксплуатации таких банкоматов. Чтобы обновлять "черные списки" (стоп-списки) утраченных карточек, необходимо хотя бы раз в день специально выделенному человеку обходить и обслуживать такие банкоматы. При большом числе таких устройств подобное обслуживание затруднительно. Отказ же от ежедневного обновления списков может привести к значительным потерям для банка в случае подделки карты или при пользовании краденой картой.
Сложности возникают также при идентификации (аутентификации) клиента. Для защиты информации, хранящейся на карте с магнитной полосой, применяется ее шифрование. Для того чтобы банкоматы одного и того же банка воспринимали пластиковые карты с магнитной полосой, в них должен быть использован один ключ для шифрования (расшифрования). Компрометация его хотя бы на одном из банкоматов приведет к нарушению защиты на всех банкоматах.
Режим реального времени (оп-liпе) характерен тем, что банкомат должен быть подсоединен непосредственно или через телефонную сеть к главному компьютеру банка. В этом случае регистрация транзакций осуществляется непосредственно на главном компьютере банка, хотя подтверждение о транзакции выдается на принтер банкомата. При реализации транзакции банкомат обменивается с главным компьютером банка тремя сообщениями (рис. 27):
1) запрос банкомата;
2) ответное сообщение банка;
3) сообщение банкомата о платеже.
Рис.27. Схема обмена сообщениями между банкоматом и главной ЭВМ банка при идентификации и платеже
Запрос банкомата включает следующие данные:
• идентификатор банкомата;
• номер счета и другая учетная информация клиента;
• серийный номер карты;
• защитный символ;
• зашифрованный PIN клиента;
• количество требуемых денег;
• номер транзакции:
• проверочный код для всех данных сообщения.
Ответное сообщение банка включает следующие данные:
• идентификатор банкомата;
• код операции, разрешающий (запрещающий) платеж;
• номер транзакции;
• проверочный код для всех данных сообщения.
В этом обмене сообщениями для проверки целостности данных используется код аутентификации сообщения MAC (Message Authentication Code).
Режим реального времени имеет ряд преимуществ по сравнению с автономным режимом. Он дает возможность клиенту не только получить наличные деньги, но и осуществлять манипуляции со своим счетом. Централизованная идентификация/аутентификация позволяет существенно повысить устойчивость системы к компрометации ключей шифрования. Централизованная проверка идентификатора пользователя делает возможным оперативное обновление списков запрещенных к использованию карт, а также введение ограничений на количество наличных денег, которые может получить клиент в течение одного дня (для защиты от использования украденных карт).
Однако этот режим возможен лишь при наличии надежных каналов связи между банкоматами и банком, что делает его довольно дорогим. Кроме того, наличие канала связи порождает и другие угрозы безопасности по сравнению с автономным режимом работы. Это - анализ графика между банкоматом и главным компьютером и имитация работы главного компьютера компьютером злоумышленника. При анализе графика можно получить информацию о счетах, суммах, условиях платежей и т.п. При имитации работы главного компьютера банка компьютер злоумышленника может выдавать положительный ответ на запрос банкомата о результатах идентификации/аутентификации.
Сети банкоматов являются в настоящее время распространенной формой эксплуатации банкоматов, в которой участвуют несколько банков. Банки-участники такой сети преследуют следующие цели:
• уменьшение стоимости операций для участников;
• разделение затрат и риска при внедрении новых видов услуг между участниками;
• преодоление географических ограничений и соответственно повышение субъективной ценности услуг для потребителей.
При совместном использовании несколькими банками сети банкоматов возникает серьезная проблема - защита конфиденциальной информации банков друг от друга (ключи шифрования и т.п.). Для разрешения этой проблемы предложена схема централизованной проверки PIN каждым банком в своем центре связи с банкоматами. Усложняется также система распределения ключей между всеми участниками сети.
Рассмотрим схему прохождения информации о PIN клиента между банкоматом, банком-эквайером, которому принадлежит банкомат и банком-эмитентом, который выпустил карту клиента (рис.28).
Рис.28. Схема прохождения информации о PIN клиента между банкоматом, банком-эквайером и банком-эмитентом
Пусть клиент Банка 2 (Эмитента) обратился к банкомату Банка 1 (Эквайера). При этом в сети банкоматов происходят следующие действия.
1. Считывающее устройство банкомата считывает информацию, записанную на банковской карте, предъявленной клиентом, и затем банкомат определяет, имеет ли этот клиент счет в Банке 1 - Эквайере.
2. Если клиент не имеет счета в Банке 1, транзакция направляется в сетевой маршрутизатор, который, используя идентификационный номер Банка 2 - Эмитента BIN (Bank Identification Number), направляет эту транзакцию на главный компьютер Банка 2 или производит проверку PIN для Банка 2.
3. Если проверка PIN производится на главном компьютере Банка 2, то этот компьютер получает полную информацию о транзакции и проверяет достоверность PIN.
4. Независимо от результата проверки компьютер Банка 2 пересылает сообщение с этим результатом через сетевой маршрутизатор компьютеру Банка 1.
Как следует из примера, к банку-эмитенту предъявляются следующие требования:
• выпускаемые им карты должны восприниматься всеми банкоматами сети;
• банк-эмитент должен обладать технологией проверки PIN собственных клиентов.
К банку-эквайеру предъявляются другие требования:
• в банкомате или главном компьютере банка должна быть реализована проверка принадлежности транзакции;
• если нет возможности проверить правильность чужого PIN банк-эквайер должен передать данные о транзакции на сетевой маршрутизатор.
Для защиты взаимодействия компьютеров банков друг с другом и с банкоматами должно применяться оконечное (абонентское) шифрование информации, передаваемой по линиям связи. Обычно используется следующий подход: вся сеть банкоматов разбивается на зоны, и в каждой из них используется свой главный зональный управляющий ключ ZCMK (Zone Control Master Key). Ключ ZCMK предназначен для шифрования ключей при обмене между сетевым маршрутизатором и главным компьютером банка. Ключ ZCMK индивидуален для всех участников сети. Обычно он генерируется случайным образом маршрутизатором и передается неэлектронным способом в банк. Раскрытие ключа ZСМК приведет к раскрытию всех PIN, которые передаются между маршрутизатором и главным компьютером банка.
Для шифрования информации, поступающей от главного компьютера банка-эмитента на маршрутизатор используется рабочий ключ эмитента IWK (Issuer Working Key). Его сообщает главному компьютеру банка-эмитента маршрутизатор в зашифрованном на уникальном ZCMK виде. Ключ IWK может меняться по запросу пользователя в процессе работы.
Аналогичный по назначению ключ для обмена между банком-эквайером и маршрутизатором называется рабочим ключом эквайера AWK (Acquirer Working Key). Для шифрования информации при передаче от банкомата к главному компьютеру банка-эквайера используется связной ключ эквайера АСК (Acquirer Communication Key).
При рассмотрении функционирования системы защиты введены следующие обозначения:
- ЕY(Х)- шифрование сообщения Х по алгоритму DES с использованием ключа Y;
- DY(X)-расшифрование сообщения Х по алгоритму DES с использованием ключа Y;
- PBL (PIN Block Local) - локальный блок PIN, полученный из введенного клиентом PIN, дополненного до восьми символов, и представленный во внутреннем формате банкомата;
- PBN (PIN Block Network) - сетевой блок PIN, полученный из введенного клиентом PIN, дополненного до восьми символов, и представленный в виде, готовом для передачи в сети.
Вернемся к рассмотрению схемы на рис.28.
1. Клиент предъявил банкомату Банка 1 банковскую карту и ввел с клавиатуры свой PIN. Банкомат формирует PBL, шифрует его с использованием АСК, т.е. вычисляет криптограмму EACK(PBL), и отправляет ее на главный компьютер Банка 1.
2. На главном компьютере Банка 1 блок PBL расшифровывается и преобразуется в блок PBN, затем блок PBN шифруется с использованием AWK и отсылается в Сетевой маршрутизатор. Процесс преобразования
EACK(PBL) EAWK(PBN)
называют трансляцией блока PIN с ключа АСК на ключ AWK. Основное назначение этого процесса - смена ключа шифрования.
3. Если PIN проверяется на Сетевом маршрутизаторе, после получения криптограммы EAWK(PBN) производится ее расшифрование, а затем выделение PIN с помощью преобразований DAWK(EAWK(PBN)) = PBN PIN
Если PIN проверяется Банком 2, принятая криптограмма транслируется с ключа AWK на ключ IWK (оба ключа хранятся на Сетевом маршрутизаторе):
EAWK(PBN) EIWK(PBN)
Затем криптограмма EIWK(PBN) отправляется в Банк 2.
4. Поступившая в Банк 2 криптограмма EIWK(PBN) преобразуется в зависимости от используемого способа проверки либо в открытый PIN:
DIWK(EIWK(PBN)) = PBN PIN .
либо в PIN в форме блока PBL, зашифрованного на ключе базы данных DBK:
EIWK(PBN)) EDBK(PBL)
5. После любого из этих преобразований осуществляется поиск принятого PIN в базе данных существующих PIN.
6. В результате выполненной проверки введенный клиентом PIN либо принимается, либо отвергается. Вне зависимости от результата проверки главный компьютер Банка 2 пересылает сообщение с результатом через Сетевой маршрутизатор на компьютер Банка 1, а тот оповещает банкомат о результатах решения.
Рассмотренная схема обеспечения безопасности взаимодействия компьютеров в сети базируется на симметричном алгоритме шифрования DES. Поэтому на распространение ключа ZCMK налагаются жесткие ограничения. Применение асимметричной системы шифрования с открытым ключом позволяет несколько упростить ключевую систему и соответственно взаимодействие между банкоматами и главными компьютерами банков.
В неразделяемой сети банкоматов достаточно использовать на всех банкоматах одинаковый открытый ключ, а на главном компьютере банка - закрытый ключ. Это позволяет шифровать запрос и подтверждающее сообщение из банка, так как обеспечение конфиденциальности ответного сообщения необязательно.
Проблема защиты запроса от активных атак (изменения или введения ложного запроса) может быть решена в случае неразделяемой сети использованием пароля для идентификации банкоматов.
Универсальная электронная платежная система UEPS
Ряд социальных и экономических проблем, присущих России после распада СССР: наличие в стране высококвалифицированных специалистов, низкий уровень оплаты труда технической интеллигенции, высокий уровень криминальности в стране - дают основание предположить, что проблемы мошенничества в электронных системах безналичных расчетов с использованием пластиковых карт могут стоять в России более остро по сравнению с Западом, где ежегодные потери составляют миллиарды долларов. Поэтому вопрос обеспечения безопасности функционирования электронной платежной системы и контроля доступа к финансовой информации приобретает особое значение. Ввиду недостаточного развития линий связи в России наиболее перспективны платежные системы, основанные на автономном принципе (off-line) обслуживания владельцев карточек в торговой точке или банкомате. Универсальная электронная платежная система UEPS (Universal Electronic Payment System) отвечает указанным требованиям и отличается высоким уровнем защищенности, что подтверждено результатами авторитетных международных экспертиз. Именно поэтому построение электронной платежной системы "Сберкарт" с использованием микропроцессорных карт в Сбербанке Российской Федерации базируется на технологии UEPS. Концепция и технология платежной системы UEPS разработана французской компанией NET1 International.
Основным технологическим принципом UEPS является осуществление всех финансовых транзакций в режиме off-line при непосредственном взаимодействии двух интеллектуальных пластиковых карт. Базовым алгоритмом шифрования информации служит алгоритм DES. Высокая криптостойкость обеспечивается использованием двойного шифрования на ключах длиной 8 байт.
В платежных системах, работающих в, режиме off-line, большая часть функций по обеспечению контроля действий, по защите от мошенничества ложится на микропроцессорную карту - базовый элемент UEPS. В UEPS используются три основных типа микропроцессорных карт:
• служебные карты персонала банка;
• торговые карты;
• карты клиента.
Все карты содержат 8-битовый микропроцессор. Приведем технические характеристики карты клиента системы UEPS.
• Процессор: SGS-Thompson, 8 бит, система команд Motorola 6805.
• Операционная система: Многозадачная операционная система чипа MCOS (Multitasking Chip Operation System).
• ОЗУ: 160 байт.
• ПЗУ: 6 Кбайт.
• ЭСППЗУ:2Кбайт(16Кбит).
Конструкция и архитектура микропроцессора не позволяют осуществить механическое считывание информации путем спиливания кристалла по слоям, сканирования электронным микроскопом, воздействия ультрафиолетом и т.д. При попытках совершить подобные операции микропроцессор полностью выходит из строя. Архитектура самой микропроцессорной карты такова, что процессор контролирует доступ к защищенным областям памяти, передавая управление специальной прикладной программе UEPS. Вся информация поступает извне на карту в зашифрованном виде и расшифровывается прикладной программой внутри самой карты с использованием ключей, хранящихся в защищенных областях памяти. Аналогичным образом шифруется информация, покидающая карту.
Банковские ключи никогда не покидают карту в открытом виде.
|