Уразливості в LiqPAY для Android та iOS

23:57 23.01.2014

Минулого року, 07.06.2013 і 07.07.2013, я виявив Brute Force, Insufficient Process Validation та Insufficient Session Expiration уразливості в LiqPAY для Android та iOS. Перевіряв в клієнті для Android, але в клієнті для iOS повинно бути те саме (аналогічно, як це є в мобільному Приват24 для різних ОС).

Brute Force (WASC-11):

OTP код всього 4 символи, що всього 10000 комбінацій. Це легко підбирається. Для атаки достатньо знати тільки логін жертви (мобільний телефон, що можна взяти просто навмання, наприклад, будь-який номер мобільного телефону в Україні), то можна легко отримати доступ до LiqPAY акаунту, без наявності мобільного телефону жертви (бо 4 символьний OTP код підбирається легше, ніж 8 символьний у веб версії LiqPAY).

На це ПриватБанк зауважив мені, що в мобільних додатках (Приват24, LiqPAY та інших) де використовуються 4-символьні OTP - у всіх них наявні такі Brute Force уразливості - цей код працює лише для трьох спроб. Тобто після трьох спроб код скидається і треба робити запит на новий код. Але тим не менш, можна довго довбати запитами, поки не вгадаєш 4 цифри з 3 спроб. Вірогідність цього достатньо велика для проведення успішних атак.

Insufficient Process Validation (WASC-40) / Insufficient Session Expiration (WASC-47):

Можна входити в LiqPAY акаунт без OTP. Тому що має місце прив’язка до пристрою, подібно до мобільного Приват24. Тобто дані про авторизацію зберігаються локально після першого входу в акаунт з введенням OTP и далі вхід в акаунт відбувається автоматично (при натисканні іконки LiqPAY клієнта).

При цьому сесія діє необмежений час (хоч рік) - на відміну від мобільного Приват24, де сесія діє обмежений час. Я навіть через пів року все ще міг входити в акаунт, бачити всю інформацію (про карту, частину її номера, суму на рахунку, історію операцій) без введення OTP.

Перевірено в LiqPay 2.0 для Android.

Дані уразливості досі не виправлені, бо ПБ не бачить в них ризику.

Після відправлення листа 07.07.2013 і отримання відмови від ПриватБанку, я зробив 19.07.2013 відео демонстрацію Insufficient Process Validation уразливості. Яке надав ПБ, вони заявили, що після перегляду відео будуть думати, але в результаті довго думали і жодних відповідей не надавали, лише “розробники працюють”. І після багатьох моїх нагадувань, в січні нарешті отримав від них офіційну відмову у виправленні цих уразливостей.

Тому 16.01.2014 я розмістив демонстраційне відео Vulnerability in LiqPAY.


Leave a Reply

You must be logged in to post a comment.