Security Recovery, Membership Platform[Launched]

Від скомпрометованого клубу до контрольованої платформи доступу

Від скомпрометованого клубу до контрольованої платформи доступу preview

Arquitectura del sistema //

PHPSQLiteSendPulseTelegram Bot APIWayForPaySSHBackup Verification

1. Огляд проєкту

Це був живий membership-продукт із сайтом, оплатою, CRM, Telegram-доступом і кількома історичними автоматизаціями. На момент підключення система вже мала ознаки компрометації: старий PHP-код, backdoor-поведінку, SEO-spam, розмиті межі доступів і платіжну логіку, яку було небезпечно просто переносити в новий реліз

Мене запросили не для косметичного ремонту, а щоб повернути продукт у контрольований стан і запустити його заново без перенесення старого зараженого середовища

2. Що потрібно було вирішити

•відокремити живий продукт від історичної, потенційно скомпрометованої інфраструктури
•зберегти чинні права доступу та не втратити активних учасників під час переходу
•замінити слабкий зв’язок між оплатою, CRM і Telegram-доступом на перевірений наскрізний flow
•зробити зрозумілими тарифи, реєстрацію, продовження, заморозки, повернення та ручні винятки
•мати резервні копії й перевірку відновлення до відкриття продажів

3. Рішення та реалізація

Чисте середовище замість blind migration

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

Контрольований сайт і платіжний маршрут

Перезібрано mobile-first сайт, тарифну логіку, форму заявки та шлях до оплати. На серверному боці додано перевірку підпису, merchant, order ID, суми, валюти та статусу платежу, а дублікати callback більше не можуть повторно нарахувати доступ

Доступ як окрема бізнес-сутність

Платіж більше не означає сліпе виконання кількох розрізнених команд. Система зв’язує контакт, право доступу, строк, продовження, заморозку та фактичний Telegram ID, перевіряє актуальність права перед вступом і зберігає ручні винятки окремо від платежів

Анонімізований екран тарифів і вибору плану

Перевірка перед відкриттям продажів

Я прогнав 16 наборів тестів, включно з повторним callback, простроченим правом, невідомим профілем, чинним учасником, заявкою на вступ, ручною видачею та сценаріями відмови. Окремо перевірив реальний малий платіж у тестовому контурі, CRM-запис і поведінку доступу

CRM: контроль оплат і чинних доступів

4. Результат

•новий сайт і покупки запущені в live-режимі
•70 підтверджених історичних прав перенесені та активовані, службові записи виключені
•старий cron більше не керує членством
•платіж, CRM і Telegram-доступ працюють через контрольований серверний маршрут
•дублікати платежів, прострочені права та невідомі профілі проходять окремі перевірки
•створено зовнішні резервні копії коду, бази й конфігурації з перевіркою цілісності

5. Технічний результат

Замість системи, де компрометацію можна було лише припускати, з’явився контрольований membership-продукт із чистим deployment-контуром, відтворюваними правилами доступу, ідемпотентною обробкою платежів, ручним review для винятків і перевіреним планом відновлення

Це був не просто security fix і не просто новий сайт. Я відновив керованість продукту після атаки, зберіг робочі права користувачів і відкрив продажі тільки після того, як критичні сценарії можна було перевірити й пояснити

¿Tienes un problema parecido que ya toca resolver?

Los sistemas fiables no salen de hablar bonito. Veamos cómo la ingeniería quirúrgica puede devolver ritmo a tu producto