Broken Object Level Authorization (BOLA) — уязвимость в безопасности API, при которой приложение позволяет пользователям получать доступ к объектам (данным или ресурсам) на основе идентификаторов, предоставленных пользователем, без должной проверки прав доступа к этим объектам. www.insecure.in
Как это происходит: злоумышленник находит точку доступа, которая получает ресурсы по идентификатору, изменяет идентификатор и, если проверка авторизации не проведена, получает доступ к ресурсам, которые не должен видеть или изменять. www.insecure.in
Некоторые риски, связанные с BOLA:
- Утечка данных: злоумышленники могут получить доступ к чувствительной информации, включая личные данные, финансовые записи или медицинские записи. beaglesecurity.com www.insecure.in
- Незаконные действия: злоумышленники могут удалять или обновлять ресурсы, что наносит финансовый или репутационный ущерб. www.insecure.in
- Нарушения конфиденциальности: утечка чувствительных данных может привести к юридическим последствиям, особенно в соответствии с такими нормами, как GDPR или HIPAA. www.insecure.in
Некоторые причины возникновения BOLA:
- Отсутствие проверок авторизации на уровне объекта. beaglesecurity.com Приложение может проверять, что пользователь вошёл в систему, но не гарантирует, что он имеет право получать доступ или изменять конкретный ресурс. beaglesecurity.com
- Доверие к вводу пользователя. beaglesecurity.com API, которые принимают пользовательский ввод, например идентификаторы объектов в пути или теле запроса, склонны считать его достоверным и надёжным. beaglesecurity.com
- Использование легко угадываемых идентификаторов объектов. beaglesecurity.com Например, последовательные числовые идентификаторы, которые злоумышленники могут изменить, чтобы получить доступ к данным других пользователей. beaglesecurity.com
- Недостаточное тестирование безопасности API. beaglesecurity.com Разработчики и тестировщики могут проверять, что точки доступа работают так, как ожидается, но не тестируют на возможность несанкционированного доступа к объектам путём манипуляций. beaglesecurity.com
Для предотвращения BOLA необходимо проводить проверки авторизации на уровне объекта, использовать централизованную логику авторизации, избегать предсказуемых идентификаторов и регулярно тестировать безопасность API. beaglesecurity.com