
125 Кібербезпека / 4 Курс / 4.2_Управління інформаційною безпекою / Лiтература / Навчальний посібник. Інформаційна безпека. Кавун С.В
..pdfУ колі фахівців добре відомо, що швидке падіння Норвегії в Другій світовій війні було в значній мірі обумовлене тим, що шифри Британського Королівського флоту були розкриті німецькими криптографами, які використовували точно ті ж методи, що й фахівці підрозділу ―Кімната 40‖ Королівського Флоту використовували проти Німеччини в попередній війні.
Починаючи із Другої світової війни, над урядовим використанням криптографії спускається завіса таємності. Це не дивно, і справа не тільки в холодній війні, але також і в небажанні бюрократів (у будь-якій організації) визнати свої помилки.
Розглянемо деякі способи, за допомогою яких фактично відбувалися шахрайства з банкоматами. Мета – проаналізувати ідеї проектувальників, спрямовані на теоретичну невразливість їх виробу, й зробити висновки з того, що сталося.
Почнемо з декількох простих прикладів, які показують кілька типів шахрайств, які можуть бути виконані без більших технічних хитрувань, а також банківські процедури, які дозволили їм виникнути.
Добре відомо, що магнітна смуга на картці клієнта повинна містити тільки його номер рахунка, а персональний ідентифікаційний номер (PINкод) виходить процедурою шифрування номера рахунку й узяття чотирьох цифр від результату. Таким чином, банкомат здатний виконувати процедуру шифрування або виконувати перевірку PIN-коду іншим способом (наприклад, інтерактивним запитом).
Недавно Королівський суд Вінчестера в Англії засудив двох злочинців, що використовували просту, але ефективну схему. Вони стояли в чергах до банкоматів, підглядали PIN-коди клієнтів, підбирали відкинуті банкоматом картки й копіювали номера рахунків з них на незаповнені картки, які використовувалися для пограбування рахунків клієнтів.
Цей виверт використовувався (і про це повідомлялося) кілька років тому в одному з банків Нью-Йорка. Злочинцем був звільнений технік з банкоматах, і йому вдалося вкрасти 80 000 доларів, перш ніж банк, нашпигувавши відповідний район співробітниками служби безпеки, не піймав його на місці злочину.
Ці напади сталися тому, що банки друкували на банківській картці номер рахунка клієнта повністю, і, крім того, на магнітній смужці не було
криптографічної надмірності. Можна було б подумати, що урок Ньюйоркського банку буде засвоєний, але ні.
Інший тип технічного нападу ґрунтується на тому, що в багатьох мережах банкоматів повідомлення не шифруються й не виконуються процедури підтвердження дійсності при дозволі на операцію. Це означає, що зловмисник може робити запис-відповідь із банку банкомату ―дозволяю оплату‖ і потім повторно прокручувати запис доки банкомат не спорожніє. Ця техніка відома як ―патрання‖, використовується не тільки зовнішніми зловмисниками. Відомий випадок, коли оператори банку використовували пристрій керування мережею для ―патрання‖ банкоматів разом зі спільниками.
Тестові транзакції є ще одним джерелом проблем
Для одного типу банкоматів використовувалася чотирнадцятизначна ключова послідовність для тестової видачі десяти банкнот. Один банк надрукував цю послідовність у посібнику з використання вилучених банкоматів. Через три роки раптово почалося зникнення грошей. Вони тривали, поки всі банки, що використовували даний тип банкомату, не включили виправлення програмного забезпечення, що забороняють тестову транзакцію.
Найбільш швидке зростання показують шахрайства з використанням помилкових терміналів для збору рахунків клієнтів і PINкодів. Напади цього виду були вперше описані в США в 1988 році. Шахраї побудували машину, що приймає будь-яку картку й видає пачку сигарет. Даний винахід був розміщений у магазині, і PIN-коди й дані з магнітних карток передавалися за допомогою модему. Трюк поширився по усьому світу.
Технічні співробітники також крадуть гроші клієнтів, знаючи, що їх скарги, швидше за все, будуть зігноровані. В одному банку в Шотландії інженер служби технічної підтримки приєднав до банкомату комп'ютер і записував номери рахунків клієнтів і їх PIN-коди. Потім він підробив картки й крав гроші з рахунків. І знову клієнти скаржилися в глухі стіни. За таку практику банк зазнав публічної критики одним з вищих юридичних чинів Шотландії.
Мета використання PIN-коду із чотирьох цифр полягає в тому, що якщо хтось знаходить або краде банківську картку іншої особи, то є один шанс на десять тисяч випадкового вгадування коду. Якщо дозволяються тільки три спроби уведення PIN-коду, тоді ймовірність зняти гроші з
украденої картки менша, ніж одна тритисячна. Однак деякі банки ухитрилися скоротити розмаїтість, що дається чотирма цифрами.
Деякі банки не дотримуються схеми одержання PIN-коду за допомогою криптографічного перетворення номера рахунку, а використовують випадково обраний PIN-код (або дозволяють замовникам здійснювати вибір) з наступним криптоперетворенням його для запам'ятовування. Крім того, що клієнт може вибрати PIN-код, що легко вгадати, такий підхід приводить до деяких технічних пасток.
Деякі банки тримають зашифроване значення PIN-коду у файлі. Це означає, що програміст може одержати зашифроване значення власного PIN-коду й виконати пошук у базі даних всіх інших рахунків з таким же PIN-кодом.
Один великий банк Великобританії навіть записував зашифроване значення PIN-коду на магнітній смузі картки. Злочинному співтовариству треба було п'ятнадцять років, щоб усвідомити те, що можна замінити номер рахунка на магнітній смузі власної картки й потім використовувати її з власним PIN-кодом для крадіжки з деякого рахунку.
Із цієї причини у системі VISA рекомендується, щоб банки комбінували номер рахунка клієнта з його PIN-кодом перед шифруванням. Однак не всі банки це роблять.
Більше витончені напади дотепер були пов'язані із простими помилками реалізації й робочих процедур. Професійні дослідники проблем безпеки мали тенденцію розглядати такі грубі помилки, як нецікаві й тому звертали основну увагу на напади, засновані на розробці більш тонких технічних недоробок. У банківській справі також має місце ряд слабких місць у системі безпеки.
Хоча атаки банківських систем побудовані на високих технологіях, відбуваються досить рідко, вони цікаві із суспільної точки зору, оскільки державні ініціативи, такі, як Критерій оцінки технології ІБ країн ЄС (ITSEC) мають за мету розробити набір продуктів, які сертифіковані на відсутність відомих технічних помилок. Пропозиції, що лежать в основі цієї програми полягають у тому, що реалізація й технологічні процедури відповідних продуктів будуть по суті вільні від помилок, і що для нападу необхідно мати технічну підготовку, порівняну з підготовкою фахівців урядових агентств безпеки. Можливо, такий підхід більш доречний для військових систем, ніж для цивільних.
Щоб зрозуміти як здійснюються більш витончені напади, необхідно розглянути банківську систему безпеки більш докладно.
Проблеми, пов'язані з модулями безпеки
Не всі вироби, що забезпечують безпеку, мають однаково високу якість, і лише деякі банки мають кваліфікованих експертів для відмінності гарних продуктів від посередніх.
У реальній практиці існують деякі проблеми з виробами, що шифрують, зокрема, старим модулем безпеки 3848 фірми IBM або модулями, що рекомендуються в цей час банківським організаціям.
Якщо банк не має апаратно реалізованих модулів безпеки, функція шифрування PIN-коду буде реалізована в програмному забезпеченні з відповідними небажаними наслідками. ПЗ модулів безпеки може мати точки переривань для налагодження програмних продуктів інженерами фірми-виробника. На цей факт була звернена увага, коли в одному з банків було ухвалено рішення про включення в мережу й системного інженера фірми-виробника не зміг забезпечити роботу потрібного шлюзу. Щоб все-таки виконати роботу, він використовував одну із цих вивертів для добування PIN-кодів із системи. Існування таких точок переривання унеможливлює створення надійних процедур керування модулями безпеки.
Деякі виробники модулів безпеки самі полегшують подібні напади. Наприклад, застосовується метод генерації робочих ключів на базі часу доби й, як наслідок, реально використовується тільки 20 бітів ключа, замість очікуваних 56. Таким чином, відповідно до теорії ймовірностей, на кожні 1000 згенерованих ключів два будуть збігатися.
Це уможливлює деякі тонкі зловживання, у яких зловмисник управляє комунікаціями банку так, щоб транзакції одного термінала замінювалися б транзакціями іншого.
Програмісти одного банку навіть не стали зв'язуватися з неприємностями, що стосуються з введення ключів клієнта в програми шифрування. Вони просто встановили покажчики на значення ключа в область пам'яті, що завжди обнульована при старті системи. Результатом даного рішення з'явилося те, що реальні й тестові системи використовували ті самі області зберігання ключів. Технічні фахівці банку вважали, що вони можуть одержувати клієнтські PIN-коди на пристрої для тестування. Кілька людей з їхнього числа зв'язалися з місцевими злочинцями для підбору PIN-кодів до украдених банківських карток. Коли
керівник служби безпеки банку зрозумів, що відбувається, він загинув в автокатастрофі (причому місцева поліція ―втратила‖ всі відповідні матеріали). Банк не потурбувався розіслати нові картки своїм клієнтам.
Одна з основних цілей модулів безпеки полягає в тому, щоб запобігти одержанню програмістами й персоналом, що має доступ до комп'ютерів, ключовій інформації банку. Однак таємність, що забезпечують електронні компоненти модулів безпеки, часто не витримує спроб криптографічного проникнення.
Модулі безпеки мають власні майстер-ключі для внутрішнього використання, і ці ключі повинні підтримуватися в певному місці. Резервна копія ключа часто підтримується у формі, що читається легко, такий, як пам'ять PROM, і ключ може читатися час від часу, наприклад, при передачі керування з набору зональних і термінальних ключів від одного модуля безпеки до іншого. У таких випадках банк залежить повністю від милосерді експертів у процесі виконання даної операції.
Проблеми, пов'язані з технологіями проектування
Коротко обговоримо технологію проектування банкоматів. У старих моделях код програм шифрування розміщував в неправильному місці – у пристрої керування, а не в модулі безпосередньо. Пристрій керування передбачалося розміщати в безпосередній близькості від модуля в певній області. Але велика кількість банкоматів у цей час не розташовані в безпосередній близькості від будинку банку. В одному університеті Великобританії банкомат був розташований в університетському містечку й посилав незашифровані номери рахунків і PIN-коди по телефонній лінії в пристрій управління філії, що був розташований на відстані декількох миль від міста. Кожен, хто не полінувався б використовувати пристрій прослуховування телефонної лінії, міг би підробляти картки тисячами.
Навіть у тих випадках, коли купується один із кращих виробів, існує велика кількість варіантів, при яких неправильна реалізація або непродумані технологічні процедури приводять до неприємностей для банку. Більшість модулів безпеки повертають цілий діапазон кодів повернення на кожну транзакцію. Деякі з них, такі, як ―помилка парності ключа‖, дають попередження про те, що програміст експериментує з реально використовуваним модулем. Однак лише деякі банки потурбувалися, щоб написати драйвер пристрою, необхідний для перехоплення цих попереджень і відповідних дій.
Відомі випадки, коли банки містили субпідрядні договори на всю або частину системи забезпечення банкоматів з фірмами, ―що надають відповідні послуги‖, і передавали в ці фірми PIN-коди.
Також відзначені прецеденти, коли PIN-коди розділялися між двома або більшим числом банків. Навіть якщо весь обслуговуючий персонал банку вважати такими, що заслуговують довіри, зовнішні фірми можуть не підтримувати політику безпеки, характерну для банків. Штат цих фірм не завжди перевірений належним чином, швидше за все, має низьку оплату, цікавий і необачний, що може призвести до задуму й здійснення шахрайства.
В основі багатьох з описаних управлінських помилок лежить не пропрацьованість психологічної частини проекту. Філії й комп'ютерні центри банку повинні, завершуючи денну роботу, виконувати стандартні процедури, але тільки ті контрольні процедури, чия мета очевидна, імовірно, будуть дотримуватися суворо. Наприклад, поділ ключів від сейфа відділення між менеджером і бухгалтером добре зрозуміло: це захищає їх обох від захоплення їх родин як заручників. Криптографічні ключі не часто впаковуються у формі, зручній для користувача, і тому вони навряд чи будуть використовуватися правильно. Частковою відповіддю могли б бути пристрої, що фактично нагадують ключі (за образом криптографічних ключів запалів ядерної зброї).
Існує досить багато інформації щодо поліпшення експлуатаційних процедур, але якщо мета полягає в запобіганні влучення будь-якого криптографічного ключа в руки того, хто має технічну можливість зловживати ним, тоді повинна бути поставлена точна мета в керівництвах і навчальних дисциплін. Принцип ―безпеки за рахунок незрозумілості‖ часто приносить більше шкоди, ніж користі.
Розподіл ключів
Розподіл ключів представляє певну проблему для філій банку. Як відомо, теорія вимагає, щоб кожний із двох банкірів уводив свій компонент ключа, так, що їхня комбінація дає головний ключ термінала. PIN-код, зашифрований на термінальному майстер-ключі, посилає в банкомат при першій транзакції після технічного обслуговування.
Якщо інженер, що обслуговує банкомат, одержить обидві компоненти ключа, він може розшифрувати PIN-код і підробляти картки. На практиці менеджери філій, які зберігають ключі, щасливі від того, що передають їх інженерові, оскільки їм не хочеться стояти поруч із
банкоматом, поки він обслуговується. Більше того, уведення термінального ключа означає використання клавіатури, що менеджери старшого покоління вважають нижче свого достоїнства.
Звичайною практикою є неправильне керування ключами. Відомий випадок, коли інженерові з обслуговуючого персоналу були передані обидві мікросхеми з майстрами-ключами. Хоча процедури подвійного контролю в теорії існували, співробітники служби безпеки передали мікросхеми, тому що останні ключі були використані й ніхто не знав, що робити. Інженер міг би не тільки підробляти картки. Він міг би піти із ключами й припинити всі операції банку з банкоматами.
Цікавим є той факт, що ключі частіше зберігаються у відкритих файлах, ніж у захищених. Це вимагається не тільки до ключів банкоматів, але й до ключів для систем взаєморозрахунків між банками, такими як SWIFT, у яких відбуваються транзакції, що коштують мільярди. Було б розумно використовувати ключі ініціалізації, типу термінальних ключів і зональних ключів, тільки один раз, а потім їх знищувати.
Криптоаналітичні загрози
Криптоаналітики, ймовірно, становлять найменшу загрозу для банківських систем, але й вони повністю не можуть бути скинуті з рахунків. Деякі банки (включаючи більш відомі) усе ще використовують доморослі криптографічні алгоритми, створені в роки, що передують DES. В одній мережі передачі дані блоки даних просто ―скремблювалися‖ додаванням константи. Цей метод не зазнавав критики протягом п'яти років, незважаючи на те, що мережа використовувалася більше, ніж 40 банками. Причому всі експерти зі страхування, аудита й безпеки цих банків, мабуть, читали специфікації системи.
Навіть якщо використовується ―респектабельний‖ алгоритм, він може бути реалізований з невідповідними параметрами. Наприклад, деякі банки реалізували алгоритм RSA з довжиною ключа від 100 до 400 біт, незважаючи на те, що довжина ключа повинна бути не менше 500 біт для того, щоб забезпечити необхідний рівень безпеки.
Можна знаходити ключ і методом грубої сили, випробовуючи всі можливі ключі шифрування, поки не знайдеться ключ, що використовує конкретний банк.
Протоколи, використовувані в міжнародних мережах для шифрування робочих ключів, за допомогою зональних ключів роблять
легенею такий напад на зональний ключ. Якщо один раз зональний ключ був розкритий, всі PlN-коди, що посилаються або одержувані банком по мережі, можуть бути розшифровані. Недавнє вивчення питання експертами Канадського банку показало, що напад такого роду на DES коштувало б близько 30 000 фунтів стерлінгів на один зональний ключ. Отже, для подібного злочину цілком достатньо ресурсів організованої злочинності, і такий злочин міг би здійснити досить забезпечений індивід.
Імовірно, необхідні для знаходження ключів спеціалізовані комп'ютери були створені в спецслужбах деяких країн, у тому числі в країнах, що перебувають зараз у стані хаосу. Отже, існує певний ризик того, що зберігачі цієї апаратури могли б використовувати її з метою особистої наживи.
Усі системи: і малі, і більші – містять програмні помилки й піддані помилкам операторів. Банківські системи не є винятком, і це усвідомлює кожен, хто працював у промисловому виробництві. Розрахункові системи філій мають тенденцію до укрупнення й ускладнення, з безліччю взаємодіючих модулів, які еволюціонують десятиліттями. Деякі транзакції неминуче будуть виконані неправильно: дебетування може бути дубльованою, або неправильно змінений рахунок.
Така ситуація не є новиною для фінансових контролерів більших компаній, які містять спеціальний штат для узгодження банківських рахунків. Коли з'являється помилкове дебетування, ці службовці вимагають для аналізу відповідні документи й, якщо документи відсутні, одержують відшкодування неправильного платежу від банку.
Однак клієнти банкоматів не мають такої можливості для погашення платежів, що заперечуються. Більшість банкірів поза США просто говорять, що в їхніх системах помилок немає.
Така політика приведе до певного юридичного й адміністративного ризику. По-перше, це створює можливість зловживань, оскільки шахрайство конспірується. По-друге, це приводить до занадто складного для клієнта доказам, що є причиною спрощення процедури в судах США. По-третє, це моральний збиток, пов'язаний з непрямим заохоченням службовців банку до злодійства, яке базується на знанні, що вони навряд чи будуть піймані. По-четверте, це ідейна недоробка, оскільки через відсутність централізованого обліку претензій клієнтів відсутня можливість правильно організованого контролю за випадками шахрайства.
Вплив на ділову активність, пов'язаний із втратами в банкоматах, досить важко точно оцінити. У Великобританії економічний секретар казначейства (міністр, відповідальний за регулювання банківської діяльності) заявив у червні 1992 року, що подібні помилки впливають принаймні на дві транзакції із трьох мільйонів, що вчиняються щодня. Однак під тиском судових розглядів останнім часом ця цифра була переглянута спочатку до 1 помилкової транзакції на 250 000, потім 1 на 100 000, і, нарешті, 1 на 34 000.
Оскільки клієнти, які звертаються із претензіями, звичайно, одержують відсіч із боку співробітників банку й більшість людей просто не в змозі помітити одноразове вилучення з рахунку, то найбільш реальне припущення полягає в тому, що відбувається близько 1 неправильної транзакції на 10 000. Таким чином, якщо середній клієнт використовує банкомат раз у тиждень протягом 50 років, ми можемо очікувати, що один із чотирьох клієнтів зіштовхнеться із проблемами використання банкоматів протягом свого життя.
Проектувальники криптографічних систем перебувають у невигідних умовах через недолік інформації про те, як відбуваються порушення роботи систем на практиці, а не про те, як вони могли б відбутися в теорії. Цей недолік зворотного зв'язку приводить до використання неправильної моделі загроз. Проектувальники зосереджують зусилля на тому, що в системі може привести до порушення, замість того, щоб зосередитися на тому, що зазвичай призводить до помилок. Багато продуктів настільки складні, що вони рідко використовуються правильно. Наслідком є той факт, що більшість помилок пов'язані із впровадженням і супроводом системи. Специфічним результатом є потік шахрайств із банкоматами, що не тільки привів до фінансових втрат, але й до судових помилок і зниження довіри до банківської системи.
Одним із прикладів реалізації криптографічних методів є криптографічна система захисту інформації з використанням цифрового підпису EXCELLENCE.
Програмна криптографічна система EXCELLENCE призначена для захисту інформації, оброблюваної, збереженої й переданої між IBMсумісними персональними комп'ютерами, за допомогою криптографічних функцій шифрування, цифрового підпису й контролю дійсності.
У системі реалізовані криптографічні алгоритми, що відповідають державним стандартам: шифрування – ДЕРЖСТАНДАРТ 28147-89. Цифровий підпис побудований на основі алгоритму RSA.
Ключова система зі суворою автентифікацією і сертифікацією ключів побудована на широкозастосовуваній у міжнародній практиці: протоколі X.509 і принципі відкритого розподілу ключів RSA.
Система містить криптографічні функції обробки інформації на рівні файлів:
шифрування/розшифровування; цифровий підпис; контроль цілісності;
і криптографічні функції роботи із ключами: генерація (зміни) особистих ключів; установка парольного захисту; автентифікація відкритих ключів.
Кожен абонент мережі має свій секретний і відкритий ключ. Секретний ключ кожного користувача записаний на його індивідуальну ключову дискету або індивідуальну електронну картку. Таємність ключа абонента забезпечує захист зашифрованої для нього інформації й неможливість підробки його цифрового підпису.
Система підтримує два типи носіїв ключової інформації:
стандартні гнучкі диски формату 5,25 або 3,5 дюймів будь-якої ємності;
індивідуальні електронні картками типу Dallas Card або Smart Card інформаційною ємністю не менше 1024 біта.
Кожен абонент мережі має бути захищений від несанкціонованої зміни файл-каталог відкритих ключів всіх абонентів системи разом з їхніми найменуваннями. І кожен абонент зобов'язаний зберігати свій секретний ключ у таємниці.
Функціонально система EXCELLENCE виконана у вигляді програмного модуля excell_s.exe і працює в операційній системі MS DOS 3.30 і вище. Параметри для виконання функцій передаються у вигляді командного рядка DOS. Додатково поставляється інтерфейсна графічна оболонка. Програма автоматично розпізнає й підтримує 32-розрядні операції процесора Intel386/486/Pentium.
Для вбудовування в інші програмні системи реалізований варіант системи EXCELLENCE, що містить основні криптографічні функції для