Смартфони NFC дозволили дослідникам зламати системи торгових точок і банкомати

click fraud protection

Смартфони з підтримкою NFC дозволили дослідникам зламати системи торгових точок і банкомати, отримавши на деяких з них виконання спеціального коду.

Незважаючи на те, що банкомати є одним із єдиних способів отримати гроші зі свого банківського рахунку на ходу, банкомати, як відомо, мають багато проблем із безпекою протягом багатьох років. Навіть зараз ніщо не завадить хакеру розмістити скімер картки в банкоматі, оскільки більшість людей ніколи не помітять його наявність. Звісно, ​​протягом багатьох років було також багато інших атак, які були більш складними, але загалом, ви завжди повинні бути обережними, користуючись банкоматом. Тепер є новий спосіб зламати банкомат, і для цього потрібен лише смартфон із NFC.

як Провідний звіти, Хосеп Родрігес є дослідником і консультантом IOActive, фірми безпеки, що базується в Сіетлі, штат Вашингтон, і він провів останній рік, знаходячи вразливості в зчитувачах NFC, які використовуються в банкоматах і системах торгових точок. Багато банкоматів у всьому світі дозволяють вам торкнутися вашої дебетової або кредитної картки, щоб потім ввести свій PIN-код і зняти готівку, а не вимагати від вас вставляти її в сам банкомат. Незважаючи на те, що це зручніше, воно також усуває проблему наявності фізичного скімера картки над пристроєм для зчитування карток. Безконтактні платежі в системах торгових точок також зараз повсюдні.

Джерело: Google

Злом NFC-рідерів

Родрікес створив додаток для Android, який дає його телефону можливість імітувати зв’язок за допомогою кредитної картки та використовувати недоліки в мікропрограмі систем NFC. Розмахуючи телефоном над зчитувачем NFC, він може об’єднати кілька експлойтів, щоб вивести з ладу пристрої торгових точок, зламати їх збирати та передавати дані карток, змінювати вартість транзакцій і навіть блокувати пристрої за допомогою повідомлення про програму-вимагач.

Крім того, Родрігес каже, що він навіть може змусити принаймні один неназваний банкомат видавати готівку, хоча це працює лише в поєднанні з помилками, які він знайшов у програмному забезпеченні банкомату. Це називається "джекпотінг», для якого злочинці протягом багатьох років намагалися отримати доступ до банкомату, щоб вкрасти готівку. Він відмовився уточнювати бренд або методи через угоди про нерозголошення з постачальниками банкоматів.

«Ви можете модифікувати прошивку та змінити ціну на один долар, наприклад, навіть коли на екрані показано, що ви платите 50 доларів. Ви можете зробити пристрій марним або встановити якусь програму-вимагач. Тут є багато можливостей", каже Родрігес про атаки на точки продажу, які він виявив. «Якщо ви атакуєте ланцюгом, а також надсилаєте спеціальне корисне навантаження на комп’ютер банкомату, ви можете отримати джекпот у банкоматі — наприклад, отримати готівку, просто торкнувшись телефону».

Джерело: Хосеп Родрігес

Постраждалі постачальники включають ID Tech, Ingenico, Verifone, Crane Payment Innovations, BBPOS, Nexgo та неназваного постачальника банкоматів, і всі вони були попереджені від 7 місяців до року тому. Однак більшість систем торгових точок не отримують оновлення програмного забезпечення або отримують рідко, і ймовірно, що багатьом із них для цього потрібен фізичний доступ. Тому ймовірно, що багато з них залишаються вразливими. «Фізично відновити стільки сотень тисяч банкоматів, це потребує багато часу», Родрігес каже.

Щоб продемонструвати вразливі місця, Родрігес поділився відео з Провідний показуючи, як він махає смартфоном над NFC-зчитувачем банкомату в Мадриді, в результаті чого машина відображає повідомлення про помилку. Він не показав джекпот-атаку, оскільки міг законно перевірити її лише на машинах, отриманих у рамках консультацій з безпеки IOActive, що порушило б їх угоду про нерозголошення. — запитав Родрігес Провідний не публікувати відео, побоюючись юридичної відповідальності.

Висновки є "чудове дослідження вразливості програмного забезпечення, що працює на вбудованих пристроях", каже Карстен Нол, засновник фірми безпеки SRLabs і хакер програмного забезпечення, який проаналізував роботу Родрігеса. Нол також зазначив, що є кілька недоліків для реальних злодіїв, зокрема те, що зламаний NFC reader дозволить зловмиснику лише викрасти дані кредитної картки mag stripe, а не PIN-код або дані з EMV чіпси. Для атаки на джекпот банкоматів також потрібна вразливість у мікропрограмі банкомату, яка є великою перешкодою.

Незважаючи на це, отримання доступу до виконання коду на цих машинах саме по собі є серйозною вадою безпеки, і часто є першою точкою входу в будь-яку систему, навіть якщо це не більше ніж доступ на рівні користувача. Коли ви подолаєте зовнішній рівень безпеки, часто буває так, що внутрішні системи програмного забезпечення далеко не настільки безпечні.

Висновки вразили генерального директора Red Balloon і головного наукового співробітника Енг Куя. «Я вважаю дуже вірогідним, що як тільки у вас буде виконання коду на будь-якому з цих пристроїв, ви зможете отримати прямо до головного контролера, тому що ця штука сповнена вразливостей, які не були виправлені протягом десятиліття", – каже Кюї. "Звідти," він додає, "ви можете абсолютно контролювати касетний дозатор" яка зберігає та видає готівку користувачам.

Виконання власного коду

Здатність виконувати спеціальний код на будь-якій машині є основною вразливістю, яка дає зловмиснику можливість перевірити основні системи в машині, щоб знайти більше вразливостей. Nintendo 3DS є яскравим прикладом цього: гра під назвою Кубічний ніндзя був одним із найперших способів використання 3DS і виконання homebrew. Експлойт під назвою «Ninjhax» викликав переповнення буфера, що викликало виконання спеціального коду. Хоча сама гра мала лише доступ до системи на рівні користувача, Ninjhax став основою для подальших експлойтів для запуску нестандартної прошивки на 3DS.

Джерело: Cloudflare

Для спрощення: переповнення буфера спрацьовує, коли обсяг надісланих даних перевищує виділену пам’ять для цих даних, тобто надлишок даних потім зберігається в суміжних областях пам’яті. Якщо сусідня область пам’яті може виконувати код, то зловмисник може зловживати цим, щоб заповнити буфер сміттєві дані, а потім додайте виконуваний код до їх кінця, де він буде зчитаний у сусідні пам'ять. Не всі атаки переповнення буфера можуть виконати код, і багато з них просто приведуть до збою програми або спричинять неочікувану поведінку. Наприклад, якщо поле може приймати лише 8 байт даних, а зловмисник примусово вводить 10 байт, то додаткові 2 байти в кінці будуть переповнені в іншу область пам’яті.

Докладніше: «PSA: якщо на вашому комп’ютері встановлено Linux, оновіть Sudo зараз»

Родрігес зазначає, що можливі атаки переповнення буфера на NFC-зчитувачі та торговельні пристрої, оскільки він придбав багато з них на eBay протягом останнього року. Він зазначив, що багато з них страждали від однакового недоліку безпеки: вони не перевіряли розмір даних, надісланих через NFC з кредитної картки. Створюючи програму, яка надсилає дані в сотні разів більші, ніж очікує читач, можна було викликати переповнення буфера.

Коли Провідний звернувся до постраждалих компаній за коментарями, ID Tech, BBPOS і Nexgo не відповіли на запити про коментарі. Асоціація індустрії банкоматів також відмовилася від коментарів. Ingenico відповів у заяві, що пом’якшення безпеки означало, що переповнення буфера Родрігеса могло призвести лише до збою пристроїв, а не до виконання спеціального коду. Родрігес сумнівається, що вони справді запобігли б виконанню коду, але не створив доказ концепції для демонстрації. Ingenico сказав, що «враховуючи незручності та вплив на наших клієнтів», він все одно видає виправлення.

Verifone заявив, що знайшов і усунув уразливості торгових точок у 2018 році до того, як про них було повідомлено, хоча це лише показує, що ці пристрої ніколи не оновлюються. Родрігес каже, що минулого року він протестував свої NFC-атаки на пристрої Verifone у ресторані, виявивши, що він все ще залишається вразливим.

«Ці уразливості були присутні у мікропрограмі роками, і ми щодня використовуємо ці пристрої для обробки наших кредитних карток, наших грошей», Родрігес каже. «Їх потрібно убезпечити». Родрігес планує поділитися технічними деталями цих вразливостей на вебінарі найближчими тижнями.