Персональні дані в URL
URL — це адреса, а не приватний канал.
Що таке Персональні дані в URL?
URL — це адреса, а адреси копіюються: в історію браузера, журнали доступу, сервіси попереднього перегляду посилань і в заголовок Referer , який отримує кожен сторонній ресурс на сторінці. HTTPS захищає запит під час передачі, але не тих, хто легітимно отримує URL. Ви прочитаєте електронну адресу, дату народження й останні чотири цифри національного ідентифікаційного номера з рядка запиту посилання для підтвердження. Потім замінете їх непрозорим короткоживучим токеном, який зіставляється з користувачем на сервері, і перевірите кожен генератор посилань для скидання пароля, входу за посиланням і запрошень до спільного доступу на ту саму проблему.
Що ви дізнаєтесь у Персональні дані в URL
- Розпізнавайте, що URL — майже публічний ідентифікатор, який перетинає багато меж довіри: історію браузера, журнали доступу, заголовки Referer, засоби попереднього перегляду посилань, захоплення екрана
- Розумійте, що HTTPS захищає URL під час передачі, але не заважає посередникам записувати його в журнали чи пересилати далі
- Застосовуйте переписаний код із непрозорим токеном: замінюйте персональні дані в URL випадковим токеном із коротким строком дії, який на сервері зіставляється з користувачем
- Розпізнавайте, що електронна адреса, дата народження й останні чотири цифри SSN разом утворюють трійку для перевірки особи (KBA), яку зловмисник може масово збирати з куплених журналів реферерів
- Перевіряйте кожен генератор посилань в електронних листах і SMS (підтвердження, скидання пароля, вхід за посиланням, запрошення до спільного доступу) на той самий антипатерн
Персональні дані в URL — Кроки навчання
-
Знайдіть процес підтвердження
Боб вивчає публічний портал Westmark Industrial для постачальників і шукає, що з нього витікає. Його увагу привертає крок підтвердження облікового запису: портал надсилає листом посилання, щоб підтвердити обліковий запис. Боб реєструється з одноразовою поштовою скринькою, яку контролює, і вигаданими даними особи, щоб побачити, як виглядає це посилання. Він починає зі сторінки запиту.
-
Запросіть посилання для підтвердження
Пройдіть процес так, як це зробив би звичайний користувач: введіть одноразову адресу й надішліть запит. Портал приймає запит і ставить у чергу лист із підтвердженням для цієї скриньки.
-
Відкрийте лист із підтвердженням
Лист із підтвердженням потрапляє в одноразову скриньку Боба. Він відкриває лист і натискає посилання так само, як зробив би звичайний користувач. Браузер відкритий поруч зі скринькою.
-
Знайдіть персональні дані в адресному рядку
Боб натиснув посилання, і воно відкрилося в браузері. Кожне посилання для підтвердження, яке розсилає Westmark, має точно такий вигляд. Тепер Бобові нічого зламувати не треба. Йому потрібні лише місця, де накопичуються такі URL.
-
Зберіть журнали реферерів
Боб — брокер даних, а не хакер. Він не надсилає до Westmark жодного запиту. Натомість він купує журнали реферерів за місяць у перепродавця аналітичних даних — постачальника, чий тег відстеження стоїть на сторінці підтвердження Westmark і непомітно записує повний URL (Referer) кожного, хто її завантажує. Він відкриває термінал поруч із браузером і шукає в цьому потоці посилання для підтвердження командою grep. Тепер у Боба є такі дані про тисячі людей. Подумайте, чим насправді є ці три поля.
-
Перевірка знань
-
Надходить сповіщення про захист даних
Ви відповідаєте за сервіс підтвердження облікових записів Westmark. Уночі система запобігання втраті даних (DLP) виявила проблему в посиланнях, які надсилає сервіс, і повідомила вас листом. Прочитайте, що вона виявила, а потім відкрийте код.
-
Відкрийте генератор посилань
Вам потрібно змінити обробник, який формує посилання для підтвердження й надсилає це посилання листом. Відкрийте цей обробник і подивіться, як він складає URL.
-
Знайдіть витік
Обробник вставляє електронну адресу облікового запису, дату народження та фрагмент SSN прямо в рядок запиту, а потім надсилає отримане посилання листом. Тут немає ні токена, ні проміжного рівня: сам URL — це і є персональні дані.
-
Перевірка знань
Охоплення стандартів безпеки
OWASP Top 10
- A04:2025 Cryptographic Failures
- A09:2025 Security Logging and Alerting Failures
- A02:2021 Cryptographic Failures
- A09:2021 Security Logging and Monitoring Failures
CWE
- CWE-598 Use of GET Request Method With Sensitive Query Strings
- CWE-532 Insertion of Sensitive Information into Log File
CIS Controls
- CIS 16 Application Software Security
NIST CSF
- PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
- PR.PS Platform Security