В застосунку «Сільпо» можна сплачувати за чужі бонуси — без зламу акаунтів
Розробник мобільного застосунку для зберігання карток лояльності заявив про виявлену вразливість у бонусній системі «Сільпо». Вона дозволяла списувати бонуси з чужих рахунків без зламу акаунтів і підтверджень, пише сам розробник на DOU.
Як вдалося хакнути систему?
Історія почалася зі скарг користувачів застосунку для зберігання карток лояльності, який розробник нещодавно запустив для iOS. Користувачі повідомляли, що картку «Сільпо» складно додати або вона з часом перестає працювати через динамічний QR-код.
Підписуйтеся на наші соцмережі
Дослідивши механізм роботи бонусної картки, розробник з’ясував, що попри візуальну «динамічність» QR-коду, ключовим ідентифікатором є номер бонусного рахунку, який не змінюється. Створивши QR-код із цього номера, він успішно використав його в магазині.
Під час оплати система запропонувала списати бонуси без жодного додаткового підтвердження — PIN-коду, SMS або авторизації в застосунку. Це наштовхнуло розробника на думку про потенційну вразливість. Людина, яка знає номер бонусного рахунку, може списати бонуси будь-якого користувача.
Поглиблене тестування показало, що номери бонусних карток «Сільпо» формуються за принципом контрольної суми — з використанням алгоритму EAN-13 (варіація алгоритму Луна). Створивши валідатор і генератор таких номерів, розробник зміг згенерувати коректні бонусні картки. Частина з них виявилась порожньою, однак на деяких рахунках були бонуси, які система дозволяла списувати.
Після підтвердження вразливості розробник звернувся до служби підтримки «Сільпо» та надав докази у вигляді чека. За його словами, після цього компанія серйозно поставилася до проблеми. Його попросили не розголошувати інформацію публічно до 1 січня 2026 року, щоб мати час на виправлення недоліків.
Згодом компанія подякувала розробнику за відповідальне розкриття вразливості та надіслала йому подарунки й сертифікати.