В сентябре 2018 года стало известно о крупной утечке данных клиентов в авиакомпании British Airways. Злоумышленники скомпрометировали сервер web-приложения для бронирования авиабилетов и добавили в код JavaScript-библиотеки Modernizr код js-сниффера. js-сниффер перехватывал персональные данные и данные банковских карт пользователей, введенных в формы при бронировании авиабилетов, и отправлял на сервер злоумышленников. Несанкционированное изменение кода обнаружили через 10 дней, за это время были похищены данные 380 000 клиентов.
Злоумышленник не имел доступа к хранилищам данных с скомпрометированного сервера, поэтому перехватывал данные на уровне frontend-приложения. В большинстве случаев критичные данные отображаются либо вводятся пользователем на страницах frontend-приложения, а существующие средства защиты не обнаруживают утечки на стороне браузера и не могут отличить действия js-сниффера от легитимного поведения js-приложения.
Теоретически от отправки данных на сервер злоумышленника могла защитить Content Security Policy (CSP), но в случае скомпрометированного сервера, злоумышленник имел возможность изменить и конфигурацию CSP. Также важно отменить, что CSP позволяет ограничить не все предоставляемые браузерами каналы передачи информации.
Вектор: взлом через уязвимость.
Канал отправки данных в браузере: window.XMLHttpRequest.
Время присутствия: 10 дней.
Ущерб: 2 280 000 000 £ (компенсации пострадавшим) + 20 000 000 £ штраф по GDPR.
@FrontSecOps
Post #7
505