Уразливості публічних терміналів: як зламати велопрокат та поліклініку

В цьому році Москву охопила справжня велосипедна лихоманка. Кількість станцій велопрокату було збільшено з 79 до 150, а послугами оренди скористалися 90 тис. чоловік. Поки двоколісні друзі відпочивають на зимових канікулах, розповімо про уразливість терміналів для оплати оренди велосипедів, які поставили під загрозу безпеку персональних даних та електронних гаманців користувачів, а також змусили задуматися про нову парадигму атак на корпоративні мережі.

image

Платіжні та інформаційні термінали сьогодні функціонують на вулицях, в торгових центрах, аеропортах, поліклініках, в метро. Більшість таких пристроїв працює на базі Windows, в режимі так званого кіоску, який дозволяє запускати на комп'ютері одне основне повноекранне додаток, заданий адміністратором. Функціональність терміналу істотно розширюється, якщо вийти з режиму кіоску в операційну систему.

Додаток іноді «падає» самостійно з-за помилок в програмі і витоків пам'яті, але є й способи згорнути його спеціально. Найдавніший спосіб — виконати довге натискання на екран терміналу до появи контекстного меню, яке емулює клацання правої кнопки миші. Подальший сценарій проникнення залежить від браузера. Наприклад, потрапити з контекстного меню Google Chrome в панель керування можна за допомогою команди «Зберегти як» та іконки довідкового розділу.

image

В окремих випадках ефективним вектором атаки була проста пальпація екрану в лівому нижньому куті, що дозволяє дістатися до панелі завдань і меню «Пуск», або одночасне натискання на кілька областей екрану для згортання основної програми.

image

До теперішнього часу частина подібних лазівок закрита. Але далеко не все! Подивимося на ситуацію з позиції програміста. Що він може упустити з виду?

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

Атака на велопрокат

Додаток в терміналі велосипедної парковки красиво оформлене, введення символів відтестований… Але було в ньому одне негарне «але». Крім форми для реєстрації користувача в інтерфейсі присутній довідковий розділ з картою. На ній є багато корисної інформації: де знаходиться даний термінал та інші велосипедні парковки, як дістатися до найближчих кафе, кінотеатрів і інших «точок інтересу». Карта реалізована на базі стандартного віджета Google. Там і сховалася помилка.

Якщо придивитися, то в правій нижній частині віджета можна побачити посилання «Повідомити про проблему», «Конфіденційність» і «Умови використання». Натискаємо на будь-яку з них і з'являється стандартне вікно Internet Explorer.

image

Вікно браузера можна було відкрити по-іншому: натискаючи кнопку «Детальніше» при виборі місця розташування тих чи інших об'єктів.

image

Півсправи зроблено.

Довідковий розділ в Internet Explorer дозволяє дістатися до всіх елементів і системних програм ОС. Трохи вуличної магії, і ми опиняємося в «Центрі спеціальних можливостей» панелі управління, звідки запускаємо екранну клавіатуру.

image

Можна напряму дістатися до клавіатури: вийти в «Провідник» послідовним вибором властивостей браузера Internet Explorer — вкладки «Загальні», кнопки «Параметри», «Переглянути об'єкти» — і натиснувши на додаток Osk.exe в папці C:\Windows\System32.

Озброївшись віртуальною клавіатурою, набираємо cmd.exe і запускаємо командний рядок, де з допомогою команди WHOAMI перевіряємо статус у системі. У нас виявилися права адміністратора, так що можна надягати малинові штани і господарювати.

image

Сценарії експлуатації

Повноцінний вихід в інтернет в терміналі був доступний, незважаючи на суворі рекомендації по обмеженню доступу в зовнішню мережу для таких пристроїв. Порушник міг відправитися на той самий pws-db, скачати шкідливі програми на жорсткий диск пристрою і запустити їх, а також отримати пароль адміністратора з допомогою відомих програм для злому пароля (mimikatz, WCE, Fgdump, pwdump). Варто додати, що у різних велопаркоматов з великою часткою ймовірності могли бути однакові паролі адміністратора.

Що ще міг би зробити кибервзломщик? Підміняти файли в системному каталозі, підвищувати привілеї, дамп дані користувача. Відверті недоліки конфігурації залишали порушнику простір і для зовсім запаморочливих маневрів. Сконструювати на базі захоплених терміналів ботнет, пул для майнінг, затишну банерну мережу зі своєю рекламою… Крім звичайного перехоплення вводяться персональних даних з допомогою кейлогерам, зловмисник міг відправити додаток паркування собі по мережі, внести в нього зміни (наприклад, додати поле з вимогою зазначати тризначний код CVV/CVV2) і встановити назад. Користувачі навряд чи ,s відразу щось запідозрили, ось тільки поїздка на велосипеді обійшлася б їм недешево…

Підступне вікно друку

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

image

Подібне вікно може з'явитися, якщо у вбудованому принтері закінчився папір, висохло чорнило в картриджі або сам по собі термінал вирішує теорему Ферма і тому працює дуже неквапливо.

image

А якщо копнути глибше

Автор цієї статті і його колеги тільки за останній рік стикалися з небезпечною роботою інфоматів «Електронного уряду», инфокиосков в одному з російських аеропортів, систем розваг літака, віддалених терміналів АСУ ТП (SCADA), а також запускали Angy Birds на банкоматі. Останнім часом російські поліклініки активно оснащуються терміналами, в яких будь-який бажаючий може записатися на прийом до лікаря. Без належної уваги до безпеки терміналів ми ризикуємо стати свідками масових витоку відомостей, що становлять вже і лікарську таємницю.

image

І це ще квіточки! Відмінною особливістю публічних терміналів є те, що вони часто підключені до внутрішньої мережі і є довіреними для центрального сервера. При цьому адміністратор терміналу може мати доступ до внутрішніх ресурсів головної компанії з важливими конфіденційними даними. Треба хакеру прориватися через фаєрволи і системи запобігання атак, якщо можна знайти інформаційної кіоск на тихій вулиці, у якого уразливості розміром з гіпопотама і прямий доступ до сервера головного офісу?

Уявімо собі сучасну високотехнологічну авіакомпанію, інформаційні кіоски якої знаходяться в різних аеропортах. Отримавши повний доступ до терміналу і зламавши відповідає за такі пристрої сервер (відсутність патча, вразливість в протоколі обміну даними, зловмисник перевірить, чи немає у даного сервера другого інтерфейсу, підключеного у внутрішню мережу авіакомпанії, і чи є способи в неї потрапити. До корпоративних секретів можуть вести кілька шляхів — VPN-доступ, однакові паролі адміністратора сервера терміналів та внутрішньої мережі, уразливості поштового веб-додатки для відправки статистики або звітів про помилки.

Що робити

Основна біда публічних терміналів з сенсорними екранами — згортання головного програми і потрапляння порушника в інтерфейс Windows. Розробникам необхідно заблокувати спливаючі меню при довгому натисненні на екран (як при натисканні правої клавіші миші) і виключити виклик вікна друку, звідки можна проникнути у панель управління Windows. Рекомендуємо також використовувати embedded збірки ОС, які позбавлені ряду недоліків безпеки стандартних версій — зокрема, не використовують робочий стіл (але все одно, правда, не захищають від відкриття того ж IE).

Обов'язковий мінімум заходів входить перевірка всіх посилань повноекранного програми і сторонніх віджетів. Якщо при переході за веб-адресою відкривається нове вікно браузера, слід відключити таку можливість змінити код віджету і видаливши посилання. Основне додаток терміналу має завжди перебувати поверх всіх вікон Windows: у цьому можуть допомогти різні утиліти (наприклад, Window On Top).

З інших побажань: унікальні паролі на різних терміналах, привілеї звичайного користувача для стандартного режиму роботи пристрою і обмежений список адрес при доступі в зовнішню мережу.

P. S. Некоректні налаштування конфігурації були професійно і оперативно усунені розробниками, а термінали оплати московського міського велопрокату, заявою представників московської мерії, продовжують взимку свою роботу.

P. P. S. Дякую Дениса Макрушина за допомогу у проведенні дослідження.

Автор: Станіслав Мерзляков

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.