> > А ещё весь обмен может дополнительно шифроваться ;-) > Разумеется по причине шифрования трафика. В добрые старые времена, когда шифрованием трафика не напрягались и считали, что мозгов или наглости не хватит. Надеялись на хитрость модемных протоколов. Или закрывали канал средствами операционки банкомата, а её там как воткнули разработчики с дырами, которых раньше не знали, так она там и работала, пока её не поломали.
Открою тебе Секрет . Баннкоматы обслуживаются обычными software средствами. Часть располагается на банкомате , часть в так называемом центре. Часть в центре занимается процессингом карт. Так вот для отладки этого процессингого цетнра мне и нужен эмулятор
Сорри,11.09.03 10:34 Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman Отредактировано 11.09.03 10:34 Количество правок: 1
> Открою тебе Секрет . Баннкоматы обслуживаются обычными > software средствами. Часть располагается на банкомате , > часть в так называемом центре. Часть в центре занимается > процессингом карт. Так вот для отладки этого процессингого > цетнра мне и нужен эмулятор я вряд ли чем смогу помочь. Знал одного человека, который софт для банкоматов писал, но за последние пяток лет связь с ним потеряна.
Совет (бесплатный): Спросите в центре, у них должен быть. Или они других разработчиков порекомендуют, кто разрабатывает и у кого есть. В центре должны знать. Сомневаюсь, что кто-то из разработчиков на БагТрак заходит.
Т.е. не мудрствуя лукаво, ты хочешь отключить банкомат от реального проц. центра, соединить его со «своим», ну и так далее...
К такому выводу я пришёл исходя из абсолютного незнания вопроса, если ты не понял, о каком «центре» шла речь ;-)
Итак, идея твоя очень труднодостижима. Объясняю почему.
Причина номер один — разные банки используют разные протоколы обмена, которые, чаще всего, «стандартные» только для этого банка.
И программное обеспечение тоже. И вся информация об этом деле весьма закрытая и кому попало не даётся.
Но если кто захочит сделать man-in-the-middle, или просто выступить в роли процессинга, то наткнётся на следующие проблемы:
На банкомате, который суть специализированный компьютер, крутится какая-нибудь (чаще всего популярная) ось — OS\2, винды и проч, а может быть даже и *NIX'ы какие-нибудь. Однако, чем экзотичнее OS, тем труднее найти разработчика софта под неё, короче, выбирается золотая середина. Одно время программеры, знавшие OS\2 пользовались спросом именно по этой причине — их забирали в банки ;-)
Под этой осью крутится специализированная софтина, которая обеспечивает пользовательский UI (ну там, меню, окошки всякие), управляет аппаратурой банкомата (диспенсер — устройство, которое выдаёт бабло ;-), и обеспечивает связь банкомата с процессинговым центром банка, который подтверждает выплаты.
Обычно банкомат подключают телефонной лапшой к коммутируемой (обычное телефонная линия) или некоммутируемой (выделенка) сети. Если банкомат вааще рядом с банком, то могут прицепить и по ethernet ;-) Итак, как средство связи используется модем или сетевая карта. Теперь далее. Если модем (а это чаще всего), то значит физически используется какой-нибудь модемный протокол - V92, к примеру, или более старый. Это значит, что его трудно прослушивать (хотя можно, теоретически), и трудно обмануть. Предположим, ты отрубаешь кабель и цепляешь его на свой модем... Другой модем это сразу заметит и оборвёт соединение, а дальше варианты — скорее всего он попробует сам «дозвониться» до банка(процессинга), и обнаружит No dial tone ;-) А если выделенка, то вааще хрен знает, что будет. Вот реально можно ломануть Ethernet, и то после долгого и упорного снифанья, выяснения протоколов обмена и прочей головной боли.
А ещё весь обмен может дополнительно шифроваться ;-)
Так что желаю успехов.
Я тоже так подумал...12.09.03 18:48 Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman Отредактировано 12.09.03 18:52 Количество правок: 1
хотя крутились мысли, что автор хочет разработать свою софтину (задание такое конструкторское, как разработчику банкоматов, производители дали).
А про процессинговый центр он сам говорил, и я тоже имел в виду.
> Причина номер один — разные банки используют разные > протоколы обмена, которые, чаще всего, «стандартные» только > для этого банка. Это точно, по крайней мере имеют право. Одноко у них кое-что общее, но не будем об этом.
> И программное обеспечение тоже. И вся информация об этом > деле весьма закрытая и кому попало не даётся. Это не критично, поскольку система должна обеспечивать надежность, даже если о ней все известно, кроме ключа/ПИНа.
> Но если кто захочит сделать man-in-the-middle, или просто > выступить в роли процессинга, то наткнётся на следующие > проблемы: МИМ не пройдет - пользовательскую информацию не расшифровать, поскольку ключ только в процессинговом центре, а подпись центра не подделать, поскольку МИМ не знает его секретного ключа.
> На банкомате, который суть специализированный компьютер, > крутится какая-нибудь (чаще всего популярная) ось — OS\2, > винды и проч, а может быть даже и *NIX'ы какие-нибудь. > Однако, чем экзотичнее OS, тем труднее найти разработчика > софта под неё, короче, выбирается золотая середина. Одно > время программеры, знавшие OS\2 пользовались спросом именно > по этой причине — их забирали в банки ;-) Да, внутри банкомата, как правило, обычный писюк стоит.
> Под этой осью крутится специализированная софтина, которая > обеспечивает пользовательский UI (ну там, меню, окошки > всякие), управляет аппаратурой банкомата (диспенсер — > устройство, которое выдаёт бабло ;-), и обеспечивает связь > банкомата с процессинговым центром банка, который > подтверждает выплаты. > Обычно банкомат подключают телефонной лапшой к > коммутируемой (обычное телефонная линия) или > некоммутируемой (выделенка) сети. Если банкомат вааще рядом > с банком, то могут прицепить и по ethernet ;-) Итак, как > средство связи используется модем или сетевая карта. Теперь > далее. Если модем (а это чаще всего), то значит физически > используется какой-нибудь модемный протокол - V92, к > примеру, или более старый. Это значит, что его трудно > прослушивать (хотя можно, теоретически), и трудно > обмануть. Предположим, ты отрубаешь кабель и цепляешь его > на свой модем... Другой модем это сразу заметит и оборвёт > соединение, а дальше варианты — скорее всего он попробует > сам «дозвониться» до банка(процессинга), и обнаружит No > dial tone ;-) А если выделенка, то вааще хрен знает, что > будет. Вот реально можно ломануть Ethernet, и то после > долгого и упорного снифанья, выяснения протоколов обмена и > прочей головной боли. Я видел банкоматы, которые по радиомодему общались.
Перехватывать можемный протокол тяжело, но даже, если злоумышленник сможет перехватывать весь трафик, то ему это ровным счетом ничего не даст.
> А ещё весь обмен может дополнительно шифроваться ;-) Разумеется по причине шифрования трафика.
> Так что желаю успехов. Хотя какой там трафик- снятие денег - один пакет туда, один обратно, ну может еще один туда (подтверждение). Служебных несколько пакетов - подтверждение приема пакетов и, может, еще фигня какая-нибудь.
В принципе банк, все-равно посредник. Все, что он принимает от клиента, он все равно через буржуинство прокидывает. Типа запрос на снятие налички - надо узнать достаточность средств на счете. Проверка актуальности карточки все равно не банке-эмитенте делается, если не считать локального процессинга (карточки, которые только этим банком обслуживаются).
Хотя ходят легенды, что ломали-таки банкоматы...12.09.03 19:22 Автор: HandleX <Александр М.> Статус: The Elderman
> > А ещё весь обмен может дополнительно шифроваться ;-) > Разумеется по причине шифрования трафика. В добрые старые времена, когда шифрованием трафика не напрягались и считали, что мозгов или наглости не хватит. Надеялись на хитрость модемных протоколов. Или закрывали канал средствами операционки банкомата, а её там как воткнули разработчики с дырами, которых раньше не знали, так она там и работала, пока её не поломали.
Это хорошо, что программисты на ошибках (чужих или своих) учатся.15.09.03 10:03 Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman