среда, 11 июля 2012 г.

Обеспечение безопасности банкоматов.


Банкоматом называют банковский автомат для выдачи и инкассирования наличных денег при операциях с пластиковыми картами. Кроме того, банкомат позволяет держателю карты получать Информацию о текущем состоянии счета (в том числе и выписку на бумаге), а также проводить операции по перечислению средств с одного счета на другой.
Банкомат снабжен устройством для чтения- карты, а также дисплеем и клавиатурой для интерактивного взаимодействия с держателем карточки. Банкомат оснащен персональной ЭВМ, которая обеспечивает управление банкоматом и контроль его состояния. Последнее весьма важно, поскольку банкомат является хранилищем наличных денег. Для обеспечения коммуникационных функций банкоматы оснащаются платами Х.25, а иногда и модемами.
Денежные купюры в банкомате размещаются в кассетах, которые находятся в специальном сейфе. Число кассет определяет количество номиналов купюр, выдаваемых банкоматом. Размеры кассет регулируются, что позволяет заряжать банкомат практически любыми купюрами.
Банкоматы – это стационарные устройства больших габаритных размеров и веса. Примерные размеры: высота -1,5. 1,8 м, ширина и глубина-около 1 м, вес-около тонны. Более того, с целью пресечения возможных хищений их монтируют капитально. Банкоматы размещают как в охраняемых помещениях, так и непосредственно на улице.
На сегодняшний день большинство моделей банкоматов рассчитано на работу в режиме реального времени (on-line) с картами с магнитной полосой, однако появились банкоматы, способные работать со смарт-картами в автономном режиме (off-line).
Автономный режим (off-line) работы банкомата характерен тем, что банкомат функционирует независимо от компьютеров банка. Запись информации о транзакции производится на внутренний магнитный диск и выводится на встроенный принтер. Достоинствами автономного режима банкомата являются его относительная дешевизна и независимость от качества линий связи. Это весьма важно для стран с плохой телефонной связью. В то же время низкая стоимость установки напрямую обусловливает высокую стоимость эксплуатации таких банкоматов [22, 52]. Чтобы обновлять “черные списки” (стоп-списки) утраченных карточек, необходимо хотя бы раз в день специально выделенному человеку обходить и обслуживать такие банкоматы. При большом числе таких устройств подобное обслуживание затруднительно. Отказ же от ежедневного обновления списков может привести к значительным потерям для банка в случае подделки карты или при пользовании краденой картой.
Сложности возникают также при идентификации (аутентификации) клиента. Для защиты информации, хранящейся на карте с магнитной полосой, применяется ее шифрование. Для того чтобы банкоматы одного и того же банка воспринимали пластиковые карты с магнитной полосой, в них должен быть использован один ключ для шифрования (расшифрования). Компрометация его хотя бы на одном из банкоматов приведет к нарушению защиты на всех банкоматах.
Режим реального времени (on-line) характерен тем, что банкомат должен быть подсоединен непосредственно или через телефонную сеть к главному компьютеру банка. В этом случае регистрация транзакций осуществляется непосредственно на главном компьютере банка, хотя подтверждение о транзакции выдается на принтер банкомата. При реализации транзакции банкомат обменивается с главным компьютером банка тремя сообщениями
1) запрос банкомата;
2) ответное сообщение банка;
3) сообщение банкомата о платеже.
Запрос банкомата включает следующие данные:
• идентификатор банкомата;
• номер счета и другая учетная информация клиента;
• серийный номер карты;
• защитный символ;
• зашифрованный PIN клиента;
• количество требуемых денег;
• номер транзакции;
• проверочный код для всех данных сообщения.
Ответное сообщение банка включает следующие данные:
• идентификатор банкомата;
• код операции, разрешающий (запрещающий) платеж;
• номер транзакции;
• проверочный код для всех данных сообщения.
В этом обмене сообщениями для проверки целостности данных используется код аутентификации сообщения MAC (Message Authentication Code).
Режим реального времени имеет ряд преимуществ по сравнению с автономным режимом. Он дает возможность клиенту не только получить наличные деньги, но и осуществлять манипуляции со своим счетом. Централизованная идентификация/аутентификация позволяет существенно повысить устойчивость системы к компрометации ключей шифрования. Централизованная проверка идентификатора пользователя делает возможным оперативное обновление списков запрещенных к использованию карт, а также введение ограничений на количество наличных денег, которые может получить клиент в течение одного дня (для защиты от использования украденных карт).
Однако этот режим возможен лишь при наличии надежных каналов связи между банкоматами и банком, что делает его довольно дорогим. Кроме того, наличие канала связи порождает и другие угрозы безопасности по сравнению с автономным режимом работы. Это-анализ трафика между банкоматом и главным компьютером и имитация работы главного компьютера компьютером злоумышленника. При анализе трафика можно получить информацию о счетах, суммах, условиях платежей и т.п. При имитации работы главного компьютера банка компьютер злоумышленника может выдавать положительный ответ на запрос банкомата о результатах идентификации/аутентификации.
Сети банкоматов являются в настоящее время распространенной формой эксплуатации банкоматов, в которой участвуют несколько банков. Банки-участники такой сети преследуют следующие цели:
• уменьшение стоимости операций для участников;
• разделение затрат и риска при внедрении новых видов услуг между участниками;
• преодоление географических ограничений и соответственно повышение субъективной ценности услуг для потребителей.
При совместном использовании несколькими банками сети банкоматов возникает серьезная проблема-защита конфиденциальной информации банков друг от Друга (ключи шифрования и т.п.). Для разрешения этой проблемы предложена схема централизованной проверки PIN каждым банком в своем центре связи с банкоматами. Усложняется также система распределения ключей между всеми участниками сети.
Рассмотрим схему прохождения информации о 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 индивидуален для всех участников сети. Обычно он генерируется случайным образом маршрутизатором и передается неэлектронным способом в банк. Раскрытие ключа ZCMK приведет к раскрытию всех PIN, которые передаются между маршрутизатором и главным компьютером банка.
Для шифрования информации, поступающей от главного компьютера банка-эмитента на маршрутизатор используется рабочий ключ эмитента IWK (Issuer Working Key). Его сообщает главному компьютеру банка-эмитента маршрутизатор в зашифрованном на уникальном ZCMK виде. Ключ IVVK может меняться по запросу пользователя в процессе работы.
Аналогичный по назначению ключ для обмена между банком-эквайером и маршрутизатором называется рабочим ключом эквай-ера AWK (Acquirer Working Key). Для шифрования информации при передаче от банкомата к главному компьютеру банка-эквайера используется связной ключ эквапера АСК (Acquirer Communication Key).
При рассмотрении функционирования системы защиты введены следующие обозначения:
Еу(Х) – шифрование сообщения X по алгоритму DES с использованием ключа Y;
DY(X) – расшифрование сообщения X по алгоритму DES с использованием ключа Y;
PBL(PIN Block Local)-локальный блок PIN, полученный из введенного клиентом PIN, дополненного до восьми символов, и представленный во внутреннем формате банкомата;
PBN(PIN Block Network) – сетевой блок PIN, полученный из введенного клиентом PIN, дополненного до восьми символов, и представленный в виде, готовом для передачи в сети.
Вернемся к рассмотрению схемы на рис. 9.7.
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 налагаются жесткие ограничения. Применение асимметричной системы шифрования с открытым ключом позволяет несколько упростить ключевую систему и соответственно взаимодействие между банкоматами и главными компьютерами банков.
В неразделяемой сети банкоматов достаточно использовать на всех банкоматах одинаковый открытый ключ, а на главном компьютере банка – закрытый ключ. Это позволяет шифровать запрос и подтверждающее сообщение из банка, так как обеспечение конфиденциальности ответного сообщения необязательно.
Проблема защиты запроса от активных атак (изменения или введения ложного запроса) может быть решена в случае неразделяемой сети использованием пароля для идентификации банкоматов.

Комментариев нет:

Отправить комментарий